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: April 01, 2025 at 10:38 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
21860 vihdzp
author:vihdzp
chore(SetTheory/Ordinal/Enum): enumerator function of closed set is normal --- This result already exists as `enumOrd_isNormal_iff_isClosed`, however that version of the statement adds a large amount of imports due to the fact that it refers to the topological notion of closedness. This is intended as a more lightweight/convenient substitute. I intend to eventually golf down `enumOrd_isNormal_iff_isClosed` using this, but the `Ordinal.Topology` file requires large refactoring anyways (in the form of generalizing results to other linear orders, and getting rid of `bsup`). So I'd rather get that out of the way first. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 14/0 Mathlib/SetTheory/Ordinal/Enum.lean 1 1 ['github-actions'] nobody
46-9159
1 month ago
46-9220
1 month ago
46-9208
46 days
21903 yhtq
author:yhtq
feat: add from/toList between `FreeSemigroup` and `List` with relative theorems Add from/toList between `FreeSemigroup` and `List` with relative theorems, as well as an incidental definition of lexicographic order on `FreeSemigroup`. --- [![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$
169/0 Mathlib/Algebra/Free.lean 1 1 ['github-actions'] nobody
44-11738
1 month ago
45-9254
1 month ago
45-9300
45 days
21616 peabrainiac
author:peabrainiac
feat(Topology): concatenating countably many paths Adds `Path.countableConcat`, the concatenation of a sequence of paths leading up to some point `x`. --- - [x] depends on: #21591 - [x] depends on: #21607 This work is a prerequisite to #20248, where it is used to show that the topology of first-countable locally path-connected spaces is coinduced by all the paths in that space. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 186/0 Mathlib/Topology/Path.lean 1 10 ['YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'peabrainiac'] YaelDillies
assignee:YaelDillies
41-66550
1 month ago
41-66550
1 month ago
43-806
43 days
20648 anthonyde
author:anthonyde
feat: formalize regular expression -> εNFA The file `Computability/RegularExpressionsToEpsilonNFA.lean` contains a formal definition of Thompson's method for constructing an `εNFA` from a `RegularExpression` and a proof of its correctness. --- - [x] depends on: #20644 - [x] depends on: #20645 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor 490/0 Mathlib.lean,Mathlib/Computability/RegularExpressionsToEpsilonNFA.lean,docs/references.bib 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
41-33260
1 month ago
41-33273
1 month ago
41-35072
41 days
22031 adomani
author:adomani
feat(zulip): add emoji reaction to first message Discussed in [Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2321995.20deprecate.20.60Complex.2Eabs.60/near/500322749). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 11/3 scripts/zulip_emoji_merge_delegate.py 1 12 ['adomani', 'eric-wieser', 'github-actions', 'mathlib-bors'] nobody
41-6330
1 month ago
42-8824
1 month ago
42-8955
42 days
21965 JovanGerb
author:JovanGerb
feat: extensible `push`(_neg) tactic - part 1 This is the first part of #21769, namely defining the new tactic, and only tagging the lemmas that have to be tagged to match the old behaviour. This includes - The `push_neg` tactic, which is a macro for `push Not` - The `push` tactic - The `↓pushNeg` simproc that can be used as `simp [↓pushNeg]` - The `push` and `push_neg` tactics in `conv` mode. - The `#push_discr_tree` command to help see what lemmas the tactic is using for a given constant. There are two new files: `Mathlib.Tactic.Push` and `Mathlib.Tactic.Push.Attr`. The latter only introduces the `@[push]` attribute, so that it can be used by early Mathlib files without having to import `Mathlib.Tactic.Push`. Zulip conversation: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/I.20made.20an.20extensible.20.60push.60.20tactic.20generalizing.20.60push_neg.60/near/499492535 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 310/182 Mathlib.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Push/Attr.lean,MathlibTest/push_neg.lean,scripts/noshake.json 9 7 ['JovanGerb', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
39-79978
1 month ago
39-80804
1 month ago
42-43574
42 days
22216 Rida-Hamadani
author:Rida-Hamadani
chore(SimpleGraph): remove redundant import and improve style for `StronglyRegular.lean` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 11/14 Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 1 1 ['Parcly-Taxel', 'github-actions'] nobody
36-38101
1 month ago
36-60280
1 month ago
36-60331
36 days
21744 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms): admissible lists and simplicial insertion We introduce the notion of an `m`-admissible list of natural number: a list `[i₀,…,iₙ]` is said to be `m`-admissible if `iₖ ≤ m + k` for all valid index `k`. These lists are intended to uniquely represents either `P_σ` or `P_δ` morphisms in `SimplexCategoryGenRel`. We prove basic stability of such lists under some lists operation such as the tail. We also introduce the notion of simplicial insertion, which is intended to be the algorithm on such normal forms representing composition on the right (for `P_σ` morphisms) or on the left (for `P_δ` morphisms) by a single morphism, and we prove that this preserves admissibility. Part of a series of PR formalising that `SimplexCategoryGenRel` is equivalent to `SimplexCategory`. --- - [x] depends on: #21743 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-category-theory 197/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean 2 7 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'robin-carlier'] nobody
34-40425
1 month ago
34-40425
1 month ago
36-50835
36 days
22314 shetzl
author:shetzl
feat: add leftmost derivations for context-free grammars Leftmost derivations are often easier to reason about than arbitrary derivations. This PR adds leftmost variants of Rewrites, Produces and Derives to the existing definition of context-free grammars and proves that a string of terminals can be derived iff it can be leftmost derived. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor 383/0 Mathlib.lean,Mathlib/Computability/LeftmostDerivation.lean 2 27 ['github-actions', 'madvorak', 'shetzl'] nobody
33-70842
1 month ago
34-5711
1 month ago
34-5766
34 days
21869 Raph-DG
author:Raph-DG
feat(Order): Trimmed length of a RelSeries In this PR, we define the trimmed length of a relseries rs : RelSeries (· ≤ ·) to be the cardinality of the underlying function rs.toFun of rs minus 1. This models the number of `<` relations occuring in rs. We develop some basic API for this notion, with the main intended application being a proof that module length is additive. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 236/0 Mathlib.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/TrimmedLength.lean 3 8 ['Raph-DG', 'github-actions', 'jcommelin'] nobody
32-73902
1 month ago
45-82418
1 month ago
45-82466
45 days
22447 joelriou
author:joelriou
feat(CategoryTheory): the dual of a Guitart exact `2`-square is Guitart exact This shall be used in order to formalize left derivability structures (dual to right derivability structures), and to construct left derived functors. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 119/0 Mathlib.lean,Mathlib/CategoryTheory/Functor/TwoSquare.lean,Mathlib/CategoryTheory/GuitartExact/Opposite.lean,Mathlib/CategoryTheory/Opposites.lean 4 1 ['github-actions'] nobody
30-54165
30 days ago
30-54627
30 days ago
30-54615
30 days
22474 joelriou
author:joelriou
feat(CategoryTheory/Functor): more API for pointwise Kan extensions Transport pointwise Kan extensions via isomorphisms/equivalences. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 157/7 Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Opposites.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean 4 1 ['github-actions'] nobody
28-8424
28 days ago
28-9131
28 days ago
29-39409
29 days
22539 joelriou
author:joelriou
feat(Algebra/Homology): construction of left resolutions Given a fully faithful functor `ι : C ⥤ A` to an abelian category, we introduce a structure `Abelian.LeftResolutions ι` which gives a functor `F : A ⥤ C` and a natural epimorphism `π.app X : ι.obj (F.obj X) ⟶ X` for all `X : A`. This is used in order to construct a resolution functor `LeftResolutions.chainComplexFunctor : A ⥤ ChainComplex C ℕ`. This shall be used in order to derive the tensor product of modules and sheaves of modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 271/19 Mathlib.lean,Mathlib/Algebra/Homology/HomologicalComplex.lean,Mathlib/Algebra/Homology/LeftResolutions/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean 4 1 ['github-actions'] nobody
27-74688
27 days ago
28-479
28 days ago
28-467
28 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/) t-algebra
label:t-algebra$
19/46 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 13 ['YaelDillies', 'eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-bors'] nobody
27-53444
27 days ago
41-63522
1 month ago
41-72678
41 days
22576 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: more lemmas about alternatingGroup --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) cc @AntoineChambert-Loir (whose code this is) t-algebra
label:t-algebra$
55/0 Mathlib/GroupTheory/SpecificGroups/Alternating/Centralizer.lean 1 1 ['github-actions'] nobody
27-42453
27 days ago
27-42459
27 days ago
27-42508
27 days
22586 joelriou
author:joelriou
feat(CategoryTheory/Localization): the right derivability structure given by functorial resolutions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 152/0 Mathlib.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/OfFunctorialResolutions.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean 3 1 ['github-actions'] nobody
26-81322
26 days ago
27-389
27 days ago
27-377
27 days
22392 mariainesdff
author:mariainesdff
feat(Algebra/Order/Antidiag/Partition): add antidiagonalTwoTwo Co-authored-by: AntoineChambert-Loir --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
59/0 Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Partition.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean 3 3 ['github-actions', 'j-loreaux', 'mariainesdff'] nobody
26-74319
26 days ago
26-74319
26 days ago
27-29013
27 days
21603 imbrem
author:imbrem
feat(CategoryTheory/ChosenFiniteProducts): Added basic ChosenFiniteCoproducts class Added basic `ChosenFiniteCoproducts` class, and started porting some of the lemmas about `ChosenFiniteProducts` suitably translated --- This, combined with #20182 modified to use chosen finite coproducts and premonoidal categories (#21488), should be enough for me to formalize strong Elgot categories, and hence a lot of categorical iteration theory for my PhD thesis. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory 260/2 Mathlib/CategoryTheory/ChosenFiniteProducts.lean 1 7 ['TwoFX', 'github-actions'] nobody
25-71697
25 days ago
25-71711
25 days ago
49-56830
49 days
21525 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Prelim) This PR defines the basic preliminaries for defining locally cartesian closed categories (LCCCs). In particular, using the calculus of mates we define certain natural isomorphisms involving `Over.star` and `Over.pullback` which will be crucial in defining the right adjoint to the pullback functor in the development of LCCCs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-category-theory 338/24 Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Galois/Examples.lean 3 12 ['b-mehta', 'github-actions', 'joelriou', 'sinhp'] nobody
25-63793
25 days ago
25-63808
25 days ago
35-73405
35 days
22651 101damnations
author:101damnations
feat(RepresentationTheory/*): subrepresentations, quotients by subrepresentations, and representations of quotient groups Given a `G`-representation `(V, ρ)` and a `G`-invariant submodule `W ≤ V`, this PR defines the restriction of `ρ` to `W` as a representation, and the representation on `V / W` induced by `ρ`. When `S` is a normal subgroup of `G` on which `ρ` is trivial, we also define the `G / S` representation induced by `ρ`. We use this to define the `G / S` representation on `V^S`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
170/11 Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RepresentationTheory/Rep.lean 3 1 ['github-actions'] nobody
25-57941
25 days ago
25-57941
25 days ago
25-57996
25 days
19584 joelriou
author:joelriou
feat(Algebra/Homology/DerivedCategory): calculus of fractions We obtain various factorization lemmas in the derived category as a consequence of the calculus of fractions (precise versions are obtained using canonical truncation on cochain complexes). --- - [x] depends on: #19579 - [x] depends on: #19578 - [x] depends on: #19550 - [x] depends on: #19543 - [x] depends on: #19544 - [x] depends on: #19559 - [x] depends on: #19560 - [x] depends on: #19574 - [x] depends on: #19572 - [x] depends on: #19570 - [x] depends on: #19203 - [x] depends on: #18502 - [x] depends on: #19198 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 182/0 Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Fractions.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean 5 n/a ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
25-53860
25 days ago
unknown
unknown
20230 joelriou
author:joelriou
feat(CategoryTheory): categories of homological complexes are Grothendieck abelian --- - [x] depends on: #19979 - [x] depends on: #20229 - [x] depends on: #20233 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 73/0 Mathlib.lean,Mathlib/Algebra/Homology/GrothendieckAbelian.lean 2 2 ['callesonne', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
25-46659
25 days ago
35-48381
1 month ago
35-48367
35 days
21237 scholzhannah
author:scholzhannah
feat: a weaker definition of compactly generated spaces This PR defines compactly generated spaces as a topological space where a set is open iff its intersection with every compact set is open in that compact set. There is a [definition of compactly generated spaces already in mathlib](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Compactness/CompactlyGeneratedSpace.html#CompactlyGeneratedSpace) but that definition is stronger than the one presented here. They do however agree on Hausdorff spaces. See [this wikipedia page](https://en.wikipedia.org/wiki/Compactly_generated_space) for an explanation for the three different definitions of compactly generated spaces used in literature. Co-authored-by: Floris van Doorn --- See also [this discussion on Zulip](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Compactly.20generated.20spaces) about compactly generated spaces. - [ ] depends on: #21134 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 326/0 Mathlib.lean,Mathlib/Topology/Compactness/KSpace.lean,docs/references.bib 3 5 ['github-actions', 'jzxia', 'mathlib4-dependent-issues-bot', 'scholzhannah'] nobody
25-16352
25 days ago
33-70231
1 month ago
33-71651
33 days
21624 sinhp
author:sinhp
feat(CategoryTheory): The (closed) monoidal structure on the product category of families of (closed) monoidal categories Given a family of closed monoidal categories, we show that the product of these categories is a closed monoidal category with the pointwise monoidal structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 135/0 Mathlib.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Pi/Monoidal.lean,Mathlib/CategoryTheory/Pi/MonoidalClosed.lean 4 15 ['TwoFX', 'b-mehta', 'github-actions', 'sinhp'] nobody
25-5829
25 days ago
25-5829
25 days ago
47-79899
47 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 57 ['FLDutchmann', 'Paul-Lez', 'YaelDillies', 'eric-wieser', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
24-77035
24 days ago
27-61436
27 days ago
40-48598
40 days
22701 ctchou
author:ctchou
feat(Combinatorics): the Katona circle method This file formalizes the Katona circle method. From PlainCombi (LeanCamCombi): https://github.com/YaelDillies/LeanCamCombi/blob/master/LeanCamCombi/PlainCombi/KatonaCircle.lean Co-authored-by: Yaël Dillies new-contributor t-combinatorics 121/0 Mathlib.lean,Mathlib/Combinatorics/KatonaCircle.lean 2 1 ['github-actions'] nobody
24-51588
24 days ago
24-52212
24 days ago
24-52261
24 days
22684 vlad902
author:vlad902
feat(Topology): add `ContinuousOn` union API lemmas Add two lemmas to allow going from continuity of a union to continuity on the individual sets, and continuity on two open sets to continuity on their union. Note that there is already an existing lemma for continuity of the union of two closed sets. new-contributor t-topology 30/3 Mathlib/Topology/ContinuousOn.lean 1 11 ['Paul-Lez', 'github-actions', 'grunweg', 'vlad902'] nobody
23-2364
23 days ago
24-84047
24 days ago
24-84044
24 days
8167 sebzim4500
author:sebzim4500
feat: Add new `grw` tactic for rewriting using inequalities. feat: Add new `grw` tactic for rewriting using inequalities. Co-authored-by: @hrmacbeth, @digama0 --- - [x] depends on: #8796 ```lean example (x y z w : ℝ) (h₁ : x < z) (h₂ : w ≤ y + 4) (h₃ : Real.exp z < 5 * w) : Real.exp x < 5 * (y + 4) := by grw [h₁, ← h₂] exact h₃ ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta modifies-tactic-syntax 552/2 Mathlib.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Tactic.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRW.lean,Mathlib/Tactic/GRW/Core.lean,Mathlib/Tactic/GRW/Lemmas.lean,MathlibTest/GRW.lean,scripts/noshake.json 9 53 ['Vierkantor', 'digama0', 'eric-wieser', 'fpvandoorn', 'github-actions', 'hrmacbeth', 'kim-em', 'leanprover-community-mathlib4-bot', 'sebzim4500'] nobody
22-70026
22 days ago
23-56995
23 days ago
54-19247
54 days
22748 joelriou
author:joelriou
feat(CategoryTheory/Localization): the calculus of fractions that is deduced from an adjunction If `G ⊣ F` is an adjunction, and `F` is fully faithful, then there is a left calculus of fractions for the inverse image by `G` of the class of isomorphisms. (The dual statement is also obtained.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 67/0 Mathlib.lean,Mathlib/CategoryTheory/Localization/CalculusOfFractions/OfAdjunction.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean 3 1 ['github-actions'] nobody
22-52411
22 days ago
22-54661
22 days ago
22-54649
22 days
22739 joelriou
author:joelriou
feat(CategoryTheory/Abelian): isomorphisms modulo a Serre class --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 176/0 Mathlib.lean,Mathlib/CategoryTheory/Abelian/SerreClass/MorphismProperty.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean 4 5 ['TwoFX', 'github-actions', 'joelriou'] nobody
22-49706
22 days ago
22-49706
22 days ago
22-65954
22 days
22404 joelriou
author:joelriou
feat(Algebra/Homology): connecting a chain complex and a cochain complex Given a chain complex `K`: `... ⟶ K.X 2 ⟶ K.X 1 ⟶ K.X 0`, a cochain complex `L`: `L.X 0 ⟶ L.X 1 ⟶ L.X 2 ⟶ ...`, a morphism `d₀: K.X 0 ⟶ L.X 0` satisfying the identifies `K.d 1 0 ≫ d₀ = 0` and `d₀ ≫ L.d 0 1 = 0`, we construct a cochain complex indexed by `ℤ` of the form `... ⟶ K.X 2 ⟶ K.X 1 ⟶ K.X 0 ⟶ L.X 0 ⟶ L.X 1 ⟶ L.X 2 ⟶ ...`, where `K.X 0` lies in degree `-1` and `K.X 0` in degree `0`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 116/0 Mathlib.lean,Mathlib/Algebra/Homology/Embedding/Connect.lean 2 2 ['callesonne', 'github-actions'] nobody
22-43787
22 days ago
31-69340
1 month ago
31-69328
31 days
22628 scholzhannah
author:scholzhannah
feat: finiteness notions on CW complexes This PR defines three finiteness notions on (classical) CW complexes: finite dimensionality, finite type, and finiteness. A CW complex is finite dimensional if the indexing type of cells is empty in all but finitely many dimensions. It is of finite type if the indexing type of cells is finite in every dimension. Lastly, a CW complex is finite if it is both finite dimensional and of finite type. The PR also provides constructors for CW complexes that are of finite type or finite and proves that a CW complex is finite iff the total number of cells is finite. Co-authored-by: Floris van Doorn --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 375/0 Mathlib.lean,Mathlib/Topology/CWComplex/Classical/Finite.lean 2 5 ['github-actions', 'grunweg', 'scholzhannah'] nobody
21-75455
21 days ago
25-84754
25 days ago
25-84808
25 days
22792 madvorak
author:madvorak
Pigeonhole-like results for Fin Consider the following settings: ``` import Mathlib example (X Y : Type) [Fintype X] [Fintype Y] (f : X → Y) (hf : f.Injective) : Fintype.card X ≤ Fintype.card Y := by hint example (m n : ℕ) (f : Fin m → Fin n) (hf : f.Injective) : m ≤ n := by hint example (X Y : Type) [Fintype X] [Fintype Y] (f : X ↪ Y) : Fintype.card X ≤ Fintype.card Y := by hint example (m n : ℕ) (f : Fin m ↪ Fin n) : m ≤ n := by hint ``` The 1st and 3rd `hint` succeed, but the 2nd a 4th `hint` fail. The problem is obviously that `exact?` does not see through `Fintype.card (Fin n) = n` when searching for appropriate lemma. It may seem to not be a problem, as it will rarely derail experienced Mathlib users — after all, experienced Leaners usually go directly for the `Finset` or `Fintype` version. However, beginners frequently work with `Fin` and they will expect stuff like ``` theorem le_of_injective (f : Fin m → Fin n) (hf : f.Injective) : m ≤ n ``` to exist; therefore, when `hint` or `exact?` fails, it is a very unpleasant surprise. This PR addressed this issue; not to provide useful content for advanced users, but to make Mathlib more useful for beginners. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 38/0 Mathlib.lean,Mathlib/Data/Fin/Pigeonhole.lean 2 1 ['github-actions'] nobody
21-68252
21 days ago
21-68339
21 days ago
21-68396
21 days
20681 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define deleteIncidenceSet Define the operation `G.deleteIncidenceSet x` deleting the incidence set of the vertex `x` from the edge set of the simple graph `G` and prove theorems in the finite case. Also move `deleteEdges` and `deleteFar` definitions to a separate file `DeleteEdges.lean` (that includes `deleteIncidenceSet`) to simplify imports. --- - [x] depends on: #20825 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-combinatorics 228/93 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mitchell-horner'] nobody
21-26564
21 days ago
21-26577
21 days ago
44-76158
44 days
21129 chrisflav
author:chrisflav
perf(RingTheory/Kaehler/JacobiZariski): reorder universe variables Naming of universe variables has an impact on universe unification. It seems to matter that the universe variables of `R`, `S` and `T` appear before the universe variables of the generators in alphabetical order. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) performance-hack t-algebra
label:t-algebra$
18/20 Mathlib/RingTheory/Kaehler/JacobiZariski.lean 1 37 ['chrisflav', 'erdOne', 'github-actions', 'grunweg', 'kbuzzard', 'leanprover-bot', 'mattrobball'] nobody
21-1559
21 days ago
55-4020
1 month ago
63-71730
63 days
22620 ahhwuhu
author:ahhwuhu
feat: Define shifted Legendre polynomials and prove some basic properties Define shifted Legendre polynomials and prove that it is integer polynomial. In the same time, its evaluation on x is equal to the evaluation on 1 - x. new-contributor t-analysis 123/0 Mathlib.lean,Mathlib/Analysis/ShiftedLegendrePoly.lean 2 11 ['acmepjz', 'ahhwuhu', 'github-actions', 'riccardobrasca'] nobody
20-78433
20 days ago
26-22540
26 days ago
26-22588
26 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`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
91/11 Mathlib/Algebra/Ring/Units.lean,Mathlib/RingTheory/Localization/Away/Basic.lean 2 8 ['github-actions', 'plp127', 'vihdzp'] nobody
20-56878
20 days ago
25-43274
25 days ago
25-43320
25 days
22680 kebekus
author:kebekus
feat: behavior of AnalyticAt.order under addition Deliver on one of the open TODOs and establish the behavior of `AnalyticAt.order` under addition. Add missing `fun_prop` lemma on the stability of analytic functions under `HPow.hPow`. Generalize the statement on the behavior of `AnalyticAt.order` under multiplication to scalar 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 178/24 Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Order.lean 2 7 ['girving', 'github-actions', 'kebekus'] nobody
20-16676
20 days ago
20-16690
20 days ago
24-58436
24 days
22890 BGuillemet
author:BGuillemet
feat: add versions of the Lebesgue number lemma Add versions of the Lebesgue number lemma, for coverings by neighborhoods rather than by open subsets (in `Topology/UniformSpace/Compact.lean`). Add specializations of the Lebesgue number lemma for extended metric spaces (in `Topology/EMetricSpace/Basic.lean`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 87/0 Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/UniformSpace/Compact.lean 2 1 ['github-actions'] nobody
19-32668
19 days ago
19-32729
19 days ago
19-32717
19 days
22861 eric-wieser
author:eric-wieser
feat: add the trace of a bilinear form Following the steps at [#Is there code for X? > Laplacian @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Laplacian/near/450834505). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Some questions: * Does this generalize to multilinear maps? * Is there an `RCLike` generalization? * Does this generalize to `BilinMap` instead of just `BilinForm`? Perhaps the approach in [#mathlib4 > Stating Schrodinger's equation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Stating.20Schrodinger's.20equation/near/500409890) of using `ContinuousLinearMap.adjoint'` is better. t-algebra
label:t-algebra$
100/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/Trace.lean 2 3 ['github-actions', 'jcommelin'] nobody
19-17162
19 days ago
20-33716
20 days ago
20-33763
20 days
22531 vasnesterov
author:vasnesterov
feat(Analysis): radius of convergence for `FormalMultilinearSeries.compContinuousLinearMap` - Add basic lemmas `compContinuousLinearMap_id` and `compContinuousLinearMap_comp`. - Prove lower and upper bounds for the convergence radius of `f.compContinuousLinearMap`. - Prove `radius_compNeg`: the convergence radii of `f(x)` and `f(-x)` are equal. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 115/6 Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean,scripts/noshake.json 3 1 ['github-actions'] nobody
19-7639
19 days ago
19-7656
19 days ago
27-47574
27 days
22767 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory): the augmented simplex category This PR defines `AugmentedSimplexCategory` as `WithInitial SimplexCategory`. Using the API in `CategoryTheory.WithTerminal`, we check that functors out of this category (resp. out of its opposite) corresponds to cosimplicial (resp. simplicial) objects, and we link various construction about simplicial objects in terms of this category. --- - [x] depends on : #22658 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 119/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented.lean 2 3 ['github-actions', 'robin-carlier'] nobody
18-85186
18 days ago
18-85207
18 days ago
21-80894
21 days
22574 joelriou
author:joelriou
refactor(CategoryTheory): redefine full subcategories using `ObjectProperty` The type `ObjectProperty` was recently introduced #22286 for predicates on the objects of a category. We redefine `FullSubcategory` as `ObjectProperty.FullSubcategory`. This refactor PR mostly does only minimal changes to take into account that some definitions were renamed. The only significant exception is for the definition of the category of finitely generated modules in `Algebra.Category.FGModuleCat.Basic`, which should become the better practice for defining full subcategories, especially when we want to infer certain type classes: define a property of objects (here `ModuleCat.isFG`) and define the category as an abbreviation (here `abbrev FGModuleCat := (ModuleCat.isFG R).FullSubcategory`). Following this approach, significantly many of the typeclasses on the category `FGModuleCat R` can be inferred automatically. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-category-theory 707/674 Mathlib.lean,Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/HomotopyCat.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/CategoryTheory/Action/Continuous.lean,Mathlib/CategoryTheory/Adjunction/PartialAdjoint.lean,Mathlib/CategoryTheory/Adjunction/Reflective.lean,Mathlib/CategoryTheory/ConcreteCategory/Basic.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Filtered/Small.lean,Mathlib/CategoryTheory/FullSubcategory.lean,Mathlib/CategoryTheory/Groupoid.lean,Mathlib/CategoryTheory/InducedCategory.lean,Mathlib/CategoryTheory/Limits/ExactFunctor.lean,Mathlib/CategoryTheory/Limits/FinallySmall.lean,Mathlib/CategoryTheory/Limits/FullSubcategory.lean,Mathlib/CategoryTheory/Limits/Indization/Category.lean,Mathlib/CategoryTheory/Limits/Indization/LocallySmall.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Linear/LinearFunctor.lean,Mathlib/CategoryTheory/Localization/Construction.lean,Mathlib/CategoryTheory/Localization/Predicate.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean,Mathlib/CategoryTheory/MorphismProperty/IsInvertedBy.lean,Mathlib/CategoryTheory/ObjectProperty/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/FullSubcategory.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Preadditive/Basic.lean,Mathlib/CategoryTheory/Preadditive/Indization.lean,Mathlib/CategoryTheory/Sites/EffectiveEpimorphic.lean,Mathlib/CategoryTheory/Sites/SheafOfTypes.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean,Mathlib/CategoryTheory/Subterminal.lean,Mathlib/Topology/Category/TopCat/OpenNhds.lean,Mathlib/Topology/Sheaves/Alexandrov.lean,Mathlib/Topology/Sheaves/SheafCondition/OpensLeCover.lean,Mathlib/Topology/Sheaves/SheafCondition/PairwiseIntersections.lean 48 1 ['github-actions'] nobody
17-81980
17 days ago
17-81995
17 days ago
24-55029
24 days
22929 b-mehta
author:b-mehta
feat(Order/Cover): characterise covering in Pi types Characterise the covering relation in products of partial orders. Generalise this characterisation to products of preorders. Use the characterisation to significantly simplify the characterisation of atoms in products of partial orders. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 137/41 Mathlib/Order/Atoms.lean,Mathlib/Order/Cover.lean 2 2 ['b-mehta', 'github-actions'] nobody
17-67260
17 days ago
17-74016
17 days ago
17-74073
17 days
22933 chrisflav
author:chrisflav
feat(RingTheory/LocalProperties): constructor for `RingHom.OfLocalizationSpan` Adds a constructor for `RingHom.OfLocalizationSpan` where `P (algebraMap (Localization.Away r) (Localization.Away r ⊗[R] S))` has to be shown for a covering family. This is convenient in practice, because the base change API is the more generally applicable framework. -- - I think the import increase is fine, but if people are not happy with it, I can instead make a new file `Mathlib.RingTheory.LocalizationAway.BaseChange`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
73/3 Mathlib/RingTheory/LocalProperties/Basic.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 3 1 ['github-actions'] nobody
17-66537
17 days ago
17-66544
17 days ago
17-66586
17 days
22948 pelicanhere
author:pelicanhere
feat(Algebra/DirectSum): morphism of directsum decomposition Define morphism of directsum decomposition, which would be later used in defineing graded ring hom. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
68/0 Mathlib/Algebra/DirectSum/Decomposition.lean 1 1 ['github-actions'] nobody
16-77553
16 days ago
17-3797
17 days ago
17-3846
17 days
22196 xyzw12345
author:xyzw12345
feat: `lie_ring` tactic and `LieReduce` command In this PR, we implement a new tactic that reduces expressions in a `LieRing` to a normal form and checks whether they are equal, and a command which reduces the expression and displays the normal form. The implementation of this tactic imitates the `ring` tactic, using the `Qq` package to implement a specific reduction algorithm, following the theory of Hall sets and Lyndon words. A reference for the algorithm can be found at, for example, [here](https://personal.math.ubc.ca/~cass/research/pdf/Free.pdf). This project is the result of a workshop at Peking University, and @siddhartha-gadgil has helped us a lot on understanding the concepts in metaprogramming. Edit: The changes are reverted to a point where only `AtomM` is used. Co-authored-by: @Thmoas-Guan <2300010733@stu.pku.edu.cn> @yhtq <2100012990@stu.pku.edu.cn> @Blackfeather007 <2100017455@stu.pku.edu.cn> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta 821/0 Mathlib.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 7 5 ['github-actions', 'ocfnash', 'siddhartha-gadgil', 'xyzw12345'] nobody
16-71088
16 days ago
37-27472
1 month ago
37-27470
37 days
22932 YaelDillies
author:YaelDillies
feat: the product of finitely generated monoids is finitely generated From Toric Co-authored-by: Patrick Luo --- - [x] depends on: #22937 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
63/27 Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/RingTheory/FiniteType.lean 3 4 ['YaelDillies', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
16-37864
16 days ago
16-37864
16 days ago
17-52922
17 days
22962 YaelDillies
author:YaelDillies
feat: torsion-free *monoids* Behind this click-baity title, there is the fact that `Monoid.IsTorsionFree` is incorrect for torsion-free monoids. Indeed, if `n ≠ 0` then `∀ a : α, n • a = 0 → a = 0` is equivalent to `∀ a b : α, n • a = n • b → a = b` only if `α` is a group. If `α` is a monoid (possibly even cancellative!), then the `∀ a : α, n • a = 0 → a = 0` condition is quite weak. This PR introduces this new definition under the names `IsAddTorsionFree`/`IsMulTorsionFree`. Several things to note: * It is a class, while `Monoid.IsTorsionFree` is not. * It is outside of the `Monoid`/`AddMonoid` namespace. My thought is that people who care about torsion-free groups will prefer writing `IsAddTorsionFree G` over `Monoid.IsTorsionFree`. * I am making a new file. This is because the existing definitions talk about order of an element, which is a much more advanced notion than the new one I am offering. * I am not changing the existing definition in this PR. This will be done in a later PR. From Toric Co-authored-by: Patrick Luo --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric large-import t-algebra
label:t-algebra$
83/33 Mathlib.lean,Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Ring/Basic.lean,Mathlib/NumberTheory/Padics/MahlerBasis.lean,Mathlib/RingTheory/Binomial.lean 6 1 ['github-actions'] nobody
16-37856
16 days ago
16-37856
16 days ago
16-67469
16 days
22527 LeoDog896
author:LeoDog896
feat(Finpartition): ofSetSetoid Allows for `Finpartition` to act on a specific set, and makes the `ofSetoid` definition the universal case of `ofSetSetoid`. Motivation: Partitioning a domineering board into continuous components while preserving `Repr`. --- - [x] depends on: #21551 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 33/12 Mathlib/Order/Partition/Finpartition.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
16-16357
16 days ago
16-16372
16 days ago
17-75825
17 days
22260 ldct
author:ldct
feat: Add SampleableExt PNat Allow sampling from `PNat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 26/0 Mathlib/Testing/Plausible/Sampleable.lean,MathlibTest/slim_check.lean 2 6 ['github-actions', 'vasnesterov'] nobody
15-73471
15 days ago
15-73509
15 days ago
28-48538
28 days
22605 pechersky
author:pechersky
chore(Analysis): rename pi family from π to X Only in files that mentioned such a family, via a script: ``` git grep -e "π : . → Type" --name-only | rg "Analysis" | xargs -I{} sed -i -e 's/π/X/g' {} ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 36/36 Mathlib/Analysis/Convex/Extreme.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Ring/Lemmas.lean 4 1 ['github-actions'] nobody
15-29349
15 days ago
15-29516
15 days ago
19-48990
19 days
22027 vihdzp
author:vihdzp
chore(SetTheory/Ordinal/FixedPoint); review `Ordinal.nfp` API This PR does the following: - add `iff` variants of various theorems, renaming some in the process - weaken some assumptions slightly - golf throughout --- - [x] depends on: #22017 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 64/61 Mathlib/Logic/Equiv/List.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
15-23327
15 days ago
41-83173
1 month ago
41-83444
41 days
20680 joelriou
author:joelriou
feat(CategoryTheory): weak factorization systems --- - [x] depends on: #20666 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 68/0 Mathlib.lean,Mathlib/CategoryTheory/MorphismProperty/WeakFactorizationSystem.lean 2 4 ['callesonne', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
15-13510
15 days ago
47-59329
1 month ago
47-71535
47 days
22833 adomani
author:adomani
feat(CI): add comment on merge-conflict to trigger an email See the [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/CI.20Bot.20comment.20for.20merge.20conflicts). Note that this means that everyone who subscribes to email notification for a PR, will also receive an email when the PR acquires a `merge-conflict`. The Zulip poll [#mathlib4 > CI Bot comment for merge conflicts @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/CI.20Bot.20comment.20for.20merge.20conflicts/near/504862561) shows more votes in favour than against. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 1/0 .github/workflows/merge_conflicts.yml 1 3 ['adomani', 'bryangingechen', 'github-actions'] nobody
15-12495
15 days ago
15-12495
15 days ago
15-12618
15 days
21103 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): uniqueness of the decomposition involving non-degenerate simplices Any simplex `x : X _⦋n⦌` of a simplicial set can be written in a unique way as `X.map f.op y` for an epimorphism `f : ⦋n⦌ ⟶ ⦋m⦌` and a non-degenerate `m`-simplex `y`. --- - [x] depends on: #21098 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 122/5 Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean 2 3 ['gio256', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
15-145
15 days ago
21-1366
21 days ago
21-1574
21 days
22828 joelriou
author:joelriou
feat(CategoryTheory): parametrized adjunctions Given bifunctors `F : C₁ ⥤ C₂ ⥤ C₃` and `G : C₁ᵒᵖ ⥤ C₃ ⥤ C₂`, this PR introduces adjunctions with a parameter `F ⊣₂ G`. In the case of closed monoidal categories, we obtain `curriedTensor C ⊣₂ internalHom`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 127/0 Mathlib.lean,Mathlib/CategoryTheory/Adjunction/Parametrized.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean 3 4 ['emilyriehl', 'github-actions', 'joelriou', 'mckoen'] nobody
15-34
15 days ago
18-46696
18 days ago
20-70505
20 days
22203 joelriou
author:joelriou
feat(CategoryTheory/Limits): multicoequalizers attached to linear orders Certain multicoequalizers are defined by coequalizing maps `V ⟨i, j⟩ ⟶ U i` and `V ⟨i, j⟩ ⟶ U j` for `i` and `j` in a type `ι`. When `ι` is linearly ordered and if the objects `V` satisfy a certain symmetry, we show that it suffices to consider the "relations" given by tuples `⟨i, j⟩` such that `i < j`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 110/3 Mathlib/CategoryTheory/Limits/Shapes/Multiequalizer.lean 1 1 ['github-actions'] nobody
14-86239
14 days ago
36-83064
1 month ago
36-83230
36 days
22205 joelriou
author:joelriou
feat(CategoryTheory/Limits): preservation of multicoequalizers --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 88/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Multiequalizer.lean,Mathlib/CategoryTheory/Limits/Shapes/Multiequalizer.lean 3 1 ['github-actions'] nobody
14-84035
14 days ago
36-81171
1 month ago
36-81159
36 days
22231 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion` initial defns --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-topology
label:t-algebra$
268/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 2 ['Thmoas-Guan', 'github-actions'] nobody
14-76850
14 days ago
36-27342
1 month ago
36-27474
36 days
22794 vasnesterov
author:vasnesterov
feat(Tactic/NormNum): `norm_num` extension for `Irrational x^y` Add `norm_num` extension for `Irrational x^y`. --- I don't disprove `Irrational x^y` when `x^y` is, in fact, rational here, because I hope in the future `norm_num` will be able to simplify such expressions to their rational representations (e.g. `(8/27)^(2/3) --> 4/9`), and then apply `Rat.not_irrational`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 446/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/Irrational.lean,MathlibTest/norm_num_ext.lean,scripts/noshake.json 5 1 ['github-actions'] nobody
14-70993
14 days ago
16-39730
16 days ago
21-40272
21 days
22844 grunweg
author:grunweg
chore(Topology/Constructions): tweak and move `Prod.instNeBotNhdsWithinIoi` This does not actually require the order dual, hence can also go into Constructions.SumProd. Follow-up to #22827. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 6/5 Mathlib/Topology/Constructions.lean,Mathlib/Topology/Constructions/SumProd.lean 2 8 ['github-actions', 'grunweg', 'jcommelin'] nobody
14-66606
14 days ago
14-66709
14 days ago
20-17221
20 days
21488 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): premonoidal categories Add support for premonoidal categories --- Still want to add support for: - Premonoidal braided/symmetric categories - The monoidal coherence theorem, which I've already ported in my `discretion` library - The `coherence` tactic, which should work fine for premonoidal categories too but wanted to get this in front of reviewers ASAP to make sure my general approach was alright [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory 893/354 Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,MathlibTest/StringDiagram.lean 21 3 ['YaelDillies', 'github-actions', 'imbrem'] nobody
14-64360
14 days ago
50-71294
1 month ago
54-32619
54 days
17131 joneugster
author:joneugster
feat(Tactic/Linter): add unicode linter for unwanted characters Add unicode linter flagging bad unicode characters. In this first form, the linter only flags `\u00A0` (non-breaking space) and replaces it with a normal space. Non-breaking space has been chosen because they keep reappearing in mathlib and it seems to be uncontroversial to lint for these. The whitelist/blacklist could then be refined in future PRs. Everything flagged by this linter can be fixed fully automatically with `lake exe lint-style --fix` or by commenting `bot fix style` on the PR. --- - tracking PR: #16215 ## Zulip discussions: - https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Whitelist.20for.20Unicode.3F - https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Lean.20specific.20font [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-linter 112/8 Mathlib.lean,Mathlib/Algebra/Lie/Semisimple/Lemmas.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/CategoryTheory/Category/ReflQuiv.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/UnicodeLinter.lean 8 1 ['github-actions'] nobody
14-59549
14 days ago
14-60371
14 days ago
14-60550
14 days
17129 joneugster
author:joneugster
feat(Tactic/Linter): add unicode linter for unicode variant-selectors Unicode characters can be followed by one of the two "variant-selectors" `\FE0E` (text) or `\FE0F` (emoji). These appear to the user as a single unicode character and they might copy them by accident. For example `✅️` (`\u2705\uFE0F`), `✅` (`\u2705`) and `✅︎` (`\u2705\uFE0E`) are three variants of the "same" unicode character. The one without variant-selector might display as either emoji or not, depending on the user's device and font. Add unicode linter ensuring variant-selector only appear on specified characters and also ensuring these characters always have the correct variant selector to avoid confusions. Everything flagged by this linter can be fixed fully automatically with `lake exe lint-style --fix` or by commenting `bot fix style` on the PR. --- - tracking PR: #16215 ## Zulip discussions: - https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Whitelist.20for.20Unicode.3F - https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Lean.20specific.20font ## Related PRs: - leanprover/lean4#5015 added some emoji-variant selectors to Emojis used in `Lean` itself. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-linter 244/14 Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/UnicodeLinter.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,Mathlib/Topology/ContinuousMap/Weierstrass.lean,MathlibTest/LintStyleTextBased.lean 11 3 ['adomani', 'github-actions', 'joneugster'] nobody
14-59160
14 days ago
14-67405
14 days ago
77-6181
77 days
22256 plp127
author:plp127
feat: Metric Spaces are T6 This PR shows that metric spaces are T6. It also generalizes the contents of Mathlib/Topology/GDelta/UniformSpace to apply to metrizable spaces. See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60IsClosed.2EisG.CE.B4.60) thread. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 128/64 Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/Order/Interval/Set/Disjoint.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/GDelta/MetrizableSpace.lean,Mathlib/Topology/GDelta/UniformSpace.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/Separation/GDelta.lean 11 28 ['github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127', 'urkud'] nobody
14-54475
14 days ago
27-41678
27 days ago
34-41276
34 days
21234 sven-manthe
author:sven-manthe
feat: Descriptive.tree basic API add API on Descriptive.tree, in particular operations for switching between subtrees --- The changes in other files are done to replace a lemma added in the previous PR by its proper general form. Taken from https://github.com/sven-manthe/A-formalization-of-Borel-determinacy-in-Lean [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge 113/5 Mathlib/Data/SetLike/Basic.lean,Mathlib/Order/CompleteLattice/SetLike.lean,Mathlib/SetTheory/Descriptive/Tree.lean 3 6 ['fpvandoorn', 'github-actions', 'urkud'] nobody
14-54400
14 days ago
14-54406
14 days ago
61-44258
61 days
23021 101damnations
author:101damnations
feat(Data/Finsupp/Basic): add `Finsupp.(un)curry_single` and `@[simps]` to `Finsupp.finsuppProd(L)Equiv` --- This was raised by @Whysoserioushah regarding #21732. Adding the lemmas and `@[simps]` on their own breaks [this lemma](https://github.com/leanprover-community/mathlib4/blob/eab98761167237d45662033394ebd5ee28613aac/Mathlib/RingTheory/AlgebraTower.lean#L124) and the simplest way to fix it (and justify removing `Finsupp.finsuppProdLEquiv_symm_apply`) is to make the argument to `Finsupp.uncurry_apply_pair` (added in #22939) any term of the product type, but maybe that would be too eager a simp lemma? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 15/14 Mathlib/Data/Finsupp/Basic.lean,Mathlib/LinearAlgebra/Finsupp/Defs.lean 2 1 ['github-actions'] nobody
14-52259
14 days ago
14-55090
14 days ago
14-55079
14 days
22402 pechersky
author:pechersky
chore(Algebra/Order/Hom): initliaze simps for Order(Add)MonoidFoo and define `Order(Add)MonoidIso.symm` bringing along a copy of lemmas from MulEquiv clean up the simps --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
97/1 Mathlib/Algebra/Order/Hom/Monoid.lean 1 3 ['github-actions', 'pechersky', 'urkud'] nobody
14-28953
14 days ago
31-71809
1 month ago
31-71859
31 days
22242 pimotte
author:pimotte
feat(Combinatorics/SimpleGraph): miscellaneous walk lemmas Adds some miscellaneous lemmas on walks, in preparation for Tutte's theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) [Thread on Tutte](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tutte's.20theorem) [How these lemma's would be used can be found in this commit (marked as In walk_lemmas)](https://github.com/pimotte/TutteLean/blob/28110387bcda3e7c2f4bc137f877420eed30ea49/TutteLean/Part2.lean#L43) Hopefully the last prequisite PR, after this I expect it all to be the actual proof of Tutte's:D maintainer-merge t-combinatorics 127/2 Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 5 17 ['YaelDillies', 'b-mehta', 'github-actions', 'pimotte'] nobody
14-14793
14 days ago
33-76274
1 month ago
35-12072
35 days
23038 Parcly-Taxel
author:Parcly-Taxel
feat: IMO 2015 Q6 IMO 293/0 Archive.lean,Archive/Imo/Imo2015Q6.lean,Mathlib.lean,Mathlib/Data/Int/FinsetSumBounds.lean 4 1 ['github-actions'] nobody
14-14509
14 days ago
14-20628
14 days ago
14-20617
14 days
20071 vasnesterov
author:vasnesterov
refactor(Data/Seq): reorganize `Seq.lean` The `Seq` API in the `Seq.lean` file was somewhat disorganized. This PR reorganizes the file to make it more structured. It arranges the API in the following way: 1. Definitions and the `get?` function. 2. Constructors: `nil` and `cons`. 3. Destructors: `head`, `tail`, and `destruct`. 4. Recursion and corecursion principles. 5. Bisimulation. 6. `Terminates` API. 7. `Membership` for sequences. 8. Conversion to and from other types (`List`, `Stream`, `MLList`) and `take` operation as it is required for conversion to `List`. 9. Definitions of other operations on sequences (`append`, `map`, `join`, etc.). 10. Lemmas about conversions and operations, organized into sections by the primary operation of each lemma. --- I tried not to change any proofs here, but had to rewrite some of them due to dependencies and to avoid importing `apply_fun`. The proofs of the following lemmas were changed: * `head_eq_some` * `head_eq_none` * `cons_ne_nil` * `cons_eq_cons` * `ofList` I found it useful to run `git diff --color-moved` to verify that the actual difference is just these proofs and adding sections. - [x] depends on: #19859 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 501/441 Mathlib/Data/Seq/Seq.lean,scripts/noshake.json 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
14-9144
14 days ago
14-9159
14 days ago
21-42601
21 days
23034 plp127
author:plp127
feat: `AddMonoidWithOne.toCharZero` This replaces `StrictOrderedSemiring.toCharZero`. Requested by @vihdzp in [#Is there code for X? > OrderedAddCommGroup has CharZero](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/OrderedAddCommGroup.20has.20CharZero) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
7/2 Mathlib/Algebra/Order/Ring/Defs.lean 1 7 ['eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127'] nobody
13-86208
13 days ago
14-25304
14 days ago
14-32788
14 days
23045 YaelDillies
author:YaelDillies
chore(LinearIndependent): rename `linearCombination` lemmas Follow the naming convention around unnamespacing and appending `_injective` better. From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
20/9 Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean 3 1 ['github-actions'] nobody
13-79904
13 days ago
13-80510
13 days ago
13-80561
13 days
22464 adomani
author:adomani
feat(CI): declarations diff in Lean Rewrites the `declaration_diff` script in Lean. You can see the effect of the new script in the testing branch #22497. The new CI step runs in approximately 5mins, but is separate from the `build` step. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 151/0 .github/workflows/PR_summary_lean.yml,scripts/README.md,scripts/declarations_diff.lean,scripts/declarations_diff_lean_shell_glue.sh 4 3 ['bryangingechen', 'github-actions'] nobody
13-78879
13 days ago
27-63283
27 days ago
27-63279
27 days
23048 scholzhannah
author:scholzhannah
feat: PartialEquiv on closed sets restricts to closed map This PR shows that a PartialEquiv that is continuous on both source and target restricts to a homeomorphism. It then uses that to show that a PartialEquiv with closed source and target and which is continuous on both the source and target restricts to a closed map. --- I need the latter statement to prove that one can transport a CW complex along a PartialEquiv. I had trouble finding a good spot for these statements; I hope this solution works. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 53/0 Mathlib.lean,Mathlib/Topology/PartialEquiv.lean 2 1 ['github-actions'] nobody
13-74224
13 days ago
13-74224
13 days ago
13-74281
13 days
23057 JovanGerb
author:JovanGerb
doc: library note about argument order in instances This is a follow up on #22953 and #22968. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge 24/2 Mathlib/Algebra/HierarchyDesign.lean,Mathlib/CategoryTheory/Limits/Shapes/Countable.lean,Mathlib/CategoryTheory/Limits/Shapes/FiniteLimits.lean,Mathlib/Logic/IsEmpty.lean 4 2 ['github-actions', 'grunweg'] nobody
13-64266
13 days ago
13-64267
13 days ago
13-67316
13 days
23063 xroblot
author:xroblot
feat(ZLattice): add `Real.finrank_eq_int_finrank_of_discrete` Prove the following result: ```lean theorem Real.finrank_eq_int_finrank_of_discrete {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E] {s : Set E} (hs : DiscreteTopology (span ℤ s)) : Set.finrank ℝ s = Set.finrank ℤ s ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
38/0 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/Topology/Homeomorph/Lemmas.lean 3 1 ['github-actions'] nobody
13-62349
13 days ago
13-62451
13 days ago
13-62458
13 days
22582 vlad902
author:vlad902
feat: generalize theorems with linter fixes This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile. Otherwise, the type class is not being generalized, but can simply be replaced by implicit type class synthesis (or an implicit type class in a variable block being pulled in.) The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 7b436512017640c3c33aea50b2435b2ee0d995c9. Note that this PR specifically generalizes theorems across a range of files and type classes, the common theme is that the resulting changes all cause type classes in variable declarations to go unused. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 new-contributor 30/50 Mathlib.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Normed/Operator/Compact.lean,Mathlib/GroupTheory/Perm/Subgroup.lean,Mathlib/Topology/Algebra/ConstMulAction.lean 8 10 ['github-actions', 'urkud', 'vlad902'] urkud
assignee:urkud
13-8434
13 days ago
14-53536
14 days ago
26-31932
26 days
22824 alreadydone
author:alreadydone
chore: generalize universes for (pre)sheaves of types --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 164/132 Mathlib/CategoryTheory/Category/Pairwise.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/PresheafOfFunctions.lean,Mathlib/Topology/Sheaves/SheafCondition/OpensLeCover.lean,Mathlib/Topology/Sheaves/SheafCondition/PairwiseIntersections.lean,Mathlib/Topology/Sheaves/SheafCondition/UniqueGluing.lean,Mathlib/Topology/Sheaves/SheafOfFunctions.lean 7 6 ['alreadydone', 'github-actions', 'joelriou', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
13-6687
13 days ago
13-6687
13 days ago
16-47191
16 days
22052 FLDutchmann
author:FLDutchmann
feat(NumberTheory/SelbergSieve): define Lambda-squared sieves and prove important properties This PR: * Defines lambda-squared sieves. * Proves they are upper bound sieves. * Proves that the corresponding main sum is a quadratic form. --- - [x] depends on: #21880 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis t-number-theory 246/1 Mathlib/NumberTheory/SelbergSieve.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
12-70170
12 days ago
12-71365
12 days ago
12-71353
12 days
23066 ybenmeur
author:ybenmeur
feat: more lemmas for Tannaka duality for finite groups Prove more of the lemmas needed to prove Tannaka duality for finite groups. --- This is everything that doesn't depend on `eval_of_algHom` (#23065). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
50/0 Mathlib/RepresentationTheory/Tannaka.lean 1 1 ['github-actions'] nobody
12-67251
12 days ago
13-59793
13 days ago
13-59845
13 days
22971 mbkybky
author:mbkybky
refactor(FieldTheory/KrullTopology): clean up `KrullTopology.lean` Clean up `KrullTopology.lean` by moving some lemmas to their appropriate locations in earlier files. Also move some lemmas from `IntermediateField/Adjoin/Defs.lean` to `IntermediateField/Basic.lean` since they are used in the proofs of new theorems in `IntermediateField/Algebraic.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
130/126 Mathlib/FieldTheory/AbelRuffini.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/FieldTheory/SeparableDegree.lean 7 11 ['Thmoas-Guan', 'github-actions', 'tb65536', 'yhtq'] nobody
12-61368
12 days ago
13-76247
13 days ago
15-1646
15 days
21585 LeoDog896
author:LeoDog896
feat(Computability/CFG): lemmas about nonterminals helps with reasoning about CFGs with a language of the empty set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-computability 30/2 Mathlib/Computability/ContextFreeGrammar.lean 1 19 ['LeoDog896', 'YaelDillies', 'github-actions', 'madvorak'] nobody
12-38193
12 days ago
14-54372
14 days ago
51-36553
51 days
22771 alreadydone
author:alreadydone
feat(Homotopy/Lifting): monodromy of a covering map and lifting criterion Definition 2.1 in https://ncatlab.org/nlab/show/monodromy. Also: + Extract `FundamentalGroupoid.map (f : C(X, Y)) : FundamentalGroupoid X ⥤ FundamentalGroupoid Y` from `fundamentalGroupoidFunctor : TopCat ⥤ CategoryTheory.Grpd` + Define `FundamentalGroup.map (f : C(X, Y)) (x : X) : FundamentalGroup X x →* FundamentalGroup Y (f x)` and `mapOfEq : FundamentalGroup X x →* FundamentalGroup Y y` that takes an assumption `f x = y`. + Redefine `FundamentalGroup` to be `End` rather than `Aut`: since `FundamentalGroupoid` is a groupoid, `End` already has a group structure. + Golf within the file FundamentalGroupoid/Basic. + Generalize `toArrow` up to `fromPath` in `FundamentalGroupoid/FundamentalGroup` from `X : TopCat` to `[TopologicalSpace X]`. Also golfs some proofs and redefines --- - [x] depends on: #22649 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 193/147 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 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
12-21235
12 days ago
13-1351
13 days ago
13-3252
13 days
21080 loefflerd
author:loefflerd
feat(Topology/UniformSpace): uniform approximation by locally constant functions Show that any function from a profinite space to a uniform space can be uniformly approximated by linear combinations of indicator functions of clopen sets. --- - [x] depends on: #20687 - [x] depends on: #21079 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 120/0 Mathlib.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/UniformSpace/CoveringProfinite.lean 3 5 ['github-actions', 'loefflerd', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
12-8947
12 days ago
28-50753
28 days ago
28-51689
28 days
19920 grunweg
author:grunweg
chore(overview.yaml): mention more differential geometry items --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry documentation 24/0 docs/overview.yaml 1 2 ['github-actions', 'grunweg'] nobody
12-5299
12 days ago
22-42839
22 days ago
22-42825
22 days
23122 YaelDillies
author:YaelDillies
feat: grading a flag A flag inherits the grading of its ambient order. From MiscYD --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 69/0 Mathlib/Order/Grade.lean 1 3 ['YaelDillies', 'b-mehta', 'github-actions'] nobody
12-3700
12 days ago
12-43059
12 days ago
12-43105
12 days
22786 sgouezel
author:sgouezel
feat: the equiv between the tangent space of the product and the product of the tangent spaces is smooth --- - [x] depends on: #22804 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 139/0 Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
11-82943
11 days ago
11-82961
11 days ago
12-4482
12 days
23147 vlad902
author:vlad902
feat: generalize Mathlib.MeasureTheory This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 t-measure-probability 60/61 Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/Function/AEMeasurableSequence.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Group/Arithmetic.lean,Mathlib/MeasureTheory/Group/GeometryOfNumbers.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Integral/BochnerL1.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/AEMeasurable.lean,Mathlib/MeasureTheory/Measure/Content.lean 16 7 ['github-actions', 'grunweg', 'leanprover-bot', 'vlad902'] nobody
11-71153
11 days ago
11-73439
11 days ago
11-73497
11 days
23153 vlad902
author:vlad902
feat: generalize Mathlib.Algebra.Order + Polynomial This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 t-algebra
label:t-algebra$
36/36 Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/Floor.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Ring/Idempotent.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Sub/Unbundled/Hom.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/SMul.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Polynomial/Sequence.lean 21 4 ['github-actions', 'leanprover-bot', 'vlad902'] nobody
11-66851
11 days ago
11-70339
11 days ago
11-70391
11 days
23154 vlad902
author:vlad902
feat(Algebra/FreeMonoid): isomorphisms for the free monoid on zero/one generators In parallel to FreeGroup.freeGroupEmptyEquivUnit and FreeGroup.freeGroupUnitEquivInt, prove that the free monoid on zero/one generators is isomorphic to Unit/ℕ. t-algebra
label:t-algebra$
18/0 Mathlib/Algebra/FreeMonoid/Basic.lean 1 1 ['github-actions'] nobody
11-64904
11 days ago
11-66499
11 days ago
11-66552
11 days
23018 gio256
author:gio256
feat: subscript and superscript delaborators We add the functions `delabSubscript` and `delabSuperscript` in the `Mathlib.Tactic` namespace. These delaborators are triggered only if the entirety of the provided expression can be subscripted (respectively, superscripted). The delaborators are not exhaustive, in that they will not successfully delaborate every expression that is valid in a subscript or superscript. We instead aim to make them overly conservative, so that any expression which is successfully delaborated must be subscriptable (or superscriptable). --- This PR is intended to serve as a predecessor to #20719. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) infinity-cosmos t-meta 206/10 Mathlib/Util/Superscript.lean,MathlibTest/superscript.lean 2 32 ['eric-wieser', 'gio256', 'github-actions'] nobody
11-63355
11 days ago
12-58249
12 days ago
12-59502
12 days
22837 joneugster
author:joneugster
feat(Data/Set/Basic): add subset_iff and not_mem_subset_iff Add `Set.subset_iff` for consistent API with `Finset.subset_iff`. Add `Set.not_mem_subset_iff` and `Finset.not_mem_subset_iff`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-data 9/0 Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Set/Basic.lean 2 2 ['Ruben-VandeVelde', 'github-actions'] nobody
11-49702
11 days ago
16-4989
16 days ago
20-67495
20 days
23074 plp127
author:plp127
feat: `Fact (0 < 1)` and `Fact (0 ≤ 1)` Adds `Fact (0 < 1)` and `Fact (0 ≤ 1)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
7/0 Mathlib/Algebra/Order/ZeroLEOne.lean 1 4 ['Ruben-VandeVelde', 'github-actions', 'plp127', 'vlad902'] nobody
11-15809
11 days ago
13-48629
13 days ago
13-48678
13 days
22163 kebekus
author:kebekus
feat: canonical tensors in inner product spaces Given an `InnerProductSpace ℝ E`, this file defines two canonical tensors. * `InnerProductSpace.canonicalContravariantTensor E : E ⊗[ℝ] E →ₗ[ℝ] ℝ`. This is the element corresponding to the inner product. * If `E` is finite-dimensional, then `E ⊗[ℝ] E` is canonically isomorphic to its dual. Accordingly, there exists an element `InnerProductSpace.canonicalCovariantTensor E : E ⊗[ℝ] E` corresponding to `InnerProductSpace.canonicalContravariantTensor E` under this identification. 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 canonical tensors are useful for defining the Laplace operator on inner product spaces in a coordinate-free way. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 62/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/CanonicalTensor.lean 2 5 ['adomani', 'github-actions', 'kebekus', 'loefflerd'] nobody
11-15307
11 days ago
38-74408
1 month ago
38-74460
38 days
23173 vlad902
author:vlad902
feat: generalize half of Mathlib.RingTheory This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 t-algebra
label:t-algebra$
56/53 Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Ideal/Basis.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Nonunits.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Span.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPowerSeries/PiTopology.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/RingTheory/Polynomial/Eisenstein/Basic.lean,Mathlib/RingTheory/Polynomial/Ideal.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/RingHom/Finite.lean,Mathlib/RingTheory/RootsOfUnity/Basic.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean 26 4 ['github-actions', 'leanprover-bot', 'vlad902'] nobody
10-79935
10 days ago
10-81784
10 days ago
10-81837
10 days
23111 pechersky
author:pechersky
feat(Topology/MetricSpace): pseudometrics as bundled functions Preparation for results using families of pseudometrics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-topology 211/0 Mathlib.lean,Mathlib/Topology/MetricSpace/BundledFun.lean 2 35 ['YaelDillies', 'github-actions', 'pechersky', 'plp127'] nobody
10-76818
10 days ago
10-77980
10 days ago
12-30534
12 days
23187 vlad902
author:vlad902
feat: generalize Mathlib.NumberTheory This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 34/29 Mathlib/NumberTheory/ArithmeticFunction.lean,Mathlib/NumberTheory/EulerProduct/Basic.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/NumberTheory/LSeries/Dirichlet.lean,Mathlib/NumberTheory/LegendreSymbol/JacobiSymbol.lean,Mathlib/NumberTheory/ModularForms/SlashActions.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/NumberTheory/Zsqrtd/GaussianInt.lean 12 4 ['MichaelStollBayreuth', 'github-actions', 'leanprover-bot', 'vlad902'] nobody
10-61518
10 days ago
10-71267
10 days ago
10-71325
10 days
23192 vlad902
author:vlad902
feat: generalize Mathlib.GroupTheory This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
12/11 Mathlib/GroupTheory/Congruence/BigOperators.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/GroupTheory/Subgroup/Saturated.lean,Mathlib/GroupTheory/Torsion.lean 10 4 ['github-actions', 'leanprover-bot', 'vlad902'] nobody
10-61155
10 days ago
10-70125
10 days ago
10-70182
10 days
23191 vlad902
author:vlad902
feat: generalize Mathlib.FieldTheory This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
14/13 Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/IsPerfectClosure.lean,Mathlib/FieldTheory/Minpoly/Field.lean 6 6 ['github-actions', 'leanprover-bot', 'tb65536', 'vlad902'] nobody
10-60488
10 days ago
10-70610
10 days ago
10-70660
10 days
23190 vlad902
author:vlad902
feat: generalize Mathlib.Algebra.Algebra + Module This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
47/46 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Quasispectrum.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean 13 7 ['eric-wieser', 'github-actions', 'leanprover-bot', 'vlad902'] nobody
10-59257
10 days ago
10-70624
10 days ago
10-70673
10 days
23194 vlad902
author:vlad902
feat: generalize rest of Mathlib.RingTheory This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
42/42 Mathlib/RingTheory/Adjoin/Field.lean,Mathlib/RingTheory/Adjoin/PowerBasis.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/DedekindDomain/Basic.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Basic.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/OreLocalization/OreSet.lean,Mathlib/RingTheory/Regular/RegularSequence.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/Finite.lean,Mathlib/RingTheory/Unramified/Basic.lean 25 4 ['github-actions', 'leanprover-bot', 'vlad902'] nobody
10-55391
10 days ago
10-69294
10 days ago
10-69351
10 days
23161 mans0954
author:mans0954
feature(Data/Finset/RangeDistance): abs_sub_lt_of_mem_finset_range The distance between two elements of `Finset.range N` (i.e. absolute value of the difference as integers) is less than `N`. A lemma I found useful for something I was working on, so sharing here in case it's of wider interest. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 30/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 3 ['fbarroero', 'github-actions'] nobody
10-52907
10 days ago
11-55024
11 days ago
11-55022
11 days
22278 robin-carlier
author:robin-carlier
feat(CategoryTheory/Sums/Basic): functors out of `Sum` We prove that the category structure defined in `CategoryTheory/Sums/Basic` satisfies a universal property that exhibits it as the binary coproduct of categories. In practive, this means that we construct an equivalence of categories `(A ⊕ A') ⥤ B ≌ (A ⥤ B) × (A' ⥤ B)`, which we characterize via its compositions in both directions with `Sum.inl_`, `Sum.inr_`, `Prod.fst` and `Prod.snd`. --- I was unsure whether or not this should go in a separate new file in the `CategoryTheory/Sum` directory, as it brings the product as import, but it seems that this file was almost never imported anyways, so that it would be harmless to keep fragmentation to a minimum here. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 168/2 Mathlib.lean,Mathlib/CategoryTheory/Sums/Basic.lean,Mathlib/CategoryTheory/Sums/Products.lean 3 15 ['b-mehta', 'github-actions', 'joelriou', 'robin-carlier'] nobody
10-47017
10 days ago
10-47017
10 days ago
29-45989
29 days
20495 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Combinatorics/Nullstellensatz): Alon's combinatorial Nullstellensatz This is a formalization of Alon's Combinatorial Nullstellensatz. Meanwhile, prove several results * a multivariate polynomial that vanishes on a too large product set vanishes identically Probably, this file should belong to the `RingTheory.MvPolynomial` hierarchy. --- - [x] depends on: #16177 - [x] depends on: #21546 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 395/1 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,docs/references.bib 6 n/a ['AntoineChambert-Loir', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot'] YaelDillies
assignee:YaelDillies
10-29981
10 days ago
unknown
unknown
23213 mattrobball
author:mattrobball
chore(RingTheory.Derivation): add a `LinearMapClass` instance Often we want `simp` to call `map_zero` or `map_add` for a `Derivation`. To find the `ZeroHomClass` or `AddHomClass` instance necessary it starts to climb up the type class hierarchy including looking for a `LinearMapClass` instance which didn't exist. Consequently, sythesis would look in a lot of crazy places trying to summon ring structures on the module or on derivations itself. Here we add the missing `LinearMapClass` instance so that `simp` is more efficient. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
5/3 Mathlib/RingTheory/Derivation/Basic.lean 1 6 ['github-actions', 'leanprover-bot', 'mattrobball'] nobody
9-79787
9 days ago
9-83405
9 days ago
9-83458
9 days
23214 mattrobball
author:mattrobball
perf(Module.LinearMap.Defs): deprioritize projections to parents for `SemilinearMapClass` Trying to figure out if a given type has a `SemilinearMapClass` instance when all we want is an `AddHomClass` or a `MulActionSemiHomClass` can be quite expensive since there are multiple ways to crawl the algebraic hierarchy to generate `LinearMapClass` instances. If these fail, then they fail slowly. We deprioritize the projections from `SemilinearMapClass` to `AddHomClass` and `MulActionSemiHomClass` to make this one of the last choices. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/0 Mathlib/Algebra/Module/LinearMap/Defs.lean 1 4 ['github-actions', 'leanprover-bot', 'mattrobball'] nobody
9-72756
9 days ago
9-76301
9 days ago
9-76350
9 days
23220 mattrobball
author:mattrobball
refactor(Module.LinearMap.Defs): make `SemilinearMapClass` extend `AddMonoidHomClass` Currently `SemilinearMapClass` extends `AddHomClass`. As both `SemilinearMapClass.toAddHomClass` and `AddMonoidHomClass.toAddHomClass` are projections, they have the same priority. With `SemilinearMapClass` declared later, it wins causing expensive failed searches in the algebraic hierarchy before `AddMonoidHomClass.toAddHomClass` is found. The current instance `SemilinearMapClass.toAddMonoidHomClass` has lower priority so we may need to downgrade the priority of the projection also. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/10 Mathlib/Algebra/Module/LinearMap/Defs.lean 1 9 ['eric-wieser', 'github-actions', 'leanprover-bot', 'mattrobball'] nobody
9-34982
9 days ago
9-51475
9 days ago
9-51528
9 days
22457 Komyyy
author:Komyyy
feat(Mathlib/Computability/Ackermann): Ackermann function is computable It had been proved that Ackermann function is not primitive recursive, but not been proved that it's computable. I proved that. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability 51/1 Mathlib/Computability/Ackermann.lean 1 11 ['Komyyy', 'github-actions', 'vihdzp'] nobody
9-31777
9 days ago
28-40571
28 days ago
29-69347
29 days
21966 vasnesterov
author:vasnesterov
feat(Tactic/Order): support `⊤`, `⊥`, and lattice operations Support `⊤`, `⊥`, and lattice operations in the `order` tactic. --- - [x] depends on: #21877 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 227/47 Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/CollectFacts.lean,Mathlib/Tactic/Order/Graph/Basic.lean,Mathlib/Tactic/Order/Preprocessing.lean,MathlibTest/order.lean,scripts/noshake.json 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
9-1757
9 days ago
9-1771
9 days ago
32-11637
32 days
23231 urkud
author:urkud
feat(LinearPMap): more lemmas about `supSpanSingleton` Also get rid of `erw`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
26/5 Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Span/Defs.lean 2 1 ['github-actions'] nobody
8-71677
8 days ago
8-71736
8 days ago
8-71725
8 days
11563 YaelDillies
author:YaelDillies
feat: `∑ i ∈ s with hi : p i, f i hi` syntax for big operators Define new notation for `Finset.sum`/`Finset.prod`. `∑ i ∈ s with hi : p i, f i hi` now is notation for `∑ i : s.filter p, f i.1 (mem_filter.1 i.2).2`. --- - [x] depends on: #6795 Other notations we could have are * `∑ hi : i ∈ s, f i hi` as notation for `∑ i : s, f i.1 i.2` * `∑ hi : i ∈ s with p i, f i hi` as notation for `∑ i : s.filter p, f i.1 (mem_filter.1 i.2).1` * `∑ hi : i ∈ s with hpi : p i, f i hi hpi` as notation for `∑ i : s.filter p, f i.1 (mem_filter.1 i.2).1 (mem_filter.1 i.2).2` but Eric seems mildly unhappy about them. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-meta
label:t-algebra$
27/18 Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean 1 27 ['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'kbuzzard', 'kmill', 'leanprover-community-mathlib4-bot'] nobody
8-55070
8 days ago
8-55087
8 days ago
56-74783
56 days
22048 YaelDillies
author:YaelDillies
feat: delaborator for `∑ x ∈ s with p x, f x` notation Co-authored-by: Kyle Miller --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 142/21 Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,MathlibTest/BigOps.lean 2 20 ['YaelDillies', 'b-mehta', 'github-actions', 'kmill'] nobody
8-53646
8 days ago
8-53661
8 days ago
39-11093
39 days
23254 mariainesdff
author:mariainesdff
feat(Data/NNReal/Basic): add multiset_prod_le_pow_card --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 17/0 Mathlib/Data/NNReal/Basic.lean 1 2 ['github-actions', 'mariainesdff'] nobody
7-68758
7 days ago
7-81456
7 days ago
7-81445
7 days
23268 mariainesdff
author:mariainesdff
feat(Analysis/Normed/Unbundled/RingSeminorm): add RingNorm.to_normedRing --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 25/0 Mathlib/Analysis/Normed/Unbundled/RingSeminorm.lean 1 1 ['github-actions'] nobody
7-65522
7 days ago
7-65584
7 days ago
7-65573
7 days
22966 alreadydone
author:alreadydone
feat(RingTheory): rank of rational function field extension + `IsAlgebraic/IsIntegral R S` + `IsPushout R S R' S'` ⇒ `IsAlgebraic/IsIntegral R' S'` (for the "IsAlgebraic" version we currently need to assume `NoZeroDivisor R'` and `FaithfulSMul R R'` (i.e. `Injective (algebraMap R R')`) + `IsAlgebraic R S` + `IsFractionRing R R'` + `IsFractionRing S S'` ⇒ `IsPushout R S R' S'` (need to assume `FaithfulSMul R S` + `NonZeroDivisors S`) As consequences, we have `rank (f R) (f S) = rank R S` for `f = FractionRing (Polynomial ·)` or `FractionRing (MvPolynomial _ ·)` assuming `IsAlgebraic R S` + `IsDomain S` + `FaithfulSMul R S`. (For `f = Polynomial` or `MvPolynomial _`, `NoZeroDivisors R` is enough by #23095.) --- - [x] depends on: #23095 - [x] depends on: #23096 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
270/46 Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Algebraic/Integral.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 5 9 ['Louddy', 'alreadydone', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
7-37597
7 days ago
7-37611
7 days ago
8-59309
8 days
23293 mans0954
author:mans0954
refactor(Algebra/Polynomial/Roots): nthRoots as a Finset If `nthRoots n a` is defined as the roots of `(X : R[X]) ^ n - C a` as a multiset then surely `nthRootsFinset n a` should be the roots of `(X : R[X]) ^ n - C a` as a Finset? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
41/32 Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Basic.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean 3 1 ['github-actions'] nobody
7-10665
7 days ago
7-13534
7 days ago
7-13587
7 days
23298 joelriou
author:joelriou
feat(CategoryTheory): stability properties of morphisms properties in functor categories Given `W : MorphismProperty C` and a category `J`, we study the stability properties of `W.functorCategory J : MorphismProperty (J ⥤ C)`. Under suitable assumptions, we also show that if monomorphisms in `C` are stable under transfinite compositions, then the same holds in the category `J ⥤ C`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 120/0 Mathlib.lean,Mathlib/CategoryTheory/MorphismProperty/FunctorCategory.lean 2 1 ['github-actions'] nobody
7-2838
7 days ago
7-3687
7 days ago
7-3676
7 days
23299 DavidLedvinka
author:DavidLedvinka
feat(Analysis): add `mlconvolution` and `lconvolution`, Convolution with the Lebesgue integral Create LConvolution.lean which defines convolution using the Lebesgue integral. I plan to add more API but wanted to make sure the definition/notation are satisfactory. The main intended application of this is to prove that the pdf of a product (sum) of independent random variables is given by the convolution of their pdfs. new-contributor t-analysis 75/0 Mathlib.lean,Mathlib/Analysis/LConvolution.lean 2 1 ['github-actions'] nobody
6-85392
6 days ago
6-85392
6 days ago
6-85442
6 days
23162 mans0954
author:mans0954
feature(Analysis/SpecialFunctions/Complex/Log): exp_mul_I_injOn $e^{θi}$ is injective on `(-π, π]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 21/0 Mathlib/Analysis/SpecialFunctions/Complex/Log.lean,Mathlib/Data/Complex/Basic.lean 2 5 ['fbarroero', 'github-actions', 'mans0954', 'urkud'] nobody
6-85206
6 days ago
11-53194
11 days ago
11-53243
11 days
17627 hrmacbeth
author:hrmacbeth
feat: universal properties of vector bundle constructions Characterizations for the smoothness of maps into the total spaces of (1) the direct sum of two vector bundles; (2) the pullback of a vector bundle. This gap in the library was exposed by #17358. --- - [x] depends on: #22804 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 311/9 Mathlib/Data/Bundle.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/Pullback.lean,Mathlib/Topology/FiberBundle/Constructions.lean 4 10 ['github-actions', 'hrmacbeth', 'mathlib4-dependent-issues-bot', 'sgouezel'] nobody
6-73312
6 days ago
11-82898
11 days ago
12-67361
12 days
8738 grunweg
author:grunweg
feat: differential of a local diffeomorphism is a continuous linear equivalence With the `localInverse` definition, this is a straightforward argument using the chain rule. ------ - [x] depends on: #23219 (the `localInverse` API) - [x] depends on: #8736 Unclear/open question: is there a better solution than these helper lemmas? The current approach feels unelegant. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 92/10 Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 2 20 ['ADedecker', 'alreadydone', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'sgouezel', 'winstonyin'] nobody
6-72725
6 days ago
6-72728
6 days ago
42-12719
42 days
20704 winstonyin
author:winstonyin
feat: existence of local flows of vector fields I formalise the existence theorem for local flows of time-dependent vector fields (`IsPicardLindelof.exists_forall_mem_closedBall_eq_hasDerivWithinAt`). Currently, if we wish to show the existence of a family of integral curves indexed by their initial conditions, it is necessary to prove the hypotheses of the vector field (Lipschitz continuity within a closed ball, etc.), centred around each of these initial conditions. I have refactored the current proof of the Picard-Lindelöf theorem to allow the initial point to be different from the point about which the hypotheses on the vector field are stated. This way, integral curves and flows are treated on equal footing. Credits going to the original author @urkud, I have completely rewritten the file to accommodate different design choices. Many of the proof steps are nevertheless inspired by Yury's formalisation. * The `PicardLindelof` data structure is removed entirely. It merely bundles the non-Prop arguments into itself. Although it simplifies the assumptions in subsequent proofs, it obscures the (in)dependence on the relevant constants in the type description of theorems. Since `IsPicardLindelof` is already a public facing structure, we should also simply use it internally, without any loss. * In particular, I remove the completely superficial dependence of `FunSpace` on the `PicardLindelof` structure. * `FunSpace` no longer specifies the initial condition. It only needs the initial point to lie in a closed ball (which will be the domain of the local flow). * I avoid defining new non-Prop things that are only used in the proof steps, such as the current `vComp` and `tDist`. The proofs are a little longer as a result, but they are also more readable. * I place all private (i.e. only internally used) theorems under the namespace `FunSpace`, to guide users to the proper theorems in the public API. This is part of my effort to show that the solution to an ODE depends smoothly on the initial condition, or on parameters of the ODE. This is in turn needed for many results about manifolds, such as the fact that $C^1$ vector fields on compact manifolds always have global integral curves (or global flows). I especially welcome any suggestions to rename lemmas or define new structures to simplify the statements. I'm happy to write up the proof in LaTeX as well, if it's going to help reviewers. - [x] depends on: #20696 - [x] depends on: #20731 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics t-analysis 561/362 Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,docs/1000.yaml,docs/undergrad.yaml 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] grunweg
assignee:grunweg
6-72479
6 days ago
12-17675
12 days ago
31-2018
31 days
22069 Raph-DG
author:Raph-DG
feat(LinearMap): Added lemmas relating kernels of linear maps to Submodule.map Added the lemma ne_map_or_ne_kernel_inter_of_lt stating that if A < B as submodules, then for any linear map f, `ker f ⊓ A ≠ ker f ⊓ B ∨ Submodule.map f A ≠ Submodule.map f B`. We also prove the corollaries ker_inter_mono_of_map_eq and map_mono_of_ker_inter_eq. Co-authored-by: Raphael Douglas Giles (raphaeldouglasgiles@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
28/0 Mathlib/LinearAlgebra/Span/Basic.lean 1 14 ['Paul-Lez', 'Raph-DG', 'github-actions', 'j-loreaux'] nobody
6-70128
6 days ago
6-70145
6 days ago
40-55249
40 days
23280 mattrobball
author:mattrobball
chore(Ring.Defs): remove `Ring.toSemiring` The generic instance `Ring.toSemiring` is superfluous and seems to slow to down the build slightly. Since it serves no purpose, we remove it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
0/7 Mathlib/Algebra/Ring/Defs.lean 1 4 ['github-actions', 'leanprover-bot', 'mattrobball'] nobody
6-69624
6 days ago
6-69624
6 days ago
7-49521
7 days
23065 ybenmeur
author:ybenmeur
feat: lemma `eval_of_algHom` Let `k` be an integral domain and `G` an arbitrary finite set. Then any algebra morphism `φ : (G → k) →ₐ[k] k` is an evaluation map. --- I don't know where to put this lemma. Needed for #22176. Output of `#find_home`: `[Mathlib.LinearAlgebra.Matrix.ToLin, Mathlib.Algebra.Quaternion, Mathlib.Algebra.Azumaya.Matrix, Mathlib.LinearAlgebra.Dimension.Free, Mathlib.Algebra.Module.FinitePresentation, Mathlib.SetTheory.Cardinal.Free, Mathlib.RingTheory.MvPolynomial.Basic, Mathlib.RingTheory.Polynomial.Basic]`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
24/0 Mathlib/RepresentationTheory/Tannaka.lean 1 1 ['github-actions'] nobody
6-66771
6 days ago
6-66771
6 days ago
13-60191
13 days
22777 xroblot
author:xroblot
feat(NumberField/CanonicalEmbedding/NormLeOne): compute the volume of `NormLeOne` We compute the volume of `normLeOne K`. This PR is part of the proof of the Analytic Class Number Formula. --- - [x] depends on: #22756 - [x] depends on: #22115 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 198/4 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
6-63720
6 days ago
6-63722
6 days ago
6-65945
6 days
22882 xroblot
author:xroblot
feat(NumberField/Units): add `regOfFamily` and refactor `regulator` This is a refactor of `NumberField.regulator`. We introduce `regOfFamily` which is the regulator of a family of units indexed by `Fin (Units.rank K)`. It is equal to `0` if the family is not `isMaxRank`. This a `Prop` that says that the image of the family in the `logSpace K` is linearly independent and thus generates a full lattice. All the results about computing the `regulator` by some matrix determinant computation are now proved more generally for `regOfFamily`. The `regulator` of a number field is still defined as the covolume of the `unitLattice` and we prove that is is also equal to `regOfFamily` of the system of fundamental units `fundSystem K`. Together with the results about computing `regOfFamily`, we recover that way the results about computing the regulator. --- - [x] depends on: #22868 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 162/58 Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/NumberTheory/NumberField/Units/Regulator.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
6-59554
6 days ago
8-65926
8 days ago
15-3305
15 days
23205 xroblot
author:xroblot
feat(QuotientGroup): surjectivity and kernel of `QuotientGroup.map` Prove formulas for the kernel of `QuotientGroup.lift` and `QuotientGroup.map` and that these maps are surjective if the corresponding functions are surjective. --- - [x] depends on: #23269 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
26/0 Mathlib/GroupTheory/QuotientGroup/Defs.lean 1 12 ['eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'xroblot'] nobody
6-10085
6 days ago
6-47718
6 days ago
9-49378
9 days
23331 kebekus
author:kebekus
feat: define the divisor of an analytic function Define the divisor of an analytic function in one variable, in complete analogy with the definition that exists for meromorphic functions. 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 157/20 Mathlib.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Divisor.lean,Mathlib/Analysis/Analytic/Order.lean 4 1 ['github-actions'] nobody
6-8668
6 days ago
6-8676
6 days ago
6-8823
6 days
21088 erdOne
author:erdOne
feat(RingTheory): `dim R + 1 ≤ dim R[X]` We add the following results - `ringKrullDim_quotient_succ_le_of_nonZeroDivisor`: If `r` is not a zero divisor, then `dim R/r + 1 ≤ dim R`. - `ringKrullDim_succ_le_ringKrullDim_polynomial`: `dim R + 1 ≤ dim R[X]`. - `ringKrullDim_add_enatCard_le_ringKrullDim_mvPolynomial`: `dim R + #σ ≤ dim R[σ]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
218/12 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/KrullDimension/NonZeroDivisors.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean 9 10 ['erdOne', 'eric-wieser', 'github-actions', 'riccardobrasca'] nobody
5-80394
5 days ago
5-80394
5 days ago
24-61196
24 days
23335 kim-em
author:kim-em
chore: a UniformSpace erw --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 2/1 Mathlib/Topology/UniformSpace/Matrix.lean 1 2 ['eric-wieser', 'github-actions'] nobody
5-74772
5 days ago
6-390
6 days ago
6-438
6 days
21522 riccardobrasca
author:riccardobrasca
feat: add Mathlib.RingTheory.DedekindDomain.Instances We add a new file `Mathlib.RingTheory.DedekindDomain.Instances` containing various instances that are useful to work with the localization a prime of an extension of Dedekind domains. As a practical example we golf a tedious proof in `Mathlib.RingTheory.Ideal/Norm.RelNorm` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
234/42 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Localization/AtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/LocalizationLocalization.lean,Mathlib/RingTheory/RingHom/Finite.lean 9 2 ['github-actions', 'riccardobrasca'] nobody
5-58812
5 days ago
5-61734
5 days ago
47-83126
47 days
20887 alreadydone
author:alreadydone
feat(Algebra): Transcendence degree Define transcendence degree `Algebra.trdeg` and proves some basic properties: In **AlgebraicIndependent/Basic.lean**: define `Algebra.trdeg` to be the supremum of the cardinalities of all AlgebraicIndependent sets, just like `Module.rank` is defined to be the supremum of the cardinalities of all LinearIndependent sets. Add some API lemmas and trivial results about `trdeg`, e.g. that injective/surjective AlgHoms induce inequalities between `trdeg`s, and AlgEquivs induce equalities. In **AlgebraicIndependent/TranscendenceBasis.lean**, we show: + The AlgebraicIndependent sets in a domain form a Matroid, which is used to show all transcendence bases have the same cardinality. Provide algebraic characterizations of the matroid notions `Indep`, `Base`, `cRank`, `Basis`, `closure`, `Flat`, and `Spanning`. + Transcendence bases are exactly algebraic independent families that are spanning (i.e. the whole algebra is algebraic over the algebra generated by the family). On the other hand, a spanning set in a domain contains a transcendence basis. + There always exists an transcendence basis between an arbitrary AlgebraicIndependent set and an "almost generating" set in a domain. + `trdeg R S + trdeg S A = trdeg R A` in a domain, which depends on `AlgebraicIndependent/IsTranscendenceBasis.sumElim_comp`. + A finite AlgebraicIndependent family or spanning family in a domain that has the same cardinality as `trdeg` must be a transcendence basis. In **AlgebraicIndependent/Transcendental.lean**: add API lemmas and show the inequality `trdeg R S + trdeg S A ≤ trdeg R A` (which does not require a domain). In **AlgebraicIndependent/Defs.lean**: add Stacks tags and some trivial API lemmas about IsTranscendenceBasis. Thanks to Chris Hughes and Jz Pan for preliminary works and Peter Nelson for the hint about Finitary and IndepMatroid. TODO: + [The analogue of StrongRankCondition](https://mathoverflow.net/a/484564) in the setting of algebras, which implies `trdeg R (MvPolynomial (Fin n) R) = n` for all Nontrivial CommRing R. --- - [x] depends on: #20888 - [x] depends on: #21512 - [x] depends on: #21566 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
721/68 Mathlib/RingTheory/Algebraic/Integral.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/Defs.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean 5 47 ['acmepjz', 'alreadydone', 'apnelson1', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
5-55378
5 days ago
24-24685
24 days ago
33-32047
33 days
22488 smmercuri
author:smmercuri
fix: lower priority for `UniformSpace.Completion.instSMul` Following the introduction of the `WithVal` type synonym in #22055 the following instance takes a long time to synthesise in FLT, and times out in the default heartbeats ```lean import Mathlib namespace IsDedekindDomain.HeightOneSpectrum variable (A K : Type*) [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] (v : HeightOneSpectrum A) #synth SMul (v.adicCompletionIntegers K) (v.adicCompletion K) ``` The issue is that `UniformSpace.Completion.instSMul (v.adicCompletionIntegers K) (v.adicCompletion K)` now fires during the start of instance search (because we now have `UniformSpace (WithVal (v.valuation K))` whereas previously this would be `UniformSpace K`, which was not automatic), and this takes a long time to fail (leading to ~1400 entries in the trace). The first few lines of the new trace is ```lean [Meta.synthInstance] [5.512418] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼ [] [0.000118] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000537] ✅️ apply UniformSpace.Completion.instSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.004411] ✅️ apply @WithVal.instSMul to SMul (↥(adicCompletionIntegers K v)) (WithVal (valuation K v)) ▶ [] [0.000765] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) K ▶ [] [0.000378] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) K ▶ ... [] 1339 more entries... ▶ ``` Lowering the priority of `UniformSpace.Completion.instSMul` fixes this particular issue, leading to a trace that matches that seen prior to the introduction of `WithVal`: ```lean [Meta.synthInstance] [0.016405] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼ [] [0.000119] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000491] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000403] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000134] ❌️ apply inst✝⁴ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000093] ❌️ apply inst✝⁵ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000077] ❌️ apply inst✝⁷ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000082] ❌️ apply inst✝⁹ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000075] ❌️ apply inst✝¹² to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000220] ❌️ apply Algebra.id to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.001015] ✅️ apply @ValuationSubring.instAlgebraSubtypeMem to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [resume] [0.000038] propagating Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) to subgoal Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) of SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [check] [0.013358] ✅️ Algebra.toSMul [] result Algebra.toSMul ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) FLT t-topology 1/1 Mathlib/Topology/Algebra/UniformMulAction.lean 1 7 ['github-actions', 'leanprover-bot', 'smmercuri', 'urkud'] nobody
5-53501
5 days ago
29-6081
29 days ago
29-6128
29 days
23346 joelriou
author:joelriou
chore(CategoryTheory/Limits): split Types.lean The file `CategoryTheory.Limits.Types` is split in several files `Limits`, `Colimits`, `Images`, `Yoneda`. The file `Limits.TypesFiltered` is moved to `Limits.Types.Filtered`, and `Limits.Shapes.Types` is moved to `Limits.Types.Shapes`. This prepares for a refactor of colimits of types following #23339. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 914/845 Mathlib.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/AlgebraicTopology/SimplicialSet/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Category/Cat/Limit.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Filtered/Final.lean,Mathlib/CategoryTheory/Filtered/OfColimitCommutesFiniteLimit.lean,Mathlib/CategoryTheory/GlueData.lean,Mathlib/CategoryTheory/Limits/ColimitLimit.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory/Basic.lean,Mathlib/CategoryTheory/Limits/Elements.lean,Mathlib/CategoryTheory/Limits/Filtered.lean,Mathlib/CategoryTheory/Limits/FilteredColimitCommutesFiniteLimit.lean,Mathlib/CategoryTheory/Limits/FilteredColimitCommutesProduct.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/FintypeCat.lean,Mathlib/CategoryTheory/Limits/FunctorToTypes.lean,Mathlib/CategoryTheory/Limits/IsConnected.lean,Mathlib/CategoryTheory/Limits/Pi.lean,Mathlib/CategoryTheory/Limits/Preserves/Ulift.lean,Mathlib/CategoryTheory/Limits/Set.lean,Mathlib/CategoryTheory/Limits/Shapes/ConcreteCategory.lean,Mathlib/CategoryTheory/Limits/Shapes/FunctorToTypes.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Limits/Types.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/CategoryTheory/Limits/Types/Images.lean,Mathlib/CategoryTheory/Limits/Types/Limits.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean,Mathlib/CategoryTheory/Limits/Types/Yoneda.lean,Mathlib/CategoryTheory/Limits/Yoneda.lean,Mathlib/CategoryTheory/Monoidal/Types/Basic.lean,Mathlib/CategoryTheory/Presentable/Limits.lean,Mathlib/CategoryTheory/Sites/EqualizerSheafCondition.lean,Mathlib/CategoryTheory/Sites/MayerVietorisSquare.lean,Mathlib/CategoryTheory/Subpresheaf/Image.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Category/TopCat/Yoneda.lean,Mathlib/Topology/Sheaves/SheafCondition/UniqueGluing.lean 43 1 ['github-actions'] nobody
5-51789
5 days ago
5-53213
5 days ago
5-53202
5 days
22884 tannerduve
author:tannerduve
feat(Computability/TuringDegrees): define oracle computability and Turing degrees ### Description Define a model of **oracle computability**, introducing Turing reducibility (`≤ᵀ`), Turing equivalence (`≡ᵀ`), and Turing degrees as the quotient under Turing equivalence. - `RecursiveIn O f`: A function `f` is recursive in a set of oracles `O` if it can be computed using `O` via basic operations (zero, successor, pairing, composition, primitive recursion, and μ-recursion). - `TuringReducible`: The relation that `f` is recursive in `{g}`, i.e., `f ≤ᵀ g`. - `TuringEquivalent`: A relation defining Turing equivalence between partial functions. - `TuringDegree`: The set of equivalence classes under `TuringEquivalent`, forming a **partially ordered structure**. Additionally: - Prove that `TuringReducible` is a **preorder** (reflexive, transitive). - Show that `TuringEquivalent` is an **equivalence relation**. - Establish that **partial recursive functions** correspond to functions recursive in the empty oracle set. This formalization follows classical recursion theory (Odifreddi, Soare) and extends previous work by Carneiro. ### Breaking Changes None. ### Dependencies None. t-computability new-contributor 221/0 Mathlib.lean,Mathlib/Computability/TuringDegrees.lean 2 8 ['github-actions', 'tannerduve', 'tristan-f-r'] nobody
5-44271
5 days ago
19-60753
19 days ago
19-60802
19 days
23336 kim-em
author:kim-em
chore: `erw` in `Topology/Order/` t-topology 6/7 Mathlib/Topology/Order/LawsonTopology.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean 4 4 ['github-actions', 'kim-em', 'urkud'] nobody
5-41320
5 days ago
5-80472
5 days ago
5-80523
5 days
23360 kim-em
author:kim-em
chore: review of `erw` in `Algebra/Homology/DerivedCategory` 21/15 Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExtClass.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/CategoryTheory/Shift/SingleFunctors.lean 5 1 ['github-actions'] nobody
5-22574
5 days ago
5-23551
5 days ago
5-23540
5 days
22631 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): define associated graded structure for abelian group In this PR we define the associated graded structure for abelian group when given a filtration and only give some basic lemmas about it. Further results would be given in #20913 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
155/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 6 ['Thmoas-Guan', 'eric-wieser', 'github-actions', 'kbuzzard'] nobody
5-20164
5 days ago
25-82974
25 days ago
25-83019
25 days
22705 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/DirectSum): add lemma about ker and range of DirectSum.map Add lemma about ker and range of DirectSum.map. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
80/0 Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean 2 22 ['Thmoas-Guan', 'eric-wieser', 'github-actions'] nobody
5-20054
5 days ago
10-23326
10 days ago
23-41868
23 days
22961 xroblot
author:xroblot
feat(ZLattice/Covolume): add `covolume_div_covolume_eq_relindex` Add the following result: Let `L₁` be a sub-`ℤ`-lattice of `L₂`. Then the index of `L₁` inside `L₂` is equal to `covolume L₁ / covolume L₂`. --- - [x] depends on: #22940 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
69/1 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/GroupTheory/Index.lean,Mathlib/LinearAlgebra/Determinant.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
5-9080
5 days ago
16-6115
16 days ago
16-8568
16 days
18578 mans0954
author:mans0954
feat(LinearAlgebra/QuadraticForm/Basis): basis expansion of a quadratic map Three lemmas about Quadratic maps applied to: - A finite sum - A `linearCombination` - The representation of an element wrt a basis --- - [x] depends on: #21835 - [x] depends on: #21836 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-algebra
label:t-algebra$
105/1 Mathlib.lean,Mathlib/Data/Sym/Sym2/Finsupp.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean 3 n/a ['YaelDillies', 'eric-wieser', 'github-actions', 'kbuzzard', 'mans0954', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] eric-wieser
assignee:eric-wieser
5-4510
5 days ago
unknown
unknown
22655 YaelDillies
author:YaelDillies
refactor: make use of `FunLike` for `Submonoid.LocalizationMap` From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
156/140 Mathlib/GroupTheory/MonoidLocalization/Away.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Localization/Defs.lean 4 1 ['github-actions'] nobody
5-1742
5 days ago
5-1756
5 days ago
22-27918
22 days
22904 YaelDillies
author:YaelDillies
feat: additivise `Irreducible` In the Toric project, we need to talk about (additive) irreducible elements of a lattice cone (they generate the cone). There is no definition of additive irreducible elements in mathlib, but luckily the existing definition of multiplicative irreducible elements talks about general monoids (instead of merely monoids with zero). This PR additivises all the API, except for the parts about divisibility and monoids with zero, and moves it to a new file under `Algebra.Group`. Also rename the fields of `Irreducible` to make them additivisable. Moves: * `Irreducible.not_unit` -> `Irreducible.not_isUnit` * `Irreducible.isUnit_or_isUnit'` -> `Irreducible.isUnit_or_isUnit` From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
227/188 Mathlib.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Polynomial/Eval/Irreducible.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/Nat/Squarefree.lean,Mathlib/FieldTheory/KummerPolynomial.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/NumberTheory/FactorisationProperties.lean,Mathlib/NumberTheory/SumTwoSquares.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Polynomial/GaussLemma.lean,Mathlib/RingTheory/Polynomial/IrreducibleRing.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean,Mathlib/SetTheory/Cardinal/Divisibility.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean 28 2 ['Ruben-VandeVelde', 'github-actions'] nobody
5-1455
5 days ago
5-1471
5 days ago
16-73042
16 days
23181 YaelDillies
author:YaelDillies
chore(UniformSpace/Defs): move entourages to their own file What's left in `UniformSpace.Defs` is precisely the theory of the uniformity filter. The motivation is that the theory of coverings and packings in both high dimensional probability and dynamics can be based on entourages, while they have little to do with the uniformity filter (indeed, entourages are in a sense a quantitative version of the uniformity filter). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 180/207 Mathlib.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/UniformSpace/Defs.lean,Mathlib/Topology/UniformSpace/Entourage.lean 4 10 ['ADedecker', 'YaelDillies', 'b-mehta', 'github-actions'] nobody
5-430
5 days ago
5-485
5 days ago
8-20919
8 days
19668 YaelDillies
author:YaelDillies
refactor: define `≤`/`<` on `WithBot`/`WithTop` by induction The motivation for this change is that it is really confusing to run `intro r s shouldnthaveintroedthat` on a goal of the form `∀ r s : ℝ≥0∞, r ≤ s` and get the nonsense-looking goal `r = ↑shouldnthaveintroedthat → ∃ b : α, s = ↑b ∧ shouldnthaveintroedthat ≤ b⟩` instead of an error, and similarly when destructing something of the form `∃ r s : ℝ≥0∞, r < s`. Furthermore, I suspect this improves performance. --- - [x] depends on: #20317 - [x] depends on: #20318 - [x] depends on: #21274 - [x] depends on: #22109 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 65/47 Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Finset/Max.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/MeasureTheory/Integral/Lebesgue.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/Interval/Set/WithBotTop.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Variance.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/Topology/MetricSpace/Holder.lean,Mathlib/Topology/MetricSpace/HolderNorm.lean 14 10 ['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
4-80503
4 days ago
4-80503
4 days ago
4-80569
4 days
23370 kebekus
author:kebekus
feat: taking the divisor of a meromorphic function commutes with restriction Deliver on a very simple TODO, show that taking the divisor of a meromorphic function commutes with restriction. 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 12/1 Mathlib/Analysis/Meromorphic/Divisor.lean 1 1 ['github-actions'] nobody
4-79273
4 days ago
4-79658
4 days ago
4-79726
4 days
23366 b-reinke
author:b-reinke
feat(GroupTheory/FreeGroup/Basic): add lemmas for invRev Upstreamed from the [EquationalTheories](https://github.com/teorth/equational_theories) project. This PR adds the lemmas `invRev_append` and `invRev_cons` describing the interaction of `invRev` with the typical list operations. Note that `invRev_append` is a simp lemma, but `invRev_cons` is not, as otherwise there would be an infinite simp loop. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-geometric-group-theory t-algebra
label:t-algebra$
7/0 Mathlib/GroupTheory/FreeGroup/Basic.lean 1 1 ['github-actions'] nobody
4-78116
4 days ago
4-78116
4 days ago
5-929
5 days
23367 b-reinke
author:b-reinke
feat(GroupTheory/FreeGroup/Reduce): add lemmas for toWord and reduce Upstreamed from the [EquationalTheories](https://github.com/teorth/equational_theories) project. This PR adds some simple helper lemmas for the interaction of `toWord` and `reduce` and basic list / group operations. The RHS of the lemmas often contains more appearances of `reduce`, so they are not marked as `simp` lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-geometric-group-theory t-algebra
label:t-algebra$
24/0 Mathlib/GroupTheory/FreeGroup/Reduce.lean 1 1 ['github-actions'] nobody
4-78081
4 days ago
4-78081
4 days ago
5-363
5 days
23368 b-reinke
author:b-reinke
feat(GroupTheory/FreeGroup/ReducedWords): add theory of reduced words Upstreamed from the [EquationalTheories](https://github.com/teorth/equational_theories) project. This PR adds the file `GroupTheory/FreeGroup/ReducedWords.lean`, where the predicate of reduced words is defined. It is shown that `reduce` and `toWord` produce reduced words. This is done in preparation for the theory of cyclically reduced words. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-geometric-group-theory t-algebra
label:t-algebra$
124/0 Mathlib.lean,Mathlib/GroupTheory/FreeGroup/ReducedWords.lean 2 1 ['github-actions'] nobody
4-78061
4 days ago
4-78061
4 days ago
4-85898
4 days
23282 joelriou
author:joelriou
feat(CategoryTheory): monomorphisms in Type are stable under transfinite compositions `monomorphisms (Type u)` is stable under cobase change, filtered colimits and transfinite compositions. (The file `CategoryTheory.Types` is also moved to `CategoryTheory.Types.Basic`.) (This is extended to presheaves of types in #23298.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 159/15 Mathlib.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/CategoryTheory/ConcreteCategory/Basic.lean,Mathlib/CategoryTheory/ConcreteCategory/EpiMono.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Functor/Hom.lean,Mathlib/CategoryTheory/IsomorphismClasses.lean,Mathlib/CategoryTheory/Limits/Shapes/Types.lean,Mathlib/CategoryTheory/Monad/Types.lean,Mathlib/CategoryTheory/MorphismProperty/TransfiniteComposition.lean,Mathlib/CategoryTheory/SmallObject/WellOrderInductionData.lean,Mathlib/CategoryTheory/Subobject/Types.lean,Mathlib/CategoryTheory/Types/Basic.lean,Mathlib/CategoryTheory/Types/Monomorphisms.lean,Mathlib/CategoryTheory/UnivLE.lean,Mathlib/Control/Fold.lean,Mathlib/Data/Set/FunctorToTypes.lean 18 1 ['github-actions'] nobody
4-70103
4 days ago
4-70118
4 days ago
7-43110
7 days
22018 maddycrim
author:maddycrim
feat(RingTheory/Localization/Pi): localization of a finite direct product where each semiring in product has maximal nilradical is a projection For noncomputable def `surjectivePiNilradicalIsMaximal` : Let `M` be a submonoid of a direct product of commutative rings `R i`. If each `R i` has maximal nilradical then the direct product `∏ R i` surjects onto the localization of `∏ R i` at `M`. --- [![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$
23/0 Mathlib/RingTheory/Localization/Pi.lean 1 13 ['Paul-Lez', 'erdOne', 'github-actions', 'jcommelin', 'maddycrim'] nobody
4-65601
4 days ago
42-33269
1 month ago
42-33322
42 days
22881 Champitoad
author:Champitoad
feat(CategoryTheory/Topos): add representability results for subobject classifier We add a section `Representability` at the end of `Mathlib.CategoryTheory.Topos.Classifier` where we formalize the necessary lemmas and definitions that lead to the proof of `CategoryTheory.isRepresentable_hasClassifier_iff`, which states that a category `C` has a subobject classifier if and only if the subobjects presheaf `CategoryTheory.Subobject.presheaf C` is representable (Proposition 1 in Section I.3 of Sheaves in Geometry and Logic [MM92]). The toughest part is found in definition `CategoryTheory.Classifier.fromRepresentation`, which formalizes as closely as possible the argument given in [MM92, pp. 33-34]. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-category-theory 251/22 Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/Presheaf.lean,Mathlib/CategoryTheory/Topos/Classifier.lean 3 18 ['Champitoad', 'github-actions', 'joelriou'] nobody
4-64707
4 days ago
4-74225
4 days ago
14-18354
14 days
22919 plp127
author:plp127
feat(Combinatorics/SimpleGraph/Coloring): Make `Fintype` instance for graph colorings computable Makes the `Fintype` instance for graph colorings computable. See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Classical.20vs.20constructive.20logic.20in.20computation/near/496220816) message. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 95/24 Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 10 ['b-mehta', 'github-actions', 'plp127'] nobody
4-61911
4 days ago
4-61940
4 days ago
17-80087
17 days
23197 robin-carlier
author:robin-carlier
feat(CategoryTheory/Equivalences): category structure on equivalences We put a category structure on `(C ≌ D)`. The morphisms are simply natural transformations between the underlying functor. We also provide various API for this structure. --- While this PR contains functoriality of the operation that maps an equivalence to its underlying functor, functoriality of inverses will be in a different PR and recorded in a different file : I feel the most natural way to do this is to bring in the results from `Adjunction.Mates`, but this imports quite a lot of stuff. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 69/0 Mathlib/CategoryTheory/Equivalence.lean 1 7 ['github-actions', 'joelriou', 'robin-carlier'] nobody
4-58684
4 days ago
4-58684
4 days ago
10-36890
10 days
22870 kebekus
author:kebekus
feat: behavior of MeromorphicAt.order under powers and inverses Establish the behavior of `MeromorphicAt.order` under standard operations, including powers and inverses. The results are completely analogous to the existing theorems for `AnalyticAt.order`. 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 26/12 Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Order/WithBot.lean 2 1 ['github-actions'] nobody
4-56226
4 days ago
4-56241
4 days ago
19-23188
19 days
23387 digama0
author:digama0
feat(Cache): root hash generation counter This should provide a better canonical way to invalidate the cache rather than changing whitespace in inconspicuous places in one of the three root hash files or in `Mathlib.Init`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 6/1 Cache/Hashing.lean,Cache/IO.lean 2 1 ['github-actions'] nobody
4-30006
4 days ago
4-30006
4 days ago
4-33704
4 days
23388 tristan-f-r
author:tristan-f-r
chore: proof_wanted on conway's 99 graph problem adds a proof_wanted of an open graph problem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics easy 5/0 Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 1 1 ['github-actions'] nobody
4-26827
4 days ago
4-26827
4 days ago
4-27072
4 days
23393 kebekus
author:kebekus
chore: fix minor typo Fix minor typo found by @sgouezel while bors was already merging PR #23362. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 2/2 Mathlib/Analysis/Meromorphic/Order.lean 1 1 ['github-actions'] nobody
4-16270
4 days ago
4-16271
4 days ago
4-16331
4 days
23381 vlad902
author:vlad902
feat: copy Subgroup lemma for Submonoid This is an exact copy of `Subgroup.map_top_of_surjective`, copied for Submonoid. t-algebra
label:t-algebra$
8/0 Mathlib/Algebra/Group/Submonoid/Operations.lean 1 4 ['eric-wieser', 'github-actions', 'vlad902'] nobody
4-15592
4 days ago
4-52672
4 days ago
4-52957
4 days
23217 acmepjz
author:acmepjz
chore(AlgebraicGeometry/EllipticCurve/*): refactor VariableChange Drop certain definitions in `VariableChange` in favor of mathlib's built-in notation: - `VariableChange.id` -> `(1 : VariableChange R)` - `VariableChange.comp C C'` -> `C * C'` - `VariableChange.inv C` -> `C⁻¹` - `W.variableChange C` -> `C • W` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Discussion: [#maths > thoughts on elliptic curves @ 💬](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/thoughts.20on.20elliptic.20curves/near/485467772) t-algebraic-geometry 177/157 Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/IsomOfJ.lean,Mathlib/AlgebraicGeometry/EllipticCurve/NormalForms.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean 4 1 ['github-actions'] nobody
4-11433
4 days ago
9-18310
9 days ago
9-18299
9 days
21479 jt496
author:jt496
feat(Combinatorics/SimpleGraph): add facts about cliques and colorings of completeMultipartiteGraph Add basic lemmas about cliques and chromatic number of completeMultipartiteGraph. In particular if a completeMultipartiteGraph is CliqueFree n then it is (n - 1) - colorable. This last result is needed for the Andrasfai-Erdos-Sos theorem. Co-authored-by: Lian Tattersall --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-combinatorics 69/3 Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Basic.lean 3 19 ['IvanRenison', 'b-mehta', 'github-actions', 'jt496', 'kbuzzard'] nobody
4-4639
4 days ago
11-7435
11 days ago
52-7510
52 days
22974 YaelDillies
author:YaelDillies
refactor: use a junk value for the analytic order of a non-analytic function Currently, the order of an analytic function is called `AnalyticAt.order` and has a single explicit argument `hf : AnalyticAt 𝕜 f z₀`. This means that working with analytic functions results in contexts full of `hf.order` or, worse, `⋯.order`. This PR makes the `f` and `z₀` arguments explicit, and drops the `hf` one by introducing a junk value of `0` for non-analytic functions. The resulting function is called `eanalyticOrderAt` and I am also adding a `Nat`-valued version `analyticOrderAt` since `(eanalyticOrderAt f z₀).toNat` was appearing in quite a few lemmas. --- The same change could be performed for meromorphic functions once you are convinced. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 187/101 Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Meromorphic/NormalFormAt.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Data/ENat/Basic.lean 4 2 ['github-actions', 'urkud'] nobody
4-4472
4 days ago
4-4487
4 days ago
13-46034
13 days
23395 kim-em
author:kim-em
chore: review erw in Algebra/Homology t-algebra
label:t-algebra$
19/13 Mathlib/Algebra/Homology/Embedding/Extend.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Homology/ShortComplex/Ab.lean,Mathlib/Algebra/Homology/ShortComplex/Limits.lean 4 1 ['github-actions'] nobody
4-3549
4 days ago
4-3549
4 days ago
4-3605
4 days
22085 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): introduce `ConnectedComponent.toSimpleGraph` --- I don't know if `ConnectedComponent.Graph` is the best name for this [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 65/10 Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean 2 5 ['IvanRenison', 'github-actions', 'pimotte'] nobody
3-82470
3 days ago
3-82470
3 days ago
31-49250
31 days
23396 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: split LocallyFinite results out of Compactness.Compact Copyright from: https://github.com/leanprover-community/mathlib3/pull/6352 and https://github.com/leanprover-community/mathlib3/pull/6948. --- Conflicts with #23401. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 51/30 Mathlib.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/LocallyFinite.lean,Mathlib/Topology/Compactness/SigmaCompact.lean 4 1 ['github-actions'] nobody
3-77198
3 days ago
3-85972
3 days ago
3-86030
3 days
11968 JovanGerb
author:JovanGerb
feat: improvements to RefinedDiscrTree This PR defines `RefinedDiscrTree`, which is an improved version of `DiscrTree` with many new features, such as - indexing lambda terms, dependent forall terms, and bound variables. - giving a score to matches, in order to sort them - indexing star patterns so that `a+b` and `a+a` are indexed differently - taking into account eta reductions, so that `exp` can still be matched with the library pattern `fun x => exp (f x)`. This PR makes `RefinedDiscrTree` into a lazy data structure, meaning that it can be used without a cache, just like `LazyDiscrTree`. This PR also removes these features: - indexing `fun x => x` as `id` - indexing `fun x => f x + g x` as `f + g`, and similarly for `-`, `*`, `/`, `⁻¹`, `^`. - indexing `fun _ => 42` as `42` These equivalent indexings do not hold definitionally in the `reducible` transparency, which is the transparency that is used for unification when using a discrimination tree. Therefore, indexing these different expressions the same is actually inefficient rather than helpful. This is part of the bigger #11768, which uses this discrimination tree for a library rewriting tactic. This replaces an older version of `RefinedDiscrTree`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta 1631/1242 Mathlib.lean,Mathlib/Lean/Meta/RefinedDiscrTree.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Encode.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Initialize.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Lookup.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Pi.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/StateList.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Topology/Defs/Basic.lean,MathlibTest/RefinedDiscrTree.lean,scripts/noshake.json 16 76 ['0art0', 'JovanGerb', 'eric-wieser', 'github-actions', 'joneugster', 'leanprover-bot', 'rosborn'] nobody
3-74618
3 days ago
5-958
5 days ago
173-18795
173 days
23386 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(GroupTheory/GroupAction/MultiplePretransitivity): define multiply transitive actions This PR defines multiply transitive actions and proves the first basic lemmas about them. * `MulAction.IsMultiplyPretransitive`: An multiplicative action of a group `G` on a type `α` is n-transitive if the action of `G` on `Fin n ↪ α` is pretransitive. * Any action is 0-pretransitive * `MulAction.is_one_pretransitive_iff` : An action is 1-pretransitive iff it is pretransitive * `MulAction.is_two_pretransitive_iff` : An action is 2-pretransitive if for any `a`, `b`, `c`, `d`, such that `a ≠ b` and `c ≠ d`, there exist `g : G` such that `g • a = b` and `g • c = d`. * `MulAction.isMultiplyPretransitive_of_le` : If an action is `n`-pretransitive, then it is `m`-pretransitive for all `m ≤ n`. ## Remarks on implementation These results are results about actions on types `n ↪ α` induced by an action on `α`, and some results are developed in this context. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
356/0 Mathlib.lean,Mathlib/Algebra/Group/Action/Pretransitive.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean 3 3 ['AntoineChambert-Loir', 'D-Thomine', 'github-actions'] nobody
3-71440
3 days ago
4-33935
4 days ago
4-33939
4 days
23179 vlad902
author:vlad902
feat: generalize Mathlib.LinearAlgebra This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 t-algebra
label:t-algebra$
36/35 Mathlib/LinearAlgebra/AffineSpace/MidpointZero.lean,Mathlib/LinearAlgebra/Basis/SMul.lean,Mathlib/LinearAlgebra/BilinearForm/Properties.lean,Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/FiniteSpan.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/RootSystem/OfBilinear.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean 17 4 ['github-actions', 'leanprover-bot', 'vlad902'] nobody
3-62110
3 days ago
3-62124
3 days ago
4-9343
4 days
23401 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: split IsTopologicalBasis results out of Compactness.Compact Copyright from: https://github.com/leanprover-community/mathlib3/pull/15436 and https://github.com/leanprover-community/mathlib4/pull/12986. --- Conflicts with #23396. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) longest-pole t-topology 66/46 Mathlib.lean,Mathlib/Topology/ClopenBox.lean,Mathlib/Topology/Compactness/Bases.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/SigmaCompact.lean,Mathlib/Topology/Constructible.lean,Mathlib/Topology/QuasiSeparated.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Sets/Opens.lean 9 5 ['Ruben-VandeVelde', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
3-49937
3 days ago
3-73874
3 days ago
3-77372
3 days
23411 PatrickMassot
author:PatrickMassot
chore: remove finiteness from Order.Filter.Lift Co-authored-by: Anatole Dedecker --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) longest-pole t-topology 45/21 Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Finite.lean,Mathlib/Order/Filter/Lift.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Basic.lean 6 2 ['github-actions', 'kim-em'] nobody
3-42924
3 days ago
3-45419
3 days ago
3-45416
3 days
23412 robin-carlier
author:robin-carlier
feat(CategoryTheory): joins of categories Define the join of two categories `C`, `D` as the category `C ⋆ D` characterized by the existence of fully faithful functors `Join.inclLeft C D : C ⥤ C ⋆ D` and `Join.inclRight C D: D ⥤ C ⋆ D` that are jointly surjective on objects, and such that there is a unique map `edge c d : (inclLeft C D).obj c ⟶ (inclRight C D).obj d` for every `c : C` and `d : D`. We also provide constructors for functors out of joins, and natural transforms between such functors. The main reference is [Kerodon: section 1.4.3.2](https://kerodon.net/tag/0160). --- First of a small burst of PRs about joins of categories. Eventually, this construction should replace `WithInitial C` (which is `PUnit ⋆ C`) and `WithTerminal C` (which is `C ⋆ PUnit`). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 547/0 Mathlib.lean,Mathlib/CategoryTheory/Join/Basic.lean 2 2 ['github-actions', 'joelriou'] nobody
3-41406
3 days ago
3-51289
3 days ago
3-51278
3 days
23146 vlad902
author:vlad902
feat: generalize Mathlib.Data This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile, and the old type class can not simply be re-synthesized with the new declaration. Otherwise, the generalization is rejected as the type class is not being generalized, but can simply be replaced by implicit type class synthesis or an implicit type class in a variable block being pulled in. The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 5e2b7040be0f73821c1dcb360ffecd61235d87af. Also see discussions on Zulip here: * https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 * https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 t-data 36/36 Mathlib/Data/Complex/Module.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Finset/Pairwise.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Holor.lean,Mathlib/Data/Int/Cast/Lemmas.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Nat/Cast/Basic.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean,Mathlib/Data/Set/MulAntidiagonal.lean,Mathlib/Data/ZMod/Basic.lean 14 8 ['eric-wieser', 'github-actions', 'leanprover-bot', 'vlad902'] nobody
3-10215
3 days ago
3-62048
3 days ago
10-50864
10 days
21162 smmercuri
author:smmercuri
feat: add `Valued.WithZeroMulInt.tendsto_zero_pow_of_le_neg_one` and applications to `adicCompletion K v` If `K` is a valued ring taking values in the multiplicative integers wth a zero adjoined, then `Valued.WithZeroMulInt.tendsto_zero_pow_of_le_neg_one` is the result that `x ^ n` tends to zero in this ring if `v x` is at most `-1` valued. As a result, in `adicCompletion K v`, we can always find a non-zero divisor that is arbitrarily small across a finite number of `v` (`AdicCompletion.exists_nonZeroDivisor_finset_valued_lt`). --- - [x] depends on: #21160 - [x] depends on: #22055 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
112/0 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean 3 6 ['YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
3-4062
3 days ago
30-68014
30 days ago
53-67408
53 days
23419 Parcly-Taxel
author:Parcly-Taxel
chore: deprime `induction'` with 5+ variables, part 1 Split from #23324 at the behest of @eric-wieser. tech debt 150/125 Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoid.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Localization/Construction.lean,Mathlib/CategoryTheory/PathCategory/Basic.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/EpsilonNFA.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/PostTuringMachine.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean 21 8 ['Parcly-Taxel', 'apnelson1', 'eric-wieser', 'github-actions', 'urkud'] nobody
2-81497
2 days ago
3-31611
3 days ago
3-31600
3 days
23424 YaelDillies
author:YaelDillies
chore: move `StrictMonoOn f s → InjOn f s` earlier This is motivated by the need to have these lemmas early in #23177. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order 29/34 Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Data/Int/Lemmas.lean,Mathlib/Data/Set/Monotone.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/Interval/Set/Monotone.lean,Mathlib/Order/ModularLattice.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/Monotone/Defs.lean,Mathlib/Order/Monotone/Extension.lean 10 1 ['github-actions'] nobody
2-72667
2 days ago
2-72667
2 days ago
2-72741
2 days
20315 erdOne
author:erdOne
feat(RingTheory): homogeneous localization away from an element is of finite type Co-authored-by: Patience Ablett Co-authored-by: Kevin Buzzard Co-authored-by: Harald Carlens Co-authored-by: Wayne Ng Kwing King Co-authored-by: Michael Schlößer Co-authored-by: Justus Springer Co-authored-by: Jujian Zhang This contribution was created as part of the Durham Computational Algebraic Geometry Workshop --- - [x] depends on: #21795 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
244/1 Mathlib.lean,Mathlib/RingTheory/GradedAlgebra/FiniteType.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean 3 14 ['erdOne', 'github-actions', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] nobody
2-72595
2 days ago
5-81917
5 days ago
54-60840
54 days
22050 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): Add `SimpleGraph.Preconnected.support_eq_univ` Co-authored-by: Kyle Miller kmill31415@gmail.com --- Suggested in [zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Way.20ConnectedComponent.20definition.20uses.20Quot.3F) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 44/0 Mathlib/Combinatorics/SimpleGraph/Path.lean 1 4 ['b-mehta', 'github-actions', 'urkud'] b-mehta
assignee:b-mehta
2-71922
2 days ago
2-71935
2 days ago
34-4948
34 days
23309 kkytola
author:kkytola
feat: left/right order-continuous functions are left/right topology-continuous Order left/right-continuous functions on (densely ordered) conditionally complete linear orders are topologically left/right-continuous. Co-authored-by: Yaël Dillies --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 27/3 Mathlib/Topology/Order/Basic.lean 1 3 ['YaelDillies', 'github-actions', 'kkytola'] nobody
2-71421
2 days ago
6-66002
6 days ago
6-65991
6 days
23440 xroblot
author:xroblot
chore(NumberField/Units): make `torsionOrder` a `Nat` Originally, the order of the torsion subgroup of units of a number field was defined as a `PNat` since `rootsOfUnity` was using `PNat`. This is not the case anymore since `rootsOfUnity` is now using `NeZero` instead. Thus, we change the type of `torsionOrder` to `Nat` and change to an `abbrev` so that it gets a `NeZero` instance automatically. As a bonus, we also prove that `torsionOrder` is even. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 17/6 Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/NumberTheory/NumberField/Units/Basic.lean 2 1 ['github-actions'] nobody
2-58268
2 days ago
2-61354
2 days ago
2-61401
2 days
23334 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: add lemmas about Field.toEuclideanDomain The behaviour of mod and gcd in a field are somewhat unexpected. I think that adding simp lemmas to reduce them to more well-understood notions will be helpful for people who accidentally end up using them, even if the right-hand side is not necessarily "simp"ler on first sight. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
21/2 Mathlib/Algebra/EuclideanDomain/Field.lean 1 6 ['Ruben-VandeVelde', 'acmepjz', 'github-actions'] nobody
2-50475
2 days ago
6-1871
6 days ago
6-1930
6 days
13861 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`. 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 do some light refactoring for succinctness, and put this any related preexisting lemmas in a new file to not trigger the linter. Needed by #12664 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 204/62 Mathlib.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Option.lean,Mathlib/Data/Finsupp/Single.lean,Mathlib/LinearAlgebra/Finsupp/LinearCombination.lean 6 1 ['github-actions'] nobody
2-44421
2 days ago
6-69539
6 days ago
6-69520
6 days
23244 eric-wieser
author:eric-wieser
chore(GroupTheory/Congruence): deduplicate `ker` and `mulKer` This deprecates `Con.mulKer` and defines it in terms of `ker` (instead of vice versa). It's not entirely clear to me that `MulHomClass` is the way to go due to a lack of a coherent simp-normal form, but we can always switch to `MulHom` later. The signature of `Con.mapOfSurjective` has changed as a result. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This is cleanup on the way to defining `RingCon.ker`. t-algebra
label:t-algebra$
115/86 Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Hom.lean 2 1 ['github-actions'] nobody
2-40285
2 days ago
8-43597
8 days ago
8-43646
8 days
21539 Raph-DG
author:Raph-DG
feat(LinearAlgebra): Symmetric Algebra Defined the universal property for the symmetric algebra of a module over a commutative ring, provided an explicit construction and proved that this satisfies the universal property. Also proved that the multivariate polynomial ring generated by a basis of a module satisfies the universal property of the symmetric algebra of that module. Co-authored-by: Raphael Douglas Giles , Zhixuan Dai <22300180006@m.fudan.edu.cn>, Zhenyan Fu , Yiming Fu , Wang Jingting --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
209/0 Mathlib.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/MvPolynomial.lean 3 15 ['ADedecker', 'Raph-DG', 'github-actions', 'xyzw12345'] nobody
2-32156
2 days ago
2-32308
2 days ago
50-31420
50 days
23446 acmepjz
author:acmepjz
feat(Algebra/Exact): add `Function.Exact.[iff_]rangeFactorization` etc Two maps `f : M → N` and `g : N → P` are exact if and only if the induced maps `Set.range f → N → Set.range g` are exact. Same for `AddMonoidHom` and `LinearMap`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Discussion: [#Is there code for X? > Function.Exact.rangeFactorization](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Function.2EExact.2ErangeFactorization) t-algebra
label:t-algebra$
41/2 Mathlib/Algebra/Exact.lean 1 1 ['github-actions'] nobody
2-13328
2 days ago
2-13328
2 days ago
2-13317
2 days
23069 JovanGerb
author:JovanGerb
perf: use `singlePass := true` in main loop of `ring_nf` DONE: the same change for `abel_nf`. In the current situation, ring normalization is tried again on each already normalized expression, because `simp` wants to be sure it doesn't simplify any further. `singlePass := true` bypasses this. Besides performance, there is another reason to use `singlePass := true`: when there are bound variables, and `simp` does multiple passes, then in the second pass, the bound variable is introduced as a different fresh variable, which confuses the `AtomM` equality of atoms used by `ring`. So I need this for #22956 I also noticed that `Context.simp` only needs a `MetaM` monad and not a `SimpM` monad. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 21/18 Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Ring/RingNF.lean 2 8 ['JovanGerb', 'github-actions', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] joneugster
assignee:joneugster
2-12605
2 days ago
2-65218
2 days ago
12-32071
12 days
23448 Parcly-Taxel
author:Parcly-Taxel
chore: fix more induction branch names Follow-up to #23358. This includes changing the name of the motive variable to `motive` and naming branches as if they were lemmas. The regex used for finding the branch names was `^\s+\| [hH][^:]*? =>`. 235/233 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Action.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Module/Presentation/RestrictScalars.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Single.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/Finsupp/LinearCombination.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/MeasureTheory/Integral/Bochner.lean,Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Kaehler/Polynomial.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean 29 1 ['github-actions'] nobody
1-83620
1 day ago
2-2008
2 days ago
2-1997
2 days
23450 wwylele
author:wwylele
feat(Data/List/Basic): add forall_append Add forall_appened stating Forall on a list is equivalent to Forall on two halves of it. (I am kind of surprised this didn't exist. I hope it was not because I was blind and I added a duplicate theorem) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 6/0 Mathlib/Data/List/Basic.lean 1 1 ['github-actions'] nobody
1-68061
1 day ago
1-68061
1 day ago
1-68113
1 day
23453 xroblot
author:xroblot
feat(RootsOfUnity/Complex): the conjugate of a complex root of unity is its inverse --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
5/0 Mathlib/RingTheory/RootsOfUnity/Complex.lean 1 1 ['github-actions'] nobody
1-65854
1 day ago
1-65854
1 day ago
1-65911
1 day
22269 Thmoas-Guan
author:Thmoas-Guan
chore(Algebra):replace Submodule.quotient.mk with Submodule.mkQ Replace Submodule.quotient.mk with Submodule.mkQ as much as possible as it have better composition property and more direct lemmas, making it more similarly with `Ideal.Quotient.mk` (except Algebra.Lie.Quotient.Basic for ones more familiar with these area) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 431/218 Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/Dimension/RankNullity.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/Isomorphisms.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/LinearAlgebra/Quotient/Pi.lean,Mathlib/LinearAlgebra/SModEq.lean,Mathlib/LinearAlgebra/Semisimple.lean,Mathlib/LinearAlgebra/TensorProduct/Quotient.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Exactness.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/Ideal/Colon.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/QuotSMulTop.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/TensorProduct/Quotient.lean 33 8 ['Thmoas-Guan', 'erdOne', 'github-actions', 'leanprover-bot'] nobody
1-65199
1 day ago
1-78958
1 day ago
12-50788
12 days
21524 Timeroot
author:Timeroot
feat(BigOperators/Finset): prod_comm_3 A cyclically permuting version of `Finset.prod_comm`. Sort of like `LinearMap.trace_mul_cycle`. Think you could debate if it's "necessary" but we were using it enough that we wanted to have its own lemma; the alternative would be writing `prod_comm` with implicit arguments a bunch of times. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/0 Mathlib/Algebra/BigOperators/Group/Finset/Sigma.lean 1 1 ['github-actions'] nobody
1-56673
1 day ago
1-56879
1 day ago
23-16032
23 days
23459 Timeroot
author:Timeroot
feat: Definition of `Clone` notations and typeclasses Definitions and notation typeclasses for #20051 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
87/0 Mathlib.lean,Mathlib/Algebra/Clone/Defs.lean 2 2 ['YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
1-54217
1 day ago
1-54217
1 day ago
1-56131
1 day
9085 Timeroot
author:Timeroot
feat: `Polynomial.coeffList` `Polynomial.coeffList` is the list of coefficients, in descending order from leading term to constant term. (The zero polynomial has coeffList of `[]`). The PR defines coeffList and proves some basic facts, notably relating `P.coeffList` to `P.eraseLead.coeffList`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #9082 - [x] depends on: #9083 large-import t-data 233/1 Mathlib.lean,Mathlib/Algebra/Order/SuccPred.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Data/Nat/SuccPred.lean,Mathlib/Order/SuccPred/WithBot.lean 7 111 ['Ruben-VandeVelde', 'Timeroot', 'YaelDillies', 'github-actions', 'jcommelin', 'mathlib4-dependent-issues-bot', 'tb65536'] nobody
1-53967
1 day ago
1-53967
1 day ago
19-84880
19 days
23461 xroblot
author:xroblot
feat(GroupTheory/Cyclic): formula for the card & index of kernel & range of powMonoidHom on a cyclic group We prove formula for the cardinal and index of the kernel and range of `powMonoidHom : x ↦ x ^ d` on a finite cyclic group. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
48/0 Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean 2 1 ['github-actions'] nobody
1-52699
1 day ago
1-52849
1 day ago
1-52898
1 day
21336 erdOne
author:erdOne
feat(Algebra/Category): finitely presented algebras are finitely presented Co-authored-by: Christian Merten --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
392/9 Mathlib.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Limits/Preserves/Filtered.lean,Mathlib/CategoryTheory/Limits/Preserves/Over.lean,Mathlib/CategoryTheory/Limits/Shapes/FiniteMultiequalizer.lean,Mathlib/CategoryTheory/Presentable/Finite.lean,Mathlib/RingTheory/EssentialFiniteness.lean 8 9 ['erdOne', 'github-actions', 'joelriou'] nobody
1-51756
1 day ago
2-71400
2 days ago
13-19680
13 days
22100 smmercuri
author:smmercuri
feat: two inequivalent absolute values have a `< 1` and `> 1` value - Two absolute values `v` and `w` are equivalent if and only if `v x < 1` exactly when `w x < 1` - Two inequivalent absolute values `v` and `w` have a point `x` at which `1 < v x` and `w x < 1` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 174/0 Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Analysis/AbsoluteValue/Equivalence.lean 2 6 ['Paul-Lez', 'github-actions', 'smmercuri'] nobody
1-50757
1 day ago
1-53207
1 day ago
14-34098
14 days
21283 erdOne
author:erdOne
feat: topology on Hom(R, S) in `CommRingCat` Co-authored-by: Christian Merten --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-topology
label:t-algebra$
227/0 Mathlib.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,scripts/noshake.json 6 5 ['dagurtomas', 'erdOne', 'github-actions'] nobody
1-50710
1 day ago
1-50710
1 day ago
40-6366
40 days
23339 joelriou
author:joelriou
feat(CategoryTheory): the colimit type of a functor to types Given a category `J` (with `J : Type u` and `[Category.{v} J]`) and a functor `F : J ⥤ Type w`, we introduce a type `F.ColimitType : Type (max u w)`, which satisfies a certain universal property of the colimit: it is defined as a suitable quotient of `Σ j, F.obj j`. This universal property is not expressed in a categorical way (as in general `Type (max u w)` is not the same as `Type u`). (This type `F.ColimitType` is basically the same as `CategoryTheory.Limits.Types.Quot` that is defined in `CategoryTheory.Limits.Types`, but we expand the API (with minimal imports to category theory) so that it may be used in future PRs to refactor both `DirectedSystem` and the construction of colimits in `Type`.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 272/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/ColimitType.lean 2 2 ['AntoineChambert-Loir', 'github-actions'] nobody
1-50012
1 day ago
5-47400
5 days ago
5-47389
5 days
21950 erdOne
author:erdOne
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 257/1 Mathlib.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroMulInt.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean 7 14 ['Ruben-VandeVelde', 'erdOne', 'github-actions'] nobody
1-46979
1 day ago
1-46979
1 day ago
2-49502
2 days
23462 urkud
author:urkud
feat(Ergodic): Radon-Nikodym derivatives of invariant measures --- - [ ] depends on: #23457 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics t-measure-probability 112/0 Mathlib.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/Dynamics/Ergodic/RadonNikodym.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
1-46298
1 day ago
1-46298
1 day ago
1-49846
1 day
21934 erdOne
author:erdOne
feat(NumberTheory): p-adic cyclotomic character --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-number-theory 200/7 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/Topology/Algebra/Group/Basic.lean 4 16 ['acmepjz', 'erdOne', 'github-actions', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
1-46223
1 day ago
1-46223
1 day ago
18-203
18 days
23025 Paul-Lez
author:Paul-Lez
feat(Lean/ToExpr): add helper functions to create `Expr` for finsets/sets/multisets This PR adds some helper functions for building `Expr` terms for finsets/sets/multisets. One application of this is the creation of certain `simproc`s (see e.g. #23026). The implementation of `List.toExprAux` and `List.toFinsetExpr` was done by @b-mehta. Co-authored-by: Bhavik Mehta Co-authored-by: Eric Wieser --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 14/0 Mathlib/Util/Qq.lean 1 13 ['Paul-Lez', 'b-mehta', 'eric-wieser', 'github-actions'] nobody
1-44931
1 day ago
1-45031
1 day ago
1-45089
1 day
22503 Kevew
author:Kevew
chore(Nat): Nat factorization multiplicity Ported lemmas from `Data/Nat/Multiplicity` to into a new file called `Data/Nat/Factorization/Multiplicity`, re-written in terms of `factorization`. Also, I'm new to this so is it fine to have a lemma copied over from another file? Like, I copied over @[simp] theorem Prime.factorization_self {p : ℕ} (hp : Prime p) : p.factorization p = 1 := by simp [hp] from Dat/Nat/Factorization/Basic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data new-contributor 276/15 Mathlib.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Multiplicity.lean,Mathlib/Data/Nat/Multiplicity.lean 4 29 ['Kevew', 'Paul-Lez', 'github-actions'] Kevew
assignee:Kevew
1-44521
1 day ago
18-36486
18 days ago
28-66838
28 days
21803 erdOne
author:erdOne
feat(Order): `LTSeries` can be extended to `CovBy`-`RelSeries` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order 59/0 Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/RelSeries.lean 2 5 ['alreadydone', 'b-mehta', 'erdOne', 'github-actions'] nobody
1-42778
1 day ago
1-47968
1 day ago
45-75340
45 days
23351 kim-em
author:kim-em
chore: run lean4checker on itself This should hopefully allow detecting major breakages to lean4checker during Lean+Mathlib combined CI. (Recall the actual run of lean4checker over Mathlib only happens every 24 hours.) CI 2/1 .github/build.in.yml 1 4 ['adomani', 'bryangingechen', 'github-actions'] nobody
1-39043
1 day ago
5-33090
5 days ago
5-33146
5 days
21673 erdOne
author:erdOne
feat: `∑ z ∈ L, ‖z - x‖⁻ʳ` converges for lattices `L` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 329/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Disjoint.lean,Mathlib/Algebra/Module/ZLattice/Summable.lean,Mathlib/Order/Disjointed.lean 4 1 ['github-actions'] nobody
1-32151
1 day ago
1-32165
1 day ago
19-4433
19 days
23472 erdOne
author:erdOne
feat(Topology): Continuous open maps with irreducible fibers induce bijections between irreducible components Co-authored-by: Christian Merten --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 78/0 Mathlib/Topology/Irreducible.lean 1 1 ['github-actions'] nobody
1-23704
1 day ago
1-23707
1 day ago
1-23756
1 day
23467 JovanGerb
author:JovanGerb
chore: remove duplicate instance `SMul Mˣ α` This instance is accidentally duplicated, and already exists in `Mathlib.Algebra.Group.Action.Units` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
1/4 Mathlib/Algebra/GroupWithZero/Action/Units.lean,Mathlib/CategoryTheory/Preadditive/Basic.lean 2 1 ['github-actions'] nobody
1-19431
1 day ago
1-34516
1 day ago
1-34572
1 day
23478 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: move Lindemann.Init.AnalyticalPart to Lindemann.AnalyticalPart --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 1/1 Mathlib.lean,Mathlib/NumberTheory/Transcendental/Lindemann/AnalyticalPart.lean 2 1 ['github-actions'] nobody
1-9024
1 day ago
1-9024
1 day ago
1-9083
1 day
22727 grunweg
author:grunweg
feat: rewrite the isolated by and colon linters in Lean --- - depends on #22726 - depends on: #22728 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter 128/96 Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Basic.lean,Mathlib/Data/Finsupp/AList.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/TFAE.lean,Mathlib/Data/Matroid/Circuit.lean,Mathlib/Data/Matroid/Minor/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/LinearAlgebra/TensorProduct/Vanishing.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Probability/Kernel/WithDensity.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Topology/Sets/OpenCover.lean,scripts/lint-style.py 15 2 ['adomani', 'github-actions'] nobody
1-8830
1 day ago
6-48279
6 days ago
8-29008
8 days
23365 vasnesterov
author:vasnesterov
feat(Tactic/Simproc): nested quantifiers in `existsAndEq` Generalize the `existsAndEq` simproc to nested existential quantifiers. For example `∃ a, p a ∧ ∃ b, a = f b ∧ q b` now simplifies to `∃ b, p (f b) ∧ q b`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 474/2 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/Simproc/ExistsAndEq.lean,Mathlib/Tactic/Simproc/ExistsAndEqNested.lean,MathlibTest/Simproc/ExistsAndEq.lean,scripts/noshake.json 7 25 ['JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'vasnesterov'] nobody
1-7532
1 day ago
3-66579
3 days ago
3-66568
3 days
23252 mariainesdff
author:mariainesdff
feat(Algebra/Polynomial): add lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
66/0 Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Lifts.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Algebra/Polynomial/Splits.lean 5 3 ['alreadydone', 'github-actions', 'mariainesdff'] nobody
1-7208
1 day ago
7-86148
7 days ago
7-86137
7 days
23266 mariainesdff
author:mariainesdff
feat(Algebra/Order/BigOperator): add lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order t-algebra
label:t-algebra$
68/1 Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/BigOperators/Ring/Multiset.lean,Mathlib/Data/Finset/Max.lean 3 1 ['github-actions'] nobody
1-6968
1 day ago
7-66181
7 days ago
7-66228
7 days
23251 mariainesdff
author:mariainesdff
feat(FieldTheory/IntermediateField/Adjoin): add lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
57/0 Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean 2 14 ['alreadydone', 'github-actions', 'mariainesdff', 'tb65536'] nobody
1-6217
1 day ago
8-1333
8 days ago
8-1322
8 days
23474 Parcly-Taxel
author:Parcly-Taxel
chore: clear `docBlame` in `Computability` and `ModelTheory` Split from #22754. tech debt 30/30 Mathlib/Computability/Encoding.lean,Mathlib/Computability/Partrec.lean,Mathlib/Data/Nat/Find.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/ElementarySubstructures.lean,Mathlib/ModelTheory/LanguageMap.lean,Mathlib/ModelTheory/Quotients.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/ModelTheory/Syntax.lean,Mathlib/ModelTheory/Types.lean,scripts/nolints.json 13 1 ['github-actions'] nobody
1-5801
1 day ago
1-18162
1 day ago
1-18151
1 day
23485 YaelDillies
author:YaelDillies
feat(Submonoid): `closure (s \ t) = closure s` if `t ⊆ closure (s \ t)` From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
14/0 Mathlib/Algebra/Group/Submonoid/Basic.lean 1 1 ['github-actions'] nobody
1-5059
1 day ago
1-5060
1 day ago
1-5112
1 day
22823 b-reinke
author:b-reinke
feat(Algebra/Ring): associator of a non-associative ring If `R` is a non-associative ring, then `(x * y) * z - x * (y * z)` is called the `associator` of ring elements `x y z : R`. We realize the associator as a map that is an `AddMonoidHom` in each argument. The associator vanishes exactly when `R` is associative. We prove a similar statement for semirings by directly comparing the maps `mull₃` and `mulr₃`, the `AddMonoidHom` versions of the multiplications `(x * y) * z` and `x * (y * z)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
92/0 Mathlib.lean,Mathlib/Algebra/Ring/Associator.lean 2 10 ['Paul-Lez', 'YaelDillies', 'b-reinke', 'github-actions'] nobody
1-3762
1 day ago
1-10931
1 day ago
20-55341
20 days
13349 CBirkbeck
author:CBirkbeck
feat: TendstoUniformlyOn for tprod's Give conditions for prods to converge uniformly to a tprod. --- - [x] depends on: #16543 - [x] depends on: #16546 - [x] depends on: #15398 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 124/25 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Summable.lean,Mathlib/Topology/UniformSpace/MultipliableTendstoUniformly.lean,Mathlib/Topology/UniformSpace/UniformConvergence.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean 5 53 ['ADedecker', 'CBirkbeck', 'github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-dependent-issues-bot'] nobody
1-3384
1 day ago
13-53067
13 days ago
32-32051
32 days
23275 miguelmarco
author:miguelmarco
feat: add rewriting lemmas for integers This PR includes some equalities and equivalences about expressions with integer numbers. They can be useful as rewriting lemmas to simplify expressions. (See #8102 for motivation) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor 117/1 Mathlib/Data/Int/Init.lean 1 22 ['Paul-Lez', 'YaelDillies', 'github-actions', 'kim-em', 'miguelmarco'] nobody
1-3191
1 day ago
2-62173
2 days ago
6-23208
6 days
23447 YaelDillies
author:YaelDillies
chore(Order/Circular): golf --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order 10/15 Mathlib/Order/Circular.lean,scripts/noshake.json 2 1 ['github-actions'] nobody
1-2802
1 day ago
2-4284
2 days ago
2-4340
2 days
23209 wwylele
author:wwylele
feat(Analysis): add improper integral of complex exp These are the infinite version of integral_exp_mul_complex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 66/0 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Integral.lean 2 7 ['github-actions', 'j-loreaux', 'wwylele'] nobody
0-86121
23 hours ago
10-30550
10 days ago
10-30604
10 days
23471 urkud
author:urkud
chore(*): use `Finset.filter` notation more Also minor golf here and there. --- I'm sorry for mixing notation changes with golfing, but it's hard to split into 2 PRs now. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 87/96 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/Ring/Nat.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Order/Antidiag/Pi.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/AlgebraicTopology/DoldKan/Decomposition.lean,Mathlib/Combinatorics/HalesJewett.lean,Mathlib/Data/Finset/Density.lean,Mathlib/Data/Finset/Interval.lean,Mathlib/Data/Finset/NatAntidiagonal.lean,Mathlib/Data/Finset/PImage.lean,Mathlib/Data/Finset/Preimage.lean,Mathlib/Data/List/ToFinsupp.lean,Mathlib/Data/Multiset/Fintype.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Centralizer.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Topology/Algebra/Support.lean 29 2 ['b-mehta', 'github-actions'] nobody
0-80559
22 hours ago
1-25751
1 day ago
1-25740
1 day
23076 miguelmarco
author:miguelmarco
feat: add rewriting lemmas for euclidean domains This PR includes some equalities and equivalences about expressions in euclidean domains. They can be useful as rewriting lemmas to simplify expressions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra enhancement
label:t-algebra$
80/0 Mathlib/Algebra/EuclideanDomain/Basic.lean 1 26 ['eric-wieser', 'github-actions', 'miguelmarco', 'tb65536'] nobody
0-79724
22 hours ago
13-45238
13 days ago
13-45239
13 days
23439 YaelDillies
author:YaelDillies
chore(SimpleGraph/Prod): correct lemma names The head function should come first in the name even if dot notation is used (exceptions to that are structure projections in some special cases, and infix notation). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 35/18 Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean 2 3 ['b-mehta', 'eric-wieser', 'github-actions'] nobody
0-79152
21 hours ago
2-62529
2 days ago
2-62576
2 days
22119 pimotte
author:pimotte
feat(Combinatorics/SimpleGraph): part of Tutte's theorem Adds three key parts of the proof of Tutte's theorem, with some supporting lemma's: - necessity of the Tutte condition (`not_isTutteViolator`) - the fact that the empty set violates the Tutte condition if the number of vertices is odd (`IsTutteViolator.empty`) - the construction of a perfect matching in a graph that decomposes into cliques (`Subgraph.IsPerfectMatching.exists_of_isClique_supp`) Definitions added: `IsTutteViolator`. --- - [x] depends on: #22125 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) [Zulip thread on Tutte's](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tutte's.20theorem) t-combinatorics 189/2 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Represents.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Combinatorics/SimpleGraph/UniversalVerts.lean,Mathlib/Data/Set/Card.lean 6 38 ['YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'pimotte'] nobody
0-79019
21 hours ago
0-79041
21 hours ago
6-7686
6 days
23178 mariainesdff
author:mariainesdff
feat: add iSup lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order 71/1 Mathlib/Data/Real/Pointwise.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Topology/Instances/NNReal/Lemmas.lean 4 7 ['D-Thomine', 'github-actions', 'jcommelin', 'mariainesdff'] nobody
0-78995
21 hours ago
10-75786
10 days ago
10-75827
10 days
23498 Ruben-VandeVelde
author:Ruben-VandeVelde
chore(Topology.MetricSpace.Lipschitz): stop depending on Topology.Algebra Noticed while playing with the new `directoryDependency` linter. Not sure if these could be proved without assuming the continuity of real multiplication. Copyright from https://github.com/leanprover-community/mathlib3/pull/1921 and https://github.com/leanprover-community/mathlib4/pull/11840. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 60/34 Mathlib.lean,Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/Topology/Algebra/MetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/Algebra.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/PiNat.lean 9 1 ['github-actions'] nobody
0-78159
21 hours ago
0-78219
21 hours ago
0-78208
21 hours
23494 kebekus
author:kebekus
feat: introduce Laurent polynomials Introduce Laurent polynomials as examples of meromorphic functions in normal form. Laurent polynomials will be used in a follow-up PR to extract poles and zeros from meromorphic functions. This, in turn, will be useful to show prove integrability of functions of type `log |meromorphic|` that frequently appear in complex analysis. 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 188/0 Mathlib.lean,Mathlib/Analysis/Meromorphic/LaurentPolynomial.lean,Mathlib/Data/LocallyFinsupp.lean,Mathlib/Topology/DiscreteSubset.lean 4 1 ['github-actions'] nobody
0-76501
21 hours ago
0-76501
21 hours ago
0-80565
22 hours
19783 JakobStiefel
author:JakobStiefel
feat: definition and properties of characteristic functions define characteristic functions. Show that characteristic functions separate finite measures. --- - [x] depends on: #19780 - [x] depends on: #19781 - [x] depends on: #19782 - [x] depends on: #20604 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-measure-probability 396/29 Mathlib.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Fourier/BoundedContinuousFunctionChar.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction.lean,Mathlib/MeasureTheory/Measure/FiniteMeasureExt.lean,Mathlib/Probability/Moments/ComplexMGF.lean 7 n/a ['JakobStiefel', 'RemyDegenne', 'github-actions', 'hanwenzhu', 'mathlib4-dependent-issues-bot', 'sgouezel'] nobody
0-76473
21 hours ago
unknown
unknown
23492 kebekus
author:kebekus
chore: rename file to better reflect contents Rename the file because the name 'NormalFormAt' no longer reflects the content of the file, which now also speaks about functions that have normal form on a set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 1/1 Mathlib.lean,Mathlib/Analysis/Meromorphic/NormalForm.lean 2 1 ['github-actions'] nobody
0-76452
21 hours ago
0-82061
22 hours ago
0-82117
22 hours
23363 kebekus
author:kebekus
feat: congruence lemmas for divisors of meromorphic functions Deliver on open TODO and state elementary congruence lemmas for divisors of meromorphic functions. 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 76/1 Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean 2 1 ['github-actions'] nobody
0-76054
21 hours ago
5-5762
5 days ago
5-5812
5 days
23483 YaelDillies
author:YaelDillies
refactor: generalise `∏ i ∈ s, f i = 1 ↔ ∀ i ∈ s, f i = 1` to salient monoids namely whose only unit is `1`. Also unprime the multiplicative name since it doesn't conflict with anything. From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
11/4 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean 2 7 ['YaelDillies', 'b-mehta', 'github-actions'] nobody
0-74744
20 hours ago
1-5527
1 day ago
1-5586
1 day
23486 YaelDillies
author:YaelDillies
chore(UniqueProds): split `FreeMonoid` content out --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/13 Mathlib.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/FreeMonoid/UniqueProds.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean 4 2 ['b-mehta', 'github-actions'] nobody
0-74355
20 hours ago
0-74355
20 hours ago
0-83710
23 hours
23488 YaelDillies
author:YaelDillies
feat: characterise elements of the submonoid generated by a finset From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
26/4 Mathlib/Algebra/Group/Submonoid/BigOperators.lean 1 6 ['b-mehta', 'eric-wieser', 'github-actions'] nobody
0-72824
20 hours ago
1-3154
1 day ago
1-3204
1 day
23105 YaelDillies
author:YaelDillies
chore: make sure that simp can prove that a finite set is relatively compact Make `Set.Finite.isClosed`, `IsClosed.closure_eq` and `Set.Finite.isCompact` simp lemmas so that the following works: ``` import Mathlib example {X : Type*} [TopologicalSpace X] {s : Set X} (hs : s.Finite) : IsCompact (closure s) := by simp ``` From my PhD (MiscYD) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 5/10 Mathlib/Topology/Basic.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Separation/Basic.lean 4 5 ['b-mehta', 'github-actions', 'leanprover-bot'] nobody
0-71602
19 hours ago
12-39541
12 days ago
12-53570
12 days
23425 vasnesterov
author:vasnesterov
feat(Algebra/BigOperators): simprocify `prod_univ_one/two/three/...` Add a simproc `prod_univ_many` that rewrites `∏ (i : Fin n), f i` as `f 0 * f 1 * ... * f (n - 1)`, generalizing `prod_univ_one`, `prod_univ_two`, ..., `prod_univ_eight`. --- It seems impossible to use to_additive here to avoid reimplementing the same simproc for additive goals. Just wanted to hear your ideas, before doing it. - [x] depends on: #23427 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 51/0 Mathlib/Data/Fin/Tuple/Reflection.lean 1 9 ['eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'vasnesterov'] nobody
0-71139
19 hours ago
1-24911
1 day ago
1-73786
1 day
23451 loefflerd
author:loefflerd
refactor: protect "map_add" lemmas Protect some lemmas in non-root namespaces called `map_add` or similar, and remove lots of explicit `_root_` prefixes (about 80 of them, at a cost of only 8 places where an explicit non-root prefix needed to be added.) --- Additive counterpart of #23403. Lemmas protected: - `HomologicalComplex.( map_add | map_sub | map_neg | map_zero )` - `WithTop.map_sub` - `ENat.map_zero` - `QuadraticMap.( map_neg | map_sub | map_smul )` - `Measure.( map_add | map_zero | map_smul )` - `MeasureTheory.map_smul` [sic - this is not the same lemma as above] - `FractionalIdeal.( map_add | map_zero )` - `Valuation.( map_add | map_zero | map_pow )` - `PresheafOfModules.map_smul` - `Sheafify.map_smul` - `Matrix.map_smul` I did _not_ protect `Multiset.map_add` and `Multiset.map_zero`, since this seemed to do more harm than good, requiring lots of explicit `Multiset.` prefixes. Most of the multiset files come before the general `map_add` lemma is defined anyway. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 113/113 Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Order/Sub/WithTop.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Algebra/Polynomial/Taylor.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Matrix/Defs.lean,Mathlib/Data/Real/ENatENNReal.lean,Mathlib/FieldTheory/Laurent.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/Geometry/Manifold/Algebra/LeftInvariantDerivation.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Dual/Basis.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/LinearMap.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean,Mathlib/LinearAlgebra/Quotient/Pi.lean,Mathlib/LinearAlgebra/TensorProduct/Submodule.lean,Mathlib/LinearAlgebra/TensorProduct/Vanishing.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Group/Convolution.lean,Mathlib/MeasureTheory/Group/Integral.lean,Mathlib/MeasureTheory/Integral/BochnerL1.lean,Mathlib/MeasureTheory/Measure/Comap.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/MeasureTheory/Measure/Map.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/NumberTheory/Cyclotomic/Discriminant.lean,Mathlib/RingTheory/ClassGroup.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/Polynomial/Opposites.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/RingHom/Finite.lean,Mathlib/RingTheory/Valuation/AlgebraInstances.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 62 1 ['github-actions'] nobody
0-69901
19 hours ago
0-69918
19 hours ago
0-86196
23 hours
23236 alreadydone
author:alreadydone
chore(Topology/Instances/AddCircle): golf and little lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
44/37 Mathlib/Topology/Instances/AddCircle.lean 1 5 ['alreadydone', 'eric-wieser', 'github-actions'] nobody
0-68709
19 hours ago
0-68723
19 hours ago
8-62814
8 days
20668 gio256
author:gio256
refactor(AlgebraicTopology/SimplicialSet): truncated paths We refactor the `StrictSegal` infrastructure, making two notable changes: - The `StrictSegal` class is redefined as a structure, and the class `IsStrictSegal X : Prop` is added in its place. - `Path`, `StrictSegal`, and related constructions are defined for truncated simplicial sets. A path in a simplicial set `X` is then defined as a 1-truncated path in the 1-truncation of `X`. --- - [X] depends on: #21090 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) infinity-cosmos t-category-theory 669/189 Mathlib/AlgebraicTopology/Quasicategory/StrictSegal.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Coskeletal.lean,Mathlib/AlgebraicTopology/SimplicialSet/Path.lean,Mathlib/AlgebraicTopology/SimplicialSet/StrictSegal.lean 7 38 ['emilyriehl', 'gio256', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
0-68379
18 hours ago
4-65421
4 days ago
17-55169
17 days
23501 Timeroot
author:Timeroot
chore (ModelTheory/Syntax): Rename Lequiv -> LEquiv This function was named `Lequiv.onTerm`, this was probably a mistake because the object it uses it called `LEquiv`. This renames it and adds a deprecated alias. --- Pulled out from #19695 . [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 5/1 Mathlib/ModelTheory/Syntax.lean 1 1 ['github-actions'] nobody
0-68077
18 hours ago
0-70000
19 hours ago
0-70019
19 hours
23502 Timeroot
author:Timeroot
feat(ModelTheory/Semantics): BoundedFormula.realize_foldr_imp Two lemmas for `realize`ing a `BoundedFormula`. --- Pulled out from #19695. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 20/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 1 ['github-actions'] nobody
0-67952
18 hours ago
0-68852
19 hours ago
0-68910
19 hours
23206 urkud
author:urkud
feat(EGauge): add `egauge_pi` and `egauge_prod` Also change recently introduced `smul_set*pi*` to use unapplied smul in the rhs. --- - [ ] depends on: #22573 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 131/25 Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Set.lean,Mathlib/Analysis/Convex/EGauge.lean 4 17 ['eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
0-61030
16 hours ago
9-77702
9 days ago
9-84887
9 days
23506 Timeroot
author:Timeroot
feat (ModelTheory/Definability): TermDefinable functions Defines `TermDefinable` functions, as functions that can be expressed directly as a term in some interpretation of a language. Shows that this is transitive (as a relationship between structures) and closed under composition of functions. --- Pulled out from #19695. - [ ] depends on #23501 - [ ] depends on #23502 - [ ] depends on #23504 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-logic 196/1 Mathlib/Data/Rel.lean,Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean,scripts/noshake.json 5 1 ['github-actions'] nobody
0-60998
16 hours ago
0-63080
17 hours ago
0-66497
18 hours
23408 faenuccio
author:faenuccio
feat(RingTheory/Valuation): add two lemmas about non-units in valuation subrings co-authored with María Inés de Frutos Fernández @mariainesdff t-algebra t-number-theory
label:t-algebra$
9/0 Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean 2 1 ['github-actions', 'pechersky'] nobody
0-59879
16 hours ago
3-61807
3 days ago
3-61798
3 days
16603 urkud
author:urkud
feat(Dynamics): irrational rotation is ergodic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics 39/0 Mathlib.lean,Mathlib/Dynamics/Ergodic/AddCircleAdd.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean 3 n/a ['github-actions', 'urkud'] nobody
0-59438
16 hours ago
unknown
unknown
23444 mistarro
author:mistarro
refactor(Algebra/CharP): Frobenius map definition in `Mathlib.Algebra.CharP.Frobenius` The Frobenius map definitions are now in `Mathlib.Algebra.CharP.Frobenius` to reduce confusion (before it was split between `Lemmas` and `ExpChar` after PR #18023). As `Mathlib.Algebra.CharP.Two` forbids definitions of `Algebra` and `LinearMap` and at the same time depends on the results requiring additive part of the Frobenius map, that part is placed in `Lemmas` and reused in the definitions of `frobenius` and `iterateFrobenius`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
153/169 Mathlib.lean,Mathlib/Algebra/CharP/ExpChar.lean,Mathlib/Algebra/CharP/Frobenius.lean,Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Algebra/CharP/Reduced.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/FieldTheory/PurelyInseparable/PerfectClosure.lean,Mathlib/RingTheory/Perfection.lean 9 7 ['Vierkantor', 'github-actions', 'mistarro'] nobody
0-57657
16 hours ago
0-57657
16 hours ago
2-31619
2 days
23470 erdOne
author:erdOne
feat(AlgebraicGeometry): section of a k-scheme is a closed immersion Co-authored-by: Christian Merten --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 89/3 Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/PullbackCarrier.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/AlgebraicGeometry/Scheme.lean 6 7 ['chrisflav', 'github-actions'] nobody
0-56591
15 hours ago
1-27601
1 day ago
1-27634
1 day
23320 Whysoserioushah
author:Whysoserioushah
feat(Mathlib/RingTheory/TwoSidedIdeal/SpanAsSum): span of set as finsum co-authored by: @jjaassoonn splited from [#23216](https://github.com/leanprover-community/mathlib4/pull/23216) following @eric-wieser advice --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
109/4 Mathlib.lean,Mathlib/RingTheory/TwoSidedIdeal/Operations.lean,Mathlib/RingTheory/TwoSidedIdeal/SpanAsSum.lean 3 35 ['Whysoserioushah', 'eric-wieser', 'github-actions', 'kbuzzard'] nobody
0-52080
14 hours ago
6-39342
6 days ago
6-39393
6 days
23503 apnelson1
author:apnelson1
feat(Topology/Instances/ENat): ENat and tsum We give API for the interactions between `tsum` and `ENat`. The type is especially nice, because every function is summable, and there are simplifying lemmas like the statement that a sum is infinite iff either some term is infinite, or the support is infinite. This provides one of the missing pieces for working painlessly with discrete objects, 'propositional' finiteness and cardinality. For instance, one can sum a function `f : a -> ENat` over an arbitrary set with the term `∑' a : s, 1`, and it will be provable that `∑' a : s, 1 = s.encard` and `(support f).encard ≤ ∑' a, f a` without ever having to split into finite/infinite cases. As is pointed out in the module docstring for `Data.ENat`, there are strong analogies between `ENat` and `ENNReal`, and the API runs parallel to the API for `tsum`/`ENNReal`. One could call it 'duplication', but I have yet to find a common generalization of the two that saves work, or a third example of a natural type with these same properties. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 205/2 Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Topology/Instances/ENat.lean 3 2 ['eric-wieser', 'github-actions'] nobody
0-45898
12 hours ago
0-57602
15 hours ago
0-57597
15 hours
23490 erdOne
author:erdOne
feat(Algebra/Category): the category of topological modules Co-authored-by: Richard Hill --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
459/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean 2 1 ['github-actions'] nobody
0-44763
12 hours ago
0-83008
23 hours ago
0-83066
23 hours
23515 eric-wieser
author:eric-wieser
fix: add missing forgetful inheritance to complete linear orders I'll follow up with a larger refactor that avoids this duplication. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 11/2 Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean 2 1 ['github-actions'] nobody
0-43339
12 hours ago
0-43339
12 hours ago
0-43400
12 hours
21909 erdOne
author:erdOne
feat(RingTheory/Invariants): Generalize to profinite groups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
350/5 Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Invariant/Profinite.lean 6 2 ['TwoFX', 'github-actions'] nobody
0-43092
11 hours ago
0-43092
11 hours ago
4-31274
4 days
23513 erdOne
author:erdOne
feat(AlgebraicGeometry): subscheme associated to an ideal sheaf --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 344/15 Mathlib/AlgebraicGeometry/IdealSheaf.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Scheme.lean 3 1 ['github-actions'] nobody
0-41523
11 hours ago
0-45324
12 hours ago
0-45328
12 hours
22339 chrisflav
author:chrisflav
feat(RingTheory): base change commutes with finite products and in particular with localizations of modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
99/0 Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangePi.lean 3 4 ['chrisflav', 'erdOne', 'github-actions'] nobody
0-41499
11 hours ago
33-54173
1 month ago
33-55369
33 days
23504 Timeroot
author:Timeroot
feat(ModelTheory/Syntax): substFunc Defines `FirstOrder.Language.Term.substFunc`, a way to substitute function definitions inside of a term. Compare this with existing `subst`, which just substitutes variables. --- Pulled out from #19695 - [ ] depends on #23502 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 33/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 1 ['github-actions'] nobody
0-26898
7 hours ago
0-68038
18 hours ago
0-68089
18 hours
22265 Timeroot
author:Timeroot
feat(Geometry/Euclidean/Angle/Unoriented): triangle inequality filled in a `proof_wanted` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 78/12 Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/TriangleInequality.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean 5 7 ['Timeroot', 'github-actions', 'jsm28', 'urkud'] nobody
0-26591
7 hours ago
0-63505
17 hours ago
20-67289
20 days
23493 BoltonBailey
author:BoltonBailey
chore(Control/Combinators): add documentation Adds docstrings to this file ([Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Technical.20Debt.20Counters/near/509167582)) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt t-meta documentation 58/14 Mathlib/Control/Combinators.lean,scripts/nolints.json 2 3 ['Parcly-Taxel', 'b-mehta', 'github-actions'] nobody
0-26410
7 hours ago
0-80539
22 hours ago
0-80623
22 hours
21944 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory/Powerseries): Weierstrass preparation for complete local ring Weierstrass preparation theorem for complete local ring --- - [x] depends on: #21900 - [x] depends on: #22369 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
588/0 Mathlib.lean,Mathlib/RingTheory/WeierstrassPreparation.lean 2 11 ['Thmoas-Guan', 'acmepjz', 'github-actions', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
0-12106
3 hours ago
30-78121
30 days ago
37-73355
37 days
21399 erdOne
author:erdOne
feat(CategoryTheory): `ChosenFiniteProducts (Over X)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 233/10 Mathlib.lean,Mathlib/CategoryTheory/ChosenFiniteProducts/Over.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Products.lean,Mathlib/CategoryTheory/Sites/EffectiveEpimorphic.lean 5 21 ['b-mehta', 'erdOne', 'github-actions', 'joelriou', 'sinhp'] nobody
0-11825
3 hours ago
0-11825
3 hours ago
22-29691
22 days
23518 kebekus
author:kebekus
feat: behavior of divisors under addition Deliver on two elementary TODOs: Show that the divisor of an analytic function is non-negative. Show that adding an analytic function to a meromorphic one does not change the pole divisor. 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 41/2 Mathlib/Analysis/Meromorphic/Divisor.lean 1 6 ['YaelDillies', 'github-actions', 'kebekus'] nobody
0-9672
2 hours ago
0-9672
2 hours ago
0-16258
4 hours
23527 erdOne
author:erdOne
feat(Topology): subspace of quotient topology is quotient of subspace topology --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 69/0 Mathlib/Topology/Maps/OpenQuotient.lean 1 1 ['github-actions'] nobody
0-7501
2 hours ago
0-7590
2 hours ago
0-7579
2 hours
23496 chrisflav
author:chrisflav
chore(Algebra): the five lemma for modules We reprove the five lemma for modules for universe generality, avoiding the import of `Mathlib.CategoryTheory.Abelian.DiagramLemmas.Four` in otherwise non-category-theoretic files and for ease of application. --- See #23497 for a golf using this. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
137/0 Mathlib.lean,Mathlib/Algebra/FiveLemma.lean 2 3 ['erdOne', 'github-actions'] nobody
0-6732
1 hour ago
0-78797
21 hours ago
0-78786
21 hours
23528 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: add isOpen_setOf_affineIndependent From sphere-eversion. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 15/0 Mathlib/Analysis/Normed/Module/FiniteDimension.lean 1 1 ['github-actions'] nobody
0-5185
1 hour ago
0-5185
1 hour ago
0-5235
1 hour
23167 fbarroero
author:fbarroero
feat(Analysis/SpecialFunctions/Complex/CircleMap): some basic facts about `circleMap` We move the definition of `circleMap` and some relative theorems to a new file. We also add some basic facts about it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 138/95 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleMap.lean,Mathlib/Analysis/SpecialFunctions/Complex/Log.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Data/Complex/Exponential.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean 7 14 ['EtienneC30', 'dupuisf', 'fbarroero', 'github-actions', 'mans0954'] EtienneC30
assignee:EtienneC30
0-4685
1 hour ago
0-9832
2 hours ago
6-30313
6 days
23500 DrLSimon
author:DrLSimon
feat(MeasureTheory/Decomposition): link the clipped sub of positive measures to Jordan decomposition This introduces a new file `Mathlib/MeasureTheory/Decomposition/JordanSub.lean` which develops the Jordan decomposition of the signed measure `μ.toSignedMeasure - ν.toSignedMeasure` for finite measures `μ` and `ν`, expressing it as the pair `(μ - ν, ν - μ)` of mutually singular finite measures. The key tool is the Hahn decomposition theorem, which yields a measurable partition of the space where `μ ≥ ν` and `ν ≥ μ`. Some basic results of `VectorMeasure` are also provided such as `restrict_neg`, `restrict_sub` `restrict_add_restrict_compl` and `Measure.toSignedMeasure_le_iff` within the `JordanSub.lean` file. They could be moved to another more central place (I guess `VectorMeasure/Basic.lean`). Similarly, `Measure.sub_zero` could go to `Sub.lean`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 265/0 Mathlib.lean,Mathlib/MeasureTheory/Decomposition/JordanSub.lean 2 2 ['DrLSimon', 'github-actions'] nobody
0-4503
1 hour ago
0-72604
20 hours ago
0-72654
20 hours
23529 Parcly-Taxel
author:Parcly-Taxel
chore: split `Data.Ordmap.Ordset` The constituent parts of the invariant have been pushed backwards to `Data.Ordmap.Invariants`. The bundled `Valid` predicate and `Ordset` itself remain in place. t-data tech debt 855/844 Mathlib.lean,Mathlib/Data/Ordmap/Invariants.lean,Mathlib/Data/Ordmap/Ordset.lean 3 1 ['github-actions'] nobody
0-3354
55 minutes ago
0-3415
56 minutes ago
0-3404
56 minutes
23436 robin-carlier
author:robin-carlier
feat(CategoryTheory/Core): functors and natural transformations induced on cores Add a constructor for functors `Core C ⥤ Core D` from functors `C ⥤ D`. Show that this construction respects composition and identity functors. Add a constructor for natural isomorphsims of functors of this form, and show compatibility of the construction with respect to composition, identities, left/right whiskering, left/right unitors, and associators. --- I added an `ext` lemma for morphisms in cores and tagged `Core.inclusion` and `Groupoid.isoEquivHom` with `@[simps!]` so that all proofs are found by aesop_cat. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 94/1 Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Groupoid.lean 2 2 ['github-actions', 'joelriou'] nobody
0-3191
53 minutes ago
0-3191
53 minutes ago
2-70280
2 days
21834 joneugster
author:joneugster
refactor(Cache): use module name as key instead of unresolved file path --- - [x] depends on: #21822 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI t-meta 55/63 Cache/Hashing.lean,Cache/Main.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
0-588
9 minutes ago
0-6473
1 hour ago
0-891
14 minutes
23452 xroblot
author:xroblot
feat(FieldTheory/Normal): A quadratic extension is normal --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/0 Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/FieldTheory/Normal/Basic.lean 2 4 ['erdOne', 'github-actions', 'xroblot'] nobody
0-429
7 minutes ago
1-66236
1 day ago
1-66285
1 day

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
21903 yhtq
author:yhtq
feat: add from/toList between `FreeSemigroup` and `List` with relative theorems Add from/toList between `FreeSemigroup` and `List` with relative theorems, as well as an incidental definition of lexicographic order on `FreeSemigroup`. --- [![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$
169/0 Mathlib/Algebra/Free.lean 1 1 ['github-actions'] nobody
44-11738
1 month ago
45-9254
1 month ago
45-9300
45 days
20648 anthonyde
author:anthonyde
feat: formalize regular expression -> εNFA The file `Computability/RegularExpressionsToEpsilonNFA.lean` contains a formal definition of Thompson's method for constructing an `εNFA` from a `RegularExpression` and a proof of its correctness. --- - [x] depends on: #20644 - [x] depends on: #20645 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor 490/0 Mathlib.lean,Mathlib/Computability/RegularExpressionsToEpsilonNFA.lean,docs/references.bib 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
41-33260
1 month ago
41-33273
1 month ago
41-35072
41 days
22314 shetzl
author:shetzl
feat: add leftmost derivations for context-free grammars Leftmost derivations are often easier to reason about than arbitrary derivations. This PR adds leftmost variants of Rewrites, Produces and Derives to the existing definition of context-free grammars and proves that a string of terminals can be derived iff it can be leftmost derived. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor 383/0 Mathlib.lean,Mathlib/Computability/LeftmostDerivation.lean 2 27 ['github-actions', 'madvorak', 'shetzl'] nobody
33-70842
1 month ago
34-5711
1 month ago
34-5766
34 days
21869 Raph-DG
author:Raph-DG
feat(Order): Trimmed length of a RelSeries In this PR, we define the trimmed length of a relseries rs : RelSeries (· ≤ ·) to be the cardinality of the underlying function rs.toFun of rs minus 1. This models the number of `<` relations occuring in rs. We develop some basic API for this notion, with the main intended application being a proof that module length is additive. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 236/0 Mathlib.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/TrimmedLength.lean 3 8 ['Raph-DG', 'github-actions', 'jcommelin'] nobody
32-73902
1 month ago
45-82418
1 month ago
45-82466
45 days
21603 imbrem
author:imbrem
feat(CategoryTheory/ChosenFiniteProducts): Added basic ChosenFiniteCoproducts class Added basic `ChosenFiniteCoproducts` class, and started porting some of the lemmas about `ChosenFiniteProducts` suitably translated --- This, combined with #20182 modified to use chosen finite coproducts and premonoidal categories (#21488), should be enough for me to formalize strong Elgot categories, and hence a lot of categorical iteration theory for my PhD thesis. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory 260/2 Mathlib/CategoryTheory/ChosenFiniteProducts.lean 1 7 ['TwoFX', 'github-actions'] nobody
25-71697
25 days ago
25-71711
25 days ago
49-56830
49 days
22701 ctchou
author:ctchou
feat(Combinatorics): the Katona circle method This file formalizes the Katona circle method. From PlainCombi (LeanCamCombi): https://github.com/YaelDillies/LeanCamCombi/blob/master/LeanCamCombi/PlainCombi/KatonaCircle.lean Co-authored-by: Yaël Dillies new-contributor t-combinatorics 121/0 Mathlib.lean,Mathlib/Combinatorics/KatonaCircle.lean 2 1 ['github-actions'] nobody
24-51588
24 days ago
24-52212
24 days ago
24-52261
24 days
22684 vlad902
author:vlad902
feat(Topology): add `ContinuousOn` union API lemmas Add two lemmas to allow going from continuity of a union to continuity on the individual sets, and continuity on two open sets to continuity on their union. Note that there is already an existing lemma for continuity of the union of two closed sets. new-contributor t-topology 30/3 Mathlib/Topology/ContinuousOn.lean 1 11 ['Paul-Lez', 'github-actions', 'grunweg', 'vlad902'] nobody
23-2364
23 days ago
24-84047
24 days ago
24-84044
24 days
8167 sebzim4500
author:sebzim4500
feat: Add new `grw` tactic for rewriting using inequalities. feat: Add new `grw` tactic for rewriting using inequalities. Co-authored-by: @hrmacbeth, @digama0 --- - [x] depends on: #8796 ```lean example (x y z w : ℝ) (h₁ : x < z) (h₂ : w ≤ y + 4) (h₃ : Real.exp z < 5 * w) : Real.exp x < 5 * (y + 4) := by grw [h₁, ← h₂] exact h₃ ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta modifies-tactic-syntax 552/2 Mathlib.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Tactic.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRW.lean,Mathlib/Tactic/GRW/Core.lean,Mathlib/Tactic/GRW/Lemmas.lean,MathlibTest/GRW.lean,scripts/noshake.json 9 53 ['Vierkantor', 'digama0', 'eric-wieser', 'fpvandoorn', 'github-actions', 'hrmacbeth', 'kim-em', 'leanprover-community-mathlib4-bot', 'sebzim4500'] nobody
22-70026
22 days ago
23-56995
23 days ago
54-19247
54 days
20681 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define deleteIncidenceSet Define the operation `G.deleteIncidenceSet x` deleting the incidence set of the vertex `x` from the edge set of the simple graph `G` and prove theorems in the finite case. Also move `deleteEdges` and `deleteFar` definitions to a separate file `DeleteEdges.lean` (that includes `deleteIncidenceSet`) to simplify imports. --- - [x] depends on: #20825 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-combinatorics 228/93 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mitchell-horner'] nobody
21-26564
21 days ago
21-26577
21 days ago
44-76158
44 days
22620 ahhwuhu
author:ahhwuhu
feat: Define shifted Legendre polynomials and prove some basic properties Define shifted Legendre polynomials and prove that it is integer polynomial. In the same time, its evaluation on x is equal to the evaluation on 1 - x. new-contributor t-analysis 123/0 Mathlib.lean,Mathlib/Analysis/ShiftedLegendrePoly.lean 2 11 ['acmepjz', 'ahhwuhu', 'github-actions', 'riccardobrasca'] nobody
20-78433
20 days ago
26-22540
26 days ago
26-22588
26 days
22890 BGuillemet
author:BGuillemet
feat: add versions of the Lebesgue number lemma Add versions of the Lebesgue number lemma, for coverings by neighborhoods rather than by open subsets (in `Topology/UniformSpace/Compact.lean`). Add specializations of the Lebesgue number lemma for extended metric spaces (in `Topology/EMetricSpace/Basic.lean`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 87/0 Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/UniformSpace/Compact.lean 2 1 ['github-actions'] nobody
19-32668
19 days ago
19-32729
19 days ago
19-32717
19 days
22948 pelicanhere
author:pelicanhere
feat(Algebra/DirectSum): morphism of directsum decomposition Define morphism of directsum decomposition, which would be later used in defineing graded ring hom. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
68/0 Mathlib/Algebra/DirectSum/Decomposition.lean 1 1 ['github-actions'] nobody
16-77553
16 days ago
17-3797
17 days ago
17-3846
17 days
22196 xyzw12345
author:xyzw12345
feat: `lie_ring` tactic and `LieReduce` command In this PR, we implement a new tactic that reduces expressions in a `LieRing` to a normal form and checks whether they are equal, and a command which reduces the expression and displays the normal form. The implementation of this tactic imitates the `ring` tactic, using the `Qq` package to implement a specific reduction algorithm, following the theory of Hall sets and Lyndon words. A reference for the algorithm can be found at, for example, [here](https://personal.math.ubc.ca/~cass/research/pdf/Free.pdf). This project is the result of a workshop at Peking University, and @siddhartha-gadgil has helped us a lot on understanding the concepts in metaprogramming. Edit: The changes are reverted to a point where only `AtomM` is used. Co-authored-by: @Thmoas-Guan <2300010733@stu.pku.edu.cn> @yhtq <2100012990@stu.pku.edu.cn> @Blackfeather007 <2100017455@stu.pku.edu.cn> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta 821/0 Mathlib.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 7 5 ['github-actions', 'ocfnash', 'siddhartha-gadgil', 'xyzw12345'] nobody
16-71088
16 days ago
37-27472
1 month ago
37-27470
37 days
22260 ldct
author:ldct
feat: Add SampleableExt PNat Allow sampling from `PNat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 26/0 Mathlib/Testing/Plausible/Sampleable.lean,MathlibTest/slim_check.lean 2 6 ['github-actions', 'vasnesterov'] nobody
15-73471
15 days ago
15-73509
15 days ago
28-48538
28 days
21488 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): premonoidal categories Add support for premonoidal categories --- Still want to add support for: - Premonoidal braided/symmetric categories - The monoidal coherence theorem, which I've already ported in my `discretion` library - The `coherence` tactic, which should work fine for premonoidal categories too but wanted to get this in front of reviewers ASAP to make sure my general approach was alright [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory 893/354 Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,MathlibTest/StringDiagram.lean 21 3 ['YaelDillies', 'github-actions', 'imbrem'] nobody
14-64360
14 days ago
50-71294
1 month ago
54-32619
54 days
22256 plp127
author:plp127
feat: Metric Spaces are T6 This PR shows that metric spaces are T6. It also generalizes the contents of Mathlib/Topology/GDelta/UniformSpace to apply to metrizable spaces. See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60IsClosed.2EisG.CE.B4.60) thread. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 128/64 Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/Order/Interval/Set/Disjoint.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/GDelta/MetrizableSpace.lean,Mathlib/Topology/GDelta/UniformSpace.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/Separation/GDelta.lean 11 28 ['github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127', 'urkud'] nobody
14-54475
14 days ago
27-41678
27 days ago
34-41276
34 days
22582 vlad902
author:vlad902
feat: generalize theorems with linter fixes This is one of a series of PRs that generalizes type classes across Mathlib. These are generated using a new linter that tries to re-elaborate theorem definitions with more general type classes to see if it succeeds. It will accept the generalization if deleting the entire type class causes the theorem to fail to compile. Otherwise, the type class is not being generalized, but can simply be replaced by implicit type class synthesis (or an implicit type class in a variable block being pulled in.) The linter currently output debug statements indicating source file positions where type classes should be generalized, and a script then makes those edits. This file contains a subset of those generalizations. The linter and the script performing re-writes is available in commit 7b436512017640c3c33aea50b2435b2ee0d995c9. Note that this PR specifically generalizes theorems across a range of files and type classes, the common theme is that the resulting changes all cause type classes in variable declarations to go unused. Also see discussion on Zulip here: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/498862988 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Elab.20to.20generalize.20type.20classes.20for.20theorems/near/501288855 new-contributor 30/50 Mathlib.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Normed/Operator/Compact.lean,Mathlib/GroupTheory/Perm/Subgroup.lean,Mathlib/Topology/Algebra/ConstMulAction.lean 8 10 ['github-actions', 'urkud', 'vlad902'] urkud
assignee:urkud
13-8434
13 days ago
14-53536
14 days ago
26-31932
26 days
23066 ybenmeur
author:ybenmeur
feat: more lemmas for Tannaka duality for finite groups Prove more of the lemmas needed to prove Tannaka duality for finite groups. --- This is everything that doesn't depend on `eval_of_algHom` (#23065). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
50/0 Mathlib/RepresentationTheory/Tannaka.lean 1 1 ['github-actions'] nobody
12-67251
12 days ago
13-59793
13 days ago
13-59845
13 days
23299 DavidLedvinka
author:DavidLedvinka
feat(Analysis): add `mlconvolution` and `lconvolution`, Convolution with the Lebesgue integral Create LConvolution.lean which defines convolution using the Lebesgue integral. I plan to add more API but wanted to make sure the definition/notation are satisfactory. The main intended application of this is to prove that the pdf of a product (sum) of independent random variables is given by the convolution of their pdfs. new-contributor t-analysis 75/0 Mathlib.lean,Mathlib/Analysis/LConvolution.lean 2 1 ['github-actions'] nobody
6-85392
6 days ago
6-85392
6 days ago
6-85442
6 days
22069 Raph-DG
author:Raph-DG
feat(LinearMap): Added lemmas relating kernels of linear maps to Submodule.map Added the lemma ne_map_or_ne_kernel_inter_of_lt stating that if A < B as submodules, then for any linear map f, `ker f ⊓ A ≠ ker f ⊓ B ∨ Submodule.map f A ≠ Submodule.map f B`. We also prove the corollaries ker_inter_mono_of_map_eq and map_mono_of_ker_inter_eq. Co-authored-by: Raphael Douglas Giles (raphaeldouglasgiles@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
28/0 Mathlib/LinearAlgebra/Span/Basic.lean 1 14 ['Paul-Lez', 'Raph-DG', 'github-actions', 'j-loreaux'] nobody
6-70128
6 days ago
6-70145
6 days ago
40-55249
40 days
23065 ybenmeur
author:ybenmeur
feat: lemma `eval_of_algHom` Let `k` be an integral domain and `G` an arbitrary finite set. Then any algebra morphism `φ : (G → k) →ₐ[k] k` is an evaluation map. --- I don't know where to put this lemma. Needed for #22176. Output of `#find_home`: `[Mathlib.LinearAlgebra.Matrix.ToLin, Mathlib.Algebra.Quaternion, Mathlib.Algebra.Azumaya.Matrix, Mathlib.LinearAlgebra.Dimension.Free, Mathlib.Algebra.Module.FinitePresentation, Mathlib.SetTheory.Cardinal.Free, Mathlib.RingTheory.MvPolynomial.Basic, Mathlib.RingTheory.Polynomial.Basic]`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
24/0 Mathlib/RepresentationTheory/Tannaka.lean 1 1 ['github-actions'] nobody
6-66771
6 days ago
6-66771
6 days ago
13-60191
13 days
22884 tannerduve
author:tannerduve
feat(Computability/TuringDegrees): define oracle computability and Turing degrees ### Description Define a model of **oracle computability**, introducing Turing reducibility (`≤ᵀ`), Turing equivalence (`≡ᵀ`), and Turing degrees as the quotient under Turing equivalence. - `RecursiveIn O f`: A function `f` is recursive in a set of oracles `O` if it can be computed using `O` via basic operations (zero, successor, pairing, composition, primitive recursion, and μ-recursion). - `TuringReducible`: The relation that `f` is recursive in `{g}`, i.e., `f ≤ᵀ g`. - `TuringEquivalent`: A relation defining Turing equivalence between partial functions. - `TuringDegree`: The set of equivalence classes under `TuringEquivalent`, forming a **partially ordered structure**. Additionally: - Prove that `TuringReducible` is a **preorder** (reflexive, transitive). - Show that `TuringEquivalent` is an **equivalence relation**. - Establish that **partial recursive functions** correspond to functions recursive in the empty oracle set. This formalization follows classical recursion theory (Odifreddi, Soare) and extends previous work by Carneiro. ### Breaking Changes None. ### Dependencies None. t-computability new-contributor 221/0 Mathlib.lean,Mathlib/Computability/TuringDegrees.lean 2 8 ['github-actions', 'tannerduve', 'tristan-f-r'] nobody
5-44271
5 days ago
19-60753
19 days ago
19-60802
19 days
22018 maddycrim
author:maddycrim
feat(RingTheory/Localization/Pi): localization of a finite direct product where each semiring in product has maximal nilradical is a projection For noncomputable def `surjectivePiNilradicalIsMaximal` : Let `M` be a submonoid of a direct product of commutative rings `R i`. If each `R i` has maximal nilradical then the direct product `∏ R i` surjects onto the localization of `∏ R i` at `M`. --- [![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$
23/0 Mathlib/RingTheory/Localization/Pi.lean 1 13 ['Paul-Lez', 'erdOne', 'github-actions', 'jcommelin', 'maddycrim'] nobody
4-65601
4 days ago
42-33269
1 month ago
42-33322
42 days
22881 Champitoad
author:Champitoad
feat(CategoryTheory/Topos): add representability results for subobject classifier We add a section `Representability` at the end of `Mathlib.CategoryTheory.Topos.Classifier` where we formalize the necessary lemmas and definitions that lead to the proof of `CategoryTheory.isRepresentable_hasClassifier_iff`, which states that a category `C` has a subobject classifier if and only if the subobjects presheaf `CategoryTheory.Subobject.presheaf C` is representable (Proposition 1 in Section I.3 of Sheaves in Geometry and Logic [MM92]). The toughest part is found in definition `CategoryTheory.Classifier.fromRepresentation`, which formalizes as closely as possible the argument given in [MM92, pp. 33-34]. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-category-theory 251/22 Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/Presheaf.lean,Mathlib/CategoryTheory/Topos/Classifier.lean 3 18 ['Champitoad', 'github-actions', 'joelriou'] nobody
4-64707
4 days ago
4-74225
4 days ago
14-18354
14 days
11968 JovanGerb
author:JovanGerb
feat: improvements to RefinedDiscrTree This PR defines `RefinedDiscrTree`, which is an improved version of `DiscrTree` with many new features, such as - indexing lambda terms, dependent forall terms, and bound variables. - giving a score to matches, in order to sort them - indexing star patterns so that `a+b` and `a+a` are indexed differently - taking into account eta reductions, so that `exp` can still be matched with the library pattern `fun x => exp (f x)`. This PR makes `RefinedDiscrTree` into a lazy data structure, meaning that it can be used without a cache, just like `LazyDiscrTree`. This PR also removes these features: - indexing `fun x => x` as `id` - indexing `fun x => f x + g x` as `f + g`, and similarly for `-`, `*`, `/`, `⁻¹`, `^`. - indexing `fun _ => 42` as `42` These equivalent indexings do not hold definitionally in the `reducible` transparency, which is the transparency that is used for unification when using a discrimination tree. Therefore, indexing these different expressions the same is actually inefficient rather than helpful. This is part of the bigger #11768, which uses this discrimination tree for a library rewriting tactic. This replaces an older version of `RefinedDiscrTree`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta 1631/1242 Mathlib.lean,Mathlib/Lean/Meta/RefinedDiscrTree.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Encode.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Initialize.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Lookup.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Pi.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/StateList.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Topology/Defs/Basic.lean,MathlibTest/RefinedDiscrTree.lean,scripts/noshake.json 16 76 ['0art0', 'JovanGerb', 'eric-wieser', 'github-actions', 'joneugster', 'leanprover-bot', 'rosborn'] nobody
3-74618
3 days ago
5-958
5 days ago
173-18795
173 days
21539 Raph-DG
author:Raph-DG
feat(LinearAlgebra): Symmetric Algebra Defined the universal property for the symmetric algebra of a module over a commutative ring, provided an explicit construction and proved that this satisfies the universal property. Also proved that the multivariate polynomial ring generated by a basis of a module satisfies the universal property of the symmetric algebra of that module. Co-authored-by: Raphael Douglas Giles , Zhixuan Dai <22300180006@m.fudan.edu.cn>, Zhenyan Fu , Yiming Fu , Wang Jingting --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
209/0 Mathlib.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/MvPolynomial.lean 3 15 ['ADedecker', 'Raph-DG', 'github-actions', 'xyzw12345'] nobody
2-32156
2 days ago
2-32308
2 days ago
50-31420
50 days
23450 wwylele
author:wwylele
feat(Data/List/Basic): add forall_append Add forall_appened stating Forall on a list is equivalent to Forall on two halves of it. (I am kind of surprised this didn't exist. I hope it was not because I was blind and I added a duplicate theorem) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 6/0 Mathlib/Data/List/Basic.lean 1 1 ['github-actions'] nobody
1-68061
1 day ago
1-68061
1 day ago
1-68113
1 day
22503 Kevew
author:Kevew
chore(Nat): Nat factorization multiplicity Ported lemmas from `Data/Nat/Multiplicity` to into a new file called `Data/Nat/Factorization/Multiplicity`, re-written in terms of `factorization`. Also, I'm new to this so is it fine to have a lemma copied over from another file? Like, I copied over @[simp] theorem Prime.factorization_self {p : ℕ} (hp : Prime p) : p.factorization p = 1 := by simp [hp] from Dat/Nat/Factorization/Basic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data new-contributor 276/15 Mathlib.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Multiplicity.lean,Mathlib/Data/Nat/Multiplicity.lean 4 29 ['Kevew', 'Paul-Lez', 'github-actions'] Kevew
assignee:Kevew
1-44521
1 day ago
18-36486
18 days ago
28-66838
28 days
22823 b-reinke
author:b-reinke
feat(Algebra/Ring): associator of a non-associative ring If `R` is a non-associative ring, then `(x * y) * z - x * (y * z)` is called the `associator` of ring elements `x y z : R`. We realize the associator as a map that is an `AddMonoidHom` in each argument. The associator vanishes exactly when `R` is associative. We prove a similar statement for semirings by directly comparing the maps `mull₃` and `mulr₃`, the `AddMonoidHom` versions of the multiplications `(x * y) * z` and `x * (y * z)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
92/0 Mathlib.lean,Mathlib/Algebra/Ring/Associator.lean 2 10 ['Paul-Lez', 'YaelDillies', 'b-reinke', 'github-actions'] nobody
1-3762
1 day ago
1-10931
1 day ago
20-55341
20 days
23275 miguelmarco
author:miguelmarco
feat: add rewriting lemmas for integers This PR includes some equalities and equivalences about expressions with integer numbers. They can be useful as rewriting lemmas to simplify expressions. (See #8102 for motivation) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor 117/1 Mathlib/Data/Int/Init.lean 1 22 ['Paul-Lez', 'YaelDillies', 'github-actions', 'kim-em', 'miguelmarco'] nobody
1-3191
1 day ago
2-62173
2 days ago
6-23208
6 days
23209 wwylele
author:wwylele
feat(Analysis): add improper integral of complex exp These are the infinite version of integral_exp_mul_complex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 66/0 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Integral.lean 2 7 ['github-actions', 'j-loreaux', 'wwylele'] nobody
0-86121
23 hours ago
10-30550
10 days ago
10-30604
10 days
23076 miguelmarco
author:miguelmarco
feat: add rewriting lemmas for euclidean domains This PR includes some equalities and equivalences about expressions in euclidean domains. They can be useful as rewriting lemmas to simplify expressions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra enhancement
label:t-algebra$
80/0 Mathlib/Algebra/EuclideanDomain/Basic.lean 1 26 ['eric-wieser', 'github-actions', 'miguelmarco', 'tb65536'] nobody
0-79724
22 hours ago
13-45238
13 days ago
13-45239
13 days
19783 JakobStiefel
author:JakobStiefel
feat: definition and properties of characteristic functions define characteristic functions. Show that characteristic functions separate finite measures. --- - [x] depends on: #19780 - [x] depends on: #19781 - [x] depends on: #19782 - [x] depends on: #20604 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-measure-probability 396/29 Mathlib.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Fourier/BoundedContinuousFunctionChar.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction.lean,Mathlib/MeasureTheory/Measure/FiniteMeasureExt.lean,Mathlib/Probability/Moments/ComplexMGF.lean 7 n/a ['JakobStiefel', 'RemyDegenne', 'github-actions', 'hanwenzhu', 'mathlib4-dependent-issues-bot', 'sgouezel'] nobody
0-76473
21 hours ago
unknown
unknown
23500 DrLSimon
author:DrLSimon
feat(MeasureTheory/Decomposition): link the clipped sub of positive measures to Jordan decomposition This introduces a new file `Mathlib/MeasureTheory/Decomposition/JordanSub.lean` which develops the Jordan decomposition of the signed measure `μ.toSignedMeasure - ν.toSignedMeasure` for finite measures `μ` and `ν`, expressing it as the pair `(μ - ν, ν - μ)` of mutually singular finite measures. The key tool is the Hahn decomposition theorem, which yields a measurable partition of the space where `μ ≥ ν` and `ν ≥ μ`. Some basic results of `VectorMeasure` are also provided such as `restrict_neg`, `restrict_sub` `restrict_add_restrict_compl` and `Measure.toSignedMeasure_le_iff` within the `JordanSub.lean` file. They could be moved to another more central place (I guess `VectorMeasure/Basic.lean`). Similarly, `Measure.sub_zero` could go to `Sub.lean`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 265/0 Mathlib.lean,Mathlib/MeasureTheory/Decomposition/JordanSub.lean 2 2 ['DrLSimon', 'github-actions'] nobody
0-4503
1 hour ago
0-72604
20 hours ago
0-72654
20 hours

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
23388 tristan-f-r
author:tristan-f-r
chore: proof_wanted on conway's 99 graph problem adds a proof_wanted of an open graph problem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics easy 5/0 Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 1 1 ['github-actions'] nobody
4-26827
4 days ago
4-26827
4 days ago
4-27072
4 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
23401 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: split IsTopologicalBasis results out of Compactness.Compact Copyright from: https://github.com/leanprover-community/mathlib3/pull/15436 and https://github.com/leanprover-community/mathlib4/pull/12986. --- Conflicts with #23396. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) longest-pole t-topology 66/46 Mathlib.lean,Mathlib/Topology/ClopenBox.lean,Mathlib/Topology/Compactness/Bases.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/SigmaCompact.lean,Mathlib/Topology/Constructible.lean,Mathlib/Topology/QuasiSeparated.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Sets/Opens.lean 9 5 ['Ruben-VandeVelde', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
3-49937
3 days ago
3-73874
3 days ago
3-77372
3 days
23411 PatrickMassot
author:PatrickMassot
chore: remove finiteness from Order.Filter.Lift Co-authored-by: Anatole Dedecker --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) longest-pole t-topology 45/21 Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Finite.lean,Mathlib/Order/Filter/Lift.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Basic.lean 6 2 ['github-actions', 'kim-em'] nobody
3-42924
3 days ago
3-45419
3 days ago
3-45416
3 days
23419 Parcly-Taxel
author:Parcly-Taxel
chore: deprime `induction'` with 5+ variables, part 1 Split from #23324 at the behest of @eric-wieser. tech debt 150/125 Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoid.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Localization/Construction.lean,Mathlib/CategoryTheory/PathCategory/Basic.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/EpsilonNFA.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/PostTuringMachine.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean 21 8 ['Parcly-Taxel', 'apnelson1', 'eric-wieser', 'github-actions', 'urkud'] nobody
2-81497
2 days ago
3-31611
3 days ago
3-31600
3 days
23474 Parcly-Taxel
author:Parcly-Taxel
chore: clear `docBlame` in `Computability` and `ModelTheory` Split from #22754. tech debt 30/30 Mathlib/Computability/Encoding.lean,Mathlib/Computability/Partrec.lean,Mathlib/Data/Nat/Find.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/ElementarySubstructures.lean,Mathlib/ModelTheory/LanguageMap.lean,Mathlib/ModelTheory/Quotients.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/ModelTheory/Syntax.lean,Mathlib/ModelTheory/Types.lean,scripts/nolints.json 13 1 ['github-actions'] nobody
1-5801
1 day ago
1-18162
1 day ago
1-18151
1 day
23493 BoltonBailey
author:BoltonBailey
chore(Control/Combinators): add documentation Adds docstrings to this file ([Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Technical.20Debt.20Counters/near/509167582)) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt t-meta documentation 58/14 Mathlib/Control/Combinators.lean,scripts/nolints.json 2 3 ['Parcly-Taxel', 'b-mehta', 'github-actions'] nobody
0-26410
7 hours ago
0-80539
22 hours ago
0-80623
22 hours
23529 Parcly-Taxel
author:Parcly-Taxel
chore: split `Data.Ordmap.Ordset` The constituent parts of the invariant have been pushed backwards to `Data.Ordmap.Invariants`. The bundled `Valid` predicate and `Ordset` itself remain in place. t-data tech debt 855/844 Mathlib.lean,Mathlib/Data/Ordmap/Invariants.lean,Mathlib/Data/Ordmap/Ordset.lean 3 1 ['github-actions'] nobody
0-3354
55 minutes ago
0-3415
56 minutes ago
0-3404
56 minutes