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
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 |
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
[](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 |
56-67750 1 month ago |
56-67763 1 month ago |
56-69556 56 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
---
[](https://gitpod.io/from-referrer/)
|
t-computability
new-contributor
|
383/0 |
Mathlib.lean,Mathlib/Computability/LeftmostDerivation.lean |
2 |
27 |
['github-actions', 'madvorak', 'shetzl'] |
nobody |
49-18932 1 month ago |
49-40201 1 month ago |
49-40250 49 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.
---
[](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 |
43-22778 1 month ago |
43-34969 1 month ago |
43-34951 43 days |
22576 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: more lemmas about alternatingGroup |
---
[](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 |
42-76943 1 month ago |
42-76949 1 month ago |
42-76992 42 days |
22586 |
joelriou author:joelriou |
feat(CategoryTheory/Localization): the right derivability structure given by functorial resolutions |
---
[](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 |
42-29412 1 month ago |
42-34879 1 month ago |
42-34861 42 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`.
---
[](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 |
41-6031 1 month ago |
41-6031 1 month ago |
41-6080 41 days |
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
[](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 |
40-81149 1 month ago |
50-82871 1 month ago |
50-82851 50 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₃
```
[](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 |
38-18116 1 month ago |
39-5085 1 month ago |
69-53733 69 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.)
---
[](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 |
38-501 1 month ago |
38-2751 1 month ago |
38-2734 38 days |
22739 |
joelriou author:joelriou |
feat(CategoryTheory/Abelian): isomorphisms modulo a Serre class |
---
[](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 |
37-84196 1 month ago |
37-84196 1 month ago |
38-14039 38 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`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
116/0 |
Mathlib.lean,Mathlib/Algebra/Homology/Embedding/Connect.lean |
2 |
2 |
['callesonne', 'github-actions'] |
nobody |
37-78277 1 month ago |
47-17430 1 month ago |
47-17412 47 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
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
375/0 |
Mathlib.lean,Mathlib/Topology/CWComplex/Classical/Finite.lean |
2 |
5 |
['github-actions', 'grunweg', 'scholzhannah'] |
nobody |
37-23545 1 month ago |
41-32844 1 month ago |
41-32892 41 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.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
38/0 |
Mathlib.lean,Mathlib/Data/Fin/Pigeonhole.lean |
2 |
1 |
['github-actions'] |
nobody |
37-16342 1 month ago |
37-16429 1 month ago |
37-16481 37 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.
---
[](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 |
36-36049 1 month ago |
70-38510 2 months ago |
79-19814 79 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 |
36-26523 1 month ago |
41-57030 1 month ago |
41-57072 41 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.
---
[](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 |
35-51166 1 month ago |
35-51180 1 month ago |
40-6521 40 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`).
---
[](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 |
34-67158 1 month ago |
34-67219 1 month ago |
34-67202 34 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.
---
[](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 |
34-42129 1 month ago |
34-42146 1 month ago |
42-82058 42 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
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
119/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented.lean |
2 |
3 |
['github-actions', 'robin-carlier'] |
nobody |
34-33276 1 month ago |
34-33297 1 month ago |
37-28979 37 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.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
137/41 |
Mathlib/Order/Atoms.lean,Mathlib/Order/Cover.lean |
2 |
2 |
['b-mehta', 'github-actions'] |
nobody |
33-15350 1 month ago |
33-22106 1 month ago |
33-22158 33 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.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
68/0 |
Mathlib/Algebra/DirectSum/Decomposition.lean |
1 |
1 |
['github-actions'] |
nobody |
32-25643 1 month ago |
32-38287 1 month ago |
32-38330 32 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>
---
[](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 |
32-19178 1 month ago |
52-61962 1 month ago |
52-61954 52 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
---
[](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 |
31-72346 1 month ago |
31-72346 1 month ago |
32-15553 32 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
[](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 |
30-34635 30 days ago |
36-35856 1 month ago |
36-36058 36 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`.
---
[](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 |
30-34524 30 days ago |
33-81186 1 month ago |
36-18590 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`.
[](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 |
30-19083 30 days ago |
31-74220 1 month ago |
36-74757 36 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
[](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 |
30-7639 30 days ago |
30-8461 30 days ago |
30-8633 30 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?
[](https://gitpod.io/from-referrer/)
|
|
15/14 |
Mathlib/Data/Finsupp/Basic.lean,Mathlib/LinearAlgebra/Finsupp/Defs.lean |
2 |
1 |
['github-actions'] |
nobody |
30-349 30 days ago |
30-3180 30 days ago |
30-3163 30 days |
22242 |
pimotte author:pimotte |
feat(Combinatorics/SimpleGraph): miscellaneous walk lemmas |
Adds some miscellaneous lemmas on walks, in preparation for Tutte's theorem.
---
[](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 |
29-49283 29 days ago |
49-24364 1 month ago |
50-46556 50 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
[](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 |
29-43634 29 days ago |
29-43649 29 days ago |
36-77085 36 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.
---
[](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 |
29-26969 29 days ago |
43-11373 1 month ago |
43-11363 43 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.
[](https://gitpod.io/from-referrer/)
|
t-topology |
53/0 |
Mathlib.lean,Mathlib/Topology/PartialEquiv.lean |
2 |
1 |
['github-actions'] |
nobody |
29-22314 29 days ago |
29-22314 29 days ago |
29-22365 29 days |
22824 |
alreadydone author:alreadydone |
chore: generalize universes for (pre)sheaves of types |
---
[](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 |
28-41177 28 days ago |
28-41177 28 days ago |
31-81676 31 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`.
---
[](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 |
28-9458 28 days ago |
29-24337 29 days ago |
30-36130 30 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
[](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 |
27-55725 27 days ago |
28-35841 28 days ago |
28-37737 28 days |
23122 |
YaelDillies author:YaelDillies |
feat: grading a flag |
A flag inherits the grading of its ambient order.
From MiscYD
---
[](https://gitpod.io/from-referrer/)
|
t-order |
69/0 |
Mathlib/Order/Grade.lean |
1 |
3 |
['YaelDillies', 'b-mehta', 'github-actions'] |
nobody |
27-38190 27 days ago |
27-77549 27 days ago |
27-77589 27 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.
[](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 |
27-11445 27 days ago |
28-6339 28 days ago |
28-7586 28 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.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
62/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/CanonicalTensor.lean |
2 |
5 |
['adomani', 'github-actions', 'kebekus', 'loefflerd'] |
nobody |
26-49797 26 days ago |
54-22498 1 month ago |
54-22544 54 days |
23111 |
pechersky author:pechersky |
feat(Topology/MetricSpace): pseudometrics as bundled functions |
Preparation for results using families of pseudometrics
---
[](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 |
26-24908 26 days ago |
26-26070 26 days ago |
27-65018 27 days |
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.
---
[](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 |
25-27877 25 days ago |
25-31495 25 days ago |
25-31542 25 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.
---
[](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 |
25-20846 25 days ago |
25-24391 25 days ago |
25-24434 25 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.
---
[](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 |
24-69472 24 days ago |
24-85965 24 days ago |
24-86012 24 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.
---
[](https://gitpod.io/from-referrer/)
|
t-computability |
51/1 |
Mathlib/Computability/Ackermann.lean |
1 |
11 |
['Komyyy', 'github-actions', 'vihdzp'] |
nobody |
24-66267 24 days ago |
43-75061 1 month ago |
45-17431 45 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.
[](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 |
24-3160 24 days ago |
24-3177 24 days ago |
72-22866 72 days |
22048 |
YaelDillies author:YaelDillies |
feat: delaborator for `∑ x ∈ s with p x, f x` notation |
Co-authored-by: Kyle Miller
---
[](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 |
24-1736 24 days ago |
24-1751 24 days ago |
54-45577 54 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
[](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 |
22-21402 22 days ago |
27-30988 27 days ago |
28-15445 28 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.
[](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 |
22-20815 22 days ago |
22-20818 22 days ago |
57-47205 57 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)
---
[](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 |
22-18218 22 days ago |
22-18235 22 days ago |
56-3333 56 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
[](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 |
21-44575 21 days ago |
21-82208 21 days ago |
24-83862 24 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
```
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-topology
|
1/1 |
Mathlib/Topology/Algebra/UniformMulAction.lean |
1 |
7 |
['github-actions', 'leanprover-bot', 'smmercuri', 'urkud'] |
nobody |
21-1591 21 days ago |
44-40571 1 month ago |
44-40612 44 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 |
20-78761 20 days ago |
35-8843 1 month ago |
35-8887 35 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 |
20-75810 20 days ago |
21-28562 21 days ago |
21-28607 21 days |
22655 |
YaelDillies author:YaelDillies |
refactor: make use of `FunLike` for `Submonoid.LocalizationMap` |
From Toric
---
[](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 |
20-36232 20 days ago |
20-36246 20 days ago |
37-62402 37 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.
---
[](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 |
20-26171 20 days ago |
20-26171 20 days ago |
20-34847 20 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.
---
[](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 |
20-26151 20 days ago |
20-26151 20 days ago |
20-33982 20 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.
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
69/0 |
Mathlib/CategoryTheory/Equivalence.lean |
1 |
7 |
['github-actions', 'joelriou', 'robin-carlier'] |
nobody |
20-6774 20 days ago |
20-6774 20 days ago |
25-71374 25 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.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
26/12 |
Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Order/WithBot.lean |
2 |
1 |
['github-actions'] |
nobody |
20-4316 20 days ago |
20-4331 20 days ago |
34-57673 34 days |
22085 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph): introduce `ConnectedComponent.toSimpleGraph` |
---
I don't know if `ConnectedComponent.Graph` is the best name for this
[](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 |
19-30560 19 days ago |
19-30560 19 days ago |
46-83734 46 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`).
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
547/0 |
Mathlib.lean,Mathlib/CategoryTheory/Join/Basic.lean |
2 |
2 |
['github-actions', 'joelriou'] |
nobody |
18-75896 18 days ago |
18-85779 18 days ago |
18-85762 18 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)
[](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 |
18-20012 18 days ago |
18-20025 18 days ago |
49-39432 49 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
---
[](https://gitpod.io/from-referrer/)
|
t-order |
27/3 |
Mathlib/Topology/Order/Basic.lean |
1 |
3 |
['YaelDillies', 'github-actions', 'kkytola'] |
nobody |
18-19511 18 days ago |
22-14092 22 days ago |
22-14075 22 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.
---
[](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 |
17-84965 17 days ago |
21-36361 21 days ago |
21-36414 21 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`.
---
[](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 |
17-47818 17 days ago |
17-47818 17 days ago |
17-47801 17 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.
---
[](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 |
17-789 17 days ago |
17-939 17 days ago |
17-982 17 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`
---
[](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 |
16-85247 16 days ago |
17-1297 17 days ago |
29-68582 29 days |
21283 |
erdOne author:erdOne |
feat: topology on Hom(R, S) in `CommRingCat` |
Co-authored-by: Christian Merten
---
[](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 |
16-85200 16 days ago |
16-85200 16 days ago |
55-40850 55 days |
23266 |
mariainesdff author:mariainesdff |
feat(Algebra/Order/BigOperator): add lemmas |
---
[](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 |
16-41458 16 days ago |
23-14271 23 days ago |
23-14312 23 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.
---
[](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 |
16-26249 16 days ago |
16-26309 16 days ago |
16-26292 16 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
[](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 |
16-19229 16 days ago |
16-59401 16 days ago |
17-21870 17 days |
23502 |
Timeroot author:Timeroot |
feat(ModelTheory/Semantics): BoundedFormula.realize_foldr_imp |
Two lemmas for `realize`ing a `BoundedFormula`.
---
Pulled out from #19695.
[](https://gitpod.io/from-referrer/)
|
t-logic |
20/0 |
Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean |
2 |
1 |
['github-actions'] |
nobody |
16-16042 16 days ago |
16-16942 16 days ago |
16-16994 16 days |
23470 |
erdOne author:erdOne |
feat(AlgebraicGeometry): section of a k-scheme is a closed immersion |
Co-authored-by: Christian Merten
---
[](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 |
16-4681 16 days ago |
16-62091 16 days ago |
16-62118 16 days |
21909 |
erdOne author:erdOne |
feat(RingTheory/Invariants): Generalize to profinite groups |
---
[](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 |
15-77582 15 days ago |
15-77582 15 days ago |
19-65758 19 days |
22265 |
Timeroot author:Timeroot |
feat(Geometry/Euclidean/Angle/Unoriented): triangle inequality |
filled in a `proof_wanted`
---
[](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 |
15-61081 15 days ago |
16-11595 16 days ago |
36-15373 36 days |
23527 |
erdOne author:erdOne |
feat(Topology): subspace of quotient topology is quotient of subspace topology |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
69/0 |
Mathlib/Topology/Maps/OpenQuotient.lean |
1 |
1 |
['github-actions'] |
nobody |
15-41991 15 days ago |
15-42080 15 days ago |
15-42063 15 days |
23528 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: add isOpen_setOf_affineIndependent |
From sphere-eversion.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
15/0 |
Mathlib/Analysis/Normed/Module/FiniteDimension.lean |
1 |
1 |
['github-actions'] |
nobody |
15-39675 15 days ago |
15-39675 15 days ago |
15-39719 15 days |
22635 |
Kiolt author:Kiolt |
feat: submonoid of pairs with quotient in a submonoid |
This submonoid is part of the definition of toric ideals.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
new-contributor
t-algebra
label:t-algebra$ |
36/0 |
Mathlib.lean,Mathlib/GroupTheory/MonoidLocalization/DivPairs.lean |
2 |
10 |
['Paul-Lez', 'YaelDillies', 'erdOne', 'github-actions'] |
nobody |
15-37299 15 days ago |
15-37352 15 days ago |
41-24281 41 days |
22151 |
alreadydone author:alreadydone |
feat(RingTheory): a semiprimary ring is Noetherian/Artinian iff its Jacobson radical is fg |
A key fact used is `Module.FG.smul`: if `I` is a two-sided ideal of `R` that is f.g. as a left ideal and `N` is a f.g. `R`-module, then `I • M` is also a f.g. `R`-module.
Many lemmas about coprimality of ideals are also generalized to the noncommutative, two-sided setting.
---
- [x] depends on: #21904
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
216/156 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/RingTheory/Extension.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Ideal.lean,Mathlib/RingTheory/HopkinsLevitzki.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean |
8 |
4 |
['alreadydone', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] |
nobody |
15-26103 15 days ago |
16-16846 16 days ago |
43-24909 43 days |
23549 |
bryangingechen author:bryangingechen |
chore: make dependabot group updates into a single PR |
cf. docs at https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates
---
It was a bit annoying to make a single bors batch for [#23544](https://github.com/leanprover-community/mathlib4/pull/23544) [#23543](https://github.com/leanprover-community/mathlib4/pull/23543) [#23541](https://github.com/leanprover-community/mathlib4/pull/23541) [#23540](https://github.com/leanprover-community/mathlib4/pull/23540). |
CI |
10/0 |
.github/dependabot.yml |
1 |
1 |
['github-actions'] |
nobody |
15-20942 15 days ago |
15-21009 15 days ago |
15-20993 15 days |
22089 |
sgouezel author:sgouezel |
feat: composing a continuous multilinear map with continuous linear maps is analytic in both variables |
Also prove that the composition of continuously polynomial functions is continuously polynomial.
---
- [x] depends on: #22102
- [x] depends on: #22789
[](https://gitpod.io/from-referrer/)
|
t-analysis |
209/3 |
Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Data/Multiset/DershowitzManna.lean,Mathlib/Order/KrullDimension.lean |
5 |
7 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'sgouezel'] |
nobody |
15-4949 15 days ago |
15-4963 15 days ago |
53-57911 53 days |
22279 |
xyzw12345 author:xyzw12345 |
feat(RingTheory/GradedAlgebra): homogeneous relation |
In this PR, we defined the concept of a homogeneous relation and proved some properties about homogeneous relations. The main result of this PR is showing that taking `RingQuot` by a homogeneous relation can give a graded structure on the quotient ring. This result can be used to define graded structures on rings obtained using `RingQuot`, e.g. the Symmetric Algebra defined in #21539 can be verified to have such a structure.
Co-authored-by:
Zhixuan Dai @atstarrysky <22300180006@m.fudan.edu.cn>
Yiming Fu @pelicanhere
Zhenyan Fu @pumpkin678
Raphael Douglas Giles @Raph-DG
Jiedong Jiang @jjdishere
- [x] depends on: #22354
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
455/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousRelation.lean |
8 |
6 |
['Paul-Lez', 'github-actions', 'mathlib4-dependent-issues-bot', 'ocfnash', 'xyzw12345'] |
nobody |
14-51882 14 days ago |
14-51885 14 days ago |
15-83673 15 days |
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.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
158/0 |
Mathlib.lean,Mathlib/Algebra/FiveLemma.lean |
2 |
7 |
['acmepjz', 'chrisflav', 'erdOne', 'github-actions'] |
nobody |
14-51240 14 days ago |
16-26887 16 days ago |
16-26870 16 days |
23531 |
fpvandoorn author:fpvandoorn |
refactor: generalize `unbounded_of_tendsto_atTop` |
---
Not sure if I like this style of proofs with `aesop` for future PRs. It's short, though.
[](https://gitpod.io/from-referrer/)
|
t-topology |
13/19 |
Mathlib/Order/Filter/AtTopBot/Basic.lean |
1 |
2 |
['github-actions', 'sgouezel'] |
nobody |
14-31545 14 days ago |
15-33979 15 days ago |
15-33962 15 days |
21182 |
joneugster author:joneugster |
fix(Util/CountHeartbeats): move elaboration in #count_heartbeats inside a namespace |
Currently the `#count_heartbeat` linter reported the heartbeats until it concluded `error: [declaration] has already been declared` instead of re-elaborating the declaration.
---
[Zulip report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/count_heartbeats.20for.20all.20declarations.20in.20a.20file.3F/near/496303652)
[](https://gitpod.io/from-referrer/)
|
t-meta |
72/5 |
Mathlib/Util/CountHeartbeats.lean,MathlibTest/CountHeartbeats.lean |
2 |
16 |
['adomani', 'github-actions', 'joneugster', 'mathlib-bors'] |
nobody |
14-23740 14 days ago |
14-24225 14 days ago |
16-57626 16 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.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
187/101 |
Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Meromorphic/NormalForm.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Data/ENat/Basic.lean |
4 |
2 |
['github-actions', 'urkud'] |
nobody |
14-21482 14 days ago |
14-21496 14 days ago |
28-69207 28 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.)
---
[](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/Types/Shapes.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 |
14-10699 14 days ago |
14-11691 14 days ago |
22-76949 22 days |
17802 |
vihdzp author:vihdzp |
feat(SetTheory/Ordinal/Veblen): epsilon and gamma ordinals |
We define the epsilon function `ε_ o = veblen 1 o`, and the gamma function `Γ_ o` which enumerates the fixed points of `veblen · 0`.
---
- [x] depends on: #17751
- [x] depends on: #18611
[](https://gitpod.io/from-referrer/)
|
t-set-theory
maintainer-merge
|
146/7 |
Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Veblen.lean |
2 |
15 |
['YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'vihdzp'] |
nobody |
13-66586 13 days ago |
13-66586 13 days ago |
45-78970 45 days |
19946 |
vihdzp author:vihdzp |
feat(SetTheory/ZFC/Basic): order instances |
Sets form a partial order under the subset relation.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
38/2 |
Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/SetTheory/ZFC/PSet.lean |
3 |
8 |
['alreadydone', 'b-mehta', 'github-actions', 'vihdzp'] |
nobody |
13-50804 13 days ago |
13-55166 13 days ago |
44-55893 44 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.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
12/1 |
Mathlib/Analysis/Meromorphic/Divisor.lean |
1 |
1 |
['github-actions'] |
nobody |
13-47102 13 days ago |
13-47117 13 days ago |
20-25673 20 days |
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.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
78/1 |
Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean |
2 |
1 |
['github-actions'] |
nobody |
13-46860 13 days ago |
13-46875 13 days ago |
20-37917 20 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.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
711/678 |
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 |
13-40212 13 days ago |
13-42928 13 days ago |
39-82940 39 days |
21966 |
vasnesterov author:vasnesterov |
feat(Tactic/Order): support `⊤`, `⊥`, and lattice operations |
Support `⊤`, `⊥`, and lattice operations in the `order` tactic.
---
- [x] depends on: #21877
[](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 |
13-38937 13 days ago |
13-38953 13 days ago |
47-35449 47 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
[](https://gitpod.io/from-referrer/)
[Zulip thread on Tutte's](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tutte's.20theorem) |
maintainer-merge
t-combinatorics
|
196/11 |
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 |
40 |
['YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'pimotte'] |
nobody |
13-30982 13 days ago |
14-32229 14 days ago |
21-42170 21 days |
23627 |
kebekus author:kebekus |
feat: add logarithmic counting function of Value Distribution Theory |
Implement the logarithmic counting function of Value Distribution Theory and provide supporting API.
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.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
217/0 |
Mathlib.lean,Mathlib/Analysis/Complex/ValueDistribution/CountingFunction.lean |
2 |
1 |
['github-actions'] |
nobody |
13-30851 13 days ago |
13-31121 13 days ago |
13-31175 13 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
[](https://gitpod.io/from-referrer/)
|
t-analysis
t-number-theory
|
247/1 |
Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/NumberTheory/SelbergSieve.lean |
2 |
6 |
['Ruben-VandeVelde', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
13-27322 13 days ago |
28-19455 28 days ago |
28-19437 28 days |
23632 |
JovanGerb author:JovanGerb |
perf(CategoryTheory/Subobject/Lattice): reorder instance arguments |
The `HasImages C` type class fails more quickly, so I set it as the first type class argument.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
4/5 |
Mathlib/CategoryTheory/Subobject/Lattice.lean |
1 |
4 |
['JovanGerb', 'github-actions', 'leanprover-bot'] |
nobody |
13-24156 13 days ago |
13-26210 13 days ago |
13-26257 13 days |
23546 |
JovanGerb author:JovanGerb |
feat(LinearAlgebra/AffineSpace/AffineSubspace): rename `AffineSubspace.mk'` to `Submodule.shift` |
In addition to renaming, I've refactored the code a bit:
- `mem_mk'_iff_vsub_mem` was obsolete since it was the same as `mem_mk'`, so I removed it (this is due to a change in the definition I made recently)
- I added a nonempty instance for `shift`
- I added a simp lemma that `shift` isn't equal to `⊥` (the empty affine subspace). I need this for the next point.
- Edit: I'll leave this for a later PR.
~I proved a simp lemma that a `shift` is parallel to a `shift` if and only if the linear subspaces are the same.~
- I renamed `mk'_eq` to `shift_direction_eq_self `.
- I renamed `eq_or_eq_secondInter_of_mem_mk'_span_singleton_iff_mem` to `eq_or_eq_secondInter_iff_mem_of_mem_shift_span_singleton`. I think it is better to put the `of_mem_mk'_span_singleton` at the end of the name.
---
[](https://gitpod.io/from-referrer/)
|
|
128/99 |
Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/MongePoint.lean,Mathlib/Geometry/Euclidean/PerpBisector.lean,Mathlib/Geometry/Euclidean/Sphere/SecondInter.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean |
7 |
2 |
['JovanGerb', 'github-actions'] |
nobody |
13-20525 13 days ago |
15-22604 15 days ago |
15-22587 15 days |
23554 |
D-Thomine author:D-Thomine |
refactor(Dynamics/TopologicalEntropy): use expGrowth |
The notions of `coverEntropyEntourage`, `coverEntropyInfEntourage`, `netEntropyEntourage` and `netEntropyInfEntourage` are now defined using `expGrowth`. Some technical intermediate lemmas are no longer needed and are removed.
Some minor golfing around those three files.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-dynamics
|
171/248 |
Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean |
3 |
1 |
['github-actions'] |
nobody |
13-19455 13 days ago |
15-17983 15 days ago |
15-18229 15 days |
23637 |
kirilvino author:kirilvino |
feat(Combinatorics/SimpleGraph): every circuit contains a cycle proof |
circuit to cycle proof
---
This PR uses the bypass definition in a new function for closed walks that removes repeated vertices. Then proves if the closed walk given is a circuit, that the result from this function is a cycle. This is then packaged up similar to the existing ToPath definition, creating a way of transforming a circuit into a cycle.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
35/0 |
Mathlib/Combinatorics/SimpleGraph/Path.lean |
1 |
1 |
['github-actions'] |
nobody |
13-17503 13 days ago |
13-17503 13 days ago |
13-17567 13 days |
21838 |
joneugster author:joneugster |
feat(Cache): Allow arguments of the form `Mathlib.Data` which correspond to a folder but not a file |
---
- [x] depends on: #21834
[](https://gitpod.io/from-referrer/)
|
CI
t-meta
|
34/11 |
Cache/IO.lean,Cache/Main.lean |
2 |
9 |
['eric-wieser', 'github-actions', 'joneugster', 'mathlib4-dependent-issues-bot', 'mergify'] |
nobody |
12-22307 12 days ago |
12-22307 12 days ago |
15-5696 15 days |
23657 |
grunweg author:grunweg |
feat: euclidean half spaces and quadrants have convex interior |
These lemmas are a prerequisite for #23658, which will impose that real or complex models with corners have convex interior.
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
48/0 |
Mathlib/Geometry/Manifold/Instances/Real.lean |
1 |
9 |
['Ruben-VandeVelde', 'github-actions', 'grunweg'] |
nobody |
12-18922 12 days ago |
12-44087 12 days ago |
12-44070 12 days |
23603 |
YaelDillies author:YaelDillies |
feat: distributive Haar characters |
The name is made up in analogy with modular characters.
From FLT
Co-authored-by: Andrew Yang
Co-authored-by: Javier López-Contreras <38789151+javierlcontreras@users.noreply.github.com>
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-measure-probability
|
87/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Haar/DistribChar.lean |
2 |
5 |
['AntoineChambert-Loir', 'YaelDillies', 'github-actions', 'tb65536'] |
nobody |
12-17184 12 days ago |
13-28652 13 days ago |
14-2772 14 days |
23673 |
erdOne author:erdOne |
feat(AlgebraicGeometry): delaborator for coercing schemes to types |
Co-authored-by: Christian Merten
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
21/0 |
Mathlib/AlgebraicGeometry/Scheme.lean |
1 |
1 |
['github-actions'] |
nobody |
12-14771 12 days ago |
12-14771 12 days ago |
12-14819 12 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.
---
[](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 |
12-14480 12 days ago |
18-9444 18 days ago |
18-9485 18 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.
---
[](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 |
12-6941 12 days ago |
12-6955 12 days ago |
18-19637 18 days |
23677 |
upobir author:upobir |
Add eq_pow_of_mul_eq_pow for Nat |
---
This pr adds theorems analogous to [Int.sq_of_isCoprime](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Int/Basic.html#Int.sq_of_isCoprime), but with generic power and both left and right versions. I had asked in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Nat.20and.20left.2C.20right.20version.20of.20Int.2Esq_of_isCoprime) before to make sure this theorem was missing.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
20/3 |
Mathlib/RingTheory/Int/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
12-3845 12 days ago |
12-3845 12 days ago |
12-3901 12 days |
23676 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprime `induction'` for localizations and quotients |
All these removed instances of `induction'` generate only one subgoal. In some cases `obtain` can be used.
The relevant instances were identified by adding the following to `Mathlib.Tactic.Cases`
```diff
diff --git a/Mathlib/Tactic/Cases.lean b/Mathlib/Tactic/Cases.lean
index 4a60db6c551..08c06520879 100644
--- a/Mathlib/Tactic/Cases.lean
+++ b/Mathlib/Tactic/Cases.lean
@@ -122,6 +122,16 @@ elab (name := induction') "induction' " tgts:(Parser.Tactic.elimTarget,+)
g.assign result.elimApp
let subgoals ← ElimApp.evalNames elimInfo result.alts withArg
(generalized := fvarIds) (toClear := targetFVarIds) (toTag := toTag)
+ let body ← inferType targets[0]!
+ let names : Array Format := if withArg.1.getArgs.size > 1 then
+ (withArg.1.getArgs[1]!).getArgs.map Syntax.prettyPrint else Array.empty
+ let gens : Array Format := if genArg.1.getArgs.size > 1 then
+ (genArg.1.getArgs[1]!).getArgs.map Syntax.prettyPrint else Array.empty
+ let inductor : Format := if usingArg.1.getArgs.size > 1 then
+ Syntax.prettyPrint usingArg.1.getArgs[1]! else "~"
+ if subgoals.toList.length ≤ 1 then
+ logInfoAt tgts m!"{body.getAppFn.setPPExplicit true} {inductor} {gens} {names} \
+ {subgoals.toList.length}"
setGoals <| (subgoals ++ result.others).toList ++ gs
/-- The `cases'` tactic is similar to the `cases` tactic in Lean 4 core, but the syntax for giving
```
and then examining [the output](https://github.com/leanprover-community/mathlib4/actions/runs/14270845291/job/40003467676). |
tech debt |
87/108 |
Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Pointwise/Stabilizer.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Galois/EssSurj.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Nat/ChineseRemainder.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Ring.lean,Mathlib/SetTheory/Surreal/Basic.lean |
25 |
7 |
['Parcly-Taxel', 'apnelson1', 'eric-wieser', 'github-actions'] |
nobody |
11-69642 11 days ago |
12-4284 12 days ago |
12-4267 12 days |
23678 |
plp127 author:plp127 |
feat: recursor for nonempty lists |
Adds `List.recNeNil` and `List.recOnNeNil` for motives that depend on the list being nonempty. Taken from [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/accessing.20the.20source.20case.20during.20induction/near/502101211).
---
[](https://gitpod.io/from-referrer/)
|
t-data |
40/0 |
Mathlib/Data/List/Induction.lean |
1 |
5 |
['eric-wieser', 'github-actions', 'plp127'] |
nobody |
11-68321 11 days ago |
12-2480 12 days ago |
12-2532 12 days |
23681 |
Timeroot author:Timeroot |
feat(Algebra/Polynomial): Descartes' Rule of signs |
Proof of Descartes' Rule of Signs. Last PR from https://github.com/Timeroot/lean-descartes-signs , now that #9085 is merged. Defines `Polynomial.SignVariations` as the relevant quantity, and `descartes_rule_of_signs` as the headline theorem.
---
I tried to clean it up + golf it down and did shrink it a good deal. The lemma `signvar_mul_eraseLead_le_of_nextCoeff` is still 142 lines, and `succ_sign_lin_mul` is ~140 lines of code as well. Those are the ugly ones. I welcome ideas if someone wants to try to clean them up more! But the proof really does require an annoying bit of case-splitting, as far as I can tell.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
661/3 |
Mathlib.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean |
5 |
1 |
['github-actions'] |
nobody |
11-66805 11 days ago |
11-82895 11 days ago |
11-82943 11 days |
23687 |
plp127 author:plp127 |
feat: clopen characterization of connected spaces |
Proves that a space is connected iff it contains no nontrivial clopen sets.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
13/0 |
Mathlib/Topology/Connected/Clopen.lean |
1 |
1 |
['github-actions'] |
nobody |
11-60894 11 days ago |
11-60895 11 days ago |
11-60949 11 days |
23684 |
alreadydone author:alreadydone |
feat(RingTheory): integral extensions of comm. rings are local homs |
---
The import increase only affects one file so I hope it's okay.
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
57/64 |
Mathlib/Algebra/Field/Equiv.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/LinearAlgebra/Dimension/Localization.lean,Mathlib/RingTheory/Artinian/Ring.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Defs.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/LinearDisjoint.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/SimpleRing/Field.lean |
12 |
4 |
['alreadydone', 'github-actions', 'xroblot'] |
nobody |
11-41169 11 days ago |
11-72567 11 days ago |
11-72588 11 days |
23669 |
erdOne author:erdOne |
feat(FieldTheory): abelian extensions |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
74/0 |
Mathlib.lean,Mathlib/FieldTheory/Galois/Abelian.lean,Mathlib/NumberTheory/Cyclotomic/Gal.lean |
3 |
4 |
['alreadydone', 'erdOne', 'github-actions', 'xroblot'] |
nobody |
11-41089 11 days ago |
12-17437 12 days ago |
12-17433 12 days |
18754 |
FR-vdash-bot author:FR-vdash-bot |
feat: `IsometryClass` |
---
- [ ] depends on: #18689
[](https://gitpod.io/from-referrer/)
|
t-analysis
t-topology
|
99/3 |
Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Topology/MetricSpace/Isometry.lean,scripts/nolints_prime_decls.txt |
3 |
2 |
['github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot'] |
nobody |
11-38829 11 days ago |
11-38829 11 days ago |
38-77674 38 days |
23231 |
urkud author:urkud |
feat(LinearPMap): more lemmas about `supSpanSingleton` |
Also get rid of `erw`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
24/0 |
Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Span/Defs.lean |
2 |
1 |
['github-actions'] |
nobody |
11-5646 11 days ago |
11-5776 11 days ago |
20-61743 20 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 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
11-2182 11 days ago |
20-58041 20 days ago |
20-58024 20 days |
15906 |
grunweg author:grunweg |
feat: define singular manifolds |
These are used to define bordism groups: the `n`th bordism group of a topological space `X` is the space of cobordism classes of all singular manifolds on `X`.
---
This PR can best be seen in context in #23138 - which also proves that this definition is usable.
(Older branches in this direction are [this branch](https://github.com/leanprover-community/mathlib4/compare/master...MR-bordism-theory) (my first iteration) and [this one](https://github.com/leanprover-community/mathlib4/compare/master...MR-bordism-theory-v2) (second iteration); #23138 has a bit less progress on the boundary data, but pushes bordisms further.
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
255/1 |
Mathlib.lean,Mathlib/Geometry/Manifold/Bordisms.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean |
3 |
69 |
['YaelDillies', 'alreadydone', 'github-actions', 'grunweg', 'sgouezel'] |
sgouezel assignee:sgouezel |
10-83662 10 days ago |
21-39710 21 days ago |
109-4537 109 days |
23715 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Basic): make `orthogonalProjection` a continuous affine map |
Change `EuclideanGeometry.orthogonalProjection` from a bundled `AffineMap` to a bundled `ContinuousAffineMap` (I think I'll end up wanting continuity for some things related to `incenter`).
Note 1: I think the new import is reasonable in the context for anything much doing Euclidean geometry / using orthogonal projections, but we'll see from CI how many imports it adds.
Note 2: this now means the previous `orthogonalProjection` is a `private` definition `orthogonalProjectionAux`, in order for the continuity proof using `AffineMap.continuous_linear_iff` to work. Is there a better way to refer directly to a structure projection to a parent within the `where` definition without having such an extra definition of the parent structure? I couldn't get it to work without the extra definition.
Note 3: the actual motivation is to make `signedDist` a bundled continuous affine map. I've left that change to be done separately (a) to avoid conflicts with #23646 and (b) because I think it will need a few other definitions elsewhere in mathlib to be set up (not everything in the definition of `signedDist` has analogues for `ContinuousAffineMap` at present).
Note 4: I think it would be a good idea to refactor orthogonal projections further so there is only *one* definition, `orthogonalProjection` set up directly as a composition of continuous affine maps (move to vector space via an arbitrary choice of base point, apply the orthogonal projection there, move back to affine space), without needing either `orthogonalProjectionFn` or `orthogonalProjectionAux` (and then `orthogonalProjectionFn` would be deprecated with a view to removal). But that composition also requires a few new definitions not currently in mathlib (including but not limited to `ContinuousAffineEquiv.vaddConst` from #22583). Since we've had `orthogonalProjectionFn` for a long time, I don't think that cleanup is particularly urgent.
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
26/10 |
Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/Circumcenter.lean |
2 |
1 |
['github-actions'] |
nobody |
10-61420 10 days ago |
10-61482 10 days ago |
10-61465 10 days |
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
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
532/0 |
Mathlib.lean,Mathlib/RingTheory/WeierstrassPreparation.lean |
2 |
15 |
['Thmoas-Guan', 'acmepjz', 'github-actions', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
10-53190 10 days ago |
46-26211 1 month ago |
53-21439 53 days |
19865 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): define extremalNumber |
Define the extremal number `extremalNumber n H` of a natural number `n` and a simple graph `H`: `extremalNumber n H` is the maximum number of edges in a `H`-free simple graph on `n` vertices, if `H` is contained in all simple graphs on `n` vertices, then this is `0`.
Also define the predicate that a simple graph is an extremal graph `IsExtremal` satisfying some predicate.
---
- [x] depends on: #20658
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
202/5 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean |
3 |
51 |
['YaelDillies', 'b-mehta', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mitchell-horner'] |
nobody |
10-52920 10 days ago |
10-52920 10 days ago |
52-46928 52 days |
21969 |
peabrainiac author:peabrainiac |
feat(Geometry/Diffeology): basics of diffeological spaces |
Introduces diffeological spaces, smooth maps between them, the D-topology and the standard diffeology on finite-dimensional normed spaces.
---
This is the first of hopefully many PRs upstreaming work that I have done on diffeological spaces in [my orbifolds repo](https://github.com/peabrainiac/lean-orbifolds), containing the first half of `Diffeology/Basic.lean`.
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
472/0 |
Mathlib.lean,Mathlib/Geometry/Diffeology/Basic.lean,docs/references.bib,scripts/noshake.json |
4 |
22 |
['github-actions', 'grunweg', 'lecopivo', 'peabrainiac'] |
nobody |
10-44154 10 days ago |
27-39152 27 days ago |
11-19972 11 days |
23594 |
YaelDillies author:YaelDillies |
refactor: merge `DomMulAct` and `DomAddAct` into `DomAct` |
This has several advantages:
* Less API surface with a single definition instead of two
* Better match the existing `ConjAct` type synonym
* We get to use a better name for the multiplication by an element of the type synonym: Previously `dmaSMul`, now `domSMul`.
and no inconvenient because the instances for `DomMulAct` and `DomAddAct` are by definition disjoint.
---
[](https://gitpod.io/from-referrer/)
|
|
337/335 |
Mathlib.lean,Mathlib/Algebra/Group/Translate.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/GroupTheory/GroupAction/DomAct/ActionHom.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/GroupTheory/Perm/DomAct.lean,Mathlib/MeasureTheory/Function/AEEqFun/DomAct.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Continuous.lean,Mathlib/MeasureTheory/Group/MeasurableEquiv.lean,Mathlib/Topology/Algebra/Constructions/DomAct.lean,Mathlib/Topology/Algebra/Constructions/DomMulAct.lean |
16 |
4 |
['YaelDillies', 'eric-wieser', 'github-actions', 'urkud'] |
nobody |
10-39910 10 days ago |
14-15206 14 days ago |
14-15189 14 days |
23711 |
alreadydone author:alreadydone |
chore(RingTheory): generalize primeSpectrumProdHomeo to CommSemiring |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-algebraic-geometry
label:t-algebra$ |
33/9 |
Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
1 |
14 |
['Ruben-VandeVelde', 'alreadydone', 'erdOne', 'github-actions'] |
nobody |
9-76505 9 days ago |
10-9177 10 days ago |
10-69768 10 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`.
---
[](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 |
78 |
['0art0', 'JovanGerb', 'eric-wieser', 'github-actions', 'grunweg', 'joneugster', 'leanprover-bot', 'rosborn'] |
nobody |
9-71332 9 days ago |
9-77908 9 days ago |
184-16271 184 days |
23558 |
JovanGerb author:JovanGerb |
feat: don't delaborate to `⊔` or `⊓` if we have a `LinearOrder` |
This PR changes the `⊔` and `⊓` notations to only be used by the delaborator if the type in question is not a linear order.
This was suggested here [#mathlib4 > max and min delaborators @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/max.20and.20min.20delaborators/near/500701449)
---
[](https://gitpod.io/from-referrer/)
|
large-import
maintainer-merge
t-order
t-meta
|
124/8 |
Mathlib/Order/Notation.lean,MathlibTest/Delab/SupInf.lean |
2 |
35 |
['JovanGerb', 'eric-wieser', 'fpvandoorn', 'github-actions', 'kmill'] |
kmill assignee:kmill |
9-55201 9 days ago |
10-23040 10 days ago |
15-7193 15 days |
23762 |
Parcly-Taxel author:Parcly-Taxel |
feat: relative upper/lower sets |
From a comment by @b-mehta [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finset.20sum.20bounds/near/506567011) in response to me formalising IMO 2015 Q6 (#23038). |
t-order |
171/0 |
Mathlib.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/UpperLower/Relative.lean |
3 |
1 |
['github-actions'] |
nobody |
9-45112 9 days ago |
9-45176 9 days ago |
9-45159 9 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`.
[](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 |
9-33620 9 days ago |
33-14634 1 month ago |
33-14670 33 days |
23752 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Incenter): incenters and excenters |
Define the exspheres and insphere of a simplex (in dimension 1 and greater), and corresponding definitions for their center and radius. Give necessary and sufficient conditions for them to exist (in terms of the barycentric coordinates, being signed versions of the inverses of the distances between vertices and opposite faces, having a nonzero sum) and show that they do always exist in the case of the incenter and of the excenter opposite a single vertex (the latter in dimensions 2 and greater), and that any point lying in the span of the vertices and equidistant from the faces opposite the vertices is an excenter (and, when signs of the equal distances are given, is the excenter with corresponding signs).
Some major pieces are deferred to followups, in particular definitions of touchpoints, tangency of exspheres and insphere to faces, and the relation to angle bisectors in various forms. But since the file is already over 600 lines, I think this is a reasonable starting point (and since the lemmas do show that the definitions have their characteristic properties of points being equidistant from the faces on the desired sides, I think it sufficiently justifies that the definitions are correct and usable as-is).
Feel free to golf; the calculations involved in showing that the excenter opposite a vertex always exists (in dimensions 2 and greater) are rather long.
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #23712
- [x] depends on: #23751 |
t-euclidean-geometry |
620/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Incenter.lean |
2 |
7 |
['eric-wieser', 'github-actions', 'jsm28', 'mathlib4-dependent-issues-bot'] |
nobody |
9-21506 9 days ago |
9-45554 9 days ago |
9-46107 9 days |
23732 |
jsm28 author:jsm28 |
feat(LinearAlgebra/AffineSpace/ContinuousAffineEquiv): `toContinuousAffineMap` |
Add the conversion from `ContinuousAffineEquiv` to `ContinuousAffineMap`, which seems to be missing from mathlib.
I'm not sure exactly what API such conversions are meant to have - `toHomeomorph` doesn't have any - but I added `rfl` lemmas about converting to a function either directly or via
`toContinuousAffineMap`, and about different pairs of conversion paths involving `toContinuousAffineMap` producing the same result, as well as injectivity of `toContinuousAffineMap`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
label:t-algebra$ |
34/0 |
Mathlib/LinearAlgebra/AffineSpace/ContinuousAffineEquiv.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'jsm28'] |
nobody |
9-14115 9 days ago |
10-12821 10 days ago |
10-12804 10 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`
---
[](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 |
180/176 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/IsomOfJ.lean,Mathlib/AlgebraicGeometry/EllipticCurve/NormalForms.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean |
4 |
24 |
['Multramate', 'acmepjz', 'github-actions'] |
nobody |
9-6685 9 days ago |
24-52800 24 days ago |
24-52783 24 days |
22415 |
pechersky author:pechersky |
feat(Algebra/Order/Hom/Monoid): order iso versions of unitsWithZero and friends |
---
- [ ] depends on: #22402
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/15 |
Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean |
3 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
9-6142 9 days ago |
9-12154 9 days ago |
9-12386 9 days |
22420 |
pechersky author:pechersky |
feat(Order/Prod/Lex/{Hom,Monoid,GroupWithZero}): ordered inclusions and projections of prod of ordered groups |
---
- [ ] depends on: #22402
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
label:t-algebra$ |
256/0 |
Mathlib.lean,Mathlib/Order/Prod/Lex/GroupWithZero.lean,Mathlib/Order/Prod/Lex/Hom.lean,Mathlib/Order/Prod/Lex/Monoid.lean |
4 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
9-6116 9 days ago |
9-12155 9 days ago |
9-13947 9 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.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
261/2 |
Mathlib/CategoryTheory/ChosenFiniteProducts.lean |
1 |
13 |
['TwoFX', 'github-actions', 'imbrem', 'joelriou'] |
nobody |
8-78148 8 days ago |
9-26777 9 days ago |
64-66553 64 days |
23804 |
hanwenzhu author:hanwenzhu |
feat(Analysis/SpecialFunctions): extend `tendsto_one_plus_div_rpow_exp` |
This PR
- Proves 12 theorems (they are stated separately because of differences in `rexp` vs `cexp` and `pow` vs `rpow` vs `cpow`):
- The limit of `x * log (1 + t/x + o(1/x))` as `x → ∞` is `t` for `t : ℂ` or `ℝ` and `x : ℝ` or `ℕ`.
- The limit of `(1 + t/x + o(1/x)) ^ x` as `x → ∞` is `t` for `t : ℂ` or `ℝ` and `x : ℝ` or `ℕ`.
- The limit of `(1 + t/x) ^ x` as `x → ∞` is `t` for `t : ℂ` or `ℝ` and `x : ℝ` or `ℕ`.
- (Note: the last row of theorems for `t : ℝ` already exist and are now replaced)
- Renames `plus` to `add` in affected theorems
The little-o theorem for `t : ℂ` is needed for [CLT](https://github.com/RemyDegenne/CLT).
Moves:
- tendsto_one_plus_div_rpow_exp -> Real.tendsto_one_add_div_rpow_exp
- tendsto_one_plus_div_pow_exp -> Real.tendsto_one_add_div_pow_exp
- tendsto_integral_mul_one_plus_inv_smul_sq_pow -> tendsto_integral_mul_one_add_inv_smul_sq_pow
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
187/41 |
Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/MulExpNegMulSqIntegral.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean |
5 |
1 |
['github-actions'] |
nobody |
8-76457 8 days ago |
8-76880 8 days ago |
8-76863 8 days |
23756 |
urkud author:urkud |
feat(Asymptotics): define `IsBigOTVS` |
- Turn `IsLittleOTVS` into a 1-field `structure`. We may want to replace the definition with "the ratio of `egauge`s tends to zero". In `ENNReal`, it's the right definition.
- Define `IsBigOTVS`, prove basic API lemmas.
- Prove lemmas about `IsLittleOTVS` in (indexed) products.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
208/59 |
Mathlib/Analysis/Asymptotics/TVS.lean |
1 |
6 |
['eric-wieser', 'github-actions', 'urkud'] |
nobody |
8-61903 8 days ago |
8-61955 8 days ago |
9-20279 9 days |
23690 |
mbkybky author:mbkybky |
refactor(Algebra/Category/ModuleCat): generalize the universe of `ModuleCat.enoughProjectives` |
Generalize the universe in the statement of `ModuleCat.enoughProjectives` and `ModuleCat.enoughInjectives`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/39 |
Mathlib/Algebra/Category/ModuleCat/EnoughInjectives.lean,Mathlib/Algebra/Category/ModuleCat/Projective.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/RepresentationTheory/GroupCohomology/Resolution.lean,scripts/nolints_prime_decls.txt |
5 |
1 |
['github-actions'] |
nobody |
8-53186 8 days ago |
11-38091 11 days ago |
11-38141 11 days |
22365 |
euprunin author:euprunin |
feat: register more tactics for `hint` |
The following example shows test cases that `hint` now supports, which were unsupported prior to this PR:
```
import Mathlib
-- The tactics registered in this PR
register_hint abel
register_hint bound
register_hint group
register_hint noncomm_ring
register_hint norm_num
register_hint positivity
register_hint ring
-- "hint" now correctly suggests "abel" which closes the goal (no closing tactic suggested prior to this PR)
example {α} [AddCommMonoid α] (a b c d: α) : a + b + c + d + 0 = d + (c + b) + (0 + 0 + a) := by hint
-- "hint" now correctly suggests "bound" which closes the goal (no closing tactic suggested prior to this PR)
example (a b : ℝ) (h1 : ‖a‖ ≤ ‖b‖) (h2 : 3 ≤ ‖b‖) : ‖b ^ 2 + a‖ ≥ ‖b ^ 2‖ - ‖a‖ ∧ ‖b ^ 2‖ - ‖a‖ ≥ ‖b ^ 2‖ - ‖b‖ ∧ (‖b‖ - 1) * ‖b‖ ≥ 2 * ‖b‖ := by hint
-- "hint" now correctly suggests "group" which closes the goal (no closing tactic suggested prior to this PR)
example (G : Type) (a b c : G) [Group G] : c⁻¹ * (b * c⁻¹) * c * (a * b) * (b⁻¹ * a⁻¹ * b⁻¹) * c = 1 := by hint
-- "hint" now correctly suggests "noncomm_ring" which closes the goal (no closing tactic suggested prior to this PR)
example (R : Type) (a b : R) [Ring R] : (a + b) ^ 3 = a ^ 3 + a ^ 2 * b + a * b * a + a * b ^ 2 + b * a ^ 2 + b * a * b + b ^ 2 * a + b ^ 3 := by hint
-- "hint" now correctly suggests "norm_num" which closes the goal (no closing tactic suggested prior to this PR)
example : (2 : ℝ) < 5 / 2 ∧ 5 / 2 < 3 := by hint
-- "hint" now correctly suggests "positivity" which closes the goal (no closing tactic suggested prior to this PR)
example (a : ℤ) : 0 < |a| + 3 := by hint
-- "hint" now correctly suggests "ring" which closes the goal (no closing tactic suggested prior to this PR)
example (α : Type) (a b c : α) [LinearOrderedField α] : a * (-c / b) * (-c / b) + -c + c = a * (c / b * (c / b)) := by hint
``` |
t-meta |
60/1 |
Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/Group.lean,Mathlib/Tactic/NoncommRing.lean,Mathlib/Tactic/NormNum.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Ring.lean,MathlibTest/hint.lean |
8 |
6 |
['euprunin', 'github-actions', 'j-loreaux'] |
nobody |
8-48915 8 days ago |
8-48915 8 days ago |
10-2719 10 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`.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-meta
|
440/73 |
Mathlib/Tactic/Simproc/ExistsAndEq.lean,MathlibTest/Simproc/ExistsAndEq.lean |
2 |
40 |
['JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'kim-em', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'vasnesterov'] |
nobody |
8-45266 8 days ago |
13-74410 13 days ago |
19-14652 19 days |
23810 |
b-reinke author:b-reinke |
chore(Order/Interval): generalize succ/pred lemmas to partial orders |
Many lemmas in `Mathlib/Order/Interval/Set/SuccPred.lean`and `Mathlib/Order/Interval/Finset/SuccPred.lean` also work for partial orders. They are generalized in this PR by introducing different sections for `PartialOrder` and `LinearOrder` assumptions in the respective files.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
231/89 |
Mathlib/Order/Interval/Finset/SuccPred.lean,Mathlib/Order/Interval/Set/SuccPred.lean |
2 |
1 |
['github-actions'] |
nobody |
8-43863 8 days ago |
8-43863 8 days ago |
8-43916 8 days |
23811 |
upobir author:upobir |
feat(Data/Set/Card): add powerset cardinality formula |
---
There is no theorem in mathlbi for formula of ncard of finite powerset, but there are related formulas for finset, multiset, cardinals. This pr adds the theorem for this.
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
8/0 |
Mathlib/Data/Set/Card.lean |
1 |
1 |
['github-actions'] |
nobody |
8-42666 8 days ago |
8-42666 8 days ago |
8-42714 8 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 |
11 |
['github-actions', 'urkud', 'vlad902'] |
urkud assignee:urkud |
8-41891 8 days ago |
30-1626 30 days ago |
41-66416 41 days |
23252 |
mariainesdff author:mariainesdff |
feat(Algebra/Polynomial): add lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
49/1 |
Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Lifts.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Polynomial/Splits.lean |
7 |
8 |
['alreadydone', 'github-actions', 'mariainesdff'] |
nobody |
8-20415 8 days ago |
14-18432 14 days ago |
23-26661 23 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`.
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-algebra
label:t-algebra$ |
28/0 |
Mathlib/RingTheory/Localization/Pi.lean |
1 |
24 |
['Paul-Lez', 'alreadydone', 'erdOne', 'github-actions', 'grunweg', 'jcommelin', 'maddycrim'] |
nobody |
8-17988 8 days ago |
10-13056 10 days ago |
56-86282 56 days |
23530 |
YaelDillies author:YaelDillies |
feat(.devcontainer): use prebuilt Docker image |
... instead of building it every time we open a codespace. This makes opening a codespace much faster.
The image can be found here: https://hub.docker.com/r/leanprovercommunity/gitpod4. I am the one maintaining it.
---
[](https://gitpod.io/from-referrer/)
|
|
1/3 |
.devcontainer/devcontainer.json |
1 |
1 |
['github-actions'] |
nobody |
8-7695 8 days ago |
15-36482 15 days ago |
15-36465 15 days |
23838 |
FordUniver author:FordUniver |
feat(SimpleGraph): added completeGraph.adjDecidable |
added completeGraph.adjDecidable
---
Strangely `DecidableRel (completeGraph V).Adj` does not seem to be automatically inferred from `Top.adjDecidable` even though `⊤ : SimpleGraph V` is defined as `completeGraph V`. Am I missing something here or is it as simple as adding these two lines to mathlib? |
new-contributor
t-combinatorics
|
4/1 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
8 |
['FordUniver', 'YaelDillies', 'github-actions'] |
nobody |
8-2453 8 days ago |
8-13429 8 days ago |
8-13480 8 days |
23371 |
grunweg author:grunweg |
chore: mark `Disjoint.{eq_bot, inter_eq}` simp |
And add the analogous lemma to `Finset`.
Spun out from #22964, hence transitively part of my bordism theory project.
Some lemmas there are more conveniently stated with `Disjoint`, which requires tagging at least `inter_eq` with simp.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
12/11 |
Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Lattice/Lemmas.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Order/Disjoint.lean,Mathlib/Topology/Compactification/OnePoint.lean,Mathlib/Topology/Order/OrderClosed.lean |
7 |
29 |
['YaelDillies', 'eric-wieser', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
7-86169 7 days ago |
9-14178 9 days ago |
9-61054 9 days |
20897 |
yuma-mizuno author:yuma-mizuno |
feat(CategoryTheory/Bicategory): add lemmas about mates in bicategories |
Continued from #20891. This PR completes the bicategorical proofs for the lemmas whose Cat versions are provided in `Mathlib/CategoryTheory/Adjunction/Mates.lean`.
---
- [x] depends on: #20891
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
366/0 |
Mathlib/CategoryTheory/Bicategory/Adjunction/Mate.lean |
1 |
6 |
['github-actions', 'joelriou', 'kim-em', 'mathlib4-dependent-issues-bot', 'yuma-mizuno'] |
nobody |
7-79033 7 days ago |
7-79033 7 days ago |
30-27597 30 days |
23849 |
chrisflav author:chrisflav |
feat(Data/Set): add `Set.encard_iUnion` |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-data
|
61/0 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Set/Card/Arithmetic.lean,Mathlib/Data/Set/Finite/Lattice.lean |
3 |
1 |
['github-actions'] |
nobody |
7-75512 7 days ago |
7-75519 7 days ago |
7-75560 7 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: Zhixuan Dai <22300180006@m.fudan.edu.cn>
Co-authored-by: Zhenyan Fu
Co-authored-by: Yiming Fu
Co-authored-by: Wang Jingting
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-algebra
label:t-algebra$ |
223/0 |
Mathlib.lean,Mathlib/Algebra/Symmetrized.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/MvPolynomial.lean |
4 |
47 |
['ADedecker', 'Raph-DG', 'YaelDillies', 'eric-wieser', 'github-actions', 'xyzw12345'] |
nobody |
7-70714 7 days ago |
8-42548 8 days ago |
64-14140 64 days |
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
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
81/0 |
Mathlib.lean,Mathlib/RingTheory/TwoSidedIdeal/SpanAsSum.lean |
2 |
42 |
['Paul-Lez', 'Whysoserioushah', 'eric-wieser', 'github-actions', 'kbuzzard'] |
nobody |
7-69889 7 days ago |
21-73832 21 days ago |
21-73877 21 days |
18266 |
bjoernkjoshanssen author:bjoernkjoshanssen |
feat: Second-derivative test from calculus |
We prove the Second-Derivative test from calculus using the First-Derivative test.
Source: [Wikipedia](https://en.wikipedia.org/wiki/Derivative_test#Proof_of_the_second-derivative_test).
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
149/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/SecondDerivativeTest.lean |
2 |
37 |
['bjoernkjoshanssen', 'eric-wieser', 'fpvandoorn', 'github-actions', 'j-loreaux'] |
nobody |
7-69459 7 days ago |
7-69459 7 days ago |
59-49040 59 days |
23459 |
Timeroot author:Timeroot |
feat: Definition of `Clone` notations and typeclasses |
Definitions and notation typeclasses for #20051
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
84/0 |
Mathlib.lean,Mathlib/Algebra/Clone/Defs.lean |
2 |
17 |
['Timeroot', 'YaelDillies', 'eric-wieser', 'github-actions', 'urkud'] |
YaelDillies assignee:YaelDillies |
7-64382 7 days ago |
9-17728 9 days ago |
11-66831 11 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 |
5 |
['eric-wieser', 'github-actions', 'urkud', 'vlad902'] |
nobody |
7-63383 7 days ago |
20-762 20 days ago |
20-1041 20 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
[](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/Countable.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 |
14 |
['YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
7-51832 7 days ago |
7-51853 7 days ago |
19-86127 19 days |
23238 |
YaelDillies author:YaelDillies |
feat: extended floor and ceil |
My motivation for this is to prove `ENat.toENNReal (⨆ i, f i) = ⨆ i, ENat.toENNReal (f i)` and `ENat.toENNReal (⨅ i, f i) = ⨅ i, ENat.toENNReal (f i)`.
From MiscYD
---
See #15269 for a past attempt.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
269/1 |
Mathlib.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Data/Int/CardIntervalMod.lean |
4 |
17 |
['YaelDillies', 'eric-wieser', 'github-actions', 'urkud'] |
nobody |
7-51319 7 days ago |
11-10369 11 days ago |
22-66000 22 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
- [x] depends on: #23759
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
64/1 |
Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/GroupTheory/Index.lean,Mathlib/LinearAlgebra/Determinant.lean |
4 |
8 |
['Ruben-VandeVelde', 'github-actions', 'mathlib4-dependent-issues-bot', 'xroblot'] |
nobody |
7-50197 7 days ago |
7-51918 7 days ago |
29-49480 29 days |
23705 |
YaelDillies author:YaelDillies |
chore: move `Module.End`-related decls to the `Module.End` namespace |
No deprecations, since they would clash across namespaces.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
314/328 |
Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Group/ForwardDiff.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/EngelSubalgebra.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Lie/Weights/Cartan.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Module/Submodule/LinearMap.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/Data/Matrix/Bilinear.lean,Mathlib/FieldTheory/JacobsonNoether.lean,Mathlib/LinearAlgebra/Charpoly/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Minpoly.lean,Mathlib/LinearAlgebra/Eigenspace/Pi.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/LinearAlgebra/Eigenspace/Zero.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/LinearAlgebra/Matrix/InvariantBasisNumber.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Reflection.lean,Mathlib/LinearAlgebra/RootSystem/Defs.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/Semisimple.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/FDRep.lean,Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean,Mathlib/RepresentationTheory/GroupCohomology/Resolution.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RepresentationTheory/Rep.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/CotangentLocalizationAway.lean,Mathlib/RingTheory/Derivation/Lie.lean,Mathlib/RingTheory/Finiteness/Nilpotent.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Kaehler/TensorProduct.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Nilpotent/Exp.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Bernstein.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
75 |
4 |
['github-actions', 'urkud'] |
nobody |
7-48332 7 days ago |
7-50250 7 days ago |
10-83449 10 days |
23748 |
vasnesterov author:vasnesterov |
feat(Analysis/Analytic): `HasFPowerSeriesOnBall.comp_sub` variations |
Prove `HasFPowerSeriesOnBall.comp_sub` variations for `HasFPowerSeriesOnBall`'s friend structures.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
52/0 |
Mathlib/Analysis/Analytic/Basic.lean |
1 |
4 |
['github-actions', 'urkud', 'vasnesterov'] |
nobody |
7-43376 7 days ago |
9-72682 9 days ago |
9-72755 9 days |
22474 |
joelriou author:joelriou |
feat(CategoryTheory/Functor): more API for pointwise Kan extensions |
Transport pointwise Kan extensions via isomorphisms/equivalences.
---
[](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 |
7-39758 7 days ago |
43-43621 1 month ago |
44-73893 44 days |
13649 |
FR-vdash-bot author:FR-vdash-bot |
chore: redefine `Nat.div2` `Nat.bodd` |
The new definitions are faster than the old ones. `Nat.binaryRec` will be moved to batteries (https://github.com/leanprover-community/batteries/pull/799) or core (https://github.com/leanprover/lean4/pull/3756), so relevant contents are moved to a new file temporarily.
---
- [x] depends on: #15567
- [x] depends on: #19666
[](https://gitpod.io/from-referrer/)
|
|
63/88 |
Mathlib/Computability/Primrec.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Logic/Denumerable.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Nat.lean |
8 |
14 |
['FR-vdash-bot', 'digama0', 'eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'urkud'] |
digama0 assignee:digama0 |
7-30811 7 days ago |
7-48940 7 days ago |
71-38223 71 days |
23236 |
alreadydone author:alreadydone |
chore(Topology/Instances/AddCircle): golf and little lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
44/37 |
Mathlib/Topology/Instances/AddCircle.lean |
1 |
6 |
['alreadydone', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
7-22296 7 days ago |
7-22313 7 days ago |
24-9329 24 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.
- [x] depends on: #21134
[](https://gitpod.io/from-referrer/)
|
t-topology |
332/0 |
Mathlib.lean,Mathlib/Topology/Compactness/KSpace.lean,docs/references.bib |
3 |
15 |
['StevenClontz', 'github-actions', 'jzxia', 'mathlib4-dependent-issues-bot', 'scholzhannah', 'urkud'] |
nobody |
7-15016 7 days ago |
7-28238 7 days ago |
48-66728 48 days |
23844 |
pechersky author:pechersky |
CI: Build gitpod container in github CI |
And push to ghcr.io
---
[](https://gitpod.io/from-referrer/)
|
CI |
64/0 |
.github/workflows/docker_build.yml |
1 |
9 |
['bryangingechen', 'github-actions', 'pechersky'] |
nobody |
7-14814 7 days ago |
8-3589 8 days ago |
8-3642 8 days |
23890 |
erdOne author:erdOne |
refactor(AlgebraicGeometry): add `supportSet` field to `IdealSheafData` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
280/169 |
Mathlib/AlgebraicGeometry/IdealSheaf.lean,Mathlib/AlgebraicGeometry/Scheme.lean |
2 |
1 |
['github-actions'] |
nobody |
6-83364 6 days ago |
6-84033 6 days ago |
6-84083 6 days |
23648 |
wwylele author:wwylele |
feat(Topology/Order): add `Dense.exists_seq_strict{Mono/Anti}_tendsto` |
Add `Dense.exists_seq_strict{Mono/Anti}_tendsto{'}` that restricts the sequence to a dense subset. This is useful for e.g. finding a monotone rational sequence approaching a real number.
Co-authored-by: Jireh Loreaux
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
62/0 |
Mathlib/Topology/Instances/Real/Lemmas.lean,Mathlib/Topology/Order/IsLUB.lean |
2 |
10 |
['github-actions', 'j-loreaux', 'wwylele'] |
nobody |
6-58076 6 days ago |
11-4210 11 days ago |
12-60169 12 days |
23808 |
mitchell-horner author:mitchell-horner |
refactor: split out edge deletion definitions for simple graphs |
Move `deleteEdges` and `deleteFar` definitions to a separate file.
---
I wasn't sure of the guidelines for authorship. I've just copied the authorship from the original files.
The only changes are:
- Capitalized `deleteEdges` section to `DeleteEdges`.
- Removed comment `/-! ## Edge deletion -/`.
- Moved `edgeFinset_deleteEdges` inside `DeleteEdges` section.
See #20681.
[](https://gitpod.io/from-referrer/) |
large-import
new-contributor
t-combinatorics
|
120/90 |
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 |
2 |
['github-actions', 'grunweg'] |
nobody |
6-45594 6 days ago |
8-43284 8 days ago |
8-47992 8 days |
21950 |
erdOne author:erdOne |
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` |
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
255/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 |
17 |
['Ruben-VandeVelde', 'erdOne', 'github-actions', 'xroblot'] |
nobody |
6-35406 6 days ago |
16-81469 16 days ago |
17-83986 17 days |
23913 |
kebekus author:kebekus |
feat: introduce factorized rational functions |
Discuss functions `𝕜 → 𝕜` of the form `∏ᶠ u, (· - u) ^ d u`, where `d : 𝕜 → ℤ` is integer-valued. Show that these "factorized rational functions" are meromorphic in normal form, with divisor equal to `d`. Factorized rational functions 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.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
170/2 |
Mathlib.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean |
3 |
2 |
['github-actions', 'kebekus'] |
nobody |
6-31310 6 days ago |
6-32019 6 days ago |
6-32077 6 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
```
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
39/0 |
Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/Topology/Homeomorph/Defs.lean |
3 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
6-30598 6 days ago |
6-30615 6 days ago |
28-75971 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`.
The associator vanishes exactly when `R` is associative.
We prove variants of this statement also for the `AddMonoidHom` bundled version of the associator,
as well as the bundled version of `mulLeft₃` and `mulRight₃`, the multiplications `(x * y) * z` and
`x * (y * z)`.
---
[](https://gitpod.io/from-referrer/)
|
large-import
maintainer-merge
new-contributor
t-algebra
label:t-algebra$ |
133/8 |
Mathlib.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Ring/Associator.lean |
3 |
46 |
['Paul-Lez', 'YaelDillies', 'b-reinke', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
6-30460 6 days ago |
6-37997 6 days ago |
30-12943 30 days |
23472 |
erdOne author:erdOne |
feat(Topology): Continuous open maps with irreducible fibers induce bijections between irreducible components |
Co-authored-by: Christian Merten
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
77/0 |
Mathlib/Topology/Irreducible.lean |
1 |
3 |
['ADedecker', 'erdOne', 'github-actions'] |
nobody |
6-29312 6 days ago |
16-58197 16 days ago |
16-58240 16 days |
23777 |
joelriou author:joelriou |
feat(CategoryTheory): the center of a category |
This PR introduces an abbrevation `CatCenter C` for the center of a category `C`, i.e. the type of endomorphisms of the identity functor of `C`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
53/0 |
Mathlib.lean,Mathlib/CategoryTheory/Center/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
6-28736 6 days ago |
6-28736 6 days ago |
9-17612 9 days |
23918 |
RemyDegenne author:RemyDegenne |
feat: Peano form of Taylor's theorem |
Co-authored-by: Tian Chen (@peakpoint)
---
Extracted from #19796
[](https://gitpod.io/from-referrer/)
|
t-analysis |
141/1 |
Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean |
5 |
1 |
['github-actions'] |
nobody |
6-26027 6 days ago |
6-26090 6 days ago |
6-26073 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
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
186/56 |
Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/NumberTheory/NumberField/Units/Regulator.lean |
3 |
4 |
['alreadydone', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
6-21508 6 days ago |
6-21524 6 days ago |
30-29318 30 days |
23729 |
alreadydone author:alreadydone |
chore(LinearAlgebra): generalize some lemmas |
and move them to earlier files.
`rank_subsingleton'`, `rank_punit` and `rank_bot` are generalized from Ring to Semiring.
`linearIndependent_subsingleton_iff` is generalized to Semiring and an extraneous NoZeroSMulDivisors condition is removed.
`ENat.card_ne_zero_iff_nonempty` is added.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
57/45 |
Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Rank.lean,Mathlib/LinearAlgebra/Dimension/Basic.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Dimension/FreeAndStrongRankCondition.lean,Mathlib/LinearAlgebra/Dimension/Subsingleton.lean,Mathlib/LinearAlgebra/Dimension/Torsion/Basic.lean,Mathlib/LinearAlgebra/FreeAlgebra.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
13 |
10 |
['alreadydone', 'erdOne', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
6-20771 6 days ago |
6-20820 6 days ago |
6-39475 6 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).
---
[](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 |
12 |
['ADedecker', 'PatrickMassot', 'YaelDillies', 'b-mehta', 'github-actions'] |
nobody |
6-20575 6 days ago |
20-34975 20 days ago |
23-55403 23 days |
23909 |
grunweg author:grunweg |
chore: various fixes for the flexible linter |
---
[](https://gitpod.io/from-referrer/)
|
|
120/85 |
Mathlib/Condensed/Light/Epi.lean,Mathlib/Control/EquivFunctor/Instances.lean,Mathlib/Control/Monad/Cont.lean,Mathlib/Data/FinEnum.lean,Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/List/SplitBy.lean,Mathlib/Data/Matroid/Sum.lean,Mathlib/Data/Ordmap/Invariants.lean,Mathlib/Data/Real/Pi/Irrational.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/Data/Vector3.lean,Mathlib/Data/WSeq/Relation.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/Coxeter/Inversion.lean,Mathlib/GroupTheory/Goursat.lean,Mathlib/GroupTheory/HNNExtension.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/NumberTheory/FLT/Polynomial.lean,Mathlib/NumberTheory/LSeries/Injectivity.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/RingTheory/Derivation/MapCoeffs.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Tactic/NormNum/NatFactorial.lean |
30 |
1 |
['github-actions'] |
nobody |
6-13600 6 days ago |
6-39202 6 days ago |
6-39185 6 days |
23888 |
j-loreaux author:j-loreaux |
feat: properties of graded rings indexed by canonically linearly ordered additive monoids |
---
- [ ] depends on: #23883
- [ ] depends on: #23886
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
100/0 |
Mathlib/Algebra/DirectSum/Internal.lean |
1 |
9 |
['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
6-11002 6 days ago |
6-11599 6 days ago |
6-12397 6 days |
23721 |
YaelDillies author:YaelDillies |
chore: rename `AlgebraCat` to `Alg` |
and its friends too.
The new names:
* are shorter
* match `Grp`, `CommGrp`
* are what people would write on paper
The existing name is too much of a mouthful to be usefully included in declaration names. For example, [`BialgebraCat.hasForgetToAlgebra`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Category/BialgebraCat/Basic.html#BialgebraCat.hasForgetToAlgebra) wasn't named `BialgebraCat.hasForgetToAlgebraCat`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
433/433 |
Mathlib.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/Alg/Basic.lean,Mathlib/Algebra/Category/Alg/Limits.lean,Mathlib/Algebra/Category/Alg/Monoidal.lean,Mathlib/Algebra/Category/Alg/Symmetric.lean,Mathlib/Algebra/Category/AlgebraCat/Symmetric.lean,Mathlib/Algebra/Category/Bialg/Basic.lean,Mathlib/Algebra/Category/Bialg/Monoidal.lean,Mathlib/Algebra/Category/Coalg/Basic.lean,Mathlib/Algebra/Category/Coalg/ComonEquivalence.lean,Mathlib/Algebra/Category/Coalg/Monoidal.lean,Mathlib/Algebra/Category/HopfAlg/Basic.lean,Mathlib/Algebra/Category/HopfAlg/Monoidal.lean,Mathlib/Algebra/Category/Ring/Under/Basic.lean,Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/CategoryTheory/Monoidal/Internal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/LinearAlgebra/CliffordAlgebra/CategoryTheory.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Monoidal.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Symmetric.lean,Mathlib/RingTheory/Coalgebra/TensorProduct.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,MathlibTest/CategoryTheory/ConcreteCategory/Alg.lean,docs/overview.yaml |
27 |
8 |
['YaelDillies', 'b-mehta', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'urkud'] |
nobody |
5-84996 5 days ago |
6-48725 6 days ago |
10-35236 10 days |
23251 |
mariainesdff author:mariainesdff |
feat(FieldTheory/IntermediateField/Adjoin): add lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
57/0 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean |
2 |
16 |
['alreadydone', 'github-actions', 'mariainesdff', 'tb65536'] |
nobody |
5-84028 5 days ago |
23-35823 23 days ago |
23-35806 23 days |
23718 |
syur2 author:syur2 |
feat(Algebra): hom localize equiv localize hom |
Add the linear equiv of `S^{-1}(M =>[R] N)` equiv `(S^{-1} M) =>[S^{-1}R] (S^{-1} N)` for finitely presented module `M`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
21/0 |
Mathlib/Algebra/Module/FinitePresentation.lean |
1 |
1 |
['github-actions'] |
nobody |
5-67776 5 days ago |
10-47321 10 days ago |
10-47316 10 days |
23930 |
Vtec234 author:Vtec234 |
feat(Tactic): dependent rewriting |
Add dependent rewrite tactics `rw!` and `rewrite!`.
These operate by inserting casts in front of terms that would otherwise become type-incorrect after the rewrite.
In the default mode, only proof terms are casted, so that (by proof irrelevance) no observable complexity is added.
In the most liberal mode, the tactics never encounter the 'motive is not type correct' error,
but may add casts that make the goal or other term very complex.
Co-authored-by: Aaron Liu
---
This has been discussed on Zulip [here](https://leanprover.zulipchat.com/#narrow/channel/239415-metaprogramming-.2F-tactics/topic/dependent.20rewrite.20tactic/with/504228516). See the included test file for example rewrites that this tactic can do.
[](https://gitpod.io/from-referrer/)
|
t-meta |
706/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DepRewrite.lean,MathlibTest/depRewrite.lean |
4 |
1 |
['github-actions'] |
nobody |
5-64434 5 days ago |
5-70683 5 days ago |
5-70733 5 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).
---
[](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 |
5-62288 5 days ago |
57-11612 1 month ago |
57-20762 57 days |
23758 |
erdOne author:erdOne |
feat(Topology/Algebra): linearly topologized iff non-archimedian |
...for topological modules over compact rings or `ℤ`-finite rings
---
[](https://gitpod.io/from-referrer/)
|
large-import |
138/3 |
Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Topology/Algebra/LinearTopology.lean |
2 |
20 |
['ADedecker', 'AntoineChambert-Loir', 'erdOne', 'github-actions'] |
nobody |
5-46980 5 days ago |
9-47822 9 days ago |
9-47862 9 days |
23706 |
YaelDillies author:YaelDillies |
feat: minimality with respect to a function |
Introduce `MinimalFor`/`MaximalFor`, which generalise `Minimal` and `Maximal` to the case where the predicate `P : ι → Prop` doesn't have an ordered domain, but where instead we have a function `f : ι → α` to an order. Typical examples include extremal properties of graphs, such as `Simple.IsTuran.Maximal`, where we don't just care about having a maximal clique-free graph, but we also want it to have the maximal number of edges.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
20/0 |
Mathlib/Order/Defs/Unbundled.lean |
1 |
10 |
['YaelDillies', 'apnelson1', 'b-mehta', 'github-actions'] |
nobody |
5-44939 5 days ago |
11-2654 11 days ago |
11-2701 11 days |
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.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-data
new-contributor
|
269/15 |
Mathlib.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Multiplicity.lean,Mathlib/Data/Nat/Multiplicity.lean |
4 |
31 |
['Kevew', 'Paul-Lez', 'github-actions', 'grunweg'] |
Kevew assignee:Kevew |
5-36960 5 days ago |
33-70976 1 month ago |
44-14922 44 days |
23923 |
YaelDillies author:YaelDillies |
feat: a discrete monoid has compact Pontryagin dual |
From LeanAPAP
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
47/10 |
Mathlib/Topology/Algebra/Group/CompactOpen.lean,Mathlib/Topology/Algebra/PontryaginDual.lean,Mathlib/Topology/CompactOpen.lean,Mathlib/Topology/ContinuousMap/Basic.lean,Mathlib/Topology/Separation/NotNormal.lean |
5 |
9 |
['YaelDillies', 'b-mehta', 'github-actions'] |
nobody |
5-33478 5 days ago |
5-33478 5 days ago |
5-38542 5 days |
19591 |
joelriou author:joelriou |
feat(CategoryTheory/Abelian): Ext^0 and Ext-groups when there are enough projectives |
Let `C : Type u` be an abelian category (`Category.{v} C`). We deduce from #19585 that `Ext X Y 0` identifies to the type of morphisms from `X` to `Y`. Moreover, assuming that `C` has enough projectives and is locally `w`-small, i.e. the type of morphisms in `C` are `Small.{w}`, we show that the condition `HasExt.{w}` holds, which means that for `X` and `Y` in `C`, and `n : ℕ`, we may define `Ext X Y n : Type w`. In particular, this holds for `w = v`.
This is an important step in order to get a reasonably usable API for Ext-groups.
---
- [x] depends on: #19585
- [x] depends on: #19584
- [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
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
233/24 |
Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Fractions.lean,Mathlib/Algebra/Homology/Embedding/CochainComplex.lean,Mathlib/CategoryTheory/Abelian/Projective/Dimension.lean |
7 |
n/a |
['github-actions', 'joelriou', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mbkybky'] |
nobody |
5-22907 5 days ago |
unknown |
unknown |
23926 |
b-reinke author:b-reinke |
feat(Algebra/BigOperators/Finprod): add powerset projection lemmas |
This PR adds lemmas in `Mathlib/Algebra/BigOperators/Finprod.lean` related to products/sums over the powerset `𝒫 s` when we add or remove an element of `s`.
We also add the lemmas `mul_finsum_mem` and `finsum_mem_mul`, the analogues of `mul_finsum` and `finsum_mul` for sums over a subset
The motivation comes from the proof of the deletion/contraction properties of matroids.
---
[](https://gitpod.io/from-referrer/)
|
|
38/0 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Set/Image.lean |
2 |
3 |
['b-reinke', 'eric-wieser', 'github-actions'] |
nobody |
5-21754 5 days ago |
5-80805 5 days ago |
5-80789 5 days |
23940 |
YaelDillies author:YaelDillies |
feat: polytopes |
From Toric
Co-authored-by: Matthew Johnson
---
[](https://gitpod.io/from-referrer/)
|
toric
t-analysis
|
59/0 |
Mathlib.lean,Mathlib/Analysis/Convex/Polytope.lean |
2 |
5 |
['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
5-19942 5 days ago |
5-33445 5 days ago |
5-47069 5 days |
23893 |
eric-wieser author:eric-wieser |
chore: add missing rfl lemmas for the tensor product of coalgebras |
These are taken from https://github.com/ImperialCollegeLondon/FLT/blob/eef74b4538c8852363936dfaad23e6ffba72eca5/FLT/mathlibExperiments/Coalgebra/TensorProduct.lean
`simps` previously generated the `def` lemmas, but they were badly-named, and probably not actually convenient as `simp` lemmas.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/8 |
Mathlib/Algebra/Category/CoalgebraCat/ComonEquivalence.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/RingTheory/Coalgebra/TensorProduct.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean |
4 |
1 |
['github-actions'] |
nobody |
5-16720 5 days ago |
6-79614 6 days ago |
6-79665 6 days |
23338 |
WilliamCoram author:WilliamCoram |
feat: restricted power series form a ring |
We define restricted powerseries over a normed ring R, and show they form a ring when R has the ultrametric property.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-number-theory
|
186/0 |
Mathlib.lean,Mathlib/RingTheory/PowerSeries/Restricted.lean |
2 |
17 |
['Paul-Lez', 'WilliamCoram', 'github-actions', 'grunweg'] |
nobody |
5-14999 5 days ago |
21-24352 21 days ago |
21-24474 21 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
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics
t-analysis
|
562/360 |
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 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
grunweg assignee:grunweg |
5-11971 5 days ago |
5-11987 5 days ago |
45-69222 45 days |
23324 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprime `induction'` with 5+ variables, part 3 |
Based on a comment by @apnelson1 on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/The.20plan.20to.20remove.20induction'/near/508274747).
The relevant instances were identified by adding the following to `Mathlib.Tactic.Cases`
```diff
diff --git a/Mathlib/Tactic/Cases.lean b/Mathlib/Tactic/Cases.lean
index 4a60db6c551..29ec70424c7 100644
--- a/Mathlib/Tactic/Cases.lean
+++ b/Mathlib/Tactic/Cases.lean
@@ -122,6 +122,16 @@ elab (name := induction') "induction' " tgts:(Parser.Tactic.elimTarget,+)
g.assign result.elimApp
let subgoals ← ElimApp.evalNames elimInfo result.alts withArg
(generalized := fvarIds) (toClear := targetFVarIds) (toTag := toTag)
+ let body ← inferType targets[0]!
+ let names : Array Format := if withArg.1.getArgs.size > 1 then
+ (withArg.1.getArgs[1]!).getArgs.map Syntax.prettyPrint else Array.empty
+ let gens : Array Format := if genArg.1.getArgs.size > 1 then
+ (genArg.1.getArgs[1]!).getArgs.map Syntax.prettyPrint else Array.empty
+ let inductor : Format := if usingArg.1.getArgs.size > 1 then
+ Syntax.prettyPrint usingArg.1.getArgs[1]! else "~"
+ if 5 ≤ names.size then
+ logInfoAt tgts m!"{body.getAppFn.setPPExplicit true} {inductor} {gens} {names} \
+ {subgoals.toList.length}"
setGoals <| (subgoals ++ result.others).toList ++ gs
/-- The `cases'` tactic is similar to the `cases` tactic in Lean 4 core, but the syntax for giving
```
and then examining [the output](https://github.com/leanprover-community/mathlib4/actions/runs/14085064444/job/39446843657). |
tech debt |
168/119 |
Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Moments/Basic.lean,Mathlib/RingTheory/EssentialFiniteness.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean,Mathlib/RingTheory/Kaehler/Polynomial.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Polynomial/Ideal.lean,Mathlib/RingTheory/PowerSeries/Order.lean,Mathlib/RingTheory/Presentation.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/Unramified/Finite.lean,Mathlib/SetTheory/Lists.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/SetTheory/PGame/Algebra.lean,Mathlib/SetTheory/PGame/Order.lean |
22 |
12 |
['Parcly-Taxel', 'apnelson1', 'eric-wieser', 'github-actions'] |
nobody |
4-72657 4 days ago |
12-10395 12 days ago |
20-9768 20 days |
23932 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): eccentricity, radius, and center |
This PR defines the eccentricity of a vertex, the radius, and the center of a simple graph, and provides an API for them. They are placed in the `Diam.lean` file because they are closely related and have a similar API. Also this PR redefines `SimpleGraph.ediam` in terms of eccentricity, which shortens some of its proofs.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
248/30 |
Mathlib/Combinatorics/SimpleGraph/Diam.lean,Mathlib/Combinatorics/SimpleGraph/Girth.lean |
2 |
25 |
['Rida-Hamadani', 'b-mehta', 'github-actions'] |
nobody |
4-65062 4 days ago |
4-71051 4 days ago |
5-20757 5 days |
23961 |
FR-vdash-bot author:FR-vdash-bot |
refactor: unbundle algebra from `ENormed*` |
Further speed up the search in the algebraic typeclass hierarchy by avoiding searching for `TopologicalSpace`.
---
[](https://gitpod.io/from-referrer/)
|
slow-typeclass-synthesis
maintainer-merge
t-algebra
t-analysis
label:t-algebra$ |
32/25 |
Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean |
5 |
8 |
['FR-vdash-bot', 'github-actions', 'grunweg', 'leanprover-bot'] |
nobody |
4-42665 4 days ago |
4-42666 4 days ago |
5-508 5 days |
23137 |
grunweg author:grunweg |
chore(Topology): some more fun_prop tagging |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
8/4 |
Mathlib/Dynamics/Flow.lean,Mathlib/Topology/Algebra/Monoid.lean |
2 |
8 |
['github-actions', 'grunweg', 'j-loreaux'] |
nobody |
4-36386 4 days ago |
4-36386 4 days ago |
11-27458 11 days |
23968 |
grunweg author:grunweg |
chore: replace mono by gcongr |
gcongr is more maintained, and slightly faster here.
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics |
1/1 |
Mathlib/Dynamics/OmegaLimit.lean |
1 |
1 |
['github-actions'] |
nobody |
4-33994 4 days ago |
4-33994 4 days ago |
4-34052 4 days |
23971 |
grunweg author:grunweg |
feat: LinearEquiv.prodUnique |
which is `Equiv.prodUnique` as a linear equivalence.
Discovered when working on slice models for defining submanifolds.
---
I will also add the ContinuouslinearEquiv of this, once there's mathlib cache so I can find out where to place this.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
22/0 |
Mathlib/Algebra/Module/Equiv/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
4-26023 4 days ago |
4-26066 4 days ago |
4-26124 4 days |
21276 |
GabinKolly author:GabinKolly |
feat(ModelTheory/Substructures): define equivalences between equal substructures |
Define first-order equivalences between equal substructures, and prove related properties.
---
This is some preparatory work for #18876
[](https://gitpod.io/from-referrer/)
|
t-logic |
62/0 |
Mathlib/ModelTheory/Substructures.lean |
1 |
12 |
['GabinKolly', 'YaelDillies', 'fpvandoorn', 'github-actions'] |
nobody |
4-12359 4 days ago |
4-12359 4 days ago |
23-67581 23 days |
23329 |
ScottCarnahan author:ScottCarnahan |
feat (LinearAlgebra/RootSystem): nondegeneracy for subrings |
This PR adds generalized versions of existing results, where the original base ring is no longer necessarily linearly ordered, but is an algebra over a LinearOrderedCommRing.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
657/289 |
Mathlib.lean,Mathlib/Algebra/Module/Submodule/LinearMap.lean,Mathlib/LinearAlgebra/BilinearMap.lean,Mathlib/LinearAlgebra/PerfectPairing/Restrict.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/LinearAlgebra/RootSystem/BaseChange.lean,Mathlib/LinearAlgebra/RootSystem/Defs.lean,Mathlib/LinearAlgebra/RootSystem/Finite/CanonicalBilinear.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Lemmas.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/RootSystem/IsValuedIn.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/LinearAlgebra/RootSystem/RootPositive.lean |
14 |
9 |
['ScottCarnahan', 'github-actions', 'leanprover-community-bot-assistant', 'ocfnash'] |
nobody |
3-85398 3 days ago |
4-1962 4 days ago |
9-19754 9 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.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
407/0 |
Mathlib.lean,Mathlib/Algebra/Group/Action/Pretransitive.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean |
4 |
4 |
['AntoineChambert-Loir', 'D-Thomine', 'github-actions'] |
nobody |
3-75643 3 days ago |
19-68425 19 days ago |
19-68423 19 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).
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
44/0 |
Mathlib/RepresentationTheory/Tannaka.lean |
1 |
15 |
['github-actions', 'kbuzzard', 'ybenmeur'] |
nobody |
3-55515 3 days ago |
29-7883 29 days ago |
29-7929 29 days |
23969 |
grunweg author:grunweg |
feat: add LinearEquiv.ofInjectiveOfFinrankEq |
This is used in #22611.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
20/0 |
Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean |
1 |
7 |
['eric-wieser', 'github-actions', 'grunweg'] |
nobody |
3-46666 3 days ago |
4-33907 4 days ago |
4-33961 4 days |
23988 |
RemyDegenne author:RemyDegenne |
feat(MeasureTheory): `tendsto_iff_forall_integral_rclike_tendsto` |
Add variants of `tendsto_iff_forall_integral_tendsto` for finite measures and probability measures, where the integral is over functions with value in an RCLike type instead of Real.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
52/0 |
Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean |
4 |
1 |
['github-actions'] |
nobody |
3-45730 3 days ago |
3-45792 3 days ago |
3-45776 3 days |
23981 |
robertmaxton42 author:robertmaxton42 |
feat (Equiv) : sigmas indexed by products are sigmas; pinning down the base of a sigma gives the fiber |
Add some convenience defs for working with sigma types that appear frequently when working with hom-like objects:
- `Equiv.sigmaAssocProd`, for sigmas of the form `(a : α) × (b : β) × γ a b`
- `Equiv.sigmaSubtype` and `Equiv.sigmaSigmaSubtype`, for subtypes of sigmas that "cancel"
Also add a convenience lemma for moving conjugations ( $\varepsilon\^{-1} f \varepsilon$ ) from one side of an equation of functions to the other.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-logic
|
49/0 |
Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Sum.lean |
2 |
1 |
['github-actions'] |
nobody |
3-44469 3 days ago |
3-69180 3 days ago |
3-69234 3 days |
23990 |
robertmaxton42 author:robertmaxton42 |
feat (Types.Colimits): Quot is functorial and colimitEquivQuot is natural |
Add `Functor.quotFunctor` to parallel `Functor.sectionsFunctor`, witnessing that `Quot` is functorial; add `colimNatIsoQuotFunctor` to parallel `limNatIsoSectionsFunctor`, witnessing that `colimitEquivQuot` is natural in the diagram $F$.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
33/0 |
Mathlib/CategoryTheory/Limits/Types/Colimits.lean |
1 |
3 |
['github-actions', 'joelriou', 'robertmaxton42'] |
nobody |
3-39994 3 days ago |
3-43742 3 days ago |
3-43794 3 days |
23552 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/PowerSeries/Substitution): define substitution of power series in power series |
This is the second part of the PR defining substitution of indeterminates by power series in power series.
This one is specific to univariate power series. Basically, the matter is just to remove `Unit ->` in definitions
and make the necessary adjustments.
---
- [x] depends on: #15158
- [x] depends on: #23607 (minor chore)
- [x] depends on: #23642
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
327/18 |
Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean |
4 |
n/a |
['AntoineChambert-Loir', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
3-33356 3 days ago |
unknown |
unknown |
23904 |
YaelDillies author:YaelDillies |
feat: a finitely generated submonoid has a minimal generating set |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
large-import
t-algebra
label:t-algebra$ |
27/0 |
Mathlib/Data/Finset/Powerset.lean,Mathlib/GroupTheory/Finiteness.lean |
2 |
1 |
['github-actions'] |
nobody |
3-28895 3 days ago |
6-44622 6 days ago |
6-44658 6 days |
23539 |
alreadydone author:alreadydone |
feat(Algebra): transcendence degree is well-defined |
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 a spanning 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.
---
- [x] depends on: #20887
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
408/28 |
Mathlib/FieldTheory/IsAlgClosed/Classification.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/RingTheory/AlgebraicIndependent/RankAndCardinality.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean |
4 |
5 |
['alreadydone', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
3-13923 3 days ago |
10-1305 10 days ago |
10-2199 10 days |
18379 |
oeb25 author:oeb25 |
feat(Topology/ENNReal): Add `ENNReal.tsum_biUnion` |
This adds infinite versions of `Finset.sum_biUnion` to `ENNReal`s.
---
One notable difference from the `Finset` version is that for `tsum` we have two ways for selecting the summands: `∑' x : ⋃ i ∈ S` or `∑' x : ⋃ i, t i`. This PR adds both.
I tried to extend this beyond `ENNReal`, but didn't find a clean way to do it.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
26/0 |
Mathlib/Topology/Instances/ENNReal/Lemmas.lean |
1 |
5 |
['github-actions', 'grunweg', 'j-loreaux', 'oeb25'] |
nobody |
3-9238 3 days ago |
3-19186 3 days ago |
79-40263 79 days |
22243 |
luigi-massacci author:luigi-massacci |
feat(Topology/MetricSpace/Gluing): Inductive limits of separable spaces are separable |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
23/0 |
Mathlib/Topology/MetricSpace/Gluing.lean |
1 |
9 |
['Paul-Lez', 'github-actions', 'j-loreaux', 'luigi-massacci', 'mathlib-bors'] |
nobody |
3-9062 3 days ago |
9-15322 9 days ago |
2-23272 2 days |
23601 |
YaelDillies author:YaelDillies |
feat(CommAlg): the category of commutative algebras |
Define the category of commutative `R`-algebras. This is the same as `Under R` up to two details:
* `A : CommAlg R` contains the data of both `algebraMap R A : R → A` and `Algebra.smul : R → A → A`. `A : Under R` only contains `algebraMap R A`, meaning that going back and forth between `Under R` and unbundled algebras is painful/nigh impossible.
* If `A : Under R`, then `A` must live in the same universe as `R`
From Toric, FLT
Co-authored-by: Andrew Yang
Co-authored-by: Michał Mrugała
Co-authored-by: Christian Merten
---
[](https://gitpod.io/from-referrer/)
|
toric
FLT
t-algebra
label:t-algebra$ |
320/0 |
Mathlib.lean,Mathlib/Algebra/Category/CommAlg/Basic.lean |
2 |
21 |
['YaelDillies', 'b-mehta', 'erdOne', 'eric-wieser', 'github-actions'] |
nobody |
3-6427 3 days ago |
8-14723 8 days ago |
14-4932 14 days |
24008 |
meithecatte author:meithecatte |
chore(EpsilonNFA): replace manual lemmas with @[simps] |
---
[](https://gitpod.io/from-referrer/)
|
t-computability
new-contributor
|
2/24 |
Mathlib/Computability/EpsilonNFA.lean |
1 |
1 |
['github-actions'] |
nobody |
3-1713 3 days ago |
3-3260 3 days ago |
3-3314 3 days |
23195 |
vlad902 author:vlad902 |
feat: generalize Mathlib.Algebra.BigOperators + CharP + Star + misc others |
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
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
51/46 |
Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Action.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/BigOperators/RingEquiv.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/SelfAdjoint.lean |
18 |
9 |
['github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'urkud', 'vlad902'] |
nobody |
3-346 3 days ago |
3-372 3 days ago |
13-36673 13 days |
23991 |
grunweg author:grunweg |
feat(pr_summary.yml): mentioned moved files without module deprecation in the summary comment |
If a PR's diff contains files which were moved or deleted that are not module deprecations, mention these in the PR's summary comment (as an indication to reviewers).
Also add or remove a `file-removed` label if such moves without deprecations are present in the diff.
---
Tested with no, one and two files removed without deprecations: the summary comment behaved as expected.
TODOs: the label managing step fails
TODO: tweak the grep syntax, to search for `deprecated_module ` (with a space)
[](https://gitpod.io/from-referrer/)
|
CI |
44/2 |
.github/workflows/PR_summary.yml |
1 |
7 |
['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
2-81916 2 days ago |
2-81951 2 days ago |
2-81935 2 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.
---
In the future, we might want to rename `boxProd_adj` to `adj_boxProd`:
1. If we apply the basic algorithm from Std (https://github.com/leanprover/lean4/blob/master/doc/std/naming.md#naming-algorithm-for-theorems-and-some-definitions), we encounter `Adj` first, so we write it first.
2. The mathlib-specific algorithm says that most predicates should be prefixed: https://leanprover-community.github.io/contribute/naming.html#predicates-as-suffixes
3. Dot notation isn't an infix operator, although we can of course decide on a case by case basis that a specific function we are dot notating on is actually an infix.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
18/7 |
Mathlib/Combinatorics/SimpleGraph/Prod.lean |
1 |
15 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions'] |
nobody |
2-81824 2 days ago |
3-47531 3 days ago |
15-55715 15 days |
23920 |
YaelDillies author:YaelDillies |
feat: entourage-separated sets |
Define a notion of separation of a set relative to an entourage. This will be used to unify metric and dynamical separation.
From MiscYD and LeanAPAP
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
61/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/Separated.lean |
2 |
13 |
['D-Thomine', 'YaelDillies', 'b-mehta', 'github-actions'] |
nobody |
2-78162 2 days ago |
2-78162 2 days ago |
3-714 3 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 |
17 |
['Paul-Lez', 'github-actions', 'grunweg', 'peabrainiac', 'vlad902'] |
nobody |
2-74538 2 days ago |
40-32137 1 month ago |
40-32129 40 days |
21794 |
grunweg author:grunweg |
chore: import the flexible linter in Mathlib.Init |
This enables projects downstream of mathlib to enable it project-wide: previously, a file not importing this linter (as it e.g. imported only a single mathlib file not importing this linter) would fail to build because the linter option was not recognised.
Document why the remaining linters in `Mathlib.Tactic.Linter` are not enabled in `Mathlib.Init`.
Either, they are informational (like the `minImports` linter), or not ready to be used project-wide.
The `ppRoundtrip` linter arguably covers a middle ground; while it currently has too many false positives to be usable, one could conceivably also add it to Mathlib.Init. This can happen in a future PR, if there are reasons for doing so.
See [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/lake.20doesn't.20find.20option/near/499315240).
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-linter
|
11/5 |
Mathlib/Init.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean |
3 |
5 |
['fpvandoorn', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
2-48133 2 days ago |
2-48149 2 days ago |
62-45772 62 days |
22450 |
joelriou author:joelriou |
feat(CategoryTheory): left derivability structures |
Using the duality result from #22447, we dualise the notion of right derivability structure introduced in #12633 in order to formalize left derivability structures. This shall be used in order to construct left derived functors.
---
- [x] depends on: #22447
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
66/2 |
Mathlib/CategoryTheory/GuitartExact/Opposite.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/Basic.lean,Mathlib/CategoryTheory/Localization/Resolution.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
2-46583 2 days ago |
2-47173 2 days ago |
2-49443 2 days |
24003 |
eric-wieser author:eric-wieser |
refactor: mixin class for `norm_smul` with strict equality |
Define a typeclass for normed modules where the norm is exactly multiplicative (not just sub-multiplicative).
This is a subset of #23787, leaving out the change to `NormedSpace`.
---
[](https://gitpod.io/from-referrer/)
|
|
89/44 |
Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/Normed/Affine/AddTorsor.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Module/Span.lean,Mathlib/Analysis/Normed/MulAction.lean,Mathlib/Analysis/NormedSpace/Pointwise.lean,Mathlib/Dynamics/BirkhoffSum/NormedSpace.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/Topology/ContinuousMap/Compact.lean,Mathlib/Topology/MetricSpace/Holder.lean,Mathlib/Topology/MetricSpace/HolderNorm.lean,docs/overview.yaml,docs/undergrad.yaml |
14 |
6 |
['eric-wieser', 'github-actions', 'kbuzzard', 'leanprover-bot', 'loefflerd'] |
nobody |
2-45752 2 days ago |
2-45837 2 days ago |
3-19520 3 days |
23074 |
plp127 author:plp127 |
feat: `Fact (0 < 1)` and `Fact (0 ≤ 1)` |
Adds `Fact (0 < 1)` and `Fact (0 ≤ 1)`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
7/0 |
Mathlib/Algebra/Order/ZeroLEOne.lean |
1 |
7 |
['Ruben-VandeVelde', 'github-actions', 'kim-em', 'leanprover-bot', 'plp127', 'vlad902'] |
nobody |
2-45231 2 days ago |
28-83119 28 days ago |
28-83162 28 days |
24025 |
YaelDillies author:YaelDillies |
feat: the index of the scaling of a subgroup |
From FLT
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-algebra
label:t-algebra$ |
19/4 |
Mathlib/GroupTheory/Index.lean |
1 |
1 |
['github-actions'] |
nobody |
2-41617 2 days ago |
2-41662 2 days ago |
2-41662 2 days |
23581 |
YaelDillies author:YaelDillies |
feat: order isomorphisms act on flags |
This is crucial to the study of abstract polytopes. For example, a regular abstract polytope is one whose automorphism group is transitive on its flags.
From MiscYD
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/0 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Action/Flag.lean |
2 |
10 |
['YaelDillies', 'b-mehta', 'github-actions', 'vihdzp'] |
nobody |
2-37095 2 days ago |
2-37095 2 days ago |
14-38165 14 days |
23933 |
alreadydone author:alreadydone |
chore(LinearAlgebra/Dual): generalize to semirings |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
102/100 |
Archive/Sensitivity.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/LinearAlgebra/Dual/Basis.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/Finsupp/Defs.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean |
7 |
14 |
['alreadydone', 'eric-wieser', 'github-actions'] |
nobody |
2-37090 2 days ago |
5-65124 5 days ago |
5-65327 5 days |
23826 |
javra author:javra |
feat(CategoryTheory): linear categories as `ModuleCat R`-enriched categories |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
195/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/CategoryTheory/Enriched/Linear.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Monoidal/Linear.lean |
5 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
2-37007 2 days ago |
2-37018 2 days ago |
2-37001 2 days |
23584 |
mariainesdff author:mariainesdff |
chore(RingTheory/Valuation/Extension): rename IsValExtension to Valuation.IsExtension |
This change is to remove `IsValExtension` from the root namespace and to allow dot notation.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
21/15 |
Mathlib.lean,Mathlib/RingTheory/Valuation/Extension.lean |
2 |
4 |
['erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mariainesdff'] |
nobody |
2-26957 2 days ago |
2-26977 2 days ago |
11-2508 11 days |
24041 |
YuvalFilmus author:YuvalFilmus |
feat: add support for bigop binders of the form "not in" and "not equal" |
feat: add support for bigop binders of the form "not in" and "not equal"
Added two new binders which can be used with big operators (product and summation).
The first, "not in", translates into "in ... complement".
The second, "not equal to", translates to `univ.erase ...`.
Also, improved documentation in the file header.
Delaboration updates can be considered next if wanted (to be coordinated with #22048).
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
7/0 |
Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
2-18768 2 days ago |
2-20069 2 days ago |
2-20125 2 days |
23725 |
faenuccio author:faenuccio |
feat(Order/Group/Cyclic): provide basic properties of cyclic linearly ordered commutative groups |
Co-authored with @mariainesdff |
t-order
t-algebra
label:t-algebra$ |
67/0 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Cyclic.lean |
2 |
16 |
['Ruben-VandeVelde', 'erdOne', 'faenuccio', 'github-actions', 'kbuzzard'] |
nobody |
2-16769 2 days ago |
2-17999 2 days ago |
6-43479 6 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)
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
7/2 |
Mathlib/Algebra/Order/Ring/Defs.lean |
1 |
17 |
['eric-wieser', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'plp127'] |
nobody |
2-5607 2 days ago |
2-8948 2 days ago |
25-84800 25 days |
23822 |
eric-wieser author:eric-wieser |
fix: missing `noWs` in notations |
Also removed the `9000` priority, since this was probably chosen randomly, and there is no comment justifying it.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
21/5 |
Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean |
2 |
4 |
['eric-wieser', 'github-actions', 'urkud'] |
nobody |
1-85272 1 day ago |
8-32212 8 days ago |
8-32347 8 days |
24050 |
Paul-Lez author:Paul-Lez |
feat(Data/Finsupp/Pointwise): generalise pointwise scalar multiplication of finsupps |
As pointed out by @eric-wieser, this creates an instance diamond with `SMul (α → β) (α →₀ (α → β))`
---
[](https://gitpod.io/from-referrer/)
|
t-data |
3/4 |
Mathlib/Data/Finsupp/Pointwise.lean |
1 |
5 |
['Paul-Lez', 'eric-wieser', 'github-actions'] |
nobody |
1-84548 1 day ago |
1-85632 1 day ago |
1-85685 1 day |
23929 |
meithecatte author:meithecatte |
feat(Computability/NFA): improve bound on pumping lemma |
---
[](https://gitpod.io/from-referrer/)
|
t-computability
new-contributor
|
203/20 |
Mathlib/Computability/EpsilonNFA.lean,Mathlib/Computability/NFA.lean |
2 |
1 |
['github-actions'] |
nobody |
1-82351 1 day ago |
5-71461 5 days ago |
5-71514 5 days |
23596 |
YaelDillies author:YaelDillies |
feat: typeclass for subgroups of finite relative index |
This is useful to state the following:
https://github.com/ImperialCollegeLondon/FLT/blob/c51f2573c22ded973f354f56f598507b0f349f51/FLT/Mathlib/MeasureTheory/Group/Action.lean#L57-L59
namely that the Haar measure of a subgroup `H` of finite index inside a subgroup `K` is the Haar measure of `K` divided by the index.
A possible alternative would be to have some `ENat`-valued index.
From FLT
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-algebra
label:t-algebra$ |
29/14 |
Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/GroupTheory/Index.lean |
3 |
11 |
['YaelDillies', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
1-81977 1 day ago |
1-84401 1 day ago |
10-44707 10 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.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
127/63 |
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 |
29 |
['github-actions', 'grunweg', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127', 'urkud'] |
nobody |
1-77992 1 day ago |
42-76168 1 month ago |
49-75760 49 days |
24053 |
plp127 author:plp127 |
feat(Topology): Priestley spaces are totally separated |
This generalizes `PriestleySpace.toT2Space`
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
9/5 |
Mathlib/Topology/Order/Priestley.lean |
1 |
3 |
['github-actions', 'plp127', 'urkud'] |
nobody |
1-77620 1 day ago |
1-81432 1 day ago |
1-81416 1 day |
24045 |
vlad902 author:vlad902 |
chore(scripts/install_macos): Fix 2 PATH resolution issues |
A fresh local install fails with this script due to PATH resolution issues in two places.
---
[](https://gitpod.io/from-referrer/)
|
|
6/0 |
scripts/install_macos.sh |
1 |
2 |
['eric-wieser', 'github-actions'] |
nobody |
1-60685 1 day ago |
2-8808 2 days ago |
2-8792 2 days |
24066 |
urkud author:urkud |
refactor(Path): turn `Path.extend` into a `ContinuousMap` |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
44/47 |
Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/Topology/Path.lean |
2 |
1 |
['github-actions'] |
nobody |
1-50782 1 day ago |
1-50783 1 day ago |
1-50840 1 day |
24065 |
kim-em author:kim-em |
chore: script to give topological sort of modules |
This script is not useful by itself: it just gives a topological sort of Mathlib's import graph. But I've several times found it useful when I want to modify many files systematically with minimal rebuilding: just work backwards through the list.
|
|
96/0 |
scripts/README.md,scripts/topological_sort.py |
2 |
4 |
['github-actions', 'jcommelin', 'kim-em'] |
nobody |
1-46549 1 day ago |
1-57587 1 day ago |
1-57571 1 day |
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-measure-probability
t-analysis
|
124/42 |
Mathlib.lean,Mathlib/Analysis/LConvolution.lean,Mathlib/MeasureTheory/Group/Convolution.lean,Mathlib/Tactic/ToAdditive/Frontend.lean |
4 |
22 |
['DavidLedvinka', 'EtienneC30', 'github-actions', 'urkud'] |
EtienneC30 assignee:EtienneC30 |
1-41199 1 day ago |
1-41199 1 day ago |
21-62935 21 days |
24069 |
jcommelin author:jcommelin |
doc(Topology/CWComplex): cross-reference abstract and classical approaches |
* Add implementation notes to both Abstract/Basic.lean and Classical/Basic.lean
explaining the relationship between the two approaches to CW complexes
* Add TODO noting the missing connection between the approaches
* Clarify that Abstract/Basic.lean uses a categorical approach while
Classical/Basic.lean uses Whitehead's classical approach
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-topology
|
23/2 |
Mathlib/Topology/CWComplex/Abstract/Basic.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean |
2 |
3 |
['github-actions', 'grunweg'] |
nobody |
1-39855 1 day ago |
1-39856 1 day ago |
1-44826 1 day |
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`.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
257/0 |
Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/JordanSub.lean |
2 |
25 |
['DrLSimon', 'EtienneC30', 'github-actions', 'grunweg'] |
EtienneC30 assignee:EtienneC30 |
1-39364 1 day ago |
1-54451 1 day ago |
6-48554 6 days |
24049 |
YaelDillies author:YaelDillies |
refactor(ChosenFiniteProducts): don't make finite-product-preserving functors monoidal |
Instead, reprove all the theorems about finite-product-preserving functors under the appropriate `LaxMonoidal`/ `OplaxMonoidal`/`Monoidal` assumptions.
Also take the opportunity to sort the file slightly, correct docstrings and a few names.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
117/119 |
Mathlib/Algebra/Category/Grp/ChosenFiniteProducts.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/CategoryTheory/ChosenFiniteProducts.lean,Mathlib/CategoryTheory/Closed/Cartesian.lean,Mathlib/CategoryTheory/Monoidal/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean |
6 |
2 |
['YaelDillies', 'github-actions'] |
nobody |
1-36986 1 day ago |
1-36986 1 day ago |
1-36981 1 day |
23997 |
YaelDillies author:YaelDillies |
feat: `ι →₀ R` is a finite `R`-module iff `ι` is finite |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
81/42 |
Mathlib/Data/Finsupp/Single.lean,Mathlib/Data/Matrix/Rank.lean,Mathlib/LinearAlgebra/Basis/Cardinality.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Dimension/FreeAndStrongRankCondition.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/StdBasis.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean |
10 |
17 |
['YaelDillies', 'alreadydone', 'eric-wieser', 'github-actions'] |
nobody |
1-36679 1 day ago |
3-30128 3 days ago |
3-30187 3 days |
23621 |
FR-vdash-bot author:FR-vdash-bot |
chore: deprecate `LinearOrderedComm{Monoid, Group}WithZero` |
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #20676
|
t-order
t-algebra
label:t-algebra$ |
261/205 |
Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/Integral.lean,Mathlib/RingTheory/Valuation/Minpoly.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValExtension.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/UnitInterval.lean,MathlibTest/instance_diamonds.lean,scripts/noshake.json |
44 |
n/a |
['FR-vdash-bot', 'github-actions', 'grunweg', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] |
nobody |
1-33371 1 day ago |
unknown |
unknown |
22662 |
plp127 author:plp127 |
feat: Localization.Away.lift (computably) |
This PR adds `Localization.Away.lift'` and `Localization.Away.lift`, computable alternatives to `Localization.awayLift`.
---
[](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 |
1-29362 1 day ago |
40-77764 1 month ago |
40-77804 40 days |
22078 |
Louddy author:Louddy |
feat(SkewMonoidAlgebra): multiplication and algebraic instances |
# Multiplication and Algebraic Instances
In this PR, we introduce the definition of the skewed convolution product on `SkewMonoidAlgebra k G`. Here, the product of two elements `f g : SkewMonoidAlgebra k G` is the finitely supported function whose value at `a` is the sum of `f x * (x • g y)` over all pairs `x, y` such that `x * y = a`.
We also introduce the associated algebraic instances.
## Context
This is the third part of a planned series of PRs aiming to formalise skew monoid algebras.
The PRs are split to ease the review process. The moral sum of these planned PRs is #10541.
The first and second part were #15878 and #19084.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-algebra
label:t-algebra$ |
443/42 |
Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean |
1 |
38 |
['AntoineChambert-Loir', 'Louddy', 'github-actions', 'kbuzzard'] |
nobody |
1-28408 1 day ago |
8-15675 8 days ago |
44-65788 44 days |
23547 |
chrisflav author:chrisflav |
feat(AlgebraicGeometry): codescent implies descent |
Let `P` and `P'` be morphism properties of schemes. We show some results to deduce
that `P` descends along `P'` from a codescent property of ring homomorphisms.
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
260/1 |
Mathlib.lean,Mathlib/AlgebraicGeometry/Morphisms/AffineAnd.lean,Mathlib/AlgebraicGeometry/Morphisms/Descent.lean,Mathlib/RingTheory/RingHomProperties.lean |
4 |
12 |
['chrisflav', 'erdOne', 'github-actions'] |
nobody |
1-24800 1 day ago |
15-22055 15 days ago |
15-22038 15 days |
23722 |
YaelDillies author:YaelDillies |
feat(Bialgebra/MonoidAlgebra): `mapDomain` as a `BialgHom` |
From Toric
Co-authored-by: Michał Mrugała
---
[](https://gitpod.io/from-referrer/)
|
toric
maintainer-merge
t-algebra
label:t-algebra$ |
64/16 |
Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Bialgebra/MonoidAlgebra.lean |
2 |
9 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions'] |
nobody |
1-17856 1 day ago |
1-36760 1 day ago |
10-37085 10 days |
23881 |
YaelDillies author:YaelDillies |
feat: `ℝ≥0`-valued Lᵖ norm |
This is useful when inputting the Lp norm in places that expect a real number, like an exponent.
From LeanAPAP
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-measure-probability
|
228/9 |
Mathlib.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/MeasureTheory/Function/LpSeminorm/NNLpNorm.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean |
4 |
9 |
['YaelDillies', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
1-15101 1 day ago |
1-23141 1 day ago |
7-12293 7 days |
19920 |
grunweg author:grunweg |
chore(overview.yaml): mention more differential geometry items |
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
documentation
|
29/0 |
docs/overview.yaml |
1 |
5 |
['github-actions', 'grunweg', 'meithecatte'] |
nobody |
1-14117 1 day ago |
37-77329 1 month ago |
37-77309 37 days |
23964 |
BoltonBailey author:BoltonBailey |
docs: Add documentation arbitrarily |
@mattrobball asked in the Mathlib Community meeting today what it would look like if we asked Claude code to give us improved documentation. I made this draft PR by selecting five declarations arbitrarily from `nolints.json` and asking Cursor to document them.
---
[](https://gitpod.io/from-referrer/)
|
documentation |
49/1 |
Mathlib/Algebra/Homology/Homotopy.lean,Mathlib/Analysis/BoxIntegral/Partition/Filter.lean,Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Stream/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean |
5 |
8 |
['ADedecker', 'BoltonBailey', 'eric-wieser', 'github-actions', 'jcommelin', 'mattrobball'] |
nobody |
1-13124 1 day ago |
4-464 4 days ago |
4-63483 4 days |
21026 |
joelriou author:joelriou |
feat(CategoryTheory/Limits): certain multicoequalizers are pushouts |
In this file, we show that a multicoequalizer for for `I : MultispanIndex (.ofLinearOrder ι) C` is also a pushout when `ι` has exactly two elements.
---
- [x] depends on: #22203
- [x] depends on: #20988
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
95/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/MultiequalizerPullback.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
1-9402 1 day ago |
1-9409 1 day ago |
14-14026 14 days |
24082 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(Algebra/Group/End) : add MulAut.inv_apply and some simp lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
23/5 |
Mathlib/Algebra/Group/End.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean |
2 |
6 |
['AntoineChambert-Loir', 'eric-wieser', 'github-actions'] |
nobody |
1-7491 1 day ago |
1-22863 1 day ago |
1-22920 1 day |
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`.)
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
272/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/ColimitType.lean |
2 |
3 |
['AntoineChambert-Loir', 'github-actions', 'joelriou'] |
nobody |
1-6506 1 day ago |
14-11033 14 days ago |
20-80570 20 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
---
- [ ] depends on: #24071
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
158/4 |
Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/Basic.lean |
3 |
16 |
['AntoineChambert-Loir', 'Thmoas-Guan', 'eric-wieser', 'github-actions', 'kbuzzard', 'mathlib4-dependent-issues-bot'] |
nobody |
1-4960 1 day ago |
1-4963 1 day ago |
40-84971 40 days |
24023 |
robin-carlier author:robin-carlier |
feat(Data/List/Sort): ext lemma for strictly sorted lists |
Add a theorem stating that two strictly sorted lists are equal if they have the same set of elements.
---
Suggested by @joelriou in #21744.
[](https://gitpod.io/from-referrer/)
|
t-data |
5/1 |
Mathlib/Data/List/Sort.lean |
1 |
8 |
['b-mehta', 'github-actions', 'joelriou', 'robin-carlier'] |
nobody |
0-86008 23 hours ago |
2-36379 2 days ago |
2-42065 2 days |
24096 |
plp127 author:plp127 |
feat(Topology): Completely Regular Spaces are Uniformizable |
Proves that `CompletelyRegularSpace`s are uniformizable.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
158/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/Uniformizable.lean |
2 |
1 |
['github-actions'] |
nobody |
0-83618 23 hours ago |
0-83681 23 hours ago |
0-83665 23 hours |
23857 |
urkud author:urkud |
chore(Group/Pointwise/Interval): generalize some lemmas |
.. from a linear ordered field to a linear ordered semifield or a group with zero.
---
- [ ] depends on: #23901
- [ ] depends on: #23922
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
192/146 |
Mathlib/Algebra/Order/Group/Pointwise/Interval.lean |
1 |
5 |
['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
0-83500 23 hours ago |
5-16709 5 days ago |
5-52230 5 days |
23643 |
AntoineChambert-Loir author:AntoineChambert-Loir |
chore(RingTheory/MvPowerSeries/PiTopology): limit of truncation of power series |
Extract a lemma that says that for a multivariate power series, `trunc' R d f` converges to `f` when `d` converges to infinity.
Prove the analogous lemma for `MvPowerSeries.trunc` (if the set of indeterminates is nonempty).
Move this lemma and the denseness of polynomials to the `PiTopology` file.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
44/13 |
Mathlib/RingTheory/MvPowerSeries/Evaluation.lean,Mathlib/RingTheory/MvPowerSeries/PiTopology.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean |
3 |
17 |
['AntoineChambert-Loir', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky'] |
nobody |
0-83447 23 hours ago |
1-27697 1 day ago |
12-81019 12 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`.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
maintainer-merge
t-algebra
label:t-algebra$ |
209/151 |
Mathlib.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Tactic/ToAdditive/Frontend.lean |
7 |
21 |
['Ruben-VandeVelde', 'YaelDillies', 'adomani', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
0-82620 22 hours ago |
1-3830 1 day ago |
32-16242 32 days |
23951 |
apnelson1 author:apnelson1 |
feat(Matroid/Rank): more rank API |
We add some more API for matroid rank and its interactions with monotonicity, duality, finiteness and submodularity.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
186/55 |
Mathlib/Data/Matroid/Rank/ENat.lean,Mathlib/Data/Matroid/Rank/Finite.lean,scripts/noshake.json |
3 |
15 |
['apnelson1', 'b-mehta', 'github-actions'] |
b-mehta assignee:b-mehta |
0-79595 22 hours ago |
0-79595 22 hours ago |
5-3743 5 days |
24098 |
plp127 author:plp127 |
feat(Topology): R1 separation |
Adds a new lemma `r1_separation`.
---
[](https://gitpod.io/from-referrer/)
|
t-topology
easy
|
7/0 |
Mathlib/Topology/Separation/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-72541 20 hours ago |
0-72823 20 hours ago |
0-72807 20 hours |
24042 |
eric-wieser author:eric-wieser |
feat: add `ULiftable.up'` and `ULiftable.down'` |
These are handy when working with `m PUnit`
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-meta
|
10/0 |
Mathlib/Control/ULiftable.lean |
1 |
1 |
['github-actions'] |
nobody |
0-67946 18 hours ago |
2-17335 2 days ago |
2-18791 2 days |
24094 |
FR-vdash-bot author:FR-vdash-bot |
chore: remove `CanonicallyOrdered{Mul, Add}.toOrderBot` |
This will allow us to use `CanonicallyOrdered{Mul, Add}` with order typeclasses that extend `Bot`.
Co-authored-by: Peter Nelson <71660771+apnelson1@users.noreply.github.com>
---
[](https://gitpod.io/from-referrer/)
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/bot_eq_zero.20in.20complete.20lattice/with/512387701)
|
t-order
t-algebra
label:t-algebra$ |
51/29 |
Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Group/Finset.lean,Mathlib/Algebra/Order/Monoid/Canonical/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/Finset.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Order/SuccPred.lean,Mathlib/Data/DFinsupp/Interval.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finsupp/Interval.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/SetTheory/Cardinal/Order.lean |
16 |
8 |
['FR-vdash-bot', 'eric-wieser', 'github-actions', 'leanprover-bot'] |
nobody |
0-67239 18 hours ago |
0-67239 18 hours ago |
1-525 1 day |
23936 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprecate stub files left over from #20676 |
As I noted [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2320676.20unbundling.20ordered.20algebra/near/511192094):
* `Mathlib/Algebra/Order/Field/InjSurj.lean` (deprecated stuff only)
* `Mathlib/Algebra/Order/Group/InjSurj.lean` (ditto)
* `Mathlib/Algebra/Order/Group/Instances.lean` (no declarations)
* `Mathlib/Algebra/Order/Group/Prod.lean` (ditto)
* `Mathlib/Algebra/Order/Group/TypeTags.lean` (ditto) |
t-algebra label:t-algebra$ |
22/42 |
Mathlib/Algebra/Order/Field/InjSurj.lean,Mathlib/Algebra/Order/Group/InjSurj.lean,Mathlib/Algebra/Order/Group/Instances.lean,Mathlib/Algebra/Order/Group/Prod.lean,Mathlib/Algebra/Order/Group/TypeTags.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Ring/InjSurj.lean |
7 |
3 |
['Parcly-Taxel', 'github-actions', 'grunweg'] |
nobody |
0-65550 18 hours ago |
0-68886 19 hours ago |
5-50466 5 days |
23767 |
grunweg author:grunweg |
refactor: make library notes a definition |
Make library notes a definition of `Unit` type, whose doc-string is the note's content. As a consequence,
- doc-gen will display all library notes without any custom logic,
- library notes are shown upon hover (via the use of the doc-string),
- go do definition for library notes is easy
Automate this using a macro, which also enforces that all library notes are inside the Mathlib.LibraryNote namespace.
*Temporarily*, we use the `library_note2` name; if/when the batteries version is changed, we can reclaim the original name.
This PR does not address how to *refer* to library notes nicely (in a way that is shown in the documentation, checked for typos, with sufficient imports ensured etc.). That is left to a future PR.
This is proposal 2a from this [zulip discussion]([#mathlib4 > library notes @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/library.20notes/near/510614740))
------------
Open questions/TODOs:
- should this go in batteries instead? can the old definition just be overwritten?
- otherwise, what's the best place for the `LibraryNote` definition? A single file just for this feels overkill; I put it in Mathlib.Tactic.Basic for now. I could use Mathlib.Init, of course (but that might be excessive)
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-meta
|
48/48 |
Archive/Imo/Imo2019Q2.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Note.lean,Mathlib/Analysis/RCLike/Lemmas.lean,Mathlib/CategoryTheory/Category/Basic.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Logic/Basic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/NormNum/Basic.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Continuous.lean |
26 |
8 |
['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
0-60341 16 hours ago |
0-60341 16 hours ago |
9-6194 9 days |
24093 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/MvPowerSeries/NoZeroDivisors): prove order_mul |
Prove multiplicativity of order of multivariate power series
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
213/5 |
Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean |
3 |
5 |
['AntoineChambert-Loir', 'github-actions'] |
nobody |
0-49814 13 hours ago |
1-9075 1 day ago |
1-9131 1 day |
24056 |
lecopivo author:lecopivo |
feat: fun_prop for ContDiff |
Marks `ContDiff/At/On/WithinAt` with `fun_prop` and reformulates certain theorems such they work better with `fun_prop`. In particular
- `_id` and `_comp` without using `id` and `Function.comp`. It works with the normal versions but it fails once you start using `fun_prop` as discharger in `simp` as `simp` runs in reducible transparency and can't see through `id` and `Function.comp` as they are `def`
- Theorems like `ContDiff.fderiv` are formulated with `m=n+1`. `fun_prop` can't handle the metavariable `?m` when applying such theorem. The reformulation of the theorem just bumps the differentiability by one and the final differentiability is resolved with `ContDiff.of_le`. |
t-analysis
t-meta
|
378/191 |
Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/SpecialFunctions/Arsinh.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/SmoothTransition.lean,Mathlib/Analysis/SpecialFunctions/Sqrt.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp/ContDiff.lean,MathlibTest/fun_prop2.lean |
17 |
3 |
['github-actions', 'lecopivo'] |
nobody |
0-49278 13 hours ago |
1-9051 1 day ago |
1-9673 1 day |
24037 |
YaelDillies author:YaelDillies |
feat: `insert (b + 1) (Ioc a b) = Ioc a (b + 1)` |
And shorten recently introduced names for consistency
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-order
|
164/32 |
Mathlib/Algebra/Order/Interval/Finset/SuccPred.lean,Mathlib/Algebra/Order/Interval/Set/SuccPred.lean,Mathlib/Order/Interval/Finset/SuccPred.lean,Mathlib/Order/Interval/Set/SuccPred.lean |
4 |
3 |
['Ruben-VandeVelde', 'b-mehta', 'github-actions'] |
nobody |
0-45137 12 hours ago |
0-45138 12 hours ago |
2-6079 2 days |
23768 |
loefflerd author:loefflerd |
feat(Analysis/SpecialFunctions): multipliability lemmas |
Prove that in any complete normed ring, a product `∏' i, (1 + f i)` is convergent if the sum of real numbers
`∑' i, ‖f i‖` is convergent.
As part of this, move some lemmas about summability of logs out of `SpecialFunctions.Log` to `Log.Summable` and rework results in the latter file to minimize non-vanishing / positivity conditions.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
171/71 |
Mathlib/Analysis/SpecialFunctions/Complex/Log.lean,Mathlib/Analysis/SpecialFunctions/Log/Summable.lean |
2 |
12 |
['CBirkbeck', 'github-actions', 'loefflerd'] |
nobody |
0-44311 12 hours ago |
0-44311 12 hours ago |
0-44294 12 hours |
24107 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(GroupTheory/GroupAction/Basic): equivalences between stabilizers |
Define equivalence between stabilizers.
This is concurrent PR to #24039
with a diffferent syntax that fits better my later applications.
This one a `MulEquiv`from `stabilizer G a` to `stabilizer G b` associated with `g : G`
and an equality `hg : b = g · a`.
(The first commit gave the other direction, this one looks preferable.)
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
93/17 |
Mathlib/Algebra/Group/End.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean |
3 |
1 |
['github-actions'] |
nobody |
0-38321 10 hours ago |
0-46092 12 hours ago |
0-46144 12 hours |
16408 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprecate `Order.Nat` |
* Move the two `Nat` instances and `bot_eq_zero` to `Order.BoundedOrder.Basic`. We also remove the TODO relating to #13092, as it was tried and it was agreed not to be a good idea.
* Move the other two lemmas in `Order.Nat` to `Data.Nat.Find`. |
tech debt |
35/54 |
Mathlib/Algebra/IsPrimePow.lean,Mathlib/Data/Finset/Grade.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Cast/SetInterval.lean,Mathlib/Data/Nat/Find.lean,Mathlib/Data/Nat/SuccPred.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/Filter/AtTopBot/Basic.lean,Mathlib/Order/Nat.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/SetTheory/Cardinal/Order.lean |
13 |
6 |
['Parcly-Taxel', 'YaelDillies', 'github-actions', 'grunweg'] |
nobody |
0-36519 10 hours ago |
0-66375 18 hours ago |
3-15082 3 days |
24092 |
jt496 author:jt496 |
feat(Combinatorics/SimpleGraph): add IsCompleteMultipartite definition and related results |
A graph is complete multipartite if non-adjacency is transitive.
We add this definition, the associated Setoid, and the graph isomorphism to the corresponding completeMultipartiteGraph.
We also add the definition of a minimal witness to non-complete-multipartiteness: IsP2Complement.
We will need this for our proof of the Andrásfai–Erdős–Sós theorem, where the interesting case is when the graph is not complete-multipartite.
Co-authored-by: Lian Tattersall
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
153/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean |
2 |
7 |
['b-mehta', 'github-actions', 'jt496'] |
nobody |
0-36201 10 hours ago |
0-36795 10 hours ago |
0-48171 13 hours |
22039 |
YaelDillies author:YaelDillies |
feat: simproc for computing `Finset.Ixx` of natural numbers |
---
- [x] depends on: #22290
- [x] depends on: #22559
[](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 |
58 |
['FLDutchmann', 'Paul-Lez', 'YaelDillies', 'eric-wieser', 'github-actions', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
0-35801 9 hours ago |
0-35819 9 hours ago |
55-82942 55 days |
24016 |
plp127 author:plp127 |
feat: fine uniformity |
Adds the fine uniformity, and proves some properties.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
283/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/FineUniformity.lean,Mathlib/Topology/UniformSpace/Uniformizable.lean |
3 |
1 |
['github-actions'] |
nobody |
0-35304 9 hours ago |
2-71042 2 days ago |
2-71042 2 days |
23876 |
Thmoas-Guan author:Thmoas-Guan |
chore(RingTheory/Ideal): move associated prime |
Move associated prime into a folder for further developments.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
2/2 |
Mathlib.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Regular/IsSMulRegular.lean |
3 |
1 |
['github-actions'] |
nobody |
0-33194 9 hours ago |
7-14431 7 days ago |
7-14499 7 days |
23903 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): add Submodule.submoduleOf |
In this PR we added the definition `Submodule.submoduleOf` and `Submodule.submoduleOfEquivOfLe` as the corrsponding version for `Subgroup.subgroupOf`
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
17/0 |
Mathlib/Algebra/Module/Submodule/Map.lean |
1 |
2 |
['Thmoas-Guan', 'github-actions'] |
nobody |
0-33148 9 hours ago |
6-46833 6 days ago |
6-46884 6 days |
22299 |
chrisflav author:chrisflav |
chore(Order/RelSeries): induction principle for `RelSeries` |
Adds many small API lemmas for the transition between `List` and `RelSeries` and an induction principle. Currently, the induction principle is only really useful for proofs, but with a more ambitious refactor of the basic definitions, it could also be used to construct data.
Co-authored by: Sihan Su
Co-authored by: Yi Song
---
[](https://gitpod.io/from-referrer/)
|
t-order |
169/0 |
Mathlib/Data/List/Chain.lean,Mathlib/Order/RelSeries.lean |
2 |
2 |
['github-actions', 'xyzw12345'] |
nobody |
0-33115 9 hours ago |
5-67351 5 days ago |
39-82220 39 days |
23935 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory/IsSMulRegular): categorical constructions for IsSMulRegular |
The categorical constructions for `IsSMulRegular` for later use related to `Ext` in a separate file.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-category-theory
label:t-algebra$ |
58/0 |
Mathlib.lean,Mathlib/Algebra/Homology/ExactSequence.lean,Mathlib/RingTheory/Regular/Category.lean |
3 |
16 |
['Thmoas-Guan', 'github-actions', 'joelriou'] |
nobody |
0-32954 9 hours ago |
2-43792 2 days ago |
2-83223 2 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].
---
[](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 |
21 |
['Champitoad', 'github-actions', 'joelriou'] |
nobody |
0-32406 9 hours ago |
14-18147 14 days ago |
28-38150 28 days |
24036 |
Louddy author:Louddy |
feat: add `HeightOneSpectrum.ofPrime` |
Add a definition relating elements of type `HeightOneSpectrum R` with the (nonzero) prime elements of the monoid with zero `Ideal R`. (Note the distinction between `Prime` and `Ideal.IsPrime`).
The documentation string is inspired from [Ideal.prime_iff_isPrime](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/DedekindDomain/Ideal.html#Ideal.prime_iff_isPrime).
This was discussed [#mathlib4 > Placing a definition in `DedekindDomain.Ideal` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Placing.20a.20definition.20in.20.60DedekindDomain.2EIdeal.60/near/511647129).
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
11/1 |
Mathlib/RingTheory/DedekindDomain/Ideal.lean |
1 |
5 |
['Louddy', 'Ruben-VandeVelde', 'github-actions'] |
nobody |
0-30922 8 hours ago |
2-29860 2 days ago |
2-29915 2 days |
24114 |
xroblot author:xroblot |
feat(FieldTheory): add the class `IsQuadraticExtension` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
49/0 |
Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/LinearAlgebra/Dimension/Finrank.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean |
5 |
1 |
['github-actions'] |
nobody |
0-19879 5 hours ago |
0-19890 5 hours ago |
0-19955 5 hours |
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
[](https://gitpod.io/from-referrer/)
|
t-topology
t-category-theory
|
159/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean |
2 |
14 |
['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'robin-carlier'] |
nobody |
0-18502 5 hours ago |
0-18506 5 hours ago |
50-21613 50 days |
23955 |
Louddy author:Louddy |
feat: Ideal.count_associates_eq |
Add variant of `UniqueFactorizationMonoid.count_normalizedFactors_eq` for associated Ideals.
This is convenient when you need to talk about an element as `a₀ = x ^ n * a`.
Note the file is slightly over the 1500 lines limit, I hope that is ok.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
35/1 |
Mathlib/RingTheory/DedekindDomain/Ideal.lean |
1 |
5 |
['Louddy', 'Ruben-VandeVelde', 'alreadydone', 'github-actions'] |
nobody |
0-18371 5 hours ago |
5-15925 5 days ago |
5-15982 5 days |
23542 |
kbuzzard author:kbuzzard |
chore(RingTheory/DedekindDomain/FiniteAdeleRing): refactor finite adeles |
Now we have a general theory of restricted products, we can refactor mathlib's finite adele file, removing the auxiliary results which are unused outside this file and replacing everything with much slicker proofs. Crucially, we also have a far more conceptual definition of the topology on the finite adele ring -- this is the big win. The motivation for this refactor is that the FLT project needs many more results about finite adeles (for example local compactness in the number field case) and this will be very easy to prove with this new definition (using `RestrictedProduct.locallyCompactSpace_of_addGroup`), whereas it took an entire project https://github.com/smmercuri/adele-ring_locally-compact with our current approach.
---
[](https://gitpod.io/from-referrer/)
The diff should not be taken too seriously: the file is rewritten from scratch and is a quarter the size.
I have no idea what to do about deprecations here. I have removed several results (and two definitions) because we don't want them, they were just auxiliary results needed in the old proof of `IsTopologicalRing` and were not used anywhere else; after Anatole's complete rethink of the topology he gets this result for free so my proposal pretty clearly is just to nuke the old results and constructions, while keeping the key constructions (namely the structure of topological ring). The key deletions are `FiniteIntegralAdeles` (which we can still have as `∀ v : HeightOneSpectrum R, v.adicCompletionIntegers K`) and `ProdAdicCompletions` (an auxiliary construction, which we can still have as `∀ v : HeightOneSpectrum R, v.adicCompletion K`). These auxiliary definitions were also used a little in the FLT project; https://github.com/ImperialCollegeLondon/FLT/pull/399 is the accompanying PR which is waiting on this. |
t-algebra
t-number-theory
label:t-algebra$ |
86/409 |
Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/RestrictedProduct.lean |
2 |
15 |
['ADedecker', 'Ruben-VandeVelde', 'github-actions', 'kbuzzard', 'mariainesdff', 'smmercuri'] |
nobody |
0-18014 5 hours ago |
14-30036 14 days ago |
15-24899 15 days |
22779 |
xroblot author:xroblot |
feat(NumberField/CanonicalEmbedding/NormLeOne): prove that the frontier of `normLeOne` has zero-volume |
This is the last PR about `normLeOne K`.
We prove that it is a bounded set and that its frontier has volume zero.
This PR is part of the proof of the Analytic Class Number Formula.
---
- [x] depends on: #22777
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
214/1 |
Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-18013 5 hours ago |
0-18171 5 hours ago |
0-18571 5 hours |
24104 |
dwrensha author:dwrensha |
feat: add the strict triangle inequality for AffineIndependent points |
See [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/strict.20triangle.20inequality.20in.20Euclidean.20space/near/512427539).
Co-authored-by: Eric Wieser
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
21/0 |
Mathlib/Analysis/Convex/StrictConvexBetween.lean |
1 |
4 |
['eric-wieser', 'fpvandoorn', 'github-actions'] |
nobody |
0-14748 4 hours ago |
0-67022 18 hours ago |
0-67074 18 hours |
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.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
95/24 |
Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean |
2 |
16 |
['IvanRenison', 'b-mehta', 'github-actions', 'plp127'] |
b-mehta assignee:b-mehta |
0-14478 4 hours ago |
20-10030 20 days ago |
33-28172 33 days |
23760 |
xroblot author:xroblot |
feat(NumberField/IsCM): define the `maximalRealSubfield` of a number field |
Define the `maximalRealSubfield` of a number field. It is a totally real subfield that contains all other totally real subfields.
Add also a couple of instances about the fact that subfields of a totally real field are totally real.
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
83/1 |
Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/NumberTheory/NumberField/CMField.Lean,Mathlib/NumberTheory/NumberField/Embeddings.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
0-13763 3 hours ago |
0-13764 3 hours ago |
0-14782 4 hours |
24115 |
alreadydone author:alreadydone |
chore: automatically additivize IsScalarTower |
Also add a few missing instances in GroupTheory/GroupAction/SubMulAction.lean.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
27/25 |
Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Pi.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Order/Group/Action/Synonym.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Topology/Algebra/SeparationQuotient/Basic.lean,Mathlib/Topology/Algebra/UniformMulAction.lean |
12 |
8 |
['alreadydone', 'eric-wieser', 'github-actions', 'leanprover-bot'] |
nobody |
0-3409 56 minutes ago |
0-16115 4 hours ago |
0-16113 4 hours |
24125 |
mattrobball author:mattrobball |
chore(Topology.Algebra.Valued.WithVal): clean up typeclass assumptions |
Currently `WithVal.instCommRing` has `Ring R` and `CommRing R` both in the context resulting in `Valuation` using the `Ring R` instance the statement and the `CommRing R` instance for the body after unwrapping `WithVal`. Other wrapper instances are fixed similarly.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
30/24 |
Mathlib/Topology/Algebra/Valued/WithVal.lean |
1 |
1 |
['github-actions'] |
nobody |
0-2618 43 minutes ago |
0-2836 47 minutes ago |
0-2895 48 minutes |
24119 |
alreadydone author:alreadydone |
feat: preliminaries for Wedderburn–Artin |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
212/116 |
Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/Equiv/TransferInstance.lean,Mathlib/Algebra/Lie/Semisimple/Basic.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Logic/Equiv/Defs.lean,Mathlib/Order/Atoms.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Ideal/Defs.lean,Mathlib/RingTheory/Jacobson/Ideal.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,Mathlib/RingTheory/Nullstellensatz.lean,Mathlib/RingTheory/SimpleRing/Congr.lean,Mathlib/RingTheory/SimpleRing/Defs.lean,Mathlib/RingTheory/TwoSidedIdeal/Operations.lean,Mathlib/RingTheory/Unramified/Field.lean |
24 |
1 |
['github-actions'] |
nobody |
0-2452 40 minutes ago |
0-9531 2 hours ago |
0-9521 2 hours |
23974 |
fbarroero author:fbarroero |
fix: change file name for consistency |
We change the name of the file
`Mathlib.Algebra.Polynomial.ofFn`
to
`Mathlib.Algebra.Polynomial.OfFn`
for consistency.
---
[](https://gitpod.io/from-referrer/)
|
easy |
1/1 |
Mathlib.lean,Mathlib/Algebra/Polynomial/OfFn.lean |
2 |
1 |
['github-actions'] |
nobody |
0-1171 19 minutes ago |
0-31125 8 hours ago |
4-20375 4 days |