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 |
24266 |
plp127 author:plp127 |
feat(Order): `NoBotOrder α` implies `NoMinOrder α` under `IsDirected α (· ≥ ·)` |
Proves that `NoBotOrder α` implies `NoMinOrder α` under `IsDirected α (· ≥ ·)`, and also the dual theorem.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
14/0 |
Mathlib/Order/Directed.lean |
1 |
4 |
['github-actions', 'plp127', 'urkud'] |
nobody |
84-74210 2 months ago |
95-85591 3 months ago |
95-85573 95 days |
22231 |
pechersky author:pechersky |
feat(Algebra/Valued): `AdicExpansion` initial defns |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
label:t-algebra$ |
299/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean |
2 |
2 |
['Thmoas-Guan', 'github-actions'] |
nobody |
83-70969 2 months ago |
152-72611 5 months ago |
152-72734 152 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 |
6 |
['bryangingechen', 'github-actions', 'grunweg'] |
robertylewis assignee:robertylewis |
79-57907 2 months ago |
144-22152 4 months ago |
144-22139 144 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
t-algebra
t-topology
label:t-algebra$ |
138/3 |
Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Topology/Algebra/LinearTopology.lean |
2 |
21 |
['ADedecker', 'AntoineChambert-Loir', 'erdOne', 'github-actions', 'grunweg'] |
ADedecker and AntoineChambert-Loir assignee:AntoineChambert-Loir assignee:ADedecker |
79-37379 2 months ago |
100-9823 3 months ago |
110-58638 110 days |
23238 |
YaelDillies author:YaelDillies |
feat: extended floor and ceil |
My motivation for this is to prove `ENat.toENNReal (⨆ i, f i) = ⨆ i, ENat.toENNReal (f i)` and `ENat.toENNReal (⨅ i, f i) = ⨅ i, ENat.toENNReal (f i)`. Kalle Kytölä independently needs this for his formalisation of statistical physics.
From MiscYD
---
- [x] depends on: #24781
- [x] depends on: #24782
See #15269 for a past attempt.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
235/0 |
Mathlib.lean,Mathlib/Algebra/Order/Floor/Extended.lean |
2 |
24 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'kkytola', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
76-12543 2 months ago |
76-18494 2 months ago |
123-70713 123 days |
24184 |
YaelDillies author:YaelDillies |
feat: `[G : H]` notation for the index of `H : Subgroup G` |
This is a cute notation which I wrote for FLT. Not sure whether we want it in mathlib nor how to include `relindex` in the picture.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
RFC
label:t-algebra$ |
5/0 |
Mathlib/GroupTheory/Index.lean |
1 |
7 |
['YaelDillies', 'erdOne', 'github-actions', 'j-loreaux', 'kbuzzard'] |
nobody |
75-68936 2 months ago |
75-68936 2 months ago |
99-6654 99 days |
24829 |
urkud author:urkud |
fix(Topology/Homotopy): fix name&args order of `comp` |
`ContinuousMap.Homotopy.hcomp` used name & arguments order
that matches Mathlib's category theory conventions,
not topology conventions.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
30/19 |
Mathlib/Topology/Homotopy/Basic.lean,Mathlib/Topology/Homotopy/Contractible.lean,Mathlib/Topology/Homotopy/Equiv.lean,Mathlib/Topology/Homotopy/Lifting.lean |
4 |
5 |
['github-actions', 'grunweg', 'urkud'] |
nobody |
74-59051 2 months ago |
74-67691 2 months ago |
74-67743 74 days |
24752 |
MichaelStollBayreuth author:MichaelStollBayreuth |
perf(Data.Real.Sqrt): make Real.sqrt irreducible |
We try to see what happens if we make `Real.sqrt` irreducible.
There are cases where this makes unification *very* significantly faster, compare [#mathlib4 > Coercion triggers timeout @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Coercion.20triggers.20timeout/near/517177117).
---
[](https://gitpod.io/from-referrer/)
|
t-data |
1/0 |
Mathlib/Data/Real/Sqrt.lean |
1 |
18 |
['MichaelStollBayreuth', 'eric-wieser', 'github-actions', 'leanprover-bot'] |
nobody |
74-14978 2 months ago |
76-28300 2 months ago |
76-33775 76 days |
24870 |
smmercuri author:smmercuri |
feat: `Field`, `FiniteDimensional` and `Algebra.IsSeparable` instances for `WithAbs` |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-analysis
|
14/1 |
Mathlib/Analysis/Normed/Field/WithAbs.lean |
1 |
1 |
['github-actions'] |
nobody |
73-60433 2 months ago |
73-60440 2 months ago |
73-60582 73 days |
24889 |
Kha author:Kha |
chore: do not include cache requests in build benchmark |
|
|
5/2 |
scripts/bench/temci-config.run.yml |
1 |
4 |
['Kha', 'github-actions', 'leanprover-bot'] |
nobody |
73-40426 2 months ago |
73-50261 2 months ago |
73-50242 73 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/)
|
file-removed
t-algebra
label:t-algebra$ |
20/47 |
Mathlib.lean,Mathlib/Algebra/GCDMonoid/Nat.lean,Mathlib/Algebra/Group/Int/Units.lean,Mathlib/Algebra/Order/Ring/Abs.lean,Mathlib/Algebra/Ring/Int/Units.lean,Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Data/Fintype/Units.lean,Mathlib/Data/Int/AbsoluteValue.lean,Mathlib/Data/Int/Associated.lean,Mathlib/GroupTheory/HNNExtension.lean,Mathlib/NumberTheory/NumberField/Basic.lean,MathlibTest/Zify.lean |
12 |
15 |
['YaelDillies', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors'] |
nobody |
73-35324 2 months ago |
73-35324 2 months ago |
158-8358 158 days |
24891 |
YaelDillies author:YaelDillies |
feat: `M ≃ₗ[R] (Fin (Module.finrank R M) → R)` for `M` a finite `R`-module |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
13/3 |
Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean,Mathlib/LinearAlgebra/FreeModule/Finite/Basic.lean |
3 |
9 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions'] |
nobody |
72-22428 2 months ago |
73-32259 2 months ago |
73-49179 73 days |
24533 |
robertmaxton42 author:robertmaxton42 |
feat (ULift): conjugation by ULift.up/down, misc cast/heq lemmas |
* Adds the convenience def `ULift.conj x := `down (f (up x))`, and corresponding basic lemmas
* Adds lemmas showing that `ULift.up` and `.down` commute with casts and preserve `HEq`.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
31/0 |
Mathlib/Data/ULift.lean |
1 |
14 |
['eric-wieser', 'github-actions', 'robertmaxton42'] |
nobody |
69-50004 2 months ago |
85-49644 2 months ago |
85-57557 85 days |
22300 |
chrisflav author:chrisflav |
feat(RingTheory/GoingDown): lift `LTSeries` of primes |
Inductive version of `Ideal.exists_ideal_lt_liesOver_of_lt`.
Co-authored by: Sihan Su
Co-authored by: Yi Song
---
- [x] depends on: #22299
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/0 |
Mathlib/RingTheory/Ideal/GoingDown.lean |
1 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
68-20800 2 months ago |
68-20924 2 months ago |
68-24387 68 days |
25044 |
alreadydone author:alreadydone |
feat(Topology/Algebra): `Homeomorph` version of `unitsEquivNeZero` |
also add `Topology.IsEmbedding.homeomorphImage`: a set is homeomorphic to its image under any embedding.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
label:t-algebra$ |
51/28 |
Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Homeomorph/Lemmas.lean |
2 |
1 |
['github-actions'] |
nobody |
67-39203 2 months ago |
67-43458 2 months ago |
67-43440 67 days |
24333 |
xcloudyunx author:xcloudyunx |
feat(Combinatorics/SimpleGraph): cycle graph implementation for generic vertex types |
The existing `cycleGraph` implementation under Combinatorics/SimpleGraph/Circulant.lean only operates over `Fin n`. This PR implements a cycle graph implementation over any generic vertex type.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
187/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean |
2 |
29 |
['IvanRenison', 'github-actions'] |
kmill assignee:kmill |
65-79421 2 months ago |
93-76978 3 months ago |
93-77030 93 days |
25123 |
eric-wieser author:eric-wieser |
feat: add rfl lemmas for monoidal categories |
Making these `simp` opens a can of worms best left to #24823
`simps` would generate bad names here.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
111/0 |
Mathlib/Algebra/Category/AlgCat/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Monoidal.lean |
3 |
1 |
['github-actions'] |
nobody |
64-79228 2 months ago |
64-79228 2 months ago |
64-79280 64 days |
24528 |
chrisflav author:chrisflav |
feat(AlgebraicGeometry): directed covers |
Directed covers are covers, where every intersection can be covered by a component of the cover. For open covers this is equivalent to the images forming a basis of the topology.
If a cover is directed, the compatibility conditions for gluing become easier, because only compatibility with the transition maps needs to be checked.
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
233/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/Cover/Directed.lean |
2 |
6 |
['chrisflav', 'erdOne', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant'] |
nobody |
64-36694 2 months ago |
64-36761 2 months ago |
81-21783 81 days |
25069 |
erdOne author:erdOne |
feat(EllipticCurve): rational points of singular nodal cubics |
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
251/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Node.lean |
3 |
11 |
['Multramate', 'acmepjz', 'erdOne', 'github-actions'] |
nobody |
64-28034 2 months ago |
66-74936 2 months ago |
66-74992 66 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 |
7/4 |
Mathlib/Data/Finsupp/Pointwise.lean |
1 |
6 |
['Paul-Lez', 'eric-wieser', 'github-actions'] |
nobody |
61-21713 2 months ago |
103-10011 3 months ago |
103-10061 103 days |
25070 |
erdOne author:erdOne |
feat(EllipticCurve): rational points on singular cuspidal cubics |
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
123/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Cusp.lean |
2 |
9 |
['Multramate', 'acmepjz', 'erdOne', 'github-actions', 'kckennylau'] |
nobody |
61-12168 2 months ago |
66-74969 2 months ago |
66-74965 66 days |
25225 |
xcloudyunx author:xcloudyunx |
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
16/0 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean |
1 |
3 |
['IvanRenison', 'github-actions'] |
nobody |
60-7851 1 month ago |
60-85663 1 month ago |
60-85718 60 days |
25153 |
eric-wieser author:eric-wieser |
feat(Algebra/ModEq): a lemma about `[PMOD (n • p)]` |
This ultimately didn't end up very useful to me, but I think it's still a nice result.
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
20/0 |
Mathlib/Algebra/ModEq.lean |
1 |
3 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
59-59441 1 month ago |
63-25180 2 months ago |
63-25162 63 days |
24804 |
Moises-Herradon-Cueto author:Moises-Herradon-Cueto |
feat(CategoryTheory/Limits/Preserves/Shapes): show that if a functor preserves limits, so does `Over.post` |
If a functor `F` preserves limits (of a certain shape, finite, or of a certain size), then so does the induced functor on `Over` categories.
From Toric
Co-authored-by: Yaël Dillies
---
[](https://gitpod.io/from-referrer/)
|
toric
new-contributor
t-category-theory
|
125/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Over.lean,Mathlib/CategoryTheory/WithTerminal/Basic.lean |
3 |
17 |
['Moises-Herradon-Cueto', 'YaelDillies', 'erdOne', 'github-actions', 'joelriou'] |
nobody |
59-54119 1 month ago |
60-30061 1 month ago |
66-34455 66 days |
24095 |
lecopivo author:lecopivo |
feat: `fun_prop` for Is(Bounded)LinearMap + notation `fun x ↦L[R] f x` |
Sets up `fun_prop` for `IsLinearMap` and `IsBoundedLinearMap` also adds notation `fun x ↦ₗ[R] f x` and `fun x ↦L[R] f x` to write bundled versions like lambda function instead of the currently used pointfree notation. |
large-import
t-algebra
label:t-algebra$ |
352/22 |
Mathlib.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LinearMap/Pi.lean,Mathlib/Algebra/Module/LinearMap/Prod.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,scripts/noshake.json |
8 |
22 |
['eric-wieser', 'github-actions', 'lecopivo'] |
nobody |
58-18230 1 month ago |
58-18230 1 month ago |
58-36613 58 days |
25343 |
plp127 author:plp127 |
docs(Topology/Perfect): Mention dense-in-itself |
The file `Mathlib/Topology/Perfect` defines a "nonstandard" predicate `Preperfect C` to mean that every point of `C` is an accumulation point of `C`. This property already has a name, it is called [dense-in-itself](https://en.wikipedia.org/wiki/Dense-in-itself). This PR adds this name to the docs.
---
[](https://gitpod.io/from-referrer/)
|
t-topology
documentation
|
7/7 |
Mathlib/Topology/Perfect.lean |
1 |
1 |
['github-actions'] |
nobody |
55-38456 1 month ago |
55-38534 1 month ago |
55-38517 55 days |
25337 |
alreadydone author:alreadydone |
feat(RingTheory): invertible modules and Picard group |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
535/0 |
Mathlib.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/PicardGroup.lean,docs/references.bib |
4 |
37 |
['alreadydone', 'erdOne', 'github-actions', 'kckennylau'] |
nobody |
54-73293 1 month ago |
55-83015 1 month ago |
55-83004 55 days |
25401 |
digama0 author:digama0 |
feat(Util): SuppressSorry option |
See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
342/0 |
Mathlib.lean,Mathlib/Util/CommandElabHook.lean,Mathlib/Util/SuppressSorry.lean,MathlibTest/suppressSorry.lean |
4 |
13 |
['digama0', 'eric-wieser', 'github-actions'] |
nobody |
51-79286 1 month ago |
52-17220 1 month ago |
53-27568 53 days |
25453 |
JovanGerb author:JovanGerb |
perf(Algebra/Homology/HomotopyCategory): use explicit universe parameter in `Category` |
As we have seen before, writing `Category.{v}` instead of `Category` avoids a nasty universe level metavariable, and this helps to speed up unification. The changes in this PR are somewhat arbitrary, but it serves as an example for this principle.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
9/6 |
Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCone.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean |
3 |
5 |
['JovanGerb', 'github-actions', 'leanprover-bot'] |
nobody |
51-43874 1 month ago |
52-11522 1 month ago |
52-11574 52 days |
25481 |
kbuzzard author:kbuzzard |
chore: refactor Algebra.TensorProduct.rightAlgebra |
The declaration `Algebra.TensorProduct.rightAlgebra` makes `A ⊗[R] B` into a `B`-algebra (here `R` is a `CommSemiring`, `A` is a `Semiring` and an `R`-algebra, and `B` is a `CommSemiring` and an `R`-algebra). It is not an instance because if A = B it causes a diamond. However in the many cases where A isn't B, it can occasionally be useful.
However one could imagine that in the many cases where an R-module `M` also isn't `B`, it might occasionally be useful to make `M ⊗[R] B` into a `B`-module (and indeed I am finding this in FLT). With the current definition of `Algebra.TensorProduct.rightAlgebra` this is difficult to do without causing diamonds in the case when `M` happens to be an `R`-algebra (by which I mean "I failed to do this in finite time").
One fix for this is just to redefine `Algebra.TensorProduct.rightAlgebra` so that the `smul` field is
```
smul b ab := TensorProduct.comm _ _ _ (b • (TensorProduct.comm _ _ _ ab))
```
i.e. literally "swap the product around, use mathlib's instance making `B ⊗[R] A` into a `B`-algebra, and then swap back". Then the same definition can be used to make `M ⊗[R] B` into a `B`-module and on the odd occasion where this point of view is useful, there is no diamond. This is what we do in this PR. After adding one simp lemma there is no breakage at all in mathlib. Furthermore, for those who have observed that we want to build on this algebra instance sometimes and, for example, add instances of the form "if M is finite over R then M ⊗[R] B is finite over B" -- these instances are really easy to add now with this new definition, because you simply pull back the analogous finite left module instance along the isomorphism M ⊗[R] B = B ⊗[R] M. Examples (from FLT, where the right action is put in a scope):
```
scoped instance [Module.Finite R M] : Module.Finite A (M ⊗[R] A) :=
Module.Finite.equiv (Module.TensorProduct.comm R A M)
scoped instance [Module.Free R M] : Module.Free A (M ⊗[R] A) :=
Module.Free.of_equiv (Module.TensorProduct.comm R A M)
```
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
33/6 |
Mathlib/RingTheory/TensorProduct/Basic.lean |
1 |
4 |
['github-actions', 'kbuzzard', 'leanprover-bot'] |
nobody |
48-54891 1 month ago |
51-34438 1 month ago |
51-34694 51 days |
24850 |
pechersky author:pechersky |
feat(Topology/UniformSpace/Ultra): uniform spaces induced by pseudometrics are ultra if system is ultra |
Any uniform space has a natural system of pseudometrics definable on it,
comprised of those pseudometrics constructed from a descending chain of
equivalence relation entourages. In a nonarchimedean uniformity, this pseudometric system
induces the uniformity.
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #23111 |
t-topology |
509/1 |
Mathlib.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Ultra/Pseudometrizable.lean |
3 |
8 |
['ADedecker', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'pechersky'] |
nobody |
46-67145 1 month ago |
46-67208 1 month ago |
62-12744 62 days |
25760 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Bicategory): (2,1)-categories and `Pith` |
This PR introduces a class `IsLocallyGroupoid` on bicategories, asserting that every hom-category has an `IsGroupoid` instance.
With this definition, `IsLocallyGroupoid (LocallyDiscrete C)` is correctly inferred.
Given a bicategory `B`, we introduce a type alias `Pith B` for `B` (realized as a one-field structure), and we equip it with a `Bicategory` instance where the hom-categories are the cores of the hom-categories of `B`. We show that this bicategory is a (2,1)-category, construct an inclusion pseudo-functor from `Pith B` to `B`, and show that every pseudofunctor from a (2,1)-category to `B` factors through this inclusion.
---
We can’t fully state the fact that `(pseudofunctorToPith F).comp (inclusion F)` "is" `F` because #18254 is still not merged.
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #25150.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/25150* |
t-category-theory |
191/0 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/LocallyGroupoid.lean |
2 |
1 |
['github-actions'] |
nobody |
44-51595 1 month ago |
44-51668 1 month ago |
44-51652 44 days |
25736 |
robin-carlier author:robin-carlier |
feat(AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms): Normal forms for `P_σ`s |
We prove that admissible lists indeed provide a normal form for morphisms of satisfying `P_σ`.
To this end, we introduce `standardσ`, a construction that takes a list and turn it into a composition of `σ i`s in `SimplexCategoryGenRel`. We then prove that, thangs to the fifth simplicial identity, composition on the right corresponds to simplicial insertion in the list. This gives existence of a normal form for every morphism satisfying `P_σ`.
For unicity, we introduce an auxiliary function `simplicialEvalσ : (List ℕ) → ℕ → ℕ` and show that for admissible lists, it lifts to `ℕ` the `orderHom` attached to `toSimplexCategory.map standardσ`, and that we can recover elements of the list only by looking at values of this function.
Part of a series of PR formalising that `SimplexCategoryGenRel` is equivalent to `SimplexCategory`.
---
- [x] depends on: #21744
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #21745.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/21745* |
large-import
t-topology
t-category-theory
|
253/7 |
Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
44-47168 1 month ago |
44-56858 1 month ago |
44-56845 44 days |
25795 |
dagurtomas author:dagurtomas |
chore(Condensed): introduce an abbrev for the equivalence of light condensed sets with a category of sheaves on a small site |
---
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24522.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24522* |
t-condensed |
39/0 |
Mathlib.lean,Mathlib/Condensed/Light/Small.lean |
2 |
1 |
['github-actions'] |
nobody |
44-45053 1 month ago |
44-45118 1 month ago |
44-45102 44 days |
25804 |
erdOne author:erdOne |
feat: `∑ z ∈ L, ‖z - x‖⁻ʳ` converges for lattices `L` |
---
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #21673.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/21673* |
t-analysis |
319/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Disjoint.lean,Mathlib/Algebra/Module/ZLattice/Summable.lean,Mathlib/Order/Disjointed.lean |
4 |
1 |
['github-actions'] |
nobody |
44-35629 1 month ago |
44-42328 1 month ago |
44-42312 44 days |
25788 |
Parcly-Taxel author:Parcly-Taxel |
feat: number of edges in the Turán graph |
We provide two theorems, the first `card_edgeFinset_turanGraph` providing the exact number of edges and the other `card_edgeFinset_turanGraph_le` providing a (slightly) looser bound whose main advantage is its lack of integer division/modulus operations.
The bound in `card_edgeFinset_turanGraph_le` is also the bound provided in [Motzkin and Straus (1965)](https://doi.org/10.4153%2FCJM-1965-053-6). |
large-import
t-combinatorics
|
132/0 |
Mathlib/Combinatorics/SimpleGraph/Turan.lean,Mathlib/Data/Nat/ModEq.lean |
2 |
2 |
['YaelDillies', 'github-actions'] |
nobody |
44-34131 1 month ago |
44-47084 1 month ago |
44-47070 44 days |
25724 |
bryangingechen author:bryangingechen |
chore: disable scheduled runs of stale issues workflow |
There's no point in having this run on schedule while it's still in limbo.
---
This also seems to have been [completely broken](https://github.com/leanprover-community/mathlib4/actions/workflows/stale.yml) since #21681, since the search string is too long. Maybe we should just delete this. |
CI |
1/2 |
.github/workflows/stale.yml |
1 |
1 |
['github-actions'] |
nobody |
44-32426 1 month ago |
44-69295 1 month ago |
44-69278 44 days |
25829 |
kbuzzard author:kbuzzard |
feat: add mulEquivHaarChar |
API for the positive real factor by which an continuous multiplicative equivalence scales a regular Haar measure on a locally compact topological group.
From FLT.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
158/0 |
Mathlib.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Measure/Haar/MulEquivHaarChar.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean |
4 |
1 |
['github-actions'] |
nobody |
43-85236 1 month ago |
43-86200 1 month ago |
43-86245 43 days |
25836 |
jt496 author:jt496 |
feat(SimpleGraph/FiveWheelLike): add the Andrásfai-Erdős-Sós theorem |
Add the Andrásfai-Erdős-Sós theorem `colorable_of_cliqueFree_lt_minDegree` which says that an `r + 1`-cliquefree graph `G` with sufficiently large minimum degree is `r`-colorable.
Co-authored-by: Lian Bremner Tattersall
---
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #25313.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/25313* |
large-import
t-combinatorics
|
307/4 |
Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean |
1 |
1 |
['github-actions'] |
nobody |
43-48740 1 month ago |
43-49589 1 month ago |
43-49576 43 days |
25842 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): define turanDensity |
Define the Turán density `turanDensity H` of a simple graph `H`: `turanDensity H` is the limit of `extremalNumber n H / n.choose 2` as `n` approaches `∞`.
Also prove
- the Turán density of a simple graph is well-defined, that is, the limit `extremalNumber n H / n.choose 2` as `n` approaches `∞` exists,
- `extremalNumber n H` is asymptotically equivalent to `turanDensity H * n.choose 2` as `n` approaches `∞`.
---
- [x] depends on: #19865
- [x] depends on: #20681
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #20171.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/20171* |
t-combinatorics |
210/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/TuranDensity.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Order/Monotone/Basic.lean |
6 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
b-mehta assignee:b-mehta |
43-29393 1 month ago |
43-29393 1 month ago |
43-34527 43 days |
25680 |
kim-em author:kim-em |
chore: remove some `Nat` shortcut instances |
This PR continues the work from #24928.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24928 |
|
0/9 |
Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/Data/List/TakeDrop.lean,Mathlib/Data/Nat/Basic.lean |
3 |
10 |
['b-mehta', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mattrobball'] |
nobody |
43-28742 1 month ago |
45-84253 1 month ago |
45-84235 45 days |
25966 |
b-reinke author:b-reinke |
feat(GroupTheory/FreeGroup/ReducedWords): add theory of reduced words |
This PR continues the work from #23368.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23368 |
t-algebra label:t-algebra$ |
104/0 |
Mathlib.lean,Mathlib/GroupTheory/FreeGroup/ReducedWords.lean |
2 |
2 |
['b-reinke', 'github-actions'] |
nobody |
40-26873 1 month ago |
40-26883 1 month ago |
40-26932 40 days |
26009 |
linesthatinterlace author:linesthatinterlace |
feat: Add `Vector`/`List.Vector` equivalence |
This PR continues the work from #25050.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25050 |
migrated-from-branch |
125/17 |
Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Defs.lean,Mathlib/Logic/Equiv/Array.lean |
3 |
2 |
['github-actions', 'linesthatinterlace'] |
nobody |
39-47953 1 month ago |
39-47953 1 month ago |
39-50479 39 days |
26054 |
FMLJohn author:FMLJohn |
feat(RingTheory/GradedAlgebra/Homogeneous/Subsemiring): homogeneous subsemirings of a graded semiring |
---
[](https://gitpod.io/from-referrer/)
In this pull request, we have defined homogeneous subsemirings of `GradedRing 𝒜` where `𝒜 : ι → σ`, `SetLike σ A` and `AddSubmonoidClass σ A`.
## Main definitions
For any `R : Subsemiring A`:
* `Subsemiring.IsHomogeneous 𝒜 R`: The property that a subsemiring is closed under `GradedRing.proj`.
* `HomogeneousSubsemiring 𝒜`: The structure extending subsemirings which satisfy `Subsemiring.IsHomogeneous`. |
t-algebra label:t-algebra$ |
120/0 |
Mathlib.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Subsemiring.lean |
2 |
1 |
['github-actions'] |
nobody |
39-16579 1 month ago |
39-17551 1 month ago |
39-17535 39 days |
26076 |
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`.
---
This PR continues the work from #21103.
Original PR: https://github.com/leanprover-community/mathlib4/pull/21103 |
t-topology |
118/5 |
Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean |
2 |
2 |
['github-actions', 'joelriou'] |
nobody |
38-50085 1 month ago |
38-50096 1 month ago |
38-50143 38 days |
25183 |
YaelDillies author:YaelDillies |
feat: convolution product on linear maps from a coalgebra to an algebra |
Construct the ring structure on linear maps `C → A` where `C` is a coalgebra and `A` an algebra, where multiplication is given by
`(f * g)(x) = ∑ f x₍₁₎ * g x₍₂₎` in Sweedler notation or
```
|
μ
| | / \
f * g = f g
| | \ /
δ
|
```
diagrammatically, where `μ` stands for multiplication and `δ` for comultiplication.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.60Mul.60.20instance.20on.20algebra.20homomorphisms.20from.20monoid.20algebra)
From Toric
Co-authored-by: Michał Mrugała
Co-authored-by: Yunzhou Xie
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
137/0 |
Mathlib.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean |
2 |
15 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'smorel394'] |
nobody |
38-49081 1 month ago |
62-13642 2 months ago |
62-17564 62 days |
25858 |
themathqueen author:themathqueen |
feat(RingTheory/Coalgebra/MulOpposite): coalgebra instance for MulOpposite |
Adding an instance for `Aᵐᵒᵖ` being an `R`-coalgebra when `A` is.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
112/0 |
Mathlib.lean,Mathlib/RingTheory/Coalgebra/MulOpposite.lean |
2 |
1 |
['github-actions'] |
nobody |
38-4752 1 month ago |
42-36551 1 month ago |
42-36596 42 days |
26154 |
ADedecker author:ADedecker |
refactor: add refactored APIs for algebraic filter bases |
This PR continues the work from #18437.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18437 |
t-topology |
651/0 |
Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean |
5 |
2 |
['ADedecker', 'github-actions'] |
nobody |
37-38062 1 month ago |
37-38062 1 month ago |
37-38121 37 days |
26157 |
erdOne author:erdOne |
chore(RingTheory): Merge `Mathlib/RingTheory/LocalRing/ResidueField/Algebraic.lean` into `Instances.lean` |
This was added a week ago by myself so I don't think a deprecation is needed
---
[](https://gitpod.io/from-referrer/)
|
file-removed |
22/34 |
Mathlib.lean,Mathlib/NumberTheory/RamificationInertia/Unramified.lean,Mathlib/RingTheory/LocalRing/ResidueField/Algebraic.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean |
4 |
1 |
['github-actions'] |
nobody |
37-33664 1 month ago |
37-33825 1 month ago |
37-33878 37 days |
26159 |
upobir author:upobir |
feat(Algebra/QuadraticDiscriminant): Adding inequalities on quadratic from inequalities on discriminant |
This PR continues the work from #24517.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24517 |
t-algebra label:t-algebra$ |
35/0 |
Mathlib/Algebra/QuadraticDiscriminant.lean |
1 |
3 |
['github-actions', 'upobir'] |
nobody |
37-32370 1 month ago |
37-32806 1 month ago |
37-32850 37 days |
26156 |
oliver-butterley author:oliver-butterley |
feat(MeasureTheory.VectorMeasure) : add a definition of total variation for VectorMeasure |
This PR adds variation for any `VectorMeasure` using a supremum definition. Currently mathlib has `TotalVariation` defined for a signed measure using the Hahn-Jordan decomposition, but this doesn't generalise.
Motivation: generally this is an important concept but specifically as a step for proving RMK in the complex case which in turn is a step to prove the spectral theorem.
Co-authored-by: @yoh-tanimoto
This PR was migrated from #25442. PR divided into smaller pieces, this is just the definition without additional lemmas. PRs adding further results related to variation are:
* #26160
* #26165
* #26168 (shows that for `SignedMeasures` the two definitions of variation coincide)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
354/0 |
Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean |
2 |
1 |
['github-actions'] |
nobody |
36-54132 1 month ago |
37-35149 1 month ago |
37-35198 37 days |
26200 |
adomani author:adomani |
fix: add label when landrun fails |
Adds the `permission-denied` label on PRs that get blocked by landrun.
---
[](https://gitpod.io/from-referrer/)
|
CI |
68/8 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml |
4 |
1 |
['github-actions'] |
nobody |
36-49626 1 month ago |
36-49632 1 month ago |
36-49677 36 days |
26130 |
kmill author:kmill |
feat: make `reassoc_of%` be able to defer `Category` instance |
This PR modifies the elaboration of `reassoc_of%` so that the `Category` instance can be synthesized later, like any other instance metavariable, rather than needing to be synthesized up front, when the category itself might not yet be known.
This fixes an issue reported by Robert Maxton [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/reassoc_of.25.20misleading.20error/near/524678383), where in the following `reassoc_of% Sigma.ι_desc` was failing.
```lean
import Mathlib.CategoryTheory.Limits.Shapes.Products
open CategoryTheory Limits
set_option autoImplicit true
variable {C : Type u} [Category.{v, u} C]
{β : Type w} {f : β → C} [HasCoproduct f] {P : C}
(p : (b : β) → f b ⟶ P) (b : β)
example {Q : C} (g : P ⟶ Q) : Sigma.ι f b ≫ Sigma.desc p ≫ g = p b ≫ g := by
rw [reassoc_of% Sigma.ι_desc]
```
Without this PR, a workaround is writing `reassoc_of% @Sigma.ι_desc`.
The PR adds `Lean.Meta.withEnsuringLocalInstance` for temporarily adding a metavariable as a local instance if it can't yet be synthesized.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
91/20 |
Mathlib/Lean/Meta/Basic.lean,Mathlib/Tactic/CategoryTheory/IsoReassoc.lean,Mathlib/Tactic/CategoryTheory/Reassoc.lean,MathlibTest/CategoryTheory/Reassoc.lean |
4 |
6 |
['github-actions', 'kmill', 'leanprover-bot', 'sgouezel'] |
nobody |
36-8284 1 month ago |
37-65575 1 month ago |
37-65558 37 days |
26240 |
grunweg author:grunweg |
perf(CommandLinterLinter): use Substring more |
Probably, these changes make little difference, but let's find out.
---
[](https://gitpod.io/from-referrer/)
|
t-linter
RFC
|
14/15 |
Mathlib/Tactic/Linter/CommandStart.lean |
1 |
5 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
36-2440 1 month ago |
36-2440 1 month ago |
36-7053 36 days |
26258 |
kckennylau author:kckennylau |
feat(Topology): induction for sheafification |
---
I currently have binary and unary operation, which should be enough for sheaves.
[](https://gitpod.io/from-referrer/)
|
t-topology |
62/1 |
Mathlib/Topology/Sheaves/LocalPredicate.lean |
1 |
1 |
['github-actions'] |
nobody |
35-16070 1 month ago |
35-16179 1 month ago |
35-16242 35 days |
26061 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): define Projective Space |
This defines the projective space over a scheme, indexed by an arbitrary type.
---
Zulip discussion: [#maths > Projective Space](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Projective.20Space/with/524057860)
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
63/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/ProjectiveSpace.lean |
2 |
14 |
['callesonne', 'erdOne', 'github-actions', 'kckennylau'] |
nobody |
35-13945 1 month ago |
38-81609 1 month ago |
38-81656 38 days |
26259 |
Raph-DG author:Raph-DG |
feat(Topology): Connecting different notions of locally finite |
In this PR we connect the notions of local finiteness of an indexed family of sets (as in LocallyFinite) and of a set of sets (as in Function.locallyFinsuppWithin)
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
32/0 |
Mathlib/Topology/LocallyFinsupp.lean |
1 |
3 |
['Raph-DG', 'github-actions', 'kckennylau'] |
nobody |
34-53813 1 month ago |
35-15974 1 month ago |
35-16017 35 days |
26120 |
vasnesterov author:vasnesterov |
feat(Data/Seq): `modify` and `set` operations for `Seq` |
Introduce `modify` and `set` operations for sequences, along with a few lemmas about them.
---
- [x] depends on: #20071
[](https://gitpod.io/from-referrer/)
This PR continues the work from #20160.
Original PR: https://github.com/leanprover-community/mathlib4/pull/20160 |
t-data |
69/0 |
Mathlib/Data/Seq/Seq.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'vasnesterov'] |
nobody |
34-31058 1 month ago |
38-12394 1 month ago |
38-12445 38 days |
25837 |
jt496 author:jt496 |
feat(Combinatorics/SimpleGraph): add homOfConnectedComponents and related results |
Given homomorphisms of each connected component of `G : SimpleGraph α` into `H : SimpleGraph β `give the corresponding `G →g H`
Hence prove that G is n - colorable iff each connected component is n - colorable.
Also prove that G is 2-colorable iff it does not contain an odd length loop (closed walk).
I wasn't sure where to put this - it probably belongs in SimpleGraph.ConcreteColorings?
---
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24546.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24546* |
t-combinatorics |
36/0 |
Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
3 |
1 |
['github-actions'] |
nobody |
34-27338 1 month ago |
43-49472 1 month ago |
43-49457 43 days |
26284 |
plp127 author:plp127 |
feat: faster implementation of `Nat.primeFactorsList` + `@[csimp]` lemma |
Add a function `Nat.primeFactorsListFast` that `#eval`s faster, and a `@[csimp]` lemma `Nat.primeFactorsList_eq_primeFactorsListFast` that shows `Nat.primeFactorsList = Nat.primeFactorsListFast`.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
95/0 |
Mathlib/Data/Nat/Factors.lean |
1 |
1 |
['github-actions'] |
nobody |
33-67042 1 month ago |
33-67065 1 month ago |
33-80982 33 days |
26301 |
Ivan-Sergeyev author:Ivan-Sergeyev |
feat(LinearAlgebra/Matrix/Determinant/TotallyUnimodular): |
Empty matrices are totally unimodular.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
15/0 |
Mathlib/LinearAlgebra/Matrix/Determinant/TotallyUnimodular.lean |
1 |
1 |
['github-actions'] |
nobody |
33-34432 1 month ago |
33-34442 1 month ago |
33-34487 33 days |
26189 |
tb65536 author:tb65536 |
feat(FieldTheory/Galois/Basic): Add simp-lemma for `FixedPoints.intermediateField` |
This PR adds a simp-lemma `FixedPoints.mem_intermediateField_iff` for the definition `FixedPoints.intermediateField`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
4/0 |
Mathlib/FieldTheory/Galois/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
33-27942 1 month ago |
33-27942 1 month ago |
36-85592 36 days |
26190 |
tb65536 author:tb65536 |
feat(FieldTheory/Galois/IsGaloisGroup): Subgroups of a Galois group are Galois groups |
This PR gives an instance `IsGaloisGroup H (FixedPoints.intermediateField H : IntermediateField K L) L` from `IsGaloisGroup G K L`, and a numerical corollary.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
11/0 |
Mathlib/FieldTheory/Galois/IsGaloisGroup.lean |
1 |
1 |
['github-actions'] |
nobody |
33-24902 1 month ago |
33-24903 1 month ago |
36-80904 36 days |
26319 |
Vierkantor author:Vierkantor |
ci: specify leanprover-community/mathlib4 when checking out master |
This PR makes it explicit that we want to run CI against the `master` branch from `leanprover-community/mathlib4` instead of another repo.
The new mathlib4-nightly-testing repo should run CI on the nightly branches as if they are already part of the `master` branch. But when checking them out, it defaults to looking for the branch in `leanprover-community/mathlib4-nightly-testing`, which does not exist. So a simple fix is to make the upstream repo name explicit.
A potential disadvantage: it will be harder to test CI changes by opening a pull request against one's own fork. (Which is what I did to test a few CI changes before).
---
This change makes sense to me but maybe there is a better option? I don't think we want to have custom CI in the other repo, because it will get obliterated next time we do an update.
[](https://gitpod.io/from-referrer/)
|
CI |
4/0 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml |
4 |
1 |
['github-actions'] |
nobody |
33-19797 1 month ago |
33-19866 1 month ago |
33-19850 33 days |
26078 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): add x, y, px, py for points on elliptic curves |
---
Split from #25218.
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
44/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean |
1 |
10 |
['MichaelStollBayreuth', 'Multramate', 'acmepjz', 'github-actions', 'kckennylau'] |
nobody |
33-1336 1 month ago |
38-39842 1 month ago |
38-39887 38 days |
26332 |
Timeroot author:Timeroot |
feat (ModelTheory/Definability): TermDefinable functions |
This PR continues the work from #23506.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23506 |
large-import |
159/0 |
Mathlib/Data/Rel.lean,Mathlib/ModelTheory/Definability.lean,scripts/noshake.json |
3 |
2 |
['Timeroot', 'github-actions'] |
nobody |
32-72487 1 month ago |
32-72494 1 month ago |
32-72538 32 days |
23460 |
Timeroot author:Timeroot |
feat: Definition of `Clone` |
Basics about Clones. Part of #20051
---
- [x] depends on: #23459
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
326/0 |
Mathlib.lean,Mathlib/Algebra/Clone/Basic.lean,Mathlib/Algebra/Clone/Defs.lean,Mathlib/Data/Fin/Basic.lean |
4 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
32-71936 1 month ago |
32-71938 1 month ago |
32-73230 32 days |
25974 |
scholzhannah author:scholzhannah |
feat(Topology/Compactness/CompactlyCoherentSpace): compact coherentification (k-ification) |
This PR defines the notion of turning an arbitrary topological space into a compactly coherent space. Compactly coherent spaces are commonly referred to as "compactly generated spaces" or "k-spaces" in the literature while the operation of turning a space into such as space is called the "k-ification". There are however three different notions that are described with this name. To disambiguate we use the names "compactly coherent space" and "compactcoherentification" here. See [this wikipedia page](https://en.wikipedia.org/wiki/Compactly_generated_space) for an explanation of these notions.
This PR continues the work from #25318.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25318
Co-authored-by: Floris van Doorn |
large-import
t-topology
|
175/5 |
Mathlib/Topology/Compactness/CompactlyCoherentSpace.lean |
1 |
2 |
['github-actions', 'scholzhannah'] |
nobody |
31-46233 1 month ago |
40-11753 1 month ago |
40-11802 40 days |
26428 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: norm_num support for Int.fract |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
44/0 |
Mathlib/Data/Rat/Floor.lean,MathlibTest/norm_num_ext.lean |
2 |
5 |
['Rob23oba', 'github-actions'] |
nobody |
30-6297 1 month ago |
30-6338 1 month ago |
30-51098 30 days |
26453 |
jburroni author:jburroni |
feat(Data/PNat/Basic): add order-related instances to PNat |
Add `SuccAddOrder ℕ+` and `NoMaxOrder ℕ+` instances.
This allows, for example, the use of lemmas related to `Intervals` built with ℕ+.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-data
new-contributor
|
18/0 |
Mathlib/Data/PNat/Basic.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'jburroni'] |
nobody |
29-32581 29 days ago |
30-16439 1 month ago |
30-16485 30 days |
26358 |
plp127 author:plp127 |
feat(Topology): R1 spaces are quasisober |
This PR continues the work from #24054.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24054 |
bench-after-CI
t-topology
|
23/9 |
Mathlib/Topology/Separation/Hausdorff.lean,Mathlib/Topology/Sober.lean |
2 |
16 |
['faenuccio', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127'] |
nobody |
29-8295 29 days ago |
29-8351 29 days ago |
32-33326 32 days |
26023 |
Garmelon author:Garmelon |
chore: add githelper.py script |
As described in the readme file, this somewhat opinionated script aims to help fix weird git repo setups and restore them to a standardized state that closely matches what `gh repo clone` does. Like `migrate_to_fork.py`, this script requires the user to have `git` and `gh` installed.
To use the script, run `scripts/githelper.py fix` in a git repo that is either a clone of mathlib or of a mathlib fork. The script will prompt you before making any changes, so the user retains control over the entire process. The script also prints the commands used.
`fix` is a subcommand so other git and github management tasks can be added in the future. Possible examples: Deleting branches of closed PRs, keeping the fork in sync with upstream, removing branches from a fork that was accidentally cloned with all mathlib branches included.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
490/0 |
scripts/README.md,scripts/githelper.py |
2 |
8 |
['Garmelon', 'bryangingechen', 'github-actions', 'jcommelin'] |
bryangingechen assignee:bryangingechen |
28-79624 28 days ago |
28-79624 28 days ago |
31-2500 31 days |
26287 |
mbkybky author:mbkybky |
feat(Data/ENat/Lattice): coercion to `WithBot ℕ∞` commutes with `biSup` |
The coercion from `ℕ∞` to `WithBot ℕ∞` commutes with `biSup` and `biInf`.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
19/0 |
Mathlib/Data/ENat/Lattice.lean |
1 |
1 |
['github-actions'] |
nobody |
28-23052 28 days ago |
33-66992 1 month ago |
33-74743 33 days |
26462 |
PSchwahn author:PSchwahn |
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` |
Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`.
We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification).
I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome!
Co-authored by:
- [Viviana del Barco](https://github.com/vdelbarc)
- [Gustavo Infanti](https://github.com/GuQOliveira)
- [Exequiel Rivas](https://github.com/erivas)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
9/0 |
Mathlib/LinearAlgebra/Projection.lean |
1 |
5 |
['PSchwahn', 'github-actions', 'kckennylau'] |
nobody |
27-86191 27 days ago |
29-71825 29 days ago |
29-71951 29 days |
26489 |
chrisflav author:chrisflav |
refactor(RingTheory/RingHom): factor out proofs for `Algebra.FinitePresentation` |
The current way to use locality of a given property of algebras is to convert everything into the language of `RingHom`s and then for example the `RingHom.OfLocalizationSpanTarget` API. This has two disadvantages:
1. The ring hom property API fixes the universes of source and target to be the same, hence we unnecessarily lose out on some universe generality.
2. The results for `RingHom`s are proven by translating everything in terms of `Algebra`, so we duplicate the translation steps.
This PR refactors `RingHom.FinitePresentation` to do all locality proofs in the language of `Algebra`s and translate it into the corresponding `RingHom.OfLocalizationSpan{Target}` in the last step. We also streamline some of the translation proofs by unifying the API.
---
- [x] depends on: #22931
[](https://gitpod.io/from-referrer/)
This PR continues the work from #22930.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22930 |
t-algebra label:t-algebra$ |
62/77 |
Mathlib/RingTheory/RingHom/FinitePresentation.lean |
1 |
4 |
['chrisflav', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
27-65100 27 days ago |
28-34253 28 days ago |
28-34301 28 days |
22662 |
plp127 author:plp127 |
feat: Localization.Away.lift (computably) |
This PR adds `Localization.Away.lift'` and `Localization.Away.lift`, computable alternatives to `Localization.awayLift`.
---
- [x] depends on: #24791
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
74/0 |
Mathlib/RingTheory/Localization/Away/Basic.lean |
1 |
12 |
['eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'plp127', 'vihdzp'] |
nobody |
27-62191 27 days ago |
75-84274 2 months ago |
141-84257 141 days |
26510 |
alreadydone author:alreadydone |
feat(Matroid): exchange lemmas involving closure |
---
for #24350
[](https://gitpod.io/from-referrer/)
|
t-data
t-combinatorics
|
37/0 |
Mathlib/Data/Matroid/Closure.lean |
1 |
1 |
['github-actions'] |
nobody |
27-31857 27 days ago |
27-31883 27 days ago |
27-31929 27 days |
26155 |
xroblot author:xroblot |
feat(DedekindDomain/Different): add the transitivity formula |
This PR proves the transitivity formula for the different ideal.
It introduces ~~two~~ one increase~~s~~ in imports:
- `RingTheory.FractionalIdeal.Extended`: this is a short leaf file and I think the import makes sense there
- ~~`RingTheory.Localization.Defs.lean `: the file `Algebra.Algebra.Basic` is added since it is necessary to have the definition of `noZeroSMulDivisors` to get that some algebra map is injective. The import could be removed by stating the hypothesis as `Function.Injective (algebraMap * *)` but it is not the usual spelling (and cannot be synthesized by Lean). In the end, it appears that the increased import only affects three files so maybe it's fine.~~
The PR also adds two new instances:
- `FiniteDimensional (FractionRing A) (FractionRing B)` deduced from `Module.Finite A B` when `B` is a Dedekind domain.
- `IsScalarTower (FractionRing A) (FractionRing B) (FractionRing C)` deduced from `IsScalarTower A B C`
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
207/4 |
Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean |
5 |
13 |
['erdOne', 'github-actions', 'xroblot'] |
nobody |
26-36489 26 days ago |
29-37252 29 days ago |
34-34260 34 days |
25832 |
xroblot author:xroblot |
feat(FieldTheory/LinearDisjoint): `trace` (resp. `norm`) and `algebraMap` commutes |
For `A` and `B` two linearly disjoint `R`-subalgebras in a commutative algebra `S` and `b` a `R`-basis of `B`, we construct a `A`-basis of `S = A ⊔ B` from `b` (and a similar construction using a `R`-basis of `A`). Then, we prove in this situation that `trace` commutes with `algebraMap`, that is:
```lean
Algebra.trace A S (algebraMap B S x) = algebraMap R A (Algebra.trace R B x)
```
and a similar result for the norm.
We also add a similar basis construction for `A` and `B` two linearly disjoint intermediate fields with the hypothesis that `A.toSubalgebra ⊔ B.toSubalgebra = ⊤`. This hypothesis is equivalent to `A ⊔ B = ⊤` in many cases (for example, one of the two extensions is algebraic over the base field) but not always.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
161/9 |
Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/RingTheory/LinearDisjoint.lean |
2 |
23 |
['acmepjz', 'github-actions', 'xroblot'] |
nobody |
26-36185 26 days ago |
35-55765 1 month ago |
43-751 43 days |
26357 |
javra author:javra |
feat(CategoryTheory): linear categories as `ModuleCat R`-enriched categories |
Continues #23826.
---
[](https://gitpod.io/from-referrer/)
|
large-import |
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 |
1 |
['github-actions'] |
nobody |
26-31666 26 days ago |
32-35050 1 month ago |
32-35102 32 days |
26351 |
RemyDegenne author:RemyDegenne |
feat: covering and packing numbers of sets in a metric space |
We define covering numbers of sets in a pseudo-metric space, which are minimal cardinalities of
`ε`-covers of sets. We also define the packing number, which is the maximal cardinality of
an `ε`-separated set.
From the Brownian motion project.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
261/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean |
2 |
4 |
['ADedecker', 'YaelDillies', 'github-actions'] |
nobody |
26-31149 26 days ago |
32-48775 1 month ago |
32-48822 32 days |
26277 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/Congruence/Hom): prove basic isomorphisms theorems for ring congruences |
This file contains elementary definitions involving congruence
relations and morphisms for semirings, rings, and algebras.
* `RingCon.ker`: the kernel of a monoid homomorphism as a congruence relation
* `RingCon.lift`, `RingCon.liftₐ`: the homomorphism / the algebra morphism
on the quotient given that the congruence is in the kernel
* `RingCon.map`, `RingCon.mapₐ`: homomorphism / algebra morphism
from a smaller to a larger quotient
* `RingCon.quotientKerEquivRangeS`, `RingCon.quotientKerEquivRange`,
`RingCon.quotientKerEquivRangeₐ` :
the first isomorphism theorem for semirings (using `RingHom.rangeS`),
rings (using `RingHom.range`) and algebras (using `AlgHom.range`).
* `RingCon.comapQuotientEquivRangeS`, `RingCon.comapQuotientEquivRange`,
`RingCon.comapQuotientEquivRangeₐ` : the second isomorphism theorem
for semirings (using `RingHom.rangeS`), rings (using `RingHom.range`)
and algebras (using `AlgHom.range`).
* `RingCon.quotientQuotientEquivQuotient`, `RingCon.quotientQuotientEquivQuotientₐ` :
the third isomorphism theorem for semirings (or rings) and algebras
It is an adaptation of what existed for multiplicative congruences (docs#Con) and is only useful for semirings which are not rings.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
555/2 |
Mathlib.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Hom.lean |
6 |
1 |
['github-actions'] |
nobody |
26-26024 26 days ago |
34-5111 1 month ago |
34-5160 34 days |
26543 |
vihdzp author:vihdzp |
feat(SetTheory/ZFC/VonNeumann): von Neumann hierarchy of sets |
Ported from #17027. For extra discussion on this PR, see [Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2317027.20.2C.20.2326518.20von.20Neumann.20hierarchy/with/526389347).
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory
maintainer-merge
|
133/0 |
Mathlib.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/VonNeumann.lean |
4 |
55 |
['alreadydone', 'github-actions', 'kckennylau', 'vihdzp'] |
nobody |
26-5679 26 days ago |
26-5920 26 days ago |
26-35459 26 days |
25947 |
qawbecrdtey author:qawbecrdtey |
feat(Data/Nat/Factors): added lemmas including `primeFactorsList_length_ne_zero` |
---
Added lemmas `primeFactorsList_length_ne_zero`, `primeFactorsList_prime_iff`, and `primeFactorsList_length_eq_one`.
```lean
theorem primeFactorsList_length_ne_zero (n : ℕ) : n.primeFactorsList.length ≠ 0 ↔ 2 ≤ n
theorem primeFactorsList_prime_iff {p : ℕ} : p.primeFactorsList = [p] ↔ p.Prime
@[simp]
theorem primeFactorsList_length_eq_one (n : ℕ) : n.primeFactorsList.length = 1 ↔ n.Prime
```
[](https://gitpod.io/from-referrer/)
|
t-data |
21/3 |
Mathlib/Data/Nat/Factors.lean |
1 |
5 |
['Ruben-VandeVelde', 'github-actions', 'qawbecrdtey'] |
nobody |
25-80866 25 days ago |
40-45293 1 month ago |
40-53895 40 days |
26555 |
Komyyy author:Komyyy |
feat: lemmas about betweeness on a linear space |
This PR also adds aliases of the inverse direction of betweeness iff lemmas.
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
86/0 |
Mathlib/Analysis/Convex/Between.lean |
1 |
1 |
['github-actions'] |
nobody |
25-75102 25 days ago |
26-16697 26 days ago |
26-19906 26 days |
24917 |
adomani author:adomani |
feat: deprecated module automation |
This PR is a revised version of #24861. It splits the `#create_deprecated_modules` into two commands:
* `#create_deprecated_module path/to/file.lean` that guides you through generating a deprecated file;
* `#find_deleted_files n` that looks at the repository `n` commits ago and returns a `#create_deprecated_module` for each file that existed then and does not exist now.
This is integrated with `Try these:` suggestions and is intended as a first step in making this process completely automatic.
Each regenerated file consists of just the imports of the last file that existed, before deletion, followed by `deprecated_import (since := "YYYY-MM-DD")`.
In particular, this also applies to *renames*, where it might be more natural to suggest the renamed file, rather than its imports. However, this is part of the deprecation logic that I consider best left to a possible future PR, since distinguishing renames from removals is a separate matter that even git does not handle completely satisfactorily.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
381/0 |
scripts/README.md,scripts/create_deprecated_modules.lean |
2 |
47 |
['YaelDillies', 'adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
grunweg assignee:grunweg |
25-16772 25 days ago |
25-16793 25 days ago |
46-43433 46 days |
25841 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove the Kővári–Sós–Turán theorem |
Prove the Kővári–Sós–Turán theorem for simple graphs: the `(completeBipartiteGraph α β).Free` simple graphs for `card α ≤ card β` on the vertex type `V` have at most `(card β-1)^(1/(card α))*(card V)^(2-1/(card α))/2 + (card V)*(card α-1)/2` edges.
---
- [x] depends on: #19865
- [x] depends on: #20738
I'd like to make `aux` not private in the `KovariSosTuran` namespace to enable reuse of the double-counting here, but I don't know what to call it.
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #20240.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/20240* |
t-combinatorics |
289/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/KovariSosTuran.lean |
3 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
awainverse assignee:awainverse |
25-12102 25 days ago |
43-34643 1 month ago |
43-34689 43 days |
25843 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): define `between` subgraphs |
The simple graph `G.between s t` is the subgraph of `G` containing edges that connect a vertex in the set `s` to a vertex in the set `t`.
---
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24948.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24948* |
t-combinatorics |
95/0 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean |
1 |
1 |
['github-actions'] |
nobody |
25-12071 25 days ago |
43-34245 1 month ago |
43-34230 43 days |
25758 |
YaelDillies author:YaelDillies |
chore: shortcut instance `CompleteLattice α → PartialOrder α` |
This avoids using the path `CompleteLattice α → CompletePartialOrder α → PartialOrder α` that goes through `Order.CompletePartialOrder` and makes it appear used to our automation, such as `shake` or `#min_imports`.
This is a followup to #25358.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
7/0 |
Mathlib/Order/CompleteLattice/Defs.lean |
1 |
6 |
['Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'leanprover-bot'] |
nobody |
24-85609 24 days ago |
25-1234 25 days ago |
44-51820 44 days |
25989 |
Multramate author:Multramate |
feat(NumberTheory/EllipticDivisibilitySequence): add elliptic nets |
This PR continues the work from #25030.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25030 |
t-number-theory |
259/37 |
Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
1 |
3 |
['MichaelStollBayreuth', 'Multramate', 'github-actions'] |
nobody |
24-16632 24 days ago |
40-3262 1 month ago |
40-3309 40 days |
26638 |
metakunt author:metakunt |
chore: Add grind to cast_zero |
Add grind to cast_zero |
t-data
new-contributor
|
1/1 |
Mathlib/Data/Nat/Cast/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
24-14081 24 days ago |
24-14081 24 days ago |
24-15685 24 days |
26563 |
winstonyin author:winstonyin |
chore: rename `IsIntegralCurve` to `IsMIntegralCurve` |
I rename all the existing `IsIntegralCurve` series of definitions and lemmas for manifolds to `IsMIntegralCurve` in preparation for reusing `IsIntegralCurve` for the vector space version.
- [ ] depends on: #26533
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
320/165 |
Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/UniformTime.lean,docs/overview.yaml |
5 |
8 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'winstonyin'] |
grunweg assignee:grunweg |
24-1107 24 days ago |
24-1286 24 days ago |
24-40709 24 days |
23986 |
ShouxinZhang author:ShouxinZhang |
feat(FieldTheory/RatFunc): add RatFunc.toFractionRingAlgEquiv |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
13/0 |
Mathlib/FieldTheory/RatFunc/Basic.lean |
1 |
32 |
['ShouxinZhang', 'eric-wieser', 'github-actions', 'joneugster', 'kckennylau', 'plp127'] |
nobody |
23-81189 23 days ago |
26-7645 26 days ago |
104-70584 104 days |
26370 |
b-mehta author:b-mehta |
chore(Archive): golf and generalise ascending-descending sequences |
This proof was 5 years old, not in a good generality, and overly long. We fix the latter two points.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
96/120 |
Archive/Wiedijk100Theorems/AscendingDescendingSequences.lean |
1 |
12 |
['b-mehta', 'github-actions', 'grunweg'] |
nobody |
23-74707 23 days ago |
30-46252 1 month ago |
32-14791 32 days |
26148 |
Hagb author:Hagb |
feat(RingTheory/Ideal/Span): some lemmas about zero and span |
`simp` would be able to solve them.
Notice that `span_singleton_zero : span {(0 : R)} = ⊥` itself can be solved by `simp` without this commit, which uses `span_singleton_eq_bot : span ({x} : Set α) = ⊥ ↔ x = 0`, while `simp` cannot solve goals like `f (Ideal.span {(0 : R)}) = f ⊥`, which would be solvable by `simp` with `span_singleton_zero` marked with `@[simp]`.
Without adding also `Ideal.dvd_bot`, these lemmas on `Span.lean` would make the following failed, since `simp` would rewrite `{0}` with `⊥` and result in a goal `v.asIdeal ∣ ⊥` that it can't solve.
https://github.com/leanprover-community/mathlib4/blob/3f2556372f27171259a381d4d57db71440700cd8/Mathlib/RingTheory/DedekindDomain/AdicValuation.lean#L123
---
This PR continues the work from #24448.
Original PR: #24448.
CC: @tb65536
[](https://gitpod.io/from-referrer/)
|
migrated-from-branch
t-algebra
label:t-algebra$ |
11/0 |
Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Span.lean |
2 |
1 |
['github-actions'] |
nobody |
23-58323 23 days ago |
23-58323 23 days ago |
37-43842 37 days |
26645 |
erdOne author:erdOne |
feat(RingTheory/PowerSeries): Construction of `Q` such that `P(Q(X)) = X` |
Co-authored-by: Junnosuke Koizumi
Co-authored-by: Hyeon, Seung-Hyeon
Co-authored-by: Yuichiro Taguchi
This contribution was created as part of the ZMC conference 2025 "Anabelian Geometry and its Computer Formalization".
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
133/0 |
Mathlib/RingTheory/PowerSeries/Substitution.lean |
1 |
9 |
['chrisflav', 'erdOne', 'github-actions', 'kckennylau'] |
nobody |
23-47564 23 days ago |
23-83564 23 days ago |
23-83611 23 days |
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 |
59 |
['FLDutchmann', 'Paul-Lez', 'YaelDillies', 'eric-wieser', 'github-actions', 'grunweg', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
eric-wieser assignee:eric-wieser |
23-33215 23 days ago |
101-46598 3 months ago |
157-7318 157 days |
26313 |
kckennylau author:kckennylau |
feat: 4 lemmas about Finsupp.mapDomain.linearEquiv |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
9/0 |
Mathlib/LinearAlgebra/Finsupp/Defs.lean |
1 |
5 |
['eric-wieser', 'github-actions', 'kckennylau'] |
nobody |
23-23419 23 days ago |
33-24940 1 month ago |
33-24992 33 days |
26192 |
kckennylau author:kckennylau |
feat(LinearAlgebra): symmetric tensor power |
---
Zulip: [#mathlib4 > Proposal: Symmetric Tensor Power](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Proposal.3A.20Symmetric.20Tensor.20Power/with/524795235)
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
129/0 |
Mathlib.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean |
2 |
6 |
['AntoineChambert-Loir', 'erdOne', 'eric-wieser', 'github-actions', 'kckennylau'] |
nobody |
23-22508 23 days ago |
36-83573 1 month ago |
36-83617 36 days |
25692 |
Whysoserioushah author:Whysoserioushah |
feat(RingTheory/MatrixAlgebra): add a more general version of `matrixEquivTensor` |
This adds `tensorMatrixLinearEquiv : A ⊗[R] Matrix n n B ≃ₐ[S] Matrix n n (A ⊗[R] B)`
which is a more general version of `matrixEquivTensor : Matrix n n A ≃ₐ[R] (A ⊗[R] Matrix n n R)`.
The latter is then implemented as a trivial consequence of the former.
Many internal implementation details are deleted without deprecation, although strictly these were not `private.
Co-authored-by: @erdOne
Co-authored-by: Eric Wieser
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
122/100 |
Mathlib/Data/Matrix/Basis.lean,Mathlib/RingTheory/MatrixAlgebra.lean |
2 |
13 |
['Whysoserioushah', 'eric-wieser', 'github-actions'] |
nobody |
23-8052 23 days ago |
28-78940 28 days ago |
45-48344 45 days |
26670 |
yu-yama author:yu-yama |
feat(GroupExtension/Abelian): define `conjClassesEquivH1` |
This PR continues the work from #21837.
Original PR: https://github.com/leanprover-community/mathlib4/pull/21837 |
t-algebra label:t-algebra$ |
162/5 |
Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Abelian.lean,Mathlib/GroupTheory/GroupExtension/Basic.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,docs/references.bib |
5 |
2 |
['erdOne', 'github-actions', 'yu-yama'] |
nobody |
22-85713 22 days ago |
23-27818 23 days ago |
23-27871 23 days |
26710 |
metakunt author:metakunt |
feat (Data/Nat/Digits/Lemmas): Add digits_getD |
Adds digits_getD, an explicit computation of the i-th digits of n in base b representation. |
t-data
new-contributor
|
64/0 |
Mathlib/Data/Nat/Digits/Lemmas.lean |
1 |
1 |
['github-actions'] |
nobody |
22-83136 22 days ago |
22-83267 22 days ago |
22-83320 22 days |
25812 |
vlad902 author:vlad902 |
feat(data): List.Chain' helper lemmas |
Add two helpers lemmas to go from a List.Chain' hypothesis to a concrete
predicate about two consecutive elements, one in the positive and one in
the negative. |
t-data |
29/0 |
Mathlib/Data/List/Chain.lean |
1 |
4 |
['BoltonBailey', 'github-actions', 'vlad902'] |
nobody |
22-64004 22 days ago |
23-52298 23 days ago |
36-54887 36 days |
26267 |
vasnesterov author:vasnesterov |
feat(Analysis/Calculus): Taylor series converges to function on whole ball |
* Prove `FormalMultilinearSeries.AnalyticOnNhd`: the sum of series is analytic on its ball of convergence.
* Prove `AnalyticOn.hasFPowerSeriesOnBall`: a variant of `AnalyticAt.hasFPowerSeriesAt` which gives convergence to the function on the ball of convergence.
---
- [x] depends on: #23745
- [x] depends on: #23747
- [x] depends on: #23748
- [x] depends on: #26247
This PR continues the work from #23749.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23749 |
large-import
t-analysis
|
47/0 |
Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'vasnesterov'] |
nobody |
22-62549 22 days ago |
22-72045 22 days ago |
22-78360 22 days |
26597 |
sahanwijetunga author:sahanwijetunga |
Update Orthogonal.lean |
fixed documentation for orthogonal (regarding order of inputs to bilinear form)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
documentation
label:t-algebra$ |
3/3 |
Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean |
1 |
2 |
['github-actions', 'mbkybky'] |
nobody |
22-59290 22 days ago |
22-59297 22 days ago |
25-11765 25 days |
25179 |
YaelDillies author:YaelDillies |
feat: `#print sorries`, a command to find usage of `sorry` |
`#print sorries` returns all sorries in the current file. `#print sorries id1 ... idn` returns all sorries in declarations `id1`, ..., `idn`.
Such a command is a recurrent need of the community, see eg [here](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Hunting.20down.20axioms/with/495448595) most recently.
From Toric
Co-authored-by: Henrik Böving
Co-authored-by: Kyle Miller
---
An alternative implementation was provided in [#Is there code for X? > ✔ Finding usages of `sorry` in external code @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.E2.9C.94.20Finding.20usages.20of.20.60sorry.60.20in.20external.20code/near/430509619) by @kmill. I prefer the current one because it only prints something for uses of `sorry` and not the other three standard axioms.
[](https://gitpod.io/from-referrer/)
|
toric
t-meta
|
103/0 |
Mathlib.lean,Mathlib/Util/PrintSorries.lean |
2 |
11 |
['YaelDillies', 'eric-wieser', 'github-actions', 'kmill'] |
nobody |
22-50296 22 days ago |
62-53043 2 months ago |
62-53095 62 days |
26000 |
Hagb author:Hagb |
feat(RingTheory/MvPolynomial/MonomialOrder): some lemmas about degree |
Co-authored-by: Hao Shen @tsuki8 <3118181069@qq.com>
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
24/0 |
Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean |
1 |
6 |
['Hagb', 'Ruben-VandeVelde', 'github-actions'] |
nobody |
22-32896 22 days ago |
22-33443 22 days ago |
36-39624 36 days |
24794 |
chrisflav author:chrisflav |
feat(RingTheory/Presentation): core of a presentation |
If `P` is a presentation of `S` as an `R`-algebra and `R₀` a subring of `R` containing the coefficients of the relations of `P`, then there exists an `R₀`-algebra `S₀` such that `S` is isomorphic to the base change of `S₀` to `R`.
This is a tool to remove Noetherian hypothesis in certain situations.
---
- [x] depends on: #24788
- [x] depends on: #24786
- [x] depends on: #24785
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
252/2 |
Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean |
8 |
10 |
['erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
22-28192 22 days ago |
47-53349 1 month ago |
47-54288 47 days |
26759 |
MichaelStollBayreuth author:MichaelStollBayreuth |
chore(Algebra/Polynomial/IsMonicOfDegree): do not import compute_degree tactic |
To prepare for an extension of the `monicity` tactic to also work for `IsMonicOfDegree`, avoid importing this and related tactics in the file that defines `IsMonicOfDegree`.
This means that some proof that used `compute_degree` or `compute_degree!` need to be spelled out in terms of the API for `Polynomial.natDegree`.
Zulip: [#mathlib4 > Gelfand-Mazur theorem @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Gelfand-Mazur.20theorem/near/526268507)
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
15/8 |
Mathlib/Algebra/Polynomial/Degree/IsMonicOfDegree.lean |
1 |
1 |
['github-actions'] |
nobody |
22-21570 22 days ago |
22-21570 22 days ago |
22-21554 22 days |
26766 |
MichaelStollBayreuth author:MichaelStollBayreuth |
feat(Topology/MetricSpace/Bounded): add some results |
We add two pairs of results:
```lean
lemma isBounded_of_abs_le (C : α) : Bornology.IsBounded {x : α | |x| ≤ C} := ...
lemma isBounded_of_abs_lt (C : α) : Bornology.IsBounded {x : α | |x| < C} := ...
```
(under suitable assumptions on `α`) and a version of the *Extreme Value Theorem* that I found convenient:
```lean
theorem exists_forall_le_of_isBounded {f : β → α} (hf : Continuous f) (x₀ : β)
(h : Bornology.IsBounded {x : β | f x ≤ f x₀}) :
∃ x, ∀ y, f x ≤ f y := ...
theorem exists_forall_ge_of_isBounded {f : β → α} (hf : Continuous f) (x₀ : β)
(h : Bornology.IsBounded {x : β | f x₀ ≤ f x}) :
∃ x, ∀ y, f y ≤ f x := ...
```
(under suitable assumptions on `α` and `β`).
For an application, see [GelfandMazur.lean](https://github.com/MichaelStollBayreuth/Heights/blob/master/Heights/GelfandMazur.lean) in [Heights](https://github.com/MichaelStollBayreuth/Heights/tree/master).
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
56/0 |
Mathlib/Topology/MetricSpace/Bounded.lean |
1 |
1 |
['github-actions'] |
nobody |
22-13543 22 days ago |
22-13543 22 days ago |
22-13527 22 days |
25889 |
plp127 author:plp127 |
fix(Tactic/Widget/Conv): fix various issues |
Fixes various issues with the `conv?` widget. Closes #25162.
([Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/bug.20in.20.60conv.3F.60))
Specifically, fixes issues with `conv?` where
- when converting a `SubExpr.Pos` to conv directions, it always uses the goal expression as reference, even when working on a hypothesis, this often leads to bad results and makes it unusable on hypotheses
- it refuses to go all the way in to a function (for example in `Nat.succ 0`, you can't access `Nat.succ`)
- it refuses to enter binders where the name of the bound variable contains the character `0` (try it on `∀ (x0 : Nat), x0 = x0`)
- it panics if it can't find a binder name instead of just coming up with one itself, this also means usually you can't enter either side of a non-dependent arrow since those usually don't have binder names (try it on `False → False`)
- you can't enter the type of a binder, you end up going into the body instead (try it on `fun (x : False) => (x.elim : False → Nat) x.elim`)
- you can't partially enter a function, you end up going to the top argument after instead (for example, in the expression `id (id id) 0`, when you click on `id (id id)`, you end up going to `id id`)
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
110/83 |
Mathlib/Tactic/Widget/Conv.lean |
1 |
4 |
['bryangingechen', 'github-actions', 'plp127'] |
nobody |
21-69732 21 days ago |
41-73516 1 month ago |
41-73562 41 days |
19872 |
YaelDillies author:YaelDillies |
chore(GroupTheory/Index): rename `relindex` to `relIndex` |
---
- [x] depends on: #24044
[](https://gitpod.io/from-referrer/)
|
FLT
t-algebra
label:t-algebra$ |
257/194 |
Mathlib/FieldTheory/Relrank.lean,Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/IndexNormal.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/FreeModule/Finite/CardQuotient.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/NumberTheory/NumberField/Units/Regulator.lean,Mathlib/RingTheory/Ideal/Quotient/Index.lean |
16 |
24 |
['Ruben-VandeVelde', 'TwoFX', 'YaelDillies', 'alreadydone', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'loefflerd', 'madvorak', 'mathlib4-dependent-issues-bot', 'tb65536'] |
nobody |
21-58785 21 days ago |
21-61367 21 days ago |
176-12298 176 days |
25732 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/Limits): miscellany about preservation of (co)limits by tensor products |
Register some instances regarding preservations of (co)limits for the tensor product of a monoidal category. More precisely, we register the fact that if the category is braided and `tensorLeft c` preserves colimits (this can be inferred e.g via `MonoidalClosed C`), then so does `tensorRight c` for every `c`.
We also rephrase preservation of (co)limits for `curriedTensor C` in terms of preservations of (co)limits for `tensorRight c`.
The PR introduces also introduces a directory `CategoryTheory.Monoidal.Limits` and moves the existing file `CategoryTheory.Monoidal.Limits.lean` to `CategoryTheory.Monoidal.Limits.Basic`.
---
The instances registered here are tailored so that for a braided monoidal closed category, `PreservesColimit₂` instances from #24685 can be inferred with the results of #24686 for the external product of diagrams defined in #24703
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24711.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24711* |
file-removed
t-category-theory
|
72/2 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Internal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Limits/Basic.lean,Mathlib/CategoryTheory/Monoidal/Limits/Preserves.lean |
4 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
21-58613 21 days ago |
21-58631 21 days ago |
44-47817 44 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$ |
161/146 |
Mathlib/GroupTheory/MonoidLocalization/Away.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/DivPairs.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean |
6 |
4 |
['github-actions', 'leanprover-community-bot-assistant'] |
ericrbg assignee:ericrbg |
21-58148 21 days ago |
21-58170 21 days ago |
138-48789 138 days |
26110 |
YaelDillies author:YaelDillies |
feat: sharp monoids |
Define sharp monoids, which are the monoids whose only unit is `1`. This concept is useful in log geometry and in particular shows up in the theory of affine monoids.
This concept already existed in the guise of `Subsingleton Mˣ`, but giving it a name makes it easier to refer to and uncovers some missing instances.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
51/30 |
Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Pi/Units.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/GroupWithZero/Divisibility.lean,Mathlib/Data/List/Prime.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/NumberTheory/DirichletCharacter/Basic.lean,Mathlib/RingTheory/ChainOfDivisors.lean,Mathlib/RingTheory/IntegralDomain.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/RingTheory/Valuation/Integers.lean |
18 |
2 |
['b-mehta', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
21-57583 21 days ago |
21-62863 21 days ago |
38-22514 38 days |
26021 |
vasnesterov author:vasnesterov |
feat(Data/Real): representation of reals from `[0, 1]` in positional system |
* Introduce `ofDigits {b : ℕ} (digits : ℕ → Fin b) : ℝ`, representing a real number of the form `0.d₀d₁d₂...` (where `dᵢ = digits i`) as an infinite sum.
* Prove that this sum converges to a number in the interval `[0, 1]`.
* Prove `ofDigits_close_of_common_prefix`: if the first `n` digits of two numbers are equal, then their difference is bounded by `b⁻ⁿ`.
* Introduce `Real.digits`, which converts a real number into its sequence of digits.
* Prove that `ofDigits (toDigits x b) = x`.
[Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/Base.20n.20expansion.20of.20real.20numbers.3F/near/502937293)
---
- [x] depends on: #26004
[](https://gitpod.io/from-referrer/)
|
t-data |
238/0 |
Mathlib.lean,Mathlib/Data/Real/OfDigits.lean,scripts/noshake.json |
3 |
11 |
['alreadydone', 'eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'vasnesterov', 'wwylele'] |
nobody |
21-55653 21 days ago |
24-70421 24 days ago |
24-70980 24 days |
26142 |
YaelDillies author:YaelDillies |
chore(GeomSum): split into ring vs field and non-ordered vs ordered parts |
The motivation here is that `Data.Nat.Multiplicity` needs the results about geometric sums of naturals, without wanting to know anything about fields.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
708/638 |
Archive/Imo/Imo1982Q3.lean,Archive/Imo/Imo2013Q5.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib.lean,Mathlib/Algebra/Field/GeomSum.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Field/GeomSum.lean,Mathlib/Algebra/Order/Ring/GeomSum.lean,Mathlib/Algebra/Ring/GeomSum.lean,Mathlib/Analysis/Polynomial/CauchyBound.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/SetFamily/KruskalKatona.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/LinearAlgebra/Projectivization/Cardinality.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/NumberTheory/Basic.lean,Mathlib/NumberTheory/FactorisationProperties.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/Multiplicity.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Index.lean,Mathlib/RingTheory/Idempotents.lean,Mathlib/RingTheory/IntegralDomain.lean,Mathlib/RingTheory/Nilpotent/Basic.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/Tactic/NormNum/Irrational.lean |
30 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
21-55380 21 days ago |
21-61856 21 days ago |
37-39543 37 days |
26057 |
YaelDillies author:YaelDillies |
feat: `mon_tauto`, a simp set to prove tautologies about a monoid object |
This simp set proves all tautologies involving (commutative) monoid objects in a (braided) monoidal category.
The general algorithm it follows is to push the associators `α_` and commutators `β_` inwards until they cancel against the right sequence of multiplications.
This approach is justified by the fact that a tautology in the language of (commutative) monoid objects "remembers" how it was proved: Every use of a (commutative) monoid object axiom inserts a unitor, associator or commutator, and proving a tautology simply amounts to undoing those moves as prescribed by the presence of unitors, associators and commutators in its expression.
This simp set is opiniated about its normal form and therefore cannot be used concurrently to some of the simp lemmas in the standard simp set.
As an example, we prove `tensorμ M M M M ≫ (μ ⊗ₘ μ) ≫ μ = (μ ⊗ₘ μ) ≫ μ`, the categorical equivalent of `mul_mul_mul_comm`.
From Toric
Co-authored-by: Andrew Yang
---
- [x] depends on: #26102
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
151/1 |
Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/Tactic/Attr/Register.lean,MathlibTest/CategoryTheory/Monoidal/MonTauto.lean,scripts/noshake.json |
4 |
11 |
['YaelDillies', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'robin-carlier'] |
nobody |
21-55372 21 days ago |
38-12347 1 month ago |
38-75203 38 days |
25779 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Bicategory/NaturalTransformations): strong and lax natural transformations of lax functors |
Given two lax functors `F G` between bicategories, we define lax natural transformations as families of 1-morphisms `∀ a : B, F.obj a ⟶ G.obj a` equipped with a naturality 2-cell `∀ {a b : B} (f : a ⟶ b), app a ≫ G.map f ⟶ F.map f ≫ app b` that are required to satisfy conditions such as naturality, and compatibility with the `mapId` and `mapComp` fields of the source and target functors.
This notion dualizes the existing notion of oplax natural transformations between, and tries to narrow the current gap between lax and oplax functors in the library, where the latter has much more formalized API. For maintainability, The code tries to stay as aligned as possible with the code in `CategoryTheory.Bicategory.Naturaltransformations.Oplax`.
---
I followed the book by Johnson and Yau for the definition.
I made @yuma-mizuno and @callesonne authors of the files, as they are the authors of the original code for Oplax functors, which I basically copy-pasted and modified to make it work with lax functors. They should feel free to modify this if they want.
Next thing on the list is to tackle modifications between lax/strong natural transforms of lax transforms, as well as the category instance on lax functors.
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #25565.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/25565* |
t-category-theory |
286/0 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,scripts/noshake.json |
3 |
3 |
['github-actions', 'yuma-mizuno'] |
nobody |
21-55072 21 days ago |
21-55117 21 days ago |
43-13486 43 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 |
68/51 |
Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,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/KrullDimension.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Moments/Variance.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/Topology/MetricSpace/Holder.lean,Mathlib/Topology/MetricSpace/HolderNorm.lean,MathlibTest/hint.lean |
17 |
20 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
21-51157 21 days ago |
70-55472 2 months ago |
120-48024 120 days |
25743 |
robin-carlier author:robin-carlier |
feat(AlgebraicTopology/SimplexCategory/Augmented): monoidal structure on `AugmentedSimplexCategory` |
We construct a monoidal category structure on `AugmentedSimplexCategory`. The tensor products corresponds to ordinal sum. We characterize morphisms out of a tensor product of object in terms of their precomposition with canonical maps `x ⟶ x ⊗ y` and `y ⟶ x ⊗ y` coming from the fact that the unit is an initial object.
When constructing this structure, we found that making `AugmentedSimplexCategory` an abbrev rather than a `def`
worked better.
---
- [x] depends on: #25742
Future work includes using this monoidal structure and Day convolution to define the join monoidal structure on augmented simplicial sets, and also using this category as a way to encode monoidal and monadic bar constructions.
Happy to discuss the fact that I had to make `AugmentedSimplexCategory` an abbrev, I can revert this but this makes the proofs a bit harder (but, I guess, also less abusing some of defeqs?).
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #22768.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/22768* |
t-topology
t-category-theory
|
523/111 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Monoidal.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean |
5 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'robin-carlier'] |
nobody |
21-41555 21 days ago |
21-56206 21 days ago |
41-7679 41 days |
25861 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/Action): action of opposite categories |
Given a monoidal category `C` and a category `D`, we show that left (resp. right) `C`-actions on `D` induce left (resp. right) `Cᵒᵖ`-actions on `Dᵒᵖ`. Conversely, we show that left/right actions of `Cᵒᵖ` on `Dᵒᵖ` induce left/right actions of `C` on `D`.
---
- [ ] depends on: #25860
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
272/0 |
Mathlib/CategoryTheory/Monoidal/Action/Opposites.lean |
1 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
21-32503 21 days ago |
21-32526 21 days ago |
21-36804 21 days |
25875 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/Action): actions as monoidal functors to endofunctors |
Given a monoidal category `C` and a category `D`, we show that left actions of `C` on `D` correspond to monoidal functors `C ⥤ (D ⥤ D)ᴹᵒᵖ` by showing that the composition of `curriedAction C D` with `mopFunctor` is monoidal, and in the other direction by defining an action of `C` on `D` out of the data of such a monoidal functor.
Similarly, we show that monoidal functors `C ⥤ (D ⥤ D)` correspond to right actions of `C` on `D`.
We use this to define the "evaluation" right action of `(C ⥤ C)` (with the composition monoidal structure) on `C` as the action corresponding to the identity functor `(C ⥤ C) ⥤ (C ⥤ C)`.
---
- [x] depends on: #25840
- [x] depends on: #25766
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
222/3 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Action/Basic.lean,Mathlib/CategoryTheory/Monoidal/Action/End.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean |
4 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
21-32342 21 days ago |
21-32360 21 days ago |
33-83244 33 days |
25267 |
YaelDillies author:YaelDillies |
feat: `counit (antipode a) = counit a` |
and unsimp `sum_antipode_mul_eq_algebraMap_counit`/`sum_mul_antipode_eq_algebraMap_counit` since they are annoying lemmas to fight against.
From Toric
Co-authored-by: Patrick Massot
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
51/18 |
Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/MonoidAlgebra.lean |
3 |
10 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
21-32222 21 days ago |
21-59986 21 days ago |
59-13160 59 days |
26653 |
Hagb author:Hagb |
feat(RingTheory/Finiteness/Defs): span of a set is finitely generated iff generated by a finite subset |
---
This PR continues the work from #24651.
Original PR: #24651.
[](https://gitpod.io/from-referrer/)
|
|
14/0 |
Mathlib/RingTheory/Finiteness/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
21-25827 21 days ago |
21-25852 21 days ago |
23-58052 23 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$ |
217/157 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Ideal.lean,Mathlib/RingTheory/HopkinsLevitzki.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean |
9 |
8 |
['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
21-9434 21 days ago |
21-12616 21 days ago |
143-49420 143 days |
26547 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform): more lemmas about isomorphisms of `CatCospanTransform` |
We construct ways to extract left, right or base components of ismorphisms of `CatCospanTransform`, as well as various `IsIso` instances, and lemmas allowing to compute the left, right or base component of the inverse of a `CatCospanTransformMorphism` that has an `IsIso` instance.
---
- [x] depends on: #26412
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
70/0 |
Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean |
1 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
20-56262 20 days ago |
21-49431 21 days ago |
21-52479 21 days |
24998 |
YaelDillies author:YaelDillies |
chore(Algebra/Notation): separate very basic lemmas about `Set.indicator` and `Pi.single` |
The very basic lemmas go under `Algebra.Notation` and do not import `Monoid`.
This is useful to disentangle `Finsupp` results downstream.
---
- [x] depends on: #25040
[](https://gitpod.io/from-referrer/)
|
file-removed |
719/640 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/Finset/Lemmas.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Equiv/TypeTags.lean,Mathlib/Algebra/Group/Fin/Tuple.lean,Mathlib/Algebra/Group/Finsupp.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Indicator.lean,Mathlib/Algebra/Group/Nat/Hom.lean,Mathlib/Algebra/Group/NatPowAssoc.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Support.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Module/Basic.lean,Mathlib/Algebra/Notation/FiniteSupport.lean,Mathlib/Algebra/Notation/Indicator.lean,Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Notation/Support.lean,Mathlib/Algebra/Order/Field/Pi.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Sub/Prod.lean,Mathlib/Algebra/Order/Sum.lean,Mathlib/Algebra/Ring/CharZero.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/CategoryTheory/Limits/Shapes/ZeroMorphisms.lean,Mathlib/Combinatorics/Additive/Dissociation.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Single.lean,Mathlib/Data/Int/CharZero.lean,Mathlib/Data/Set/Pointwise/Support.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/EventuallyConst.lean,Mathlib/Order/Interval/Set/Pi.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/Topology/Algebra/Indicator.lean,Mathlib/Topology/IndicatorConstPointwise.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/DisjointCover.lean |
56 |
13 |
['YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
20-52353 20 days ago |
20-52399 20 days ago |
61-2749 61 days |
24719 |
madvorak author:madvorak |
feat(LinearAlgebra/Matrix/NonsingularInverse): inverting `Matrix` inverts its `LinearEquiv` |
---
Discussion:
https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2324719.20cannot.20find.20home/with/517142655
|
t-algebra label:t-algebra$ |
10/0 |
Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean |
1 |
15 |
['eric-wieser', 'github-actions', 'madvorak'] |
nobody |
20-50957 20 days ago |
76-36146 2 months ago |
77-72373 77 days |
26746 |
alreadydone author:alreadydone |
feat(RingTheory): integral extensions of comm. rings are local homs |
migrated from #23684
---
The import increase only affects one file so I hope it's okay.
[](https://gitpod.io/from-referrer/) |
large-import |
59/66 |
Mathlib/Algebra/Field/Equiv.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/LinearAlgebra/Dimension/Localization.lean,Mathlib/NumberTheory/RamificationInertia/Unramified.lean,Mathlib/RingTheory/Artinian/Ring.lean,Mathlib/RingTheory/Ideal/Int.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 |
15 |
7 |
['alreadydone', 'github-actions', 'leanprover-bot', 'mariainesdff'] |
mariainesdff assignee:mariainesdff |
20-48424 20 days ago |
20-48424 20 days ago |
22-31989 22 days |
26607 |
vihdzp author:vihdzp |
feat(SetTheory/Cardinal/Aleph): characterization of initial successor ordinals |
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
5/0 |
Mathlib/SetTheory/Cardinal/Aleph.lean |
1 |
5 |
['github-actions', 'kckennylau', 'vihdzp'] |
nobody |
20-31415 20 days ago |
24-75971 24 days ago |
24-76017 24 days |
26770 |
Jun2M author:Jun2M |
feat(Combinatorics/Graph) : subgraph relations and operations on `Graph` |
This PR creates a new file `Combinatorics/Graph/Subgraph.lean`. In it, the PR introduces a partial order on graphs by subgraph relation, defines relations `IsInducedSubgraph`, `IsSpanningSubgraph` and `IsClosedSubgraph`. Further, it introduce operations `EdgeRestrict`, `EdgeDelete`, `induce` and `VertexDelete`.
Co-authored-by: Peter Nelson
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
703/0 |
Mathlib.lean,Mathlib/Combinatorics/Graph/Subgraph.lean |
2 |
1 |
['github-actions'] |
nobody |
20-16146 20 days ago |
22-4960 22 days ago |
22-5005 22 days |
26829 |
pechersky author:pechersky |
feat(RingTheory/Valuation): Valuation.leAddSubgroup and ideal/submodule versions of ltAddSubgroup |
Extracted from #25450 without changing how Valued works
---
[](https://gitpod.io/from-referrer/)
@faenuccio hopefully this bypasses any wait on #14752 because I am not changing Valued files. |
t-algebra label:t-algebra$ |
177/0 |
Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Integers.lean |
2 |
1 |
['github-actions'] |
nobody |
20-2255 20 days ago |
20-7773 20 days ago |
20-7829 20 days |
26822 |
jsm28 author:jsm28 |
feat(LinearAlgebra/AffineSpace): affine combinations and spans of images |
Add two lemmas about affine combinations and the spans of points in a subset of an indexed family.
```lean
/-- A point in the `affineSpan` of a subset of an indexed family is an
`affineCombination` with sum of weights 1, using only points in the given subset. -/
lemma eq_affineCombination_of_mem_affineSpan_image {p₁ : P} {p : ι → P} {s : Set ι}
(h : p₁ ∈ affineSpan k (p '' s)) :
∃ (fs : Finset ι) (w : ι → k), ↑fs ⊆ s ∧ ∑ i ∈ fs, w i = 1 ∧
p₁ = fs.affineCombination k p w := by
```
```lean
/-- If an affine combination of affinely independent points lies in the affine span of a subset
of those points, all weights outside that subset are zero. -/
lemma AffineIndependent.eq_zero_of_affineCombination_mem_affineSpan {p : ι → P}
(ha : AffineIndependent k p) {fs : Finset ι} {w : ι → k} (hw : ∑ i ∈ fs, w i = 1) {s : Set ι}
(hm : fs.affineCombination k p w ∈ affineSpan k (p '' s)) {i : ι} (hifs : i ∈ fs)
(his : i ∉ s) : w i = 0 := by
```
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/0 |
Mathlib/LinearAlgebra/AffineSpace/Combination.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean |
2 |
1 |
['github-actions'] |
nobody |
19-82333 19 days ago |
20-19573 20 days ago |
20-19557 20 days |
26785 |
TOMILO87 author:TOMILO87 |
feat: beta distribution |
Add the Beta distribution to the probability distributions in mathlib4.
This implementation includes:
- Definition of the Beta function over the reals
- The probability density function (PDF) of the Beta distribution
- Proof that the PDF integrates to 1
- The corresponding `Measure` and CDF
- Lemmas about measurability, positivity, and integrability
The Beta distribution is a family of continuous probability distributions defined on the interval [0, 1], parametrized by two positive shape parameters, `α` and `β`, that control the shape of the distribution.
This follows the general structure of other distributions in mathlib, such as the Gamma distribution.
---
This is a clean version of the PR originally opened as [#25608](https://github.com/leanprover-community/mathlib4/pull/25608) and temporarily migrated in [#26325](https://github.com/leanprover-community/mathlib4/pull/26325).
It includes:
- `456da1c`: Initial version of the distribution
- `c047aee`: Address review comments from @EtienneC30
- `f165c79`: Remove `ae` condition from `lintegral_betaPDF_eq`
- `7875f47`: Lint fix for unused simp args
This PR is rebased onto `master` and follows the fork-based workflow.
Thanks for your helpful comments earlier!
|
new-contributor
t-measure-probability
|
285/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Probability/Distributions/Beta.lean |
3 |
1 |
['github-actions'] |
nobody |
19-55668 19 days ago |
19-55668 19 days ago |
21-32525 21 days |
26841 |
xroblot author:xroblot |
feat(FieldTheory/IsGalois): map induced by the restriction to a subfield |
For `E/L` a field extension and `K` a subfield of `E`, we define the map `(E ≃ₐ[L] E) →* (K ≃ₐ[F] K)` induced by the restriction to `K` (with `F` a subfield of `K` and `L` such that `K/F` is normal) and study when it is injective and surjective.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
63/0 |
Mathlib/FieldTheory/Galois/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
19-54548 19 days ago |
19-54820 19 days ago |
19-54868 19 days |
25776 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprime `induction` in `Analysis` |
I think this is very marginally dependent on #25770. |
tech debt
t-analysis
|
256/208 |
Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ApproximatesLinearOn.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/SmoothSeries.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Radon.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean |
35 |
3 |
['Parcly-Taxel', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak'] |
nobody |
19-44712 19 days ago |
19-78684 19 days ago |
42-58861 42 days |
26765 |
KiringYJ author:KiringYJ |
feat(MeasureTheory/PiSystem): add π-λ theorem and SetLike instance |
Add two small features to `MeasureTheory/PiSystem`:
1. SetLike instance
`instance : SetLike (DynkinSystem α) (Set α)`
This lets us write `s ⊆ d` and `t ∈ d` for a DynkinSystem `d`, matching usual mathlib style.
2. `DynkinSystem.pi_lambda` lemma
Classical π‑λ theorem: if a π‑system `s` is contained in a Dynkin system `d`, every set measurable for `σ(s)` is also in `d`.
Currently, mathlib exposes this result only indirectly (e.g. via `generateFrom_eq`). Although logically equivalent, it is not obvious at first glance that those lemmas are the π‑λ theorem. The new lemma states the result in its familiar textbook form, so users can recognise and cite it immediately.
Both pieces are under 10 lines, term‑mode only, and do not modify existing APIs.
No breaking changes.
No dependencies.
|
new-contributor
t-measure-probability
easy
|
13/0 |
Mathlib/MeasureTheory/PiSystem.lean |
1 |
10 |
['KiringYJ', 'github-actions', 'ocfnash'] |
nobody |
19-33666 19 days ago |
19-56919 19 days ago |
22-17375 22 days |
26790 |
FlAmmmmING author:FlAmmmmING |
feat(Combinatorics/Enumerative/Bell.lean): define standard Bell number |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
38/1 |
Mathlib/Combinatorics/Enumerative/Bell.lean |
1 |
11 |
['AntoineChambert-Loir', 'FlAmmmmING', 'eric-wieser', 'github-actions', 'kckennylau', 'madvorak'] |
nobody |
19-28633 19 days ago |
21-25295 21 days ago |
21-25342 21 days |
26835 |
Vtec234 author:Vtec234 |
feat(Tactic): dependent rewriting ct'd |
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
---
Continued from #23930.
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 |
764/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DepRewrite.lean,MathlibTest/depRewrite.lean |
4 |
5 |
['Vtec234', 'github-actions', 'kmill', 'plp127'] |
nobody |
19-22168 19 days ago |
19-63733 19 days ago |
19-63785 19 days |
25856 |
MichaelStollBayreuth author:MichaelStollBayreuth |
perf(Data.Real.Sqrt): make Real.sqrt irreducible |
We try to see what happens if we make Real.sqrt irreducible.
There are cases where this makes unification very significantly faster, compare [#mathlib4 > Coercion triggers timeout @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Coercion.20triggers.20timeout/near/517177117).
(Migrated manually from #24752)
---
[](https://gitpod.io/from-referrer/)
|
migrated-from-branch
t-data
|
1/0 |
Mathlib/Data/Real/Sqrt.lean |
1 |
1 |
['github-actions'] |
nobody |
19-20924 19 days ago |
42-38273 1 month ago |
42-41978 42 days |
26158 |
upobir author:upobir |
feat(NumberTheory/Divisors): add int divisors |
This PR continues the work from #25209.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25209 |
t-number-theory |
101/4 |
Mathlib/NumberTheory/Divisors.lean |
1 |
34 |
['MichaelStollBayreuth', 'github-actions', 'upobir'] |
nobody |
19-12306 19 days ago |
37-33158 1 month ago |
37-33202 37 days |
26693 |
euprunin author:euprunin |
chore: golf Computability/ using `grind` |
|
t-computability |
5/24 |
Mathlib/Computability/Language.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PostTuringMachine.lean,Mathlib/Computability/Primrec.lean,Mathlib/Computability/RegularExpressions.lean |
5 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
19-5644 19 days ago |
19-5644 19 days ago |
23-18189 23 days |
26882 |
DavidLedvinka author:DavidLedvinka |
feat(Analysis): Additional `AsymptoticEquivalent` API |
Add four new theorems about asymptotic equivalence. These are used in the Brownian Motion project.
|
large-import
t-analysis
|
36/1 |
Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean |
2 |
1 |
['github-actions'] |
nobody |
19-4374 19 days ago |
19-10773 19 days ago |
19-10826 19 days |
26885 |
pechersky author:pechersky |
feat(Topology/ValuativeRel): ValuativeTopology 𝒪[K] |
and even when not a field, `ValuativeRel 𝒪[K]`
This is an example of something achievable with the new declarations that wasn't possible with Valued
Such that we can discuss the valuations on the subring without always using coercions
But to achieve this, one needs some juggling of the value groups
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #26834
|
t-algebra
t-topology
t-number-theory
label:t-algebra$ |
82/10 |
Mathlib/RingTheory/Valuation/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
18-35213 18 days ago |
18-36145 18 days ago |
0-331 5 minutes |
26909 |
gasparattila author:gasparattila |
feat(LinearAlgebra/Projectivization/Subspace): correspondence between linear and projective subspaces |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
51/3 |
Mathlib/LinearAlgebra/Projectivization/Subspace.lean |
1 |
1 |
['github-actions'] |
nobody |
18-11088 18 days ago |
18-11094 18 days ago |
18-11143 18 days |
26300 |
igorkhavkine author:igorkhavkine |
feat(Analysis/Calculus/FDeriv): continuous differentiability from continuous partial derivatives on an open domain in a product space |
If a function `f : E × F → G` is continuously differentiable, then its partial derivatives along `E` and `F` are also continuous. The non-trivial converse implication holds when the partial derivatives are continuous on an open domain, and they can be added together to give the total derivative of `f`. See this [#mathlib4 > Partial derivatives @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Partial.20derivatives/near/520995477) and the containing thread for some discussion. The PR creates a new import (`Mathlib.Analysis.Calculus.FDeriv.Partial`), where other results about partial derivatives could go in the future.
---
*this is the migration of #25304 to the PR-from-fork workflow*
- [x] depends on: #25564
- [x] depends on: #26273
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
365/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Partial.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean |
3 |
7 |
['YaelDillies', 'agjftucker', 'github-actions', 'igorkhavkine', 'mathlib4-dependent-issues-bot'] |
nobody |
18-2294 18 days ago |
30-54302 1 month ago |
31-40041 31 days |
25774 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprime `induction` in `AlgebraicTopology/CategoryTheory` |
Most replacements that are also in #23676 have been copied over, but some have been optimised further. |
tech debt |
131/122 |
Mathlib/AlgebraicTopology/DoldKan/Decomposition.lean,Mathlib/AlgebraicTopology/DoldKan/Degeneracies.lean,Mathlib/AlgebraicTopology/DoldKan/NCompGamma.lean,Mathlib/AlgebraicTopology/DoldKan/Projections.lean,Mathlib/AlgebraicTopology/SimplexCategory/MorphismProperty.lean,Mathlib/AlgebraicTopology/SimplicialObject/Split.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/Subobject.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Action/Monoidal.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Galois/Decomposition.lean,Mathlib/CategoryTheory/Galois/EssSurj.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/SequentialProduct.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Quotient.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Basic.lean |
27 |
5 |
['Parcly-Taxel', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak'] |
nobody |
17-69958 17 days ago |
17-69979 17 days ago |
42-55393 42 days |
22322 |
mariainesdff author:mariainesdff |
feat(RingTheory/DividedPowers/RatAlgebra): add definitions |
In this file we show that, for certain choices of a commutative (semi)ring `A` and an ideal `I` of
`A`, the family of maps `ℕ → A → A` given by `fun n x ↦ x^n/n!` is a divided power structure on `I`.
Co-authored-by: AntoineChambert-Loir
---
- [x] depends on: #22237
- [x] depends on: #22239
- [x] depends on: #22240
- [x] depends on: #24439
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
324/2 |
Mathlib.lean,Mathlib/Data/Nat/Factorial/NatCast.lean,Mathlib/RingTheory/DividedPowers/RatAlgebra.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
17-51883 17 days ago |
17-54018 17 days ago |
24-84716 24 days |
25830 |
ScottCarnahan author:ScottCarnahan |
refactor (RingTheory/HahnSeries/HEval): remove positive order condition from definition |
This PR removes the positive order condition for substitution (or Hahn evaluation) of a Hahn series into a power series. When the order is not positive, the function substitutes zero. We also add short lemmas for substitution into `PowerSeries.X` and `PowerSeries.C`.
---
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24498.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24498* |
t-algebra label:t-algebra$ |
34/15 |
Mathlib/RingTheory/HahnSeries/HEval.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
17-51003 17 days ago |
19-17589 19 days ago |
41-21259 41 days |
26928 |
vihdzp author:vihdzp |
feat(Topology/Order/Basic): lower set in well-order is open |
As well as the other analogous theorems.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
37/0 |
Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Order/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
17-44717 17 days ago |
17-46857 17 days ago |
17-47046 17 days |
26934 |
mariainesdff author:mariainesdff |
feat(RingTheory/DedekindDomain/Ideal): add HeightOneSpectrum.ofPrime |
Previously #24036.
Co-authored-by: @Louddy
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
9/0 |
Mathlib/RingTheory/DedekindDomain/Ideal.lean |
1 |
2 |
['github-actions', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
17-32555 17 days ago |
17-36121 17 days ago |
17-36178 17 days |
26936 |
mariainesdff author:mariainesdff |
feat(RingTheory/DividedPowes/SubDPIdeal): complete lattice and quotients |
We show that sub-dp-ideals of a divided power ideal `I` of a ring `A` form a complete lattice under inclusion.
Given an ideal `J` of `A`, we construct the divided power structure on the ideal `I(A⧸J)` of the quotient, provided that `I ⊓ J` is a sub-dp-ideal of `I`.
Co-authored-by: @AntoineChambert-Loir
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
314/16 |
Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean |
2 |
1 |
['github-actions'] |
nobody |
17-27318 17 days ago |
17-31552 17 days ago |
17-31604 17 days |
26938 |
JovanGerb author:JovanGerb |
chore(gcongr): set `synthAssignedInstances := false` |
`synthAssignedInstances` is set to false in `congr` and `congr!` (when applying `@[congr]` lemmas). So it is natural to do the same in `gcongr` (when applying `@[gcongr]` lemmas). This should also marginally improve performance.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
2/1 |
Mathlib/Tactic/GCongr/Core.lean |
1 |
4 |
['JovanGerb', 'github-actions', 'leanprover-bot'] |
nobody |
17-8504 17 days ago |
17-11301 17 days ago |
17-24781 17 days |
26814 |
KiringYJ author:KiringYJ |
feat(MeasureTheory): expose `m.SigmaAlgebra` and `IsSigmaAlgebra` |
(New PR opened because I mis-clicked “Merge” on the previous branch and had to revert it.)
This PR introduces a lightweight API for treating the σ‑algebra of a `MeasurableSpace` as a plain `Set (Set α)`, plus a semantic predicate `IsSigmaAlgebra` and small bridges between bundled and un‑bundled views.
#### Motivation
The immediate goal is to prepare for a formalization of the **monotone class theorem**. With `m.SigmaAlgebra` and the `IsSigmaAlgebra` predicate, one can state the theorem as a clean equality of families of sets, e.g.
```lean
SigmaAlgebra.generateFrom G = MonotoneClass.generateFrom G
```
rather than the more cumbersome phrasing "`s` is measurable ↔ `s` belongs to the smallest monotone class containing `G`". The helpers in this PR make those equalities ergonomic and reusable.
#### What’s new
- **`m.SigmaAlgebra`** – the collection of all `m`‑measurable sets, exposed as a value of type `Set (Set α)`. Lets you write `s ∈ m.SigmaAlgebra` instead of `MeasurableSet[m] s`.
- **`IsSigmaAlgebra F`** – predicate saying that a family of sets `A` is already a σ‑algebra, defined by `(generateFrom F).SigmaAlgebra = F`.
- **`generateFrom_sigmaAlgebra_eq`** – idempotence lemma `generateFrom m.SigmaAlgebra = m` (`@[simp]`).
- Boolean‑algebra instance on `m.SigmaAlgebra` (alias of the existing subtype instance).
- Helper lemmas:
- `Subtype.mem_sigma` – bundled measurable set ∈ `m.SigmaAlgebra`.
- `Set.toMeasurableSubtype` – wrap a membership proof into the subtype.
#### House‑keeping
- Removed two obsolete `noncomputable` keywords from `Mathlib/MeasureTheory/MeasurablyGenerated.lean`; the affected instances are now computable.
#### Notes
- **No breaking changes**: the new definitions are additive; existing code continues to compile unchanged.
- **No dependencies on other PRs**: this patch is self‑contained. |
new-contributor
t-measure-probability
|
86/3 |
Mathlib.lean,Mathlib/MeasureTheory/MeasurableSpace/MeasurablyGenerated.lean,Mathlib/MeasureTheory/MeasurableSpace/SigmaAlgebra.lean |
3 |
1 |
['github-actions'] |
nobody |
16-62337 16 days ago |
20-51306 20 days ago |
20-51352 20 days |
26956 |
mariainesdff author:mariainesdff |
feat(RingTheory/DividedPowers/Basic): add divided power structure on pZp |
We construct a divided power structure on the ideal `(p) ⊆ ℤ_[p]`, given by the family of maps `fun n x ↦ x^n / n!`.
Co-authored-by: @AntoineChambert-Loir
---
[](https://gitpod.io/from-referrer/)
|
|
561/2 |
Mathlib.lean,Mathlib/Data/Nat/Factorial/NatCast.lean,Mathlib/RingTheory/DividedPowers/Padic.lean,Mathlib/RingTheory/DividedPowers/RatAlgebra.lean |
4 |
1 |
['github-actions'] |
nobody |
16-48346 16 days ago |
16-48353 16 days ago |
16-50696 16 days |
26941 |
pechersky author:pechersky |
chore(GroupWithZero/WithZero): use `recZeroCoe` for `WithZero.lift'` |
gives better simps apply lemmas
---
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
label:t-algebra$ |
2/4 |
Mathlib/Algebra/GroupWithZero/WithZero.lean |
1 |
3 |
['github-actions', 'kbuzzard', 'pechersky'] |
nobody |
16-26763 16 days ago |
17-19993 17 days ago |
17-20060 17 days |
26881 |
emo916math author:emo916math |
feat(Analysis/Calculus/Deriv/Star) A formula for `deriv (conj ∘ f ∘ conj)` |
Added a lemma that `deriv (conj ∘ f ∘ conj) = conj ∘ deriv f ∘ conj`, proved by cases on whether the derivative mathematically exists or not. This PR replaces [#26805](https://github.com/leanprover-community/mathlib4/pull/26805); see discussion there.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
50/2 |
Mathlib/Analysis/Calculus/Deriv/Star.lean |
1 |
7 |
['emo916math', 'github-actions', 'kckennylau'] |
nobody |
16-14218 16 days ago |
19-11256 19 days ago |
19-11301 19 days |
26022 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/MvPolynomial/Groebner): add docstring and a particular case |
* add a new division theorem when one divides by a single polynomial
* add docstrings to the three division theorems
This PR continues the work from #24819.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24819 |
t-algebra label:t-algebra$ |
27/3 |
Mathlib/RingTheory/MvPolynomial/Groebner.lean |
1 |
2 |
['AntoineChambert-Loir', 'github-actions'] |
nobody |
16-586 16 days ago |
39-40653 1 month ago |
39-40703 39 days |
26368 |
Whysoserioushah author:Whysoserioushah |
feat(RingTheory/TwoSidedIdeal/SpanAsSum): span of set as finsum |
Reopened after everything moved to fork (#23320).
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
81/0 |
Mathlib.lean,Mathlib/RingTheory/TwoSidedIdeal/SpanAsSum.lean |
2 |
5 |
['github-actions', 'kckennylau'] |
nobody |
15-75790 15 days ago |
32-15509 1 month ago |
32-15556 32 days |
26945 |
gasparattila author:gasparattila |
feat(LinearAlgebra/AffineSpace/AffineSubspace): basic properties of `sInf` and `iInf` |
These properties are analogous to the existing ones for the binary infimum.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
48/1 |
Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean |
1 |
4 |
['Ruben-VandeVelde', 'gasparattila', 'github-actions'] |
nobody |
15-52038 15 days ago |
17-17054 17 days ago |
17-17101 17 days |
26986 |
WangYiran01 author:WangYiran01 |
feat(Partition): add bijection for partitions with max part ≤ r |
## Summary
This PR adds a new theorem `partition_max_equals_bound` to `Mathlib.Combinatorics.Enumerative.Partition`.
It constructs a bijection between:
- The set of partitions of `n` in which `r ∈ π.parts` and all parts are `≤ r`, and
- The set of partitions of `n - r` whose largest part is at most `r`.
This provides a constructive proof via removing/adding `r` from/to the partition multiset, in line with classical enumerative combinatorics.
## Implementation notes
- The proof uses `Multiset.erase` and `Multiset.cons` with basic properties of `sum`, `sup`, and `Partition` structures.
- The bijection is implemented explicitly via `f` and `g`, and proven mutually inverse via `Subtype.ext`.
## Linting
- [x] Passes `lake build`
- [x] Linter clean (no commandStart or longLine issues)
## Author
Contributed by Yiran Wang.
|
new-contributor
t-combinatorics
|
85/0 |
Mathlib/Combinatorics/Enumerative/Partition.lean |
1 |
2 |
['WangYiran01', 'github-actions'] |
nobody |
15-48490 15 days ago |
15-49855 15 days ago |
15-49900 15 days |
26988 |
YaelDillies author:YaelDillies |
feat(Rel): more API |
Some of this API already exists in `Topology.UniformSpace.Defs` but not spelled with `Rel`, some of it was written for #24173.
---
`Topology.UniformSpace.Defs` will be refactored to use these new lemmas in #23181.
[](https://gitpod.io/from-referrer/)
|
t-data |
169/7 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Data/Rel.lean |
2 |
1 |
['github-actions'] |
nobody |
15-41827 15 days ago |
15-45652 15 days ago |
15-45704 15 days |
26827 |
pechersky author:pechersky |
feat(Analysis/Normed/ValuativeRel): helper instance for NormedField |
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #26713
- [x] depends on: #26826
|
t-algebra
t-analysis
t-number-theory
label:t-algebra$ |
238/25 |
Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
3 |
11 |
['ADedecker', 'adamtopaz', 'github-actions', 'mathlib4-dependent-issues-bot', 'pechersky'] |
nobody |
15-38790 15 days ago |
19-15616 19 days ago |
19-15881 19 days |
24730 |
YaelDillies author:YaelDillies |
feat(RingTheory): group-like elements |
Define group-like elements in a bialgebra, ie elements such that `η a = 1` and `Δ a = a ⊗ₜ a`.
We prove that group-like elements of a coalgebra over a domain are linearly independent, group-like elements of a bialgebra form a monoid, group-like elements of a Hopf algebra form a group.
From Toric
Co-authored-by: Michał Mrugała
---
- [x] depends on: #24747
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
309/0 |
Mathlib.lean,Mathlib/RingTheory/Bialgebra/GroupLike.lean,Mathlib/RingTheory/Coalgebra/GroupLike.lean,Mathlib/RingTheory/HopfAlgebra/GroupLike.lean |
4 |
33 |
['Julian-Kuelshammer', 'Parcly-Taxel', 'YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot', 'smorel394'] |
nobody |
15-38481 15 days ago |
77-4213 2 months ago |
77-5767 77 days |
26201 |
scholzhannah author:scholzhannah |
feat: subcomplexes of a classical CW complex |
This PR defines subcomplexes of a (classical relative) CW complex to be a closed subspace which is a union of open cells. It provides additional definitions for alternative ways to describe subcomplexes. Lastly, it refactors the definition of the skeleton to define it as a subcomplex.
Co-authored-by: Floris van Doorn
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
213/25 |
Mathlib/Topology/CWComplex/Classical/Basic.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
15-37768 15 days ago |
15-37790 15 days ago |
34-63130 34 days |
27000 |
gasparattila author:gasparattila |
feat(Analysis/Normed/Group/Quotient): isometric versions of isomorphisms |
This PR adds an isometric version of the third isomorphism theorem for groups and modules.
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-analysis
|
49/2 |
Mathlib/Analysis/Normed/Group/Quotient.lean |
1 |
1 |
['github-actions'] |
nobody |
15-32618 15 days ago |
15-32620 15 days ago |
15-32673 15 days |
27008 |
oliver-butterley author:oliver-butterley |
feat(Dynamics): add `comp_iterate_integrable` |
If an observable is integrable then the observable formed by composing with iterates of a measure preserving map is also integrable.
Co-authored-by: Lua Viana Reis me@lua.blog.br
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics |
34/0 |
Mathlib.lean,Mathlib/Dynamics/MeasurePreserving/Lemmas.lean |
2 |
1 |
['github-actions'] |
nobody |
15-20838 15 days ago |
15-20847 15 days ago |
15-20895 15 days |
26101 |
xroblot author:xroblot |
feat(NumberField): specialized version of Kummer Dedekind for the splitting of prime numbers |
We prove a specialized version of [KummerDedekind.normalizedFactorsMapEquivNormalizedFactorsMinPolyMk](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/KummerDedekind.html#KummerDedekind.normalizedFactorsMapEquivNormalizedFactorsMinPolyMk) for the splitting of rational prime numbers in number fields.
This PR continues the work from #25038.
---
- [ ] depends on: #26137 |
t-number-theory |
172/2 |
Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/Ideal/Over.lean |
5 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'xroblot'] |
nobody |
15-2696 15 days ago |
15-2713 15 days ago |
0-50 50 seconds |
25970 |
wwylele author:wwylele |
feat(RingTheory): decompose archimedean classes of HahnSeries |
In preparation for #25140, this connects archimedean class and HahnSeries
---
- [x] depends on: #26773
- [x] depends on: #26787
- [x] depends on: #26788
- [x] depends on: #26789
[](https://gitpod.io/from-referrer/)
|
large-import |
367/2 |
Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/RingTheory/HahnSeries/Lex.lean |
2 |
6 |
['ScottCarnahan', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'wwylele'] |
nobody |
14-78624 14 days ago |
14-80157 14 days ago |
33-26351 33 days |
27019 |
Komyyy author:Komyyy |
feat: T1 Alexandrov-discrete topology is discrete |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
24/0 |
Mathlib.lean,Mathlib/Topology/Separation/AlexandrovDiscrete.lean |
2 |
1 |
['github-actions'] |
nobody |
14-64674 14 days ago |
14-64976 14 days ago |
14-64961 14 days |
26272 |
ajirving author:ajirving |
feat(NumberTheory/LucasLehmer): prove converse direction to Lucas-Lehmer |
Proves the converse direction of the Lucas-Lehmer test, namely that the Lucas-Lehmer criterion is a necessary condition for a Mersenne prime.
Adds a couple of examples of proving Mersenne numbers are composite using this.
Proves that if `2^p-1` is prime then `p` is prime.
---
* I wasn't sure how many examples to add given that there are many more Mersenne composites than primes.
* There are a number of annoying coercions between different rings, any simplifications will be appreciated.
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-number-theory
|
226/5 |
Archive/Examples/MersennePrimes.lean,Mathlib/NumberTheory/LucasLehmer.lean |
2 |
12 |
['github-actions', 'kckennylau'] |
nobody |
14-58453 14 days ago |
34-27874 1 month ago |
34-27921 34 days |
26838 |
vlad902 author:vlad902 |
feat: add lemmas about `List.scanr` |
This PR continues the work from #25188.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25188 |
t-data |
84/19 |
Mathlib/Data/List/Scan.lean |
1 |
12 |
['github-actions', 'vihdzp', 'vlad902'] |
nobody |
14-54518 14 days ago |
19-57027 19 days ago |
19-57082 19 days |
24015 |
alreadydone author:alreadydone |
feat(RingTheory): lemmas on finiteness of `LinearMap` and `Module.End` |
---
One less lemma than #24012, but with the advantage of not depending on #23963.
- [x] depends on: #24115
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
137/81 |
Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/LinearAlgebra/BilinearMap.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/SimpleModule/Basic.lean |
7 |
19 |
['alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mathlib4-dependent-issues-bot'] |
erdOne assignee:erdOne |
14-53837 14 days ago |
59-83744 1 month ago |
102-31087 102 days |
27030 |
YaelDillies author:YaelDillies |
refactor: use `Algebra.FiniteType` as a class |
Assumptions are currently being passed explicitly, which is quite odd.
Also generalise the ~lemmas~ instances about `Polynomial`, `MvPolynomial`, etc... to be about two rings instead of one.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
53/46 |
Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Extension/Cotangent/Basic.lean,Mathlib/RingTheory/FiniteType.lean |
3 |
1 |
['github-actions'] |
nobody |
14-31014 14 days ago |
14-32637 14 days ago |
14-32633 14 days |
27042 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: some WithZero lemmas |
Co-authored-by: matthewjasper <20113453+matthewjasper@users.noreply.github.com>
Co-authored-by: Salvatore Mercuri
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-algebra
label:t-algebra$ |
54/1 |
Mathlib/Algebra/Order/GroupWithZero/Canonical.lean |
1 |
1 |
['github-actions'] |
nobody |
14-13195 14 days ago |
14-13204 14 days ago |
14-13250 14 days |
25786 |
Parcly-Taxel author:Parcly-Taxel |
feat: IMO 2001 Q4 |
|
IMO |
138/4 |
Archive.lean,Archive/Imo/Imo2001Q4.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean |
3 |
6 |
['Parcly-Taxel', 'dwrensha', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
13-65151 13 days ago |
19-79418 19 days ago |
42-58591 42 days |
27047 |
YaelDillies author:YaelDillies |
feat: `MonoidHom.toAdditive''` as a `MulEquiv` |
From Toric
---
I haven't yet been very thorough with the new lemmas. I first want to hear thoughts about the names
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
31/7 |
Mathlib/Algebra/Group/TypeTags/Hom.lean |
1 |
1 |
['github-actions'] |
nobody |
13-60093 13 days ago |
13-60110 13 days ago |
14-5568 14 days |
24527 |
matthewjasper author:matthewjasper |
feat(Topology/Algebra/Module): Add more theorems for IsModuleTopology |
Add theorems that surjective linear maps to the module topology are open.
Add IsModuleTopology instance for quotients.
Add IsModuleTopology instance for finite dimensional T2 vector spaces over a complete normed field and use it to shorten some proofs.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
t-topology
label:t-algebra$ |
48/24 |
Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/ModuleTopology.lean |
2 |
7 |
['erdOne', 'github-actions', 'matthewjasper', 'riccardobrasca'] |
nobody |
13-38925 13 days ago |
84-41540 2 months ago |
86-9837 86 days |
26580 |
vasnesterov author:vasnesterov |
feat(Tactic/Order): translate linear orders to `Int` |
It was [pointed out](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/tactic.20for.20partial.20orders/near/515897754) that `order` is not complete for linear orders with lattice operations (while it remains complete for linear orders without lattice operations and for general lattices without assuming linearity). The problem for linear orders with lattice operations is NP-hard, but it can be translated from an arbitrary type to `Int` and then solved using a smart and efficient procedure (such as `omega`). This PR implements such a translation within the `order` tactic.
Co-authored-by: Aaron Liu
---
- [x] depends on: #26354
[](https://gitpod.io/from-referrer/) |
large-import
t-meta
|
302/22 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/Graph/Basic.lean,Mathlib/Tactic/Order/Preprocessing.lean,Mathlib/Tactic/Order/ToInt.lean,MathlibTest/order.lean |
7 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'vasnesterov'] |
nobody |
13-36258 13 days ago |
13-48166 13 days ago |
13-49867 13 days |
26899 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Functor/KanExtension): transitivity of left Kan extensions |
In this PR, we show that left Kan extensions are "transitive" in the following sense : if `α : F₀ ⟶ L ⋙ F₁` exhibits `F₁` as a left Kan extension of `F₀` along `L : C ⥤ D`, then given a functor `L' : D ⥤ D'` an an extension `(β : F₁ ⟶ L' ⋙ F₂)`, the "pasted extension" formed by `α` and `β` exhibits `F₂` as a left Kan extension of `F₀` along `L ⋙ L'` if and only if `β` exhibits `F₂` as a left Kan extension of `F₁` along `L'`. This refines the current theorems in mathlib that only treat the case where we pre or post-compose by an equivalence.
The actual statement we prove is "fully weak" and lets us pick a functor isomorphic to `L ⋙ L'` and an extension isomorphic to the pasted one if needed.
---
I will PR the dual version of everything for right Kan extensions as soon as we settle on the final form of this one.
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
144/0 |
Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean |
1 |
8 |
['github-actions', 'joelriou', 'robin-carlier'] |
nobody |
13-34169 13 days ago |
13-34169 13 days ago |
16-5400 16 days |
27049 |
BoltonBailey author:BoltonBailey |
doc(Analysis/BoxIntegral/Partition/Filter): field docstrings |
Split of #25917. Adds docstrings to the fields of this structure (Taken from the docstring of the structure itself). Note: this documentation was originally changed by asking Cursor (Claude 3.5 sonnet) to write the docstrings, but I think ultimately the docstring of the struct was reworked.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
13/14 |
Mathlib/Analysis/BoxIntegral/Partition/Filter.lean |
1 |
2 |
['BoltonBailey', 'github-actions'] |
nobody |
12-86072 12 days ago |
14-2164 14 days ago |
14-2385 14 days |
26968 |
vihdzp author:vihdzp |
feat(Order/Concept): sets in a concept are codisjoint |
...and other small lemmata.
---
- [x] depends on: #26976
[](https://gitpod.io/from-referrer/)
|
t-order |
33/2 |
Mathlib/Order/Concept.lean |
1 |
8 |
['github-actions', 'leanprover-community-bot-assistant', 'linesthatinterlace', 'mathlib4-dependent-issues-bot', 'plp127', 'vihdzp'] |
nobody |
12-83780 12 days ago |
12-83796 12 days ago |
13-26949 13 days |
27073 |
pechersky author:pechersky |
feat(Archive/Examples/Local): files showcasing properties of local fields |
for p-adics, completions of number fields, laurent series, and fraction rings of witt vectors
Should get filled in as more data/instances are declared
---
[](https://gitpod.io/from-referrer/)
|
|
139/0 |
Archive.lean,Archive/Examples/Local/Laurent.lean,Archive/Examples/Local/NumberField.lean,Archive/Examples/Local/Padic.lean,Archive/Examples/Local/Witt.lean |
5 |
1 |
['github-actions'] |
nobody |
12-76939 12 days ago |
13-31109 13 days ago |
13-31092 13 days |
27110 |
pechersky author:pechersky |
chore(Valued/WithVal): apply_symm_equiv |
valuation on the WIthVal is equal to the underlying valuation and simp tag
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
t-number-theory
easy
label:t-algebra$ |
4/0 |
Mathlib/Topology/Algebra/Valued/WithVal.lean |
1 |
1 |
['github-actions'] |
nobody |
12-68524 12 days ago |
12-68527 12 days ago |
12-68582 12 days |
27109 |
pechersky author:pechersky |
feat(RingTheory/AdicValuation): valuation_surjective |
for both the base valuation and the one on the extension
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
t-number-theory
label:t-algebra$ |
31/0 |
Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean |
2 |
1 |
['github-actions'] |
nobody |
12-68514 12 days ago |
12-68514 12 days ago |
12-68596 12 days |
25814 |
vlad902 author:vlad902 |
feat(SimpleGraph): Weaker condition for paths in acyclic graphs |
`IsAcyclic.isPath_iff_chain'` defines a weaker condition for proving that a walk is a path, in particular it shows that rather than proving that all vertices in the support of a walk are distinct, one must only show that consecutive edges are distinct (e.g. every other vertex must be distinct.) This leads to a simple corollary that trails are also paths in acyclic graphs.
I had a need for this when formalizing Cayley graphs, since this condition maps cleanly onto words in free groups being reduced.
---
*This PR continues the work from #25630.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/25630* |
t-combinatorics |
43/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean |
2 |
2 |
['github-actions', 'vlad902'] |
nobody |
12-62152 12 days ago |
44-32080 1 month ago |
44-32064 44 days |
27120 |
YaelDillies author:YaelDillies |
feat: the category of commutative bialgebras |
Define the bundled category `CommBialgCat R` of commutative bialgebras over a fixed commutative ring `R` along with the forgetful functor to `CommAlgCat`.
From Toric
Co-authored-by: Andrew Yang
Co-authored-by: Michał Mrugała
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
235/0 |
Mathlib.lean,Mathlib/Algebra/Category/CommBialgCat.lean |
2 |
1 |
['github-actions'] |
nobody |
12-58988 12 days ago |
12-58988 12 days ago |
12-59059 12 days |
27126 |
YaelDillies author:YaelDillies |
chore(CategoryTheory/Monoidal): unify `mkIso` |
Previously, `mkIso` and `mkIso'` meant different things across the various types of objects. Now:
* `mkIso'` takes in elements `X`, `Y` of the underlying category `C`, an isomorphism `e : X ≅ Y` and a typeclass assumption `[IsMon_Hom e.hom]` and returns `mk X ≅ mk Y`,
* `mkIso` is an `abbrev` for `mkIso'`, taking in elements `X`, `Y` of `Obj C`, an isomorphism `e : X.X ≅ Y.X` and the proof fields of `IsMon_Hom e.hom` and returns `X ≅ Y`.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
66/66 |
Mathlib/CategoryTheory/Monoidal/Bimon_.lean,Mathlib/CategoryTheory/Monoidal/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/CommMon_.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean |
5 |
1 |
['github-actions'] |
nobody |
12-43846 12 days ago |
12-44391 12 days ago |
12-44385 12 days |
26955 |
mariainesdff author:mariainesdff |
feat(LinearAlgebra/OnSup): extend linear maps to sums of modules |
Let `A` be a ring, `X, Y` be `A`-modules, and `M, N` be `A`-submodules of `X`.
Given two linear maps `f : M →ₗ[A] Y` and `g : N →ₗ[A] Y` that agree on `M ∩ N`, there is a unique linear map `M + N →ₗ[A] Y` that simultaneously extends `f` and `g`.
Co-authored-by: @AntoineChambert-Loir
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
153/0 |
Mathlib.lean,Mathlib/LinearAlgebra/OnSup.lean |
2 |
15 |
['AntoineChambert-Loir', 'eric-wieser', 'github-actions', 'wwylele'] |
nobody |
12-42535 12 days ago |
12-42602 12 days ago |
13-7110 13 days |
26961 |
mariainesdff author:mariainesdff |
feat(RingTheory/PowerSeries/Substitution): add API |
Co-authored-by: @AntoineChambert-Loir
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
62/1 |
Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean |
2 |
5 |
['Ruben-VandeVelde', 'github-actions', 'mariainesdff'] |
nobody |
12-39413 12 days ago |
16-45035 16 days ago |
16-45086 16 days |
27059 |
Komyyy author:Komyyy |
feat: Linear upper or lower sets topologies are completely normal |
The primary motivation for this theorem is to prove that Sierpiński space is completely normal.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
77/1 |
Mathlib.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean,Mathlib/Topology/Separation/LinearUpperLowerSetTopology.lean |
3 |
1 |
['github-actions'] |
nobody |
12-35404 12 days ago |
13-59829 13 days ago |
13-59813 13 days |
27003 |
eric-wieser author:eric-wieser |
chore: use `Simp.ResultQ` more often |
Also uses `~q` in place of manual `isDefEq` matching.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
18/22 |
Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/ReduceModChar.lean |
3 |
2 |
['eric-wieser', 'github-actions'] |
nobody |
12-29712 12 days ago |
15-27939 15 days ago |
15-27923 15 days |
27108 |
pechersky author:pechersky |
chore(RingTheory/AdicValuation): golf using WithZero.log |
with helper lemma of how `log` preserves order
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-number-theory
label:t-algebra$ |
15/16 |
Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean |
2 |
2 |
['YaelDillies', 'github-actions'] |
nobody |
12-29128 12 days ago |
12-29128 12 days ago |
12-38920 12 days |
27136 |
plp127 author:plp127 |
chore: mark argument explicit in `LinearOrder.toBiheytingAlgebra` |
Mark `α : Type*` explicit in `LinearOrder.toBiheytingAlgebra`. This matches better with what other similar reducible non-instances have.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
17/14 |
Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/Order/Heyting/Basic.lean |
6 |
1 |
['github-actions'] |
nobody |
12-27745 12 days ago |
12-27886 12 days ago |
12-27882 12 days |
27137 |
YaelDillies author:YaelDillies |
feat(CategoryTheory/Monoidal: an isomorphism of group objects is an isomorphim of the underlying objects |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
12/0 |
Mathlib/CategoryTheory/Monoidal/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/CommMon_.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean |
4 |
1 |
['github-actions'] |
nobody |
12-27155 12 days ago |
12-27208 12 days ago |
12-27208 12 days |
27113 |
pechersky author:pechersky |
feat(RingTheory/SimpleRing/Principal): a commutative simple ring is a PID |
via `IsField` and new `IsField.isDomain`
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
41/2 |
Mathlib.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/SimpleRing/Principal.lean |
4 |
4 |
['alreadydone', 'github-actions'] |
nobody |
12-25470 12 days ago |
12-66874 12 days ago |
12-66869 12 days |
26282 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat: a theorem of Jordan on primitive subgroups of the permutation group |
A theorem of Jordan on the primitive subgroups of a permutation group:
* if it contains a swap, it is equal to the permutation group,
* if it contains a 3-cycle, it contains the alternating group.
This PR continues the work from #24131.
- [x] depends on: #26281
- [x] depends on: #26280
- [x] depends on: #26279
Original PR: https://github.com/leanprover-community/mathlib4/pull/24131
[](https://gitpod.io/from-referrer/) |
large-import |
1084/183 |
Mathlib.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/GroupAction/Jordan.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/Primitive.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/SetTheory/Cardinal/Embedding.lean |
10 |
n/a |
['AntoineChambert-Loir', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'tb65536'] |
nobody |
12-24535 12 days ago |
unknown |
unknown |
27118 |
Timeroot author:Timeroot |
feat(Matrix/Charpoly/Eigs): Roots of Matrix.charpoly are the eigenvalues. |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
58/0 |
Mathlib/LinearAlgebra/Matrix/Charpoly/Eigs.lean,scripts/noshake.json |
2 |
1 |
['github-actions'] |
nobody |
12-21928 12 days ago |
12-61429 12 days ago |
12-61473 12 days |
25910 |
themathqueen author:themathqueen |
feat(Algebra/Ring/Idempotent): subtraction lemmas for idempotents and star projections |
This allows us to use subtraction with idempotents and star projections.
For idempotents `p,q`, `q - p` is idempotent when `p * q = p = q * p`.
For star projections `p,q`, `q - p` is a star projection when either `p * q = p` or `q * p = p`. In a star-ordered ring, when `p * q = p` or `q * p = p` we get `p ≤ q`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
70/0 |
Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Ring/Idempotent.lean,Mathlib/Algebra/Star/StarProjection.lean |
3 |
23 |
['github-actions', 'tb65536', 'themathqueen'] |
nobody |
12-15733 12 days ago |
26-63485 26 days ago |
29-11247 29 days |
27090 |
TerenceGitH author:TerenceGitH |
feat(Topology, Archive/Examples): Kuratowski's closure-complement theorem (incl. sharpness) |
This is the outcome of a course project at Heidelberg University: https://matematiflo.github.io/CompAssistedMath2025/
feat(Topology): Kuratowski's closure-complement theorem
"Topology/Kuratowski.lean" proves Kuratowski's closure-complement theorem, which says that if one repeatedly applies the closure and complement operators to a set in a topological space, at most 14 distinct sets can be obtained.
feat(Archive/Examples): sharpness of Kuratowski's closure-complement theorem:
"Examples/Kuratowski.lean" gives an example of a so-called "14-set" in ℝ, from which exactly 14 distinct sets can be obtained.
Co-authored-by: Luis Sand @luiis-sd
Co-authored-by: Leon Müller @leondieprobifi
Co-authored-by: Junyan Xu @alreadydone
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
386/0 |
Archive.lean,Archive/Examples/Kuratowski.lean,Mathlib.lean,Mathlib/Topology/Kuratowski.lean |
4 |
5 |
['alreadydone', 'github-actions', 'wwylele'] |
nobody |
12-8136 12 days ago |
13-11659 13 days ago |
13-13002 13 days |
22771 |
alreadydone author:alreadydone |
feat(Homotopy/Lifting): monodromy of covering maps 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 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
PatrickMassot assignee:PatrickMassot |
11-45943 11 days ago |
21-12334 21 days ago |
128-78264 128 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 |
28 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'kbuzzard', 'kmill', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] |
kmill assignee:kmill |
11-25619 11 days ago |
11-25643 11 days ago |
173-13601 173 days |
25042 |
alreadydone author:alreadydone |
feat(Topology): restriction/extension of Trivialization and composition with Homeomorph |
---
- [x] depends on: #25041
[](https://gitpod.io/from-referrer/)
|
t-topology |
148/2 |
Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Maps/Basic.lean |
2 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
11-25137 11 days ago |
11-45335 11 days ago |
67-28603 67 days |
27035 |
faenuccio author:faenuccio |
chore(IsManifold/Basic): replace continuity by aesop |
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
easy
|
5/5 |
Mathlib/Geometry/Manifold/IsManifold/Basic.lean |
1 |
3 |
['faenuccio', 'fpvandoorn', 'github-actions'] |
nobody |
11-24826 11 days ago |
14-24275 14 days ago |
14-27163 14 days |
9915 |
eric-wieser author:eric-wieser |
refactor: Add norm_num machinery for NNRat |
This splits the previous `isRat` primitive into `isNNRat` and `isNegNNRat`, where only the latter carries around a `DivisionRing` instance.
This means that `norm_num` works on `NNReal` and `NNRat`.
Co-authored-by: Aaron Liu
---
- [x] depends on: #9951
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-meta
label:t-algebra$ |
758/237 |
Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Tactic/NormNum/Basic.lean,Mathlib/Tactic/NormNum/BigOperators.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/Irrational.lean,Mathlib/Tactic/NormNum/OfScientific.lean,Mathlib/Tactic/NormNum/Pow.lean,Mathlib/Tactic/NormNum/RealSqrt.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/RingNF.lean,MathlibTest/norm_num.lean,MathlibTest/norm_num_ext.lean,MathlibTest/ring.lean,scripts/nolints.json |
20 |
8 |
['eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127'] |
nobody |
11-17198 11 days ago |
13-22982 13 days ago |
23-22368 23 days |
27149 |
euprunin author:euprunin |
feat: slightly reduce the verbosity of `lake cache exe get` |
Along with reducing distracting verbosity, this change also addresses the confusing, seemingly contradictory output pair:
```
Downloaded: 6951 file(s) [attempted 6951/6951 = 100%] (100% success)
No files to download
```
Pre:
```
% lake exe cache get
Current branch: master
Using cache from origin: github-username/mathlib4
Attempting to download 6951 file(s) from leanprover-community/mathlib4 cache
Downloaded: 6951 file(s) [attempted 6951/6951 = 100%] (100% success)
No files to download
Decompressing 6951 file(s)
Unpacked in 546 ms
Completed successfully!
% lake exe cache get
Current branch: master
Using cache from origin: github-username/mathlib4
No files to download
No files to download
Decompressing 6951 file(s)
Unpacked in 320 ms
Completed successfully!
%
```
Post:
```
% lake exe cache get
Current branch: master
Using cache from origin: github-username/mathlib4
Attempting to download 6951 file(s) from leanprover-community/mathlib4 cache
Downloaded: 6951 file(s) [attempted 6951/6951 = 100%] (100% success)
Decompressing 6951 file(s)
% lake exe cache get
Current branch: master
Using cache from origin: github-username/mathlib4
Decompressing 6951 file(s)
%
```
Fixes #27038. Note that the download progress output is kept unchanged. |
|
0/4 |
Cache/IO.lean,Cache/Requests.lean |
2 |
2 |
['euprunin', 'github-actions'] |
nobody |
11-8667 11 days ago |
11-61141 11 days ago |
11-61124 11 days |
27072 |
eric-wieser author:eric-wieser |
feat(Data/Matrix): more lemmas about `Matrix.vecMulVec` |
Inspired by [#new members > Is this a reasonable formalization? @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Is.20this.20a.20reasonable.20formalization.3F/near/528412531).
---
[](https://gitpod.io/from-referrer/)
|
t-data |
66/0 |
Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Mul.lean |
2 |
1 |
['github-actions'] |
nobody |
10-85192 10 days ago |
13-33333 13 days ago |
13-33375 13 days |
27159 |
Parcly-Taxel author:Parcly-Taxel |
feat: IMO 1997 Q3 |
|
IMO |
129/0 |
Archive.lean,Archive/Imo/Imo1997Q3.lean |
2 |
5 |
['Parcly-Taxel', 'eric-wieser', 'github-actions'] |
nobody |
10-74959 10 days ago |
11-35654 11 days ago |
11-35643 11 days |
25770 |
Parcly-Taxel author:Parcly-Taxel |
chore: fix more induction/recursor branch names |
These were found using the regex `\| h. =>` and `def.*rec.*\(h. :`. |
tech debt |
134/115 |
Mathlib/Analysis/Convolution.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Fin/Tuple/NatAntidiagonal.lean,Mathlib/Data/Nat/Factorization/Induction.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/WSeq/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/Logic/Function/Iterate.lean,Mathlib/NumberTheory/ArithmeticFunction.lean,Mathlib/NumberTheory/SumFourSquares.lean,Mathlib/NumberTheory/SumTwoSquares.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/Synonym.lean |
15 |
11 |
['Parcly-Taxel', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
10-74855 10 days ago |
19-78918 19 days ago |
42-61307 42 days |
27200 |
rotarc75 author:rotarc75 |
feat(RingTheory/Ideal): oka predicates over ideals |
This PR introduces the notion of Oka predicates over the ideals of a ring. We usually speak of [Oka families](https://stacks.math.columbia.edu/tag/05K9) but predicates seemed more in line with mathlib's conventions.
Currently this notions isn't used anywhere but we plan to make an other PR that proves that is all prime ideals of a ring are finitely generated, then this ring is Noetherian. We can also use Oka predicates to simplify the existing proof of [`IsPrincipalIdealRing.of_prime`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/PrincipalIdealDomainOfPrime.html#IsPrincipalIdealRing.of_prime).
Co-authored-by: Anthony Fernandes
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
53/0 |
Mathlib.lean,Mathlib/RingTheory/Ideal/Oka.lean |
2 |
1 |
['github-actions'] |
nobody |
10-44431 10 days ago |
10-44431 10 days ago |
10-45331 10 days |
27207 |
pechersky author:pechersky |
feat(Topology/WithVal): ValuativeRel (WithVal v) |
with a helper valuation defined that does not pierce defeq
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
label:t-algebra$ |
23/0 |
Mathlib/Topology/Algebra/Valued/WithVal.lean |
1 |
1 |
['github-actions'] |
nobody |
10-34353 10 days ago |
10-34354 10 days ago |
10-34669 10 days |
27210 |
YaelDillies author:YaelDillies |
feat: `MonoidHom.toHomUnits` is a monoid hom |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
large-import
t-algebra
label:t-algebra$ |
21/4 |
Mathlib/Algebra/Group/Units/Hom.lean |
1 |
1 |
['github-actions'] |
nobody |
10-32940 10 days ago |
10-33291 10 days ago |
10-33435 10 days |
27182 |
eric-wieser author:eric-wieser |
feat: add bundled versions of `Equiv.cast` |
These are essentially the non-categorical versions of `eqToHom`.
These are helpful to state some functorial results about things like `DFinsupp.equivCongrLeft` (with the alternative being to use an evil triangle somewhere instead).
[#Is there code for X? > LinearEquiv.cast / AddEquiv.cast etc @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/LinearEquiv.2Ecast.20.2F.20AddEquiv.2Ecast.20etc/near/521390380)
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/0 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean |
4 |
3 |
['github-actions', 'pechersky', 'plp127'] |
nobody |
10-23119 10 days ago |
11-1682 11 days ago |
11-1725 11 days |
26914 |
quangvdao author:quangvdao |
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` |
This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence.
We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute
Some things I'm not clear on:
- I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level?
- Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation.
- Need a double-check on the priority of notation.
Some future definitions to add:
- Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`.
- Definitions of Lenses and Charts (each of them will be a file or even a folder)
- Exponential objects (corresponding to both `prod` and `tensor`)
---
[](https://gitpod.io/from-referrer/)
|
t-data |
183/5 |
Mathlib/Data/PFunctor/Univariate/Basic.lean |
1 |
10 |
['alexkeizer', 'eric-wieser', 'github-actions', 'quangvdao'] |
nobody |
10-6278 10 days ago |
17-80960 17 days ago |
17-81006 17 days |
25248 |
xcloudyunx author:xcloudyunx |
feat(Combinatorics/SimpleGraph): Add Subgraph.inclusion_edge_apply_coe and inclusion_edgeSet_apply_coe |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
12/0 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
1 |
3 |
['github-actions', 'pimotte', 'xcloudyunx'] |
nobody |
9-79460 9 days ago |
60-1494 1 month ago |
60-1547 60 days |
27226 |
xcloudyunx author:xcloudyunx |
feat(Combinatorics/SimpleGraph): Add Subgraph.inclusion_edge_apply_coe and inclusion_edgeSet_apply_coe |
This PR continues the work from #25248.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25248 |
new-contributor
t-combinatorics
|
14/0 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
1 |
1 |
['github-actions'] |
nobody |
9-77969 9 days ago |
9-79388 9 days ago |
9-79445 9 days |
27014 |
yuanyi-350 author:yuanyi-350 |
feat(GroupTheory/Perm/Fin): add Fin.cycleIcc and refactor cycleRange |
In this PR, I define the permutation `cycleIcc i j hij`, which is the cycle `(i i+1 .... j)` leaving `(0 ... i-1)` and `(j+1 ... n-1)` unchanged. In other words, it rotates elements in `[i, j]` one step to the right. Also I prove some properties of `cycleIcc i j hij` such as the fact that it is a cycle and its cycleType is `j - i`.
**This definition is used to prove the following result:**
```
theorem succAbove_comp_cycleIcc [NeZero n] (x : Fin (n + 1) → L) (i j : Fin (n + 1)) (eq : x i = x j) (lt : i < j)
x ∘ i.succAbove = x ∘ j.succAbove ∘ (cycleIcc hij)
```
More clearly, `x ∘ i.succAbove` and `x ∘ j.succAbove` are `Fin n → L` types. For example, when `n = 6, i = 2, j = 5` and `x i = x j`
```
x ∘ i.succAbove = (x 0, x 1, x 3, x 4, x 5, x 6)
x ∘ j.succAbove = (x 0, x 1, x 2, x 3, x 4, x 6)
```
We have
```
(x 0, x 1, x 3, x 4, x 5, x 6)
--(cycleIcc)--->(x 0, x 1, x 5, x 3, x 4, x 6) = (x 0, x 1, x 2, x 3, x 4, x 6)
```
---
Migrated from #24139
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
216/26 |
Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/Embedding.lean,Mathlib/Data/Fin/SuccPred.lean,Mathlib/GroupTheory/Perm/Fin.lean |
5 |
55 |
['faenuccio', 'github-actions', 'mbkybky', 'yuanyi-350'] |
faenuccio assignee:faenuccio |
9-66604 9 days ago |
11-38685 11 days ago |
14-31437 14 days |
27184 |
JovanGerb author:JovanGerb |
chore(Order/Filter/Basic): write lemmas in point-free style |
This PR writes the congruence lemmas about filtered equality and about asymptotic equivalence in a point-free style. This is so that they can then be tagged with `@[gcongr]`. Some of the old versions have been kept with a `fun_` name.
And apparently the import size has decreased as a bonus :)
---
[](https://gitpod.io/from-referrer/)
|
t-order |
43/28 |
Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Probability/Density.lean |
8 |
4 |
['JovanGerb', 'eric-wieser', 'github-actions'] |
nobody |
9-45024 9 days ago |
11-736 11 days ago |
11-781 11 days |
26870 |
grunweg author:grunweg |
feat: mdifferentiableOn_section_of_mem_baseSet₀ |
From the path towards geodesics and the Levi-Civita connection.
Co-authored-by: Patrick Massot
---
- [x] depends on: #26866
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
125/0 |
Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean |
1 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
9-35110 9 days ago |
9-35272 9 days ago |
9-35434 9 days |
27066 |
vasnesterov author:vasnesterov |
feat(Tactic/Order): frontend for `order` |
* Support `order [h1, h2]` and `order only [h1, h2]` syntax.
* Split conjunctions while extracting facts from the context. E.g. hypotheses in the form `A ∧ B` are converted into two facts `A` and `B`.
* Similarly, extract facts from existential quantifiers in the hypotheses.
---
- [x] depends on: #26354
[](https://gitpod.io/from-referrer/)
This PR continues the work from #22073.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22073 |
t-meta |
92/29 |
Mathlib.lean,Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/CollectFacts.lean,Mathlib/Util/ElabWithoutMVars.lean,MathlibTest/order.lean |
6 |
22 |
['JovanGerb', 'github-actions', 'mathlib4-dependent-issues-bot', 'vasnesterov'] |
nobody |
9-31699 9 days ago |
13-49459 13 days ago |
13-49488 13 days |
27024 |
grunweg author:grunweg |
feat: Gram-Schmidt orthonormalisation for sections of a vector bundle |
Add a parametrised version of Gram-Schmidt, for sections of a topological vector bundle with a bundle metric.
This will be used to define orthonormal local frames.
From the path towards geodesics and the Levi-Civita connection.
Co-authored-by: Patrick Massot
---
- [x] depends on: #27023
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
294/11 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Geometry/Manifold/VectorBundle/GramSchmidtOrtho.lean,scripts/noshake.json |
4 |
59 |
['faenuccio', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
9-30920 9 days ago |
10-620 10 days ago |
10-8171 10 days |
27021 |
grunweg author:grunweg |
feat: custom elaborators for differential geometry |
Add two sets of custom elaborators for differential geometry, to
- infer the model with corners in `MDifferentiable{WithinAt,At,On}` or `ContMDiff{WithinAt,At,On}` expressions from the local context, and provide shorter notation in that setting
- do the same for mfderiv: `mfderiv% f` is shorthand for `mfderiv I J f`; `mfderiv[s] f x` is short for `mfderivWithin I J f s`
- convert a fibre bundle section from a dependent section to a function into the total space, making working with differentiability of sections of fibre bundles less cumbersome
This was [discussed on zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Differential.20geometry.20elaborators.20experiment/with/528035295), to overall broad consensus.
This code has substantial tests and has been tried in the branch in #26221 (uncovering minor issues, but not substantial ones). The implementation itself is of prototype quality and will be cleaned up in the future. Once it is more robust, more differential geometry files can be converted to use it.
Co-authored-by: Patrick Massot
-----------
I agree that merging not fully polished code is not ideal, but propose doing so for two reasons:
- the work in #26221 used these elaborators extensively (to test them). Reverting those changes, merging the code, only to re-apply them is not a good use of time. Merging this PR now enables merging the work in #26221 soon.
- the feature is clearly useful and not going away: in the files that use it, it works well already. Holding off on further adopting, but merging it now seems like a good compromise.
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
t-meta
|
782/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Elaborators.lean,Mathlib/Geometry/Manifold/Traces.lean,MathlibTest/DifferentialGeometry/Elaborators.lean,scripts/noshake.json |
5 |
4 |
['github-actions', 'grunweg', 'sgouezel'] |
nobody |
9-30219 9 days ago |
14-53148 14 days ago |
14-53222 14 days |
27006 |
zhikaip author:zhikaip |
refactor: crossProduct notation |
Replace `×₃` with `⨯` (`\X` or `\crossproduct`), and manually deprecate the old syntax.
See [#mathlib4 > Notation for crossProduct](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Notation.20for.20crossProduct/with/520119542)
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
t-meta
|
37/22 |
Mathlib/Geometry/Euclidean/Angle/Unoriented/CrossProduct.lean,Mathlib/LinearAlgebra/CrossProduct.lean |
2 |
10 |
['eric-wieser', 'github-actions', 'j-loreaux', 'kmill'] |
nobody |
9-27350 9 days ago |
15-12786 15 days ago |
15-22812 15 days |
27179 |
euprunin author:euprunin |
chore: golf `sub_convs_eq` using `field_simp` and `grind` |
|
t-algebra label:t-algebra$ |
2/10 |
Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean |
1 |
4 |
['euprunin', 'github-actions', 'grunweg'] |
nobody |
9-13151 9 days ago |
11-8076 11 days ago |
11-8121 11 days |
26347 |
mans0954 author:mans0954 |
feature(Data/Finset/RangeDistance): abs_sub_lt_of_mem_finset_range |
This PR continues the work from #23161.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23161 |
|
30/0 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean |
3 |
2 |
['github-actions', 'mans0954'] |
nobody |
9-11270 9 days ago |
32-56302 1 month ago |
32-56285 32 days |
22782 |
alreadydone author:alreadydone |
feat(Topology): étalé space associated to a predicate on sections |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
886/160 |
Mathlib.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/EtaleSpace.lean,Mathlib/Topology/IsLocalHomeomorph.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean |
10 |
12 |
['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant'] |
nobody |
8-83463 8 days ago |
20-852 20 days ago |
20-1570 20 days |
26667 |
mariainesdff author:mariainesdff |
feat(FieldTheory/SplittingField/IsSplittingField): add IsScalarTower.splits, IsScalarTower.isAlgebraic |
Co-authored-by: @faenuccio
---
- [ ] depends on: #26666
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
29/0 |
Mathlib/Algebra/Polynomial/Lifts.lean,Mathlib/FieldTheory/SplittingField/IsSplittingField.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'tb65536'] |
nobody |
8-80337 8 days ago |
11-32805 11 days ago |
11-33413 11 days |
27244 |
xroblot author:xroblot |
feat(RingTheory/DedekindDomain): lifting an ideal in an extension is injective |
This PR develops some API for [FractionalIdeal.extended](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/FractionalIdeal/Extended.html#FractionalIdeal.extended) and in particular for when it is an injective map (for an algebra map). As a consequence, it deduces the fact that lifting an integral ideal in an extension of Dedekind domains is an injective map.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
190/5 |
Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/Localization/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
8-69509 8 days ago |
8-70761 8 days ago |
8-70805 8 days |
23940 |
YaelDillies author:YaelDillies |
feat: polytopes |
From Toric
Co-authored-by: Matthew Johnson
---
[](https://gitpod.io/from-referrer/)
|
toric
t-analysis
|
65/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Polytope.lean,Mathlib/Geometry/Convex/README.md |
3 |
9 |
['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions', 'jsm28', 'leanprover-community-bot-assistant'] |
nobody |
8-58833 8 days ago |
45-13378 1 month ago |
105-85501 105 days |
26811 |
loefflerd author:loefflerd |
feat(LinearAlgebra/Projectivization): GL(V) action |
Some API around projective spaces and general linear groups:
- an equiv between V and W gives an equiv between GL(V) and GL(W)
- GL(V) acts on the projectivization of V
- GL 2 K acts on `OnePoint K` (which is the projectivization of `K x K`)
I am adding these because I need them to define cusps in modular form theory, but they are hopefully something of general usefulness beyond that.
---
- [x] depends on: #27104
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
146/3 |
Mathlib.lean,Mathlib/LinearAlgebra/GeneralLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/GLAction.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean |
4 |
26 |
['bjoernkjoshanssen', 'eric-wieser', 'github-actions', 'loefflerd', 'mathlib4-dependent-issues-bot'] |
nobody |
8-56539 8 days ago |
11-50663 11 days ago |
20-557 20 days |
26403 |
riccardobrasca author:riccardobrasca |
feat: add `isPrincipalIdealRing_of_isPrincipal_of_lt_or_isPrincipal_of_mem_primesOver_of_mem_Icc` |
This PR continues the work from #25186.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25186 |
t-number-theory |
48/12 |
Mathlib/NumberTheory/NumberField/ClassNumber.lean |
1 |
3 |
['github-actions', 'riccardobrasca', 'xroblot'] |
nobody |
8-49889 8 days ago |
31-32178 1 month ago |
31-32212 31 days |
26074 |
oliver-butterley author:oliver-butterley |
feat(Mathlib.Dynamics.BirkhoffSum): add 2 lemmas for birkhoffSum/birkhoffAverage concerning ae_eq observables |
If two observables are `ae_eq` then the birkhoffSum/birkhoffAverage of those observables are `ae_eq`.
Motivation:
- Generally it is useful to be able to swap to observables which are `ae_eq`.
- Specifically this is useful to prove Birkhoff's pointwise ergodic theorem by first proving the result for integrable and measurable observables and then using this to deduce the result with just the requirement of integrable.
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics |
44/0 |
Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/QuasiMeasurePreserving.lean |
2 |
10 |
['github-actions', 'oliver-butterley', 'sgouezel'] |
nobody |
8-49366 8 days ago |
8-49384 8 days ago |
38-52235 38 days |
26853 |
oliver-butterley author:oliver-butterley |
feat(Mathlib/MeasureTheory/MeasurableSpace/Invariants): add `comp_eq_of_measurable_invariants` |
Invariance of `g` follows from `Measurable[invariants f] g`.
Co-authored-by: Lua Viana Reis
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
easy
|
6/0 |
Mathlib/MeasureTheory/MeasurableSpace/Invariants.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
8-48626 8 days ago |
8-48626 8 days ago |
19-1072 19 days |
27180 |
ADedecker author:ADedecker |
feat: quotient of a monoid with zero by a multiplicative congruence |
---
My motivation is getting a more conceptual construction of [ValuativeRel.ValueGroupWithZero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/ValuativeRel.html#ValuativeRel.ValueGroupWithZero), but I think this is of independent interest.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
141/26 |
Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean |
5 |
22 |
['ADedecker', 'eric-wieser', 'github-actions'] |
nobody |
8-35134 8 days ago |
10-51920 10 days ago |
10-62365 10 days |
27245 |
rirarika author:rirarika |
MvPolynomial.Irreducible |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
88/0 |
Mathlib.lean,Mathlib/Algebra/MvPolynomial/Irreducible.lean |
2 |
3 |
['alreadydone', 'github-actions', 'mbkybky'] |
nobody |
8-28247 8 days ago |
8-54736 8 days ago |
8-54780 8 days |
26975 |
Whysoserioushah author:Whysoserioushah |
feat: a norm_num extension for complex numbers |
co-authored-by : @thefundamentaltheor3m, @hrmacbeth
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
337/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/NormNumI.lean,MathlibTest/norm_numI.lean |
4 |
35 |
['Whysoserioushah', 'eric-wieser', 'github-actions', 'hrmacbeth'] |
nobody |
8-14137 8 days ago |
9-17615 9 days ago |
9-21933 9 days |
27248 |
kckennylau author:kckennylau |
chore: remove `suppress_compilation` from Mathlib.Algebra.Category.Ring.Constructions |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
2/4 |
Mathlib/Algebra/Category/Ring/Constructions.lean |
1 |
4 |
['github-actions', 'grunweg', 'leanprover-bot'] |
nobody |
8-10100 8 days ago |
8-41984 8 days ago |
8-42033 8 days |
27261 |
Sebi-Kumar author:Sebi-Kumar |
feat(Topology): add definition for subpaths |
Define subpaths as restrictions of paths to subintervals, reparameterized to have domain
`[0, 1]` and possibly with a reverse of direction. Prove their basic properties.
This serves as an alternative to `Path.truncate` which is useful for the explicit construction of certain homotopies, in particular regarding the concatenation of subpaths.
---
To provide additional context, this is my first time contributing to Mathlib,
and I am doing so as a part of the Fields Undergraduate Summer Research Program
hosted at Western University.
My intention for this file is for it to be used when proving that the fundamental group of the sphere is trivial (following the proof from Hatcher's "Algebraic Topology").
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
148/0 |
Mathlib.lean,Mathlib/Topology/Subpath.lean |
2 |
1 |
['github-actions'] |
nobody |
8-7270 8 days ago |
8-17901 8 days ago |
8-17949 8 days |
27264 |
pechersky author:pechersky |
feat(Topology/ValuedField): range of valuation on competion is the same as base field |
and other helper API to prepare for ValuativeTopology
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
60/0 |
Mathlib/Topology/Algebra/Valued/ValuedField.lean |
1 |
1 |
['github-actions'] |
nobody |
8-6119 8 days ago |
8-6129 8 days ago |
8-6174 8 days |
27265 |
pechersky author:pechersky |
feat(Topology/Valued): discrete topology on a valued field when trivial valuation |
or when there is a nonzero term in the valuation codomain that is smaller than all nonzero valuations
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
33/0 |
Mathlib/Topology/Algebra/Valued/ValuationTopology.lean |
1 |
1 |
['github-actions'] |
nobody |
8-6115 8 days ago |
8-6119 8 days ago |
8-6163 8 days |
25833 |
loefflerd author:loefflerd |
feat(Counterexamples): topologists' sine curve |
Define the "topologists' sine curve" in R^2, and show that its closure is connected but not path-connected.
This formalization is part of the bachelor thesis of Daniele Bolla at UniDistance Switzerland.
Co-authored-by: Daniele Bolla [daniele.bolla@stu.fernuni.ch](mailto:daniele.bolla@stu.fernuni.ch)
---
[](https://gitpod.io/from-referrer/)
|
migrated-from-branch
t-topology
|
219/1 |
Counterexamples.lean,Counterexamples/TopologistsSineCurve.lean,Mathlib/Topology/Connected/PathConnected.lean |
3 |
13 |
['Ruben-VandeVelde', 'github-actions', 'loefflerd', 'sgouezel'] |
nobody |
8-4550 8 days ago |
8-4683 8 days ago |
43-38842 43 days |
26484 |
peabrainiac author:peabrainiac |
feat(Geometry/Diffeology): basics of diffeological spaces |
Introduces diffeological spaces, smooth maps between them, the D-topology and the standard diffeology on finite-dimensional normed spaces.
---
This PR continues the work from #21969. |
t-differential-geometry |
471/0 |
Mathlib.lean,Mathlib/Geometry/Diffeology/Basic.lean,docs/references.bib |
3 |
9 |
['JovanGerb', 'github-actions', 'lecopivo', 'peabrainiac'] |
nobody |
7-75419 7 days ago |
28-72737 28 days ago |
28-77490 28 days |
25920 |
BoltonBailey author:BoltonBailey |
feat(Data/Finsupp/Basic): `Finsupp.optionElim'` |
Similar to how Finsupp.cons constructs a map Fin (n + 1) →₀ M from a map Fin n →₀ M,
we define Finsupp.optionElim' to construct a map Option α →₀ M from a map α →₀ M, given an additional value for none. We base this on the new optionEquiv definition. As a function, it behaves as Option.elim', hence the name.
We prove a variety of API lemmas, based on those for Finsupp.cons, to bring the definitions more in line with the contents of Data/Finsupp/Fin.
We also refactor to a new file to help avoid a too-long file and make this more analogous to Finsupp.cons
Original PR: https://github.com/leanprover-community/mathlib4/pull/13861
- [x] depends on: #26309 |
migrated-from-branch
t-data
|
124/25 |
Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Data/Finsupp/Option.lean |
2 |
13 |
['BoltonBailey', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
7-72884 7 days ago |
7-72904 7 days ago |
29-79888 29 days |
27105 |
xroblot author:xroblot |
feat(Ring/DedekindDomain): formula for the splitting of prime ideals in an extension |
This PR just puts together all the results that were already there to deduce:
```lean
map (algebraMap S R) p = ∏ P ∈ p.primesOver R, P ^ p.ramificationIdx (algebraMap S R) P
```
for `p` a maximal ideal of a ring `S` and `R` an extension of `S` that is a Dedekind ring.
Note. There is a significant import increase in the file `RingTheory.DedekindDomain.Factorization`. However, this file is almost a leaf file so this increase only affects a limited number of files. If the increase is too big, a new file, say `RingTheory.DedekindDomain.PrimeSplitting`, can be added instead.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
89/3 |
Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean |
4 |
1 |
['github-actions'] |
nobody |
7-70459 7 days ago |
12-78816 12 days ago |
12-78861 12 days |
26793 |
FlAmmmmING author:FlAmmmmING |
feat(Algebra/Group /ForwardDiff.lean): add five theorems for forward difference |
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-algebra
label:t-algebra$ |
212/3 |
Mathlib/Algebra/Group/ForwardDiff.lean |
1 |
35 |
['AntoineChambert-Loir', 'DAE123456', 'FlAmmmmING', 'Ruben-VandeVelde', 'github-actions', 'kckennylau', 'madvorak'] |
nobody |
7-58251 7 days ago |
8-71205 8 days ago |
21-23693 21 days |
27284 |
FernandoChu author:FernandoChu |
Chore(CategoryTheory/MorphismProperty/MonoFactorization): Factor out mono factorizations |
Factored out `MonoFactorisations` from the `Images` file; also rename it to `MonoFactori*z*ations` so it's inline with the rest of Mathlib. I'm also sneaking in some very basic extremal epis results if you don't mind, these were meant to be used to prove
```lean
instance (priority := 100) hasStrongEpiImages_of_hasPullbacks_of_hasEqualizers [HasPullbacks C]
[HasEqualizers C] : HasStrongEpiImages C
```
Which I noticed too late already had a proof; I think the proof has been improved anyways, it's just `infer_instance` now. |
new-contributor
t-category-theory
|
419/259 |
Mathlib.lean,Mathlib/Algebra/Category/Grp/Images.lean,Mathlib/Algebra/Category/ModuleCat/Images.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Category/Factorisation.lean,Mathlib/CategoryTheory/ConcreteCategory/EpiMono.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Images.lean,Mathlib/CategoryTheory/Limits/Shapes/ExtremalEpi.lean,Mathlib/CategoryTheory/Limits/Shapes/Images.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Shapes/StrongEpi.lean,Mathlib/CategoryTheory/Limits/Shapes/ZeroMorphisms.lean,Mathlib/CategoryTheory/Limits/Types/Images.lean,Mathlib/CategoryTheory/MorphismProperty/MonoFactorization.lean,Mathlib/CategoryTheory/Sites/Subsheaf.lean,Mathlib/Order/Category/NonemptyFinLinOrd.lean,scripts/nolints_prime_decls.txt |
18 |
1 |
['github-actions'] |
nobody |
7-51454 7 days ago |
7-54012 7 days ago |
7-54063 7 days |
25500 |
eric-wieser author:eric-wieser |
feat: delaborators for metadata |
Being able to see these is very important when debugging tactic failures. Probably these could be upstreamed, but I don't think that's a reason not to merge them here first.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-meta
|
75/3 |
Mathlib/Util/Delaborators.lean,Mathlib/Util/PPOptions.lean,MathlibTest/delaborators.lean |
3 |
11 |
['JovanGerb', 'Rob23oba', 'eric-wieser', 'github-actions'] |
nobody |
7-39512 7 days ago |
51-8053 1 month ago |
51-8112 51 days |
26371 |
Timeroot author:Timeroot |
feat(NumberTheory): Niven's theorem |
This file proves Niven's theorem, that the only rational cosines of angles that are rational multiples of pi, are [-1, -1/2, 0, 1/2, 1]. This is one of the theorems missing from 1000.yaml.
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
119/0 |
Mathlib.lean,Mathlib/NumberTheory/Niven.lean,docs/1000.yaml |
3 |
9 |
['Timeroot', 'github-actions', 'grunweg', 'plp127'] |
nobody |
7-35127 7 days ago |
32-14513 1 month ago |
32-14561 32 days |
26646 |
eric-wieser author:eric-wieser |
feat(TensorProduct): add a Repr |
Now that tensor products are computable again, this makes them `#eval`able.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-meta
label:t-algebra$ |
8/0 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
6 |
['JovanGerb', 'eric-wieser', 'github-actions'] |
nobody |
7-23401 7 days ago |
23-77896 23 days ago |
23-77949 23 days |
27098 |
Paul-Lez author:Paul-Lez |
feat(Algebra/Category/ModuleCat/Sheaf/VectorBundle): define vector bundles |
This PR defines vector bundles (upstreamed from [formal-conjectures](https://github.com/google-deepmind/formal-conjectures/pull/28/files)). I plan on adding some more API about the definition in this PR, but figured it would be nice to get some initial feedback about the definition before doing so!
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
53/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/VectorBundle.lean |
2 |
2 |
['Kiolt', 'github-actions'] |
nobody |
7-17968 7 days ago |
13-7646 13 days ago |
13-7693 13 days |
26880 |
agjftucker author:agjftucker |
feat(Calculus/FDeriv/Partial): `hasStrictFDerivAt_uncurry_coprod` concerning partial derivatives |
Confident that other contributions will follow (e.g. #26300), I begin this file with only the result needed to apply the implicit function theorem to a curried function.
---
- [x] depends on: #26742 [This dependency is very slight.]
[](https://gitpod.io/from-referrer/)
|
new-contributor |
126/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Partial.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
7-11129 7 days ago |
7-11129 7 days ago |
11-2310 11 days |
27242 |
hugh-fox author:hugh-fox |
feat: add Gauss-like formula for sums of digit sums |
Adds `sum_digit_sum_base_pow_eq` to show a Gauss-like formula across sums of digit sums.
This relies on an additional two simp lemmas, named `digits_sum_eq_self`, `digits_sum_base_mul_cancel`.
Lastly, includes a specialization (which is a good bit simpler than the general formula) to base 10 named `sum_digit_sum_ten_pow_eq`.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-data
new-contributor
|
113/0 |
Mathlib/Data/Nat/Digits/Lemmas.lean |
1 |
5 |
['github-actions', 'hugh-fox', 'kckennylau'] |
nobody |
7-10032 7 days ago |
8-73810 8 days ago |
8-73857 8 days |
26907 |
JovanGerb author:JovanGerb |
feat(gcongr): also use more general lemmas, closing extra goals with rfl |
This PR fixes an annoyance in tagging `gcongr` lemmas: if your function has `n` arguments in which to use congruence, then you would need to provide `2^n-1` `gcongr` lemmas. Now, it suffices to only tag the most general `gcongr` lemma, and in more specific cases, the extra goals will be closed using `rfl`.
While working on this, more issues with `gcongr` came up, and these all needed to be dealt with in the same PR:
- When applying a `gcongr` lemma, this should be done in the `reducible` transparency. The transparency was already bumped form `default` to `instances` after a zulip discussion ([#mathlib4 > gcongr unfold DFunLike.coe](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/gcongr.20unfold.20DFunLike.2Ecoe/with/482186693)). But I found that the same issue appears at `instances` transparency instead of `reducible`. MWE:
```
import Mathlib
open MeasureTheory
variable {α : Type*} (a : Set α) {μ : OuterMeasure α} {μ' : OuterMeasure α}
@[gcongr] -- remove this tag to make the last example work
lemma mono_outerMeasure (h : μ ≤ μ') : μ a ≤ μ' a := h a
example (h : μ ≤ μ') : μ a ≤ μ' a := by gcongr
variable [MeasurableSpace α] {ν : Measure α} {ν' : Measure α}
@[gcongr]
lemma mono_measure (h : ν ≤ ν') : ν a ≤ ν' a := h a
example (h : ν ≤ ν') : ν a ≤ ν' a := by
with_reducible apply mono_outerMeasure
set_option trace.Meta.isDefEq true in
with_reducible gcongr
```
This aligns with the `congr!` tactic
- Using `reducible` transparency is not compatible with the approach of matching `varyingArgs`, because when comparing instance arguments, we need to use at least `instances` transparency. So, instead of storing the lemmas by `varyingArgs`, we sort them by the number of varying arguments, and simply try applying all the lemmas (which should be cheap in `reducible` transparency). This aligns with `congr`/`congr!`(/`simp`) which also tries all of the lemmas for the given constant.
- As a result of sorting the lemmas in the same way as `congr` lemmas, more recently added lemmas are now tried before older ones. This causes an issue which has to be solved by implementing a priority argument for the `gcongr` tag (similar to how `instance` and `simp` work), e.g.`@[gcongr high]`. This aligns with the `@[congr]` tag.
---
[](https://gitpod.io/from-referrer/)
|
|
330/293 |
Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Ring/Submonoid/Pointwise.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Topology.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/NAry.lean,Mathlib/Data/Finset/Prod.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Data/List/Perm/Basic.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/ModEq.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/NAry.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/Order/Basic.lean,Mathlib/Order/BooleanAlgebra/Set.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Filter/NAry.lean,Mathlib/Order/Filter/Prod.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/Sublattice.lean,Mathlib/RingTheory/Ideal/Prod.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/CoreAttrs.lean,Mathlib/Tactic/Monotonicity/Lemmas.lean,Mathlib/Topology/UniformSpace/Defs.lean,MathlibTest/GCongr/GCongr.lean,MathlibTest/GCongr/implications.lean,MathlibTest/GCongr/inequalities.lean,MathlibTest/GRewrite.lean |
50 |
14 |
['JovanGerb', 'Vtec234', 'fpvandoorn', 'github-actions', 'grunweg'] |
nobody |
7-8664 7 days ago |
15-83166 15 days ago |
16-76584 16 days |
27301 |
js2357 author:js2357 |
feat: `MeasureTheory.Measure.sum_restrict_le` |
Prove that `Measure.sum (fun i ↦ μ.restrict (s i)) ≤ M • μ.restrict (⋃ i, s i)`, if at most `M` of the `s i` overlap at a single point.
Also add `restrict_biUnion_le`, which is a straightforward biUnion version of the existing `restrict_iUnion_le`.
Done for the Carleson project.
[](https://gitpod.io/from-referrer/)
|
carleson
t-measure-probability
|
87/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/SumRestrict.lean |
3 |
1 |
['github-actions'] |
nobody |
6-82488 6 days ago |
6-82495 6 days ago |
6-82542 6 days |
26843 |
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/)
This PR continues the work from #23365.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23365 |
migrated-from-branch
large-import
t-meta
|
452/79 |
Mathlib/Data/List/ProdSigma.lean,Mathlib/Tactic/Simproc/ExistsAndEq.lean,MathlibTest/Simproc/ExistsAndEq.lean |
3 |
8 |
['JovanGerb', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'vasnesterov'] |
nobody |
6-39576 6 days ago |
19-38440 19 days ago |
19-52492 19 days |
27064 |
YaelDillies author:YaelDillies |
feat: considering an iso over `S` as an iso in `Over S` |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
41/1 |
Mathlib/CategoryTheory/Comma/Over/OverClass.lean |
1 |
1 |
['github-actions'] |
robin-carlier assignee:robin-carlier |
6-37706 6 days ago |
13-56439 13 days ago |
13-56437 13 days |
26036 |
joelriou author:joelriou |
feat(CategoryTheory/Functor): pointwise right derived functors |
This PR introduces pointwise right derived functors as particular cases of pointwise left Kan extensions.
---
This PR continues the work from #22490.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22490 |
t-category-theory |
160/0 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/Derived/PointwiseRightDerived.lean |
2 |
2 |
['github-actions', 'joelriou'] |
robin-carlier assignee:robin-carlier |
6-37701 6 days ago |
39-31619 1 month ago |
39-31665 39 days |
26989 |
joelriou author:joelriou |
feat(CategoryTheory): Artinian objects |
The API for Noetherian objects (from `Subobject.NoetherianObject`) is "dualized" in order to develop an API for Artinian objects. The previously existing definitions `ArtinianObject` and `NoetherianObject` from the file `CategoryTheory.Noetherian` are deprecated.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
176/58 |
Mathlib.lean,Mathlib/CategoryTheory/Noetherian.lean,Mathlib/CategoryTheory/Subobject/ArtinianObject.lean,Mathlib/CategoryTheory/Subobject/NoetherianObject.lean |
4 |
1 |
['github-actions', 'javra'] |
robin-carlier assignee:robin-carlier |
6-37694 6 days ago |
15-45308 15 days ago |
15-45358 15 days |
27216 |
D-Thomine author:D-Thomine |
feat(Cardinal/Finite): ENat powers and cardinality |
This PR continues the work from #25574.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25574 |
t-algebra label:t-algebra$ |
204/5 |
Mathlib.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
4 |
12 |
['D-Thomine', 'eric-wieser', 'github-actions'] |
nobody |
6-36936 6 days ago |
7-39848 7 days ago |
8-56920 8 days |
27255 |
Louddy author:Louddy |
feat(SkewMonoidAlgebra): coeff_mul lemmas |
Add lemmas regarding the interaction of multiplication and the `SkewMonoidAlgebra.coeff`.
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/)
|
t-algebra label:t-algebra$ |
124/0 |
Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
6-32358 6 days ago |
8-31319 8 days ago |
8-31311 8 days |
27283 |
Louddy author:Louddy |
feat(SkewMonoidAlgebra): maps on/to SkewMonoidAlgebra |
Add the definition of many maps regarding skew monoid algebras and lemmas associated to them. These all have their analogues for `MonoidAlgebra`.
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
t-algebra
label:t-algebra$ |
237/0 |
Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
6-32293 6 days ago |
7-56828 7 days ago |
7-56878 7 days |
27253 |
Louddy author:Louddy |
feat(SkewMonoidAlgebra): SkewMonoidAlgebra/Support |
Add lemmas regarding the support of a skew monoid algebra.
It is currently missing a few lemmas compared to `MonoidAlgebra.support`. (See TODO.)
These will be added as more results are available on `SkewMonoidAlgebra`.
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/)
|
t-algebra label:t-algebra$ |
100/0 |
Mathlib.lean,Mathlib/Algebra/SkewMonoidAlgebra/Support.lean |
2 |
1 |
['github-actions'] |
nobody |
6-32284 6 days ago |
8-32756 8 days ago |
8-32769 8 days |
27308 |
xyzw12345 author:xyzw12345 |
feat(LinearAlgebra/SymmetricAlgebra): IsSymmetricAlgebra |
This PR continues the work from #24602.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24602 |
t-algebra label:t-algebra$ |
78/0 |
Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basis.lean |
2 |
1 |
['github-actions'] |
nobody |
6-30820 6 days ago |
6-30826 6 days ago |
6-30879 6 days |
27309 |
kckennylau author:kckennylau |
feat(CategoryTheory): a presheaf on `CostructuredArrow F d` can be extended to a presheaf on `C` |
---
Zulip: [#Is there code for X? > over category via a functor](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/over.20category.20via.20a.20functor/with/529574191)
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
218/0 |
Mathlib.lean,Mathlib/CategoryTheory/Comma/Presheaf/LeftExtension.lean |
2 |
1 |
['github-actions'] |
nobody |
6-27315 6 days ago |
6-27829 6 days ago |
6-27880 6 days |
27312 |
pechersky author:pechersky |
feat(RingTheory/Valuation): the trivial valuation, as One (Valuation R Γ₀) |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-number-theory
label:t-algebra$ |
54/0 |
Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/RingTheory/Valuation/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
6-12041 6 days ago |
6-12103 6 days ago |
6-12096 6 days |
25864 |
plp127 author:plp127 |
feat(Nat/Digits): use fuel in `Nat.digits` |
Add a `fuel` parameter to `Nat.digitsAux` to make it structurally recursive.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
47/14 |
Mathlib/Data/Nat/Digits/Defs.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
6-9815 6 days ago |
7-3337 7 days ago |
27-49896 27 days |
27292 |
gasparattila author:gasparattila |
feat: asymptotic cone of a set |
This PR defines the asymptotic cone of a set in a normed affine space and proves its main properties. This is partial progress towards showing that an unbounded finite-dimensional convex set contains a ray.
---
- [ ] depends on: #27221
[](https://gitpod.io/from-referrer/)
|
new-contributor |
441/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Affine/AsymptoticCone.lean,Mathlib/Order/Filter/Map.lean |
3 |
6 |
['AntoineChambert-Loir', 'gasparattila', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
6-9086 6 days ago |
7-13909 7 days ago |
7-14956 7 days |
27163 |
pechersky author:pechersky |
feat(Topology/ValuativeRel): of and to basis of compatible valuations |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
t-number-theory
label:t-algebra$ |
110/5 |
Mathlib/RingTheory/Valuation/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
2 |
1 |
['github-actions'] |
nobody |
5-71554 5 days ago |
5-75747 5 days ago |
11-30846 11 days |
24530 |
chrisflav author:chrisflav |
feat(RingTheory): faithfully flat ring maps |
Co-authored by: Joël Riou
---
- [x] depends on: #24375
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
89/1 |
Mathlib.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/RingTheory/RingHom/FaithfullyFlat.lean,Mathlib/RingTheory/RingHom/Flat.lean |
4 |
7 |
['chrisflav', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
5-64424 5 days ago |
6-35596 6 days ago |
62-15574 62 days |
27321 |
kckennylau author:kckennylau |
feat(CategoryTheory): Colimit can be computed fiberwise |
We consider category `J` equipped with a functor `F : J ⥤ D` to a discrete category `D`. Then the colimit of any diagram `diagram : J ⥤ C` can be computed using the following algorithm:
1. For each `d : D`, compute the colimit of the restricted diagram `F.fiberIncl d ⋙ diagram`.
2. Take the coproduct of these colimits over all `d : D`.
We call this "computing the colimit fiberwise".
---
Zulip: [#Is there code for X? > over category via a functor](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/over.20category.20via.20a.20functor/with/529574191)
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
134/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Fiberwise.lean |
2 |
1 |
['github-actions'] |
nobody |
5-50113 5 days ago |
5-60069 5 days ago |
5-60112 5 days |
27325 |
or4nge19 author:or4nge19 |
feat(combinatorics): Path decomposition and boundary crossing |
This PR is the second in the series to build API for Quiver.Path in support of formalizing the Perron-Frobenius theorem.
https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalizing.20Perron-Frobenius/with/529260566
This adds basic path decomposition and theorems about paths crossing set boundaries.
Path Decomposition
The PR introduces two fundamental ways to decompose any non-empty path p:
eq_cons_of_ne_nil: Decomposes p into a prefix and a final edge (p = p'.cons e).
eq_toPath_comp_of_ne_nil': Decomposes p into a first edge and a suffix (p = e.toPath.comp p').
These provide the structural induction principles needed for many proofs on paths.
Boundary Crossing
The main result is exists_boundary_edge, which formalizes the intuitive notion that a path starting outside a set S and ending inside it must cross the boundary. The theorem proves the existence of a "boundary edge" u ⟶ v (where u ∉ S and v ∈ S) and provides the full path decomposition at the point of crossing.
Also included are:
exists_boundary_edge_from_set: The symmetric version for paths leaving a set.
exists_crossing_edge: A convenient corollary that guarantees the existence of a boundary-crossing edge without the full decomposition.
This work will be used in subsequent PRs to reason about how paths interact with subsets of vertices, as utilized in our formalization of PF theorem
Next Steps
The next PR will introduce Path.vertices to create a list representation of the vertices a path visits, last prerequisite for defining path simplicity and cycles. |
new-contributor
t-combinatorics
|
105/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Path/Decomposition.lean |
2 |
1 |
['github-actions'] |
nobody |
5-31188 5 days ago |
5-36970 5 days ago |
5-37014 5 days |
26035 |
fbarroero author:fbarroero |
feat(Analysis/Polynomial/MahlerMeasure): the Mahler measure of a complex polynomial |
We introduce the Mahler measure of a complex polynomial and prove some basic facts.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
127/1 |
Mathlib.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean |
3 |
1 |
['github-actions'] |
nobody |
5-21100 5 days ago |
38-24256 1 month ago |
38-24260 38 days |
27082 |
staroperator author:staroperator |
feat(Order/WellFoundedSet): add `Set.IsPWO.exists_le_minimal`, `Set.IsPWO.exists_minimal`, `Set.IsPWO.exists_minimalFor` |
which are the `IsPWO` version of `exists_minimal_le_of_wellFoundedLT` and others.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
22/0 |
Mathlib/Order/WellFoundedSet.lean |
1 |
4 |
['alreadydone', 'github-actions', 'staroperator'] |
nobody |
4-72741 4 days ago |
13-22155 13 days ago |
13-22201 13 days |
27332 |
or4nge19 author:or4nge19 |
feat(combinatorics): Define vertices of a Quiver.Path |
This PR is linked to #27315 and #27325. It's part of PRing the formalization of core PF theorem here https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalizing.20Perron-Frobenius/with/525516636
This adds:
Quiver.Path.vertices: A List V representing the sequence of vertices along a path.
Quiver.Path.vertices_set: The Set of vertices visited.
Quiver.Path.vertices_finset: The Finset of vertices visited.
Quiver.Path.init_finset: The Finset of vertices excluding the final vertex of the path, needed for defining simple paths and cycles.
vertices_comp: A proof that the vertices of a composed path p.comp q are p.vertices.dropLast ++ q.vertices. vertices_length: The length of the vertices list is p.length + 1. Lemmas connecting vertices to standard list operations like head?, getLast, and get. Lemmas for membership: start_mem_vertices and end_mem_vertices.
This is the prerequisite for defining path simplicity and formalizing cycle extraction, as used in the formalization of the Perron-Frobenius theorem
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
263/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Path/Vertices.lean |
2 |
1 |
['github-actions'] |
nobody |
4-50873 4 days ago |
5-6901 5 days ago |
5-6954 5 days |
27229 |
WilliamCoram author:WilliamCoram |
feat(GroupTheory/DoubleCoset): multiple lemmas |
From FLT
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
106/0 |
Mathlib/GroupTheory/DoubleCoset.lean |
1 |
1 |
['github-actions'] |
nobody |
4-38828 4 days ago |
9-26931 9 days ago |
9-26982 9 days |
26931 |
javra author:javra |
feat(CategoryTheory/Enriched): `V`-enriched isomorphisms |
Defines isomorphisms in `V`-enriched categories and relate them to ordinary isomorphisms in the case of ordinary enriched categories.
---
[](https://gitpod.io/from-referrer/)
|
infinity-cosmos
t-category-theory
|
203/14 |
Mathlib.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Enriched/Iso.lean,Mathlib/CategoryTheory/Enriched/Opposite.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Basic.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Iso.lean |
6 |
12 |
['emilyriehl', 'github-actions', 'javra', 'joelriou', 'mckoen'] |
nobody |
4-33507 4 days ago |
4-52202 4 days ago |
17-40727 17 days |
27339 |
pechersky author:pechersky |
chore(RingTheory/Laurent): use WithZero.exp to golf statements and proofs about valuation on K((X)) |
Done as part of refactor of Valued in #27314. This PR does not change any definitions. Instead, uses `WithZero.exp` instead of coercion + Multiplicative.ofAdd. And some helper simp lemmas about valuations of RatFunc vis a vis LaurentSeries.
---
[](https://gitpod.io/from-referrer/)
|
tech debt
t-algebra
t-number-theory
label:t-algebra$ |
78/77 |
Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean |
3 |
1 |
['github-actions'] |
nobody |
4-29759 4 days ago |
4-29759 4 days ago |
4-73755 4 days |
26875 |
michaellee94 author:michaellee94 |
feat(Manifold/PartitionOfUnity): existence of global C^n smooth section for nontrivial bundles |
Add existence of global C^n smooth section for nontrivial bundles
---
- [x] depends on: #26671
[](https://gitpod.io/from-referrer/) |
t-differential-geometry |
121/14 |
Mathlib/Geometry/Manifold/PartitionOfUnity.lean |
1 |
8 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'michaellee94'] |
nobody |
4-28760 4 days ago |
16-21032 16 days ago |
16-35704 16 days |
27357 |
jcreedcmu author:jcreedcmu |
feat(Algebra/Module/Submodule): add `submoduleMap` for isometries |
Per [discussion on Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Analog.20of.20LinearEquiv.2EsubmoduleMap.20for.20AffineIsometryEquiv.3F), add a version of `.submoduleMap` for `LinearIsometry` and `LinearIsometryEquiv` by analogy with `LinearMap.submoduleMap` and `LinearEquiv.submoduleMap`.
--- |
new-contributor
t-algebra
label:t-algebra$ |
56/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Operator/LinearIsometrySubmoduleMap.lean |
2 |
12 |
['Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'jcreedcmu'] |
nobody |
4-4124 4 days ago |
4-9307 4 days ago |
4-9359 4 days |
27370 |
euprunin author:euprunin |
chore(Tactic/CancelDenoms): golf `cancel_factors_eq` |
|
t-meta |
1/11 |
Mathlib/Tactic/CancelDenoms/Core.lean |
1 |
1 |
['github-actions'] |
nobody |
3-86345 3 days ago |
3-86364 3 days ago |
4-13 4 days |
26782 |
euprunin author:euprunin |
chore: golf Algebra/ using `exact` |
|
t-algebra label:t-algebra$ |
65/168 |
Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/CubicDiscriminant.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Algebra/Homology/Embedding/Extend.lean,Mathlib/Algebra/Homology/HomologicalComplexAbelian.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Homology/ShortComplex/ConcreteCategory.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/PreservesHomology.lean,Mathlib/Algebra/Homology/ShortComplex/QuasiIso.lean,Mathlib/Algebra/IsPrimePow.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Algebra/PresentedMonoid/Basic.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Star/Pointwise.lean |
32 |
10 |
['euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] |
nobody |
3-86097 3 days ago |
3-86122 3 days ago |
21-40318 21 days |
27380 |
chrisflav author:chrisflav |
feat(Category/Ring): `Algebra.IsPushout` iff `CategoryTheory.IsPushout` |
In particular, `RingHom.IsStableUnderBaseChange P` iff `(RingHom.toMorphismProperty P).IsStableUnderCobaseChange`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
49/0 |
Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/RingHomProperties.lean |
3 |
1 |
['github-actions'] |
nobody |
3-59834 3 days ago |
3-59905 3 days ago |
3-59888 3 days |
26448 |
YaelDillies author:YaelDillies |
refactor: simplify `(f₁ ⊗ₘ f₂) ≫ (g₁ ⊗ₘ g₂)` to `(f₁ ≫ g₁) ⊗ₘ (f₂ ≫ g₂)` |
... instead of the other way around. This is motivated by the fact that homs happening "in parallel" is a non-concept (time along a branch can always be reparametrised), while homs happening "in series" is a well-defined concept. One should not simp the well-defined concept into the non-concept but instead the other way around.
This is also motivated by the advent of the `mon_tauto` simp set in #26057.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
115/119 |
Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/Dialectica/Monoidal.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Enriched/FunctorCategory.lean,Mathlib/CategoryTheory/GradedObject/Braiding.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Reflection.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Internal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Preadditive.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/CategoryTheory/Monoidal/Types/Coyoneda.lean |
24 |
13 |
['YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'robin-carlier', 'yuma-mizuno'] |
nobody |
3-57425 3 days ago |
3-57444 3 days ago |
27-35172 27 days |
27174 |
ADedecker author:ADedecker |
chore(OreLocalization): generalize some results from rings to monoids with zeros |
---
My motivation is getting a more conceptual construction of [ValuativeRel.ValueGroupWithZero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/ValuativeRel.html#ValuativeRel.ValueGroupWithZero), but I think this is of independent interest.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
104/73 |
Mathlib.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/NonZeroDivisors.lean,Mathlib/RingTheory/OreLocalization/Ring.lean |
4 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
3-52698 3 days ago |
3-53155 3 days ago |
10-81726 10 days |
27040 |
Scarlett-le author:Scarlett-le |
feat(Geometry/Euclidean/Sphere/Power): add power of a point theorems |
Add the definition of power of a point and fundamental theorems relating
point positions to intersection distances:
* `Sphere.power`: The power of a point with respect to a sphere, defined as
the square of the distance from the point to the center minus the square
of the radius.
* `Sphere.power_eq_zero_iff_mem_sphere`: A point lies on the sphere if and
only if its power is zero.
* `Sphere.power_pos_iff_dist_center_gt_radius`: The power is positive if and
only if the point is outside the sphere.
* `Sphere.power_neg_iff_dist_center_lt_radius`: The power is negative if and
only if the point is inside the sphere.
* `Sphere.mul_dist_eq_power_of_dist_center_gt_radius`: For external points,
the product of intersection distances equals the power.
* `Sphere.mul_dist_eq_neg_power_of_dist_center_lt_radius`: For internal points,
the product equals the negative power.
* `Sphere.mul_dist_eq_abs_power`: General form relating intersection distance
products to absolute power.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-euclidean-geometry
|
138/1 |
Mathlib/Geometry/Euclidean/Sphere/Power.lean |
1 |
3 |
['alreadydone', 'github-actions'] |
jsm28 assignee:jsm28 |
3-48328 3 days ago |
14-15795 14 days ago |
14-16336 14 days |
26847 |
joelriou author:joelriou |
feat: multicoequalizers in the category of types |
This PR gives a concrete criteria for a multicofork in the category of types to be a multicoequalizer, and this is used in order to show that if a (sub)set `A : Set X` is the union of certain subsets `U i`, then the type `A` is the multicoequalizer of the `U i`s along their intersections `V i j`.
(A similar result for `Subpresheaf` rather than `Set` will be deduced in a separate PR, and this shall be very important in the study of the homotopy theory of simplicial sets, as this will allow the construction of morphisms from horns.)
---
- [x] depends on: #25823
- [x] depends on: #22205
- [x] depends on: #26037
This PR continues the work from #23872.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23872 |
t-category-theory |
96/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/Multicoequalizer.lean |
2 |
n/a |
['adomani', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
3-41436 3 days ago |
unknown |
unknown |
27333 |
FrankieNC author:FrankieNC |
feat(Topology/Baire): adds that in a Baire space, every nonempty open set is of second category. |
In a Baire space, every nonempty open set is non‑meagre.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
10/0 |
Mathlib/Topology/Baire/Lemmas.lean |
1 |
1 |
['github-actions'] |
nobody |
3-38673 3 days ago |
3-38673 3 days ago |
5-5121 5 days |
26655 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): sub-walks |
defines (contiguous) subwalks and provides lemmas about them.
Co-authored-by: Kyle Miller
Co-authored-by: Vlad Tsyrklevich
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
176/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Data/List/Infix.lean |
3 |
20 |
['Rida-Hamadani', 'github-actions', 'jt496', 'kmill', 'vlad902'] |
nobody |
3-20144 3 days ago |
23-54813 23 days ago |
23-54865 23 days |
26122 |
chrisflav author:chrisflav |
refactor(CategoryTheory/CoproductDisjoint): generalize to indexed coproducts |
We replace the currently existing `CoproductDisjoint` by a predicate for a family of objects, indicating that the pairwise
pullbacks are disjoint and the coproduct inclusions are monomorphisms.
The old predicate is recovered as `BinaryCoproductDisjoint` as an `abbrev`.
We also replace `CoproductsDisjoint` by `CoproductsOfShapeDisjoint` and `BinaryCoproductsDisjoint`. We postpone
the TODO to show that if binary coproducts are disjoint and suitable coproducts exist, then all coproducts of suitable shape are disjoint.
Note that `CoproductDisjoint` changed its meaning, so no deprecation can be added. This should be fine, since it is a leaf file that is hopefully not much used downstream.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60MonoCoprod.60.20and.20.60DisjointCoproduct.60/with/524752624
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
197/89 |
Mathlib/CategoryTheory/Limits/Shapes/DisjointCoproduct.lean |
1 |
5 |
['chrisflav', 'github-actions', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
3-20086 3 days ago |
3-20101 3 days ago |
34-67376 34 days |
27067 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): braiding and symmetry for Day convolution |
In this PR, we prove that when `C` and `V` are braided monoidal categories, and when relevant Day convolutions exist, the unbundled Day convolution monoidal structure on `C ⥤ V` is also braided: we construct an isomorphism `DayConvolution.braiding`, characterize it with respect to the unit maps that exhibits Day convolutions as left Kan extensions, and prove that the forward and reverse hexagon identities are satisfied.
In the case `C` and `V` are symmetric, we show that `braiding F G|>.hom` is inverse to `braiding G F|>.hom` as well.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
201/1 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean |
3 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
3-17074 3 days ago |
3-17099 3 days ago |
13-38338 13 days |
26798 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): `LawfulDayConvolutionMonoidalCategoryStruct` |
Given monoidal categories `C`, `V` and a category `D` with a pre-existing `MonoidalCategoryStruct`, we introduce a typeclass `LawfulDayConvolutionMonoidalCategoryStruct C V D` that bundles the required data and equations that the structure on `D` must have to be a monoidal subcategory of `C ⥤ V` if the latter was endowed with the day convolution monoidal structure.
The data in question is that of a faithful functor `ι : D ⥤ C ⥤ V`, as well as explicit natural transformations `ι.obj d ⊠ (ι.obj d') ⟶ tensor C ⋙ ι.obj (d ⊗ d')` that exhibit `ι.obj (d ⊗ d')` as a Day convolution of `ι.obj d` and `(ι.obj d')`, as well as similar data asserting that `ι.obj (𝟙_ D)` is a Day convolution unit. The equations required are identical to the ones that characterize the unitors and associators for Day convolution with respect to the Kan extensions units.
Given such a structure, using that the corresponding relations hold in `C ⥤ V`, we show that the monoidal category structure on `D` defines a `MonoidalCategory D`, i.e that all the required equations such as the pentagon/triangular equalities, bifunctoriality of the tensor product etc. are satisfied. Thus, we can think of `LawfulDayConvolutionMonoidalCategoryStruct C V D` as a constructor for monoidal categories.
While this is a step towards a Day convolution monoidal structure in (a type alias) `C ⥤ V`, the framework is yet incomplete, as it assumes a pre-existing monoidal category structure. We will give constructors for (`MonoidalCategoryStruct` and) `LawfulDayConvolutionMonoidalCategoryStruct C V D` with various degree of definitional control over the resulting structure in a forthcoming PR.
---
- [x] depends on: #25757
I recommend the reviewer to at least have a glance at #26820 to see where this is going, and how this one fits in the design I have in mind.
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
336/8 |
Mathlib/CategoryTheory/Monoidal/DayConvolution.lean |
1 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
3-15854 3 days ago |
3-18257 3 days ago |
13-9720 13 days |
27399 |
MoritzBeroRoos author:MoritzBeroRoos |
feat: replace every usage of ⬝ᵥ (with old \cdot) by ·ᵥ (with \centerdot) |
Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot).
Currently the abbreviations `\cdot` and `\centerdot` resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for `center`..):
- `\cdot` gives ⬝ [U+2B1D](https://www.compart.com/en/unicode/U+2B1D) "Black Very Small Square"
- `\centerdot` gives · [U+00B7](https://www.compart.com/en/unicode/U+00B7) "Middle Dot"
Mathlib mostly uses the `\centerdot` variant, except for the dotProduct notation and some probably unsuspecting people wanting \centerdot but getting \cdot in their comments and 6 uses of a notation using the raw `\cdot` without any subscript at `Mathlib\Topology\Homotopy\Product.lean`.
This PR replaces the dot product `⬝ᵥ` with its `\centerdot` counterpart `·ᵥ`. The related PR [here](https://github.com/leanprover/vscode-lean4/pull/639) can then overwrite the `\cdot` abbreviation, to produce the same symbol as the `centerdot` abbreviation does.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
133/133 |
Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/Topology/Instances/Matrix.lean |
25 |
5 |
['MoritzBeroRoos', 'eric-wieser', 'github-actions'] |
nobody |
3-8106 3 days ago |
3-16588 3 days ago |
3-16624 3 days |
27403 |
MoritzBeroRoos author:MoritzBeroRoos |
feat: replace probably erroneous usage of ⬝ (with old \cdot) by · (with \centerdot) |
Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot).
Currently the abbreviations \cdot and \centerdot resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for center..).
This pr replaces instances of ⬝ where · was probably meant.
All of the replacement is in comments, except for the file bench_summary.lean which is used for priting the github benchmark results. Since this file is about scientific notation of numbers, sure · was meant to be used, not a rectangle.
[Related](https://github.com/leanprover-community/mathlib4/pull/27399)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
195/195 |
Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Normed/Unbundled/InvariantExtension.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/FieldTheory/PurelyInseparable/PerfectClosure.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,Mathlib/Topology/Instances/Matrix.lean,scripts/bench_summary.lean |
49 |
3 |
['eric-wieser', 'github-actions'] |
nobody |
3-5361 3 days ago |
3-8851 3 days ago |
3-8845 3 days |
27406 |
tb65536 author:tb65536 |
feat(MeasureTheory/Measure/AddContent): Add lemma `addContent_biUnion_eq` |
This PR adds a lemma `addContent_biUnion_eq` stating than an `AddContent` is additive on a finite pairwise disjoint union. We already have the inequality `addContent_biUnion_le` without the pairwise disjoint assumption.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
16/0 |
Mathlib/MeasureTheory/Measure/AddContent.lean |
1 |
1 |
['github-actions'] |
nobody |
3-3589 3 days ago |
3-3589 3 days ago |
3-3573 3 days |
27277 |
artie2000 author:artie2000 |
feat(Logic/Equiv): `Equiv` on `Subtype` implies equivalence of existence statements |
* Add lemmas stating that an `Equiv` between `Subtypes` implies the equivalence of the corresponding `Exists` and `ExistsUnique` propositions.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
9/0 |
Mathlib/Logic/Equiv/Defs.lean |
1 |
6 |
['YaelDillies', 'artie2000', 'eric-wieser', 'github-actions'] |
nobody |
3-2210 3 days ago |
7-72044 7 days ago |
7-74264 7 days |
26031 |
joelriou author:joelriou |
feat(Algebra/Homology): the derived category of a linear abelian category is linear |
---
- [x] depends on: #25931
This PR continues the work from #24596.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24596 |
t-category-theory |
71/0 |
Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Linear.lean,Mathlib/Algebra/Homology/HomotopyCategory/Shift.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean |
4 |
n/a |
['AntoineChambert-Loir', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] |
nobody |
2-64921 2 days ago |
unknown |
unknown |
27378 |
peakpoint author:peakpoint |
refactor(Geometry/Euclidean/Projection): redefine projection and reflection for affine subspaces |
This PR continues the work from #25578.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25578 |
new-contributor
t-euclidean-geometry
|
316/317 |
Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Geometry/Euclidean/Circumcenter.lean,Mathlib/Geometry/Euclidean/Projection.lean |
4 |
3 |
['github-actions', 'peakpoint'] |
nobody |
2-64081 2 days ago |
2-64081 2 days ago |
2-64630 2 days |
26958 |
joelriou author:joelriou |
feat(AlgebraicTopology): path objects in model categories |
This PR dualizes #26171 which was about cylinder objects.
---
- [x] depends on: #26171
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
335/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/ModelCategory/IsCofibrant.lean,Mathlib/AlgebraicTopology/ModelCategory/PathObject.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/CommSq.lean |
4 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
2-48530 2 days ago |
2-48550 2 days ago |
4-57531 4 days |
26967 |
joelriou author:joelriou |
feat(AlgebraicTopology/ModelCategory): left homotopies |
This PR studies the notion of "left homotopy" given by cylinder objects in model categories.
---
- [x] depends on: #26171
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
303/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/ModelCategory/LeftHomotopy.lean |
2 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
2-48500 2 days ago |
2-48523 2 days ago |
4-23447 4 days |
26464 |
joelriou author:joelriou |
feat(LinearAlgebra): generators of pi tensor products |
In this PR, we show that the `R`-module `⨂[R] i, M i` is finitely generated if the index type is finite and all `M i` are finitely generated. This follows from a more precise result about generators of `⨂[R] i, M i`.
---
This PR continues the work from #18725.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18725 |
file-removed
t-algebra
label:t-algebra$ |
268/4 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/SubtypeNeLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
9 |
11 |
['eric-wieser', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant'] |
nobody |
2-48369 2 days ago |
2-48392 2 days ago |
26-3730 26 days |
27305 |
eric-wieser author:eric-wieser |
feat: instances for `ZeroHom` and `OneHom` |
This is motivated by wanting to write some lemmas about how the def in #27272 behaves on addition and scalar multiplcation, which requires these operations to first be defined.
This shows that `ZeroHom` forms an `AddCommGroup` and `Module`, as well as analogous intermediate statements and `OneHom` results.
---
- [x] depends on: #27318
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
188/8 |
Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Hom.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean |
6 |
3 |
['eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
2-48353 2 days ago |
3-9197 3 days ago |
3-9181 3 days |
27417 |
PierreQuinton author:PierreQuinton |
feat: add `SigmaCompleteLattice` |
A $\sigma$-complete lattice is a lattice in which every countable subset `s` has a least upper bound and a greatest lower bound, denoted below by `sSup s` and `sInf s`.
This PR adds the classes `SigmaCompleteLattice` as well as some theorems (mainly adapted from `CompleteLattice` and `ConditionallyCompleteLattice`). This is an adaptation of #26318
---
[](https://gitpod.io/from-referrer/)
|
t-order |
394/0 |
Mathlib.lean,Mathlib/Order/SigmaCompleteLattice.lean |
2 |
3 |
['PierreQuinton', 'github-actions', 'vihdzp'] |
nobody |
2-45255 2 days ago |
2-56793 2 days ago |
2-56841 2 days |
27230 |
paulorauber author:paulorauber |
feat(Probability): Prove Hoeffding's lemma corollary |
Prove a corollary of Hoeffding's lemma for random variables with non-zero expectation.
This simple corollary was suggested by a reviewer based on a recent contribution (#26744).
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
18/9 |
Mathlib/Probability/Moments/SubGaussian.lean |
1 |
1 |
['github-actions'] |
nobody |
2-30925 2 days ago |
9-25015 9 days ago |
9-25065 9 days |
27419 |
grunweg author:grunweg |
chore(IntegrableOn): generalise one more section to enorms |
---
[](https://gitpod.io/from-referrer/)
|
carleson
t-measure-probability
|
139/96 |
Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/LogTrigonometric.lean,Mathlib/MeasureTheory/Integral/ExpDecay.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Periodic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Integral.lean,Mathlib/NumberTheory/AbelSummation.lean,Mathlib/NumberTheory/LSeries/SumCoeff.lean |
12 |
3 |
['github-actions', 'grunweg', 'sgouezel'] |
nobody |
2-26884 2 days ago |
2-54881 2 days ago |
2-54932 2 days |
27183 |
pechersky author:pechersky |
feat(RingTheory/ValuativeRel): IsRankLeOne when there is a compatible Zm0 or NNReal valuation |
and then provide it for Q_[p]
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
t-number-theory
label:t-algebra$ |
76/21 |
Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean |
3 |
12 |
['adamtopaz', 'github-actions', 'pechersky'] |
nobody |
2-19919 2 days ago |
2-19926 2 days ago |
10-647 10 days |
27439 |
Vierkantor author:Vierkantor |
chore(*): review 2024-04-01 adaptation notes |
There are three kinds of adaptation notes from the changes on 2024-04-01.
One about `erw` "blowing up"; this referred to a backwards compatibility flag that was already removed long ago (#14064). So this can just be deleted.
A few about needing to use `symm` before `ext` fires: this is because `apply` failing to unify when mixing very general limit definitions and very specific operations for equalizers/pullbacks. I propose we fix this by unfolding the terms manually in an `intro` type ascription. In the longer term we should consider instead specializing the limit lemmas to these specific shapes.
A few about `aesop` not working. This has the same underlying cause, due to `ext` not applying, so it now looks like `intro s (m : _ --> _) x; aesop`. Same specializing of the limit lemmas may be useful here.
---
[](https://gitpod.io/from-referrer/)
|
tech debt |
8/25 |
Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/CategoryTheory/Limits/Shapes/KernelPair.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean |
4 |
1 |
['github-actions'] |
nobody |
2-18579 2 days ago |
2-18655 2 days ago |
2-18640 2 days |
27385 |
grunweg author:grunweg |
feat: weaken definiteness requirement for `ENormed(Add)(Comm)Monoid`s |
Most lemmas about these do not require the enorm to be positive definite (i.e., work fine if a nontrivial element has zero enorm), or can be rephrased easily. A handful of lemmas do require this condition.
Weaken the definition of `ENormed(Add)(Comm)Monoid`s to only ask that zero have enorm zero, and
add new classes `StrictENormed(Add)(Comm)Monoid` which also ask for definiteness.
Most existing lemmas are kept unchanged (i.e., have slightly weaker hypotheses now);
a few have their typeclasses adjusted.
The motivating example behind this is `eLpNorm`, which is an enormed commutative (additive) monoid --- when we drop the definiteness requirement. This will (hopefully) allow unifying many lemma about `eLpNorm` with their more general enorm variants.
---
[](https://gitpod.io/from-referrer/)
|
carleson
t-analysis
|
94/39 |
Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean |
6 |
3 |
['github-actions', 'grunweg'] |
nobody |
2-14122 2 days ago |
2-14374 2 days ago |
2-14359 2 days |
27424 |
vihdzp author:vihdzp |
feat: interval in archimedean field contains fraction with large enough denominator |
This is a slight generalization of `exists_rat_btwn` that can be used, for instance, to prove that there's a dyadic rational between any two elements.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
13/11 |
Mathlib/Algebra/Order/Archimedean/Basic.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
2-13514 2 days ago |
2-13514 2 days ago |
2-46677 2 days |
27427 |
alreadydone author:alreadydone |
chore(RingTheory): use `extend` instead of `abbrev` in `IsS(emis)impleModule` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
46/37 |
Mathlib/Algebra/Category/ModuleCat/Simple.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/Semisimple.lean,Mathlib/RepresentationTheory/Maschke.lean,Mathlib/RingTheory/Length.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/SimpleModule/Rank.lean |
8 |
4 |
['alreadydone', 'github-actions', 'leanprover-bot'] |
nobody |
2-13502 2 days ago |
2-13502 2 days ago |
2-13486 2 days |
27116 |
pechersky author:pechersky |
feat(Valued): FaithfulSMul to completion |
simplifies coercions and golfs existing instance
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
t-number-theory
label:t-algebra$ |
16/6 |
Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean |
2 |
1 |
['github-actions'] |
nobody |
2-8309 2 days ago |
12-63308 12 days ago |
12-63310 12 days |
27107 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(GroupTheory/GroupAction/SubMulAction/Combination) : combinations and group actions |
`Nat.Combination X n` is the type all `s : Finset X` such that `s.card = n`.
This PR provides some API for this subtype and the `SubMulAction` it inherits when a group acts on `X`.
It will be used in conjunction with the description of some maximal subgroups of `Equiv.Perm X` to construct primitive actions.
Question on the names: when `X` is a fintype, there is docs#Finset.powersetCard` that gives the same object, as a docs#Finset. But the present PR also applies when `X` is infinite. Then maybe `Nat.Combination` should be renamed as `Set.powersetCard`?
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
318/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean |
3 |
2 |
['github-actions', 'tb65536'] |
nobody |
2-8131 2 days ago |
12-78032 12 days ago |
12-78077 12 days |
26783 |
matthewjasper author:matthewjasper |
feat(RingTheory/Flat): Add theorems relating Submodule.torsion and Module.Flat |
Co-authored-by: Kevin Buzzard
---
This PR continues the work from #25334.
[](https://gitpod.io/from-referrer/)
|
FLT
new-contributor
t-algebra
label:t-algebra$ |
205/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/RingTheory/Flat/TorsionFree.lean,Mathlib/RingTheory/Ideal/IsPrincipal.lean |
5 |
1 |
['github-actions'] |
nobody |
2-7103 2 days ago |
21-39545 21 days ago |
21-39575 21 days |
27320 |
Jlh18 author:Jlh18 |
doc (CategoryTheory/Bicategory/Grothendieck): rename Grothendieck to coGrothendieck |
Rename `CategoryTheory.Pseudofunctor.Grothendieck` to `CategoryTheory.Pseudofunctor.coGrothendieck`. Currently there are two inconsistent conventions taken in [`CategoryTheory.Grothendieck`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Grothendieck.html#CategoryTheory.Grothendieck) and [`CategoryTheory.Pseudofunctor.Grothendieck`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Bicategory/Grothendieck.html#CategoryTheory.Pseudofunctor.Grothendieck), namely the latter includes an `op` on the indexing category / base category of the Grothendieck construction.
Later on, I will make more PRs to introduce the version of `CategoryTheory.Pseudofunctor.Grothendieck` that does not have an `op`.
Zulip discussion: [#mathlib4 > Refactor Grothendieck from Pseudofunctor.Grothendieck](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Refactor.20Grothendieck.20from.20Pseudofunctor.2EGrothendieck/with/529165679).
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
21/13 |
Mathlib/CategoryTheory/Bicategory/Grothendieck.lean,Mathlib/CategoryTheory/FiberedCategory/Grothendieck.lean |
2 |
1 |
['github-actions'] |
nobody |
2-2689 2 days ago |
2-15712 2 days ago |
3-78810 3 days |
26617 |
vihdzp author:vihdzp |
feat(Data/Sum/Order): `toLex` as a `RelIso` |
As [requested](https://github.com/leanprover-community/mathlib4/pull/20409#discussion_r1903319844) by @eric-wieser in #20409.
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-order
|
30/0 |
Mathlib/Data/Sum/Order.lean |
1 |
4 |
['eric-wieser', 'github-actions', 'kckennylau', 'vihdzp'] |
nobody |
2-2593 2 days ago |
24-69380 24 days ago |
24-69644 24 days |
27450 |
eric-wieser author:eric-wieser |
chore(LinearAlgebra/QuadraticForm): missing `coe_mk` and `norm_cast` |
Also fixes an over-applied `simps`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
12/8 |
Mathlib/LinearAlgebra/QuadraticForm/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
1-84453 1 day ago |
1-84467 1 day ago |
1-84513 1 day |
26396 |
xroblot author:xroblot |
feat(RingTheory): define the dual of a basis for the trace and prove basic properties |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
120/37 |
Mathlib/LinearAlgebra/BilinearForm/Properties.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Trace/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
1-82277 1 day ago |
31-54247 1 month ago |
31-54298 31 days |
27452 |
JovanGerb author:JovanGerb |
chore(to_additive): remove superfluous `List.reverse` |
This `List.reverse` seems to not affect anything.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
0/1 |
Mathlib/Tactic/ToAdditive/Frontend.lean |
1 |
1 |
['github-actions'] |
nobody |
1-81876 1 day ago |
1-82189 1 day ago |
1-82240 1 day |
25730 |
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/)
---
*This PR continues the work from #22961.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/22961* |
t-algebra label:t-algebra$ |
66/3 |
Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/GroupTheory/Index.lean,Mathlib/LinearAlgebra/Determinant.lean |
4 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
1-80889 1 day ago |
1-80913 1 day ago |
44-34420 44 days |
27453 |
pechersky author:pechersky |
feat(Topology/UniformSpace/Ultra): completion is ultra uniformity iff base is |
Supersedes #24628
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
159/5 |
Mathlib.lean,Mathlib/Order/Filter/NAry.lean,Mathlib/Order/Filter/Prod.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/UniformSpace/Defs.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean,Mathlib/Topology/UniformSpace/Ultra/Completion.lean |
7 |
1 |
['github-actions'] |
nobody |
1-80034 1 day ago |
1-80094 1 day ago |
1-80090 1 day |
26833 |
pechersky author:pechersky |
feat(ValuativeRel): MulArchimedean (ValueGroupWithZero R) when IsRankLeOne |
with a proof_wanted for the reverse implication
---
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
t-number-theory
easy
label:t-algebra$ |
13/0 |
Mathlib/RingTheory/Valuation/ValuativeRel.lean |
1 |
5 |
['github-actions', 'pechersky', 'wwylele'] |
nobody |
1-77264 1 day ago |
1-79566 1 day ago |
19-68557 19 days |
27455 |
pechersky author:pechersky |
chore(NumberTheory/Padics/Hensel): rephrase using `aeval` |
This is easier to use at call site, because on need not pass `Polynomial.map (algebraMap _ _ )` in the use of `hensels_lemma`
---
[](https://gitpod.io/from-referrer/)
|
tech debt
t-algebra
t-number-theory
label:t-algebra$ |
157/138 |
Mathlib/NumberTheory/Padics/Hensel.lean |
1 |
1 |
['github-actions'] |
nobody |
1-73876 1 day ago |
1-73931 1 day ago |
1-73930 1 day |
27422 |
vihdzp author:vihdzp |
feat: relate images to pointwise negation/inverses |
These lemmas kept coming up in the CGT repo.
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-algebra
label:t-algebra$ |
13/0 |
Mathlib/Algebra/Group/Pointwise/Set/Basic.lean |
1 |
7 |
['YaelDillies', 'github-actions', 'vihdzp'] |
nobody |
1-57744 1 day ago |
2-2838 2 days ago |
2-15502 2 days |
27254 |
yuanyi-350 author:yuanyi-350 |
2025 imo problem3 |
---
[](https://gitpod.io/from-referrer/)
|
large-import
IMO
|
354/3 |
Archive.lean,Archive/Imo/Imo2025Q3.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/Ring/Int/Parity.lean,Mathlib/Algebra/Ring/Parity.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/NumberTheory/Multiplicity.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean |
8 |
17 |
['github-actions', 'madvorak', 'themathqueen', 'wwylele', 'yuanyi-350'] |
nobody |
1-55762 1 day ago |
5-67736 5 days ago |
7-26066 7 days |
26840 |
oliver-butterley author:oliver-butterley |
feat(Mathlib/Dynamics/BirkhoffSum/Average): add 3 BirkhoffAverage lemmas |
- `birkhoffAverage_add`
- `birkhoffAverage_neg`
- `birkhoffAverage_sub`
Co-authored-by: Lua Viana Reis
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics |
22/1 |
Mathlib/Dynamics/BirkhoffSum/Average.lean |
1 |
2 |
['ADedecker', 'github-actions'] |
nobody |
1-51113 1 day ago |
19-55878 19 days ago |
19-55935 19 days |
27458 |
Louddy author:Louddy |
feat(Composition): add simp lemmas |
Add two simp lemmas `embedding_comp_inv` and `index_embedding`.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
easy
|
2/0 |
Mathlib/Combinatorics/Enumerative/Composition.lean |
1 |
1 |
['github-actions'] |
nobody |
1-50004 1 day ago |
1-50004 1 day ago |
1-52363 1 day |
27355 |
alreadydone author:alreadydone |
feat(Algebra): annihilator of fg module over PID is ann of some element |
Live coding at *Formalizing Class Field Theory* for the finite case of the normal basis theorem
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
50/0 |
Mathlib/Algebra/Module/PID.lean,Mathlib/RingTheory/Ideal/Maps.lean |
2 |
6 |
['alreadydone', 'github-actions', 'kckennylau'] |
nobody |
1-45965 1 day ago |
4-18723 4 days ago |
4-18707 4 days |
27451 |
kckennylau author:kckennylau |
feat(RingTheory/Valuation): define ball, closed ball, and sphere |
*From the 2025 Local Class Field Theory Workshop.*
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/0 |
Mathlib/RingTheory/Valuation/Basic.lean |
1 |
3 |
['JovanGerb', 'github-actions', 'pechersky'] |
nobody |
1-45576 1 day ago |
1-82282 1 day ago |
1-82332 1 day |
27257 |
JovanGerb author:JovanGerb |
feat(LinearAlgebra/AffineSpace/Ordered): add `lineMap_le_lineMap_iff_of_lt'` |
I only need `lineMap_le_lineMap_iff_of_lt'`. The other lemmas are added for completeness.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
44/0 |
Mathlib/LinearAlgebra/AffineSpace/Ordered.lean |
1 |
3 |
['Ruben-VandeVelde', 'eric-wieser', 'github-actions'] |
nobody |
1-42379 1 day ago |
2-12843 2 days ago |
8-23580 8 days |
27430 |
erdOne author:erdOne |
feat(Algebra/Order): Locally Finite Linearly Ordered Abelian Groups |
We prove that `ℤ` is the only Locally Finite Linearly Ordered Abelian Group.
We also move `OrderMonoidIso.toAdditive` and friends from `Mathlib/GroupTheory/ArchimedeanDensely.lean` to a new file.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-order
t-algebra
label:t-algebra$ |
296/74 |
Mathlib.lean,Mathlib/Algebra/Order/Hom/TypeTags.lean,Mathlib/Algebra/Order/Monoid/LocallyFiniteOrder.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean |
4 |
12 |
['YaelDillies', 'github-actions', 'kbuzzard', 'pechersky'] |
nobody |
1-40722 1 day ago |
2-32430 2 days ago |
2-32923 2 days |
27383 |
euprunin author:euprunin |
chore: replace `omega` with `grind` in `Algebra/` theorems/lemmas where applicable |
Motivation: `grind` subsumes `omega`, which is expected to be deprecated. |
bench-after-CI
t-algebra
label:t-algebra$ |
226/226 |
Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/CubicDiscriminant.lean,Mathlib/Algebra/GCDMonoid/Nat.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Int/Even.lean,Mathlib/Algebra/Group/Nat/Even.lean,Mathlib/Algebra/Group/Nat/Range.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughInjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Fractions.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/Embedding/Boundary.lean,Mathlib/Algebra/Homology/Embedding/CochainComplex.lean,Mathlib/Algebra/Homology/Embedding/Connect.lean,Mathlib/Algebra/Homology/ExactSequence.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/TotalComplexShift.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/Int/Sum.lean,Mathlib/Algebra/Order/Group/Unbundled/Int.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Order/Ring/Int.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Degree/IsMonicOfDegree.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/OfFn.lean,Mathlib/Algebra/Polynomial/Sequence.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/Ring/Divisibility/Lemmas.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Algebra/Vertex/VertexOperator.lean |
58 |
12 |
['euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
1-37744 1 day ago |
1-37801 1 day ago |
3-51168 3 days |
26099 |
grunweg author:grunweg |
feat: add IsEmbedding.sumElim_of_separatingNhds |
Characterise when the Sum.elim of two inducing maps resp. embeddings is an embedding,
and deduce that the ranges of the two maps lying in separated neighbourhoods suffices.
This is used in my bordism theory project.
Co-authored by: @plp127
---
This PR was manually re-created (and migrated to a fork at the same time) from #22137, since that seemed easiest.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
105/0 |
Mathlib/Data/Sum/Basic.lean,Mathlib/Topology/Constructions/SumProd.lean |
2 |
4 |
['ADedecker', 'github-actions'] |
nobody |
1-36346 1 day ago |
38-31045 1 month ago |
38-31037 38 days |
27460 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Walk): add theorems about membership on the support of `Walk.concat` |
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
18/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
nobody |
1-36053 1 day ago |
1-47654 1 day ago |
1-47697 1 day |
27461 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Paths): add lemma `SimpleGraph.Walk.IsPath.mem_support_iff_exists_append` |
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
14/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
1 |
['github-actions'] |
nobody |
1-36044 1 day ago |
1-47019 1 day ago |
1-47065 1 day |
27464 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Paths): add lemma `SimpleGraph.Walk.IsPath.ne_of_mem_support_of_append` |
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
7/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
1 |
['github-actions'] |
nobody |
1-36037 1 day ago |
1-45369 1 day ago |
1-45420 1 day |
27468 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph): add theorem `SimpleGraph.Connected.diff_dist_adj` |
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
16/0 |
Mathlib/Combinatorics/SimpleGraph/Metric.lean |
1 |
1 |
['github-actions'] |
nobody |
1-36031 1 day ago |
1-37552 1 day ago |
1-37652 1 day |
27457 |
grunweg author:grunweg |
feat(LocallyIntegrable): generalise the first half of the file to enorms |
---
This is not exhaustive; all `smul` lemmas can also be generalised (assuming suitable typeclasses).
That will happen in a separate PR.
[](https://gitpod.io/from-referrer/)
|
carleson
t-measure-probability
|
90/48 |
Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean |
2 |
1 |
['github-actions'] |
nobody |
1-35992 1 day ago |
1-56114 1 day ago |
1-56159 1 day |
24192 |
alreadydone author:alreadydone |
feat(RingTheory): semisimple Wedderburn–Artin existence |
---
- [x] depends on: #24119
- [x] depends on: #23963
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
469/67 |
Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/Order/CompleteSublattice.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/SimpleModule/IsAlgClosed.lean,Mathlib/RingTheory/SimpleModule/Isotypic.lean,Mathlib/RingTheory/SimpleModule/WedderburnArtin.lean,docs/1000.yaml |
9 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
1-35335 1 day ago |
1-35484 1 day ago |
69-80426 69 days |
27331 |
Equilibris author:Equilibris |
feat(Data/List/Pairwise): Add two lemmas about pairwise and pwFilter |
- `Pairwise.mem_list_of_mem_pwFilter` states that every member of a pwFilter is a mem of the list pwFilter is in
- `pairwise_pwfilter_of_pairwise` show how pwFilter maintains a generic pairwise structure
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
32/0 |
Mathlib/Data/List/Pairwise.lean |
1 |
1 |
['github-actions'] |
nobody |
1-35152 1 day ago |
1-35152 1 day ago |
2-26445 2 days |
27471 |
FrankieNC author:FrankieNC |
feat(Topology/Baire): In a nonempty Baire space, any dense GDelta set is not meagre |
Proves that in a nonempty Baire space any dense Gδ set is not meagre
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
7/0 |
Mathlib/Topology/Baire/Lemmas.lean |
1 |
1 |
['github-actions'] |
nobody |
1-32782 1 day ago |
1-32906 1 day ago |
1-32959 1 day |
27368 |
alreadydone author:alreadydone |
feat(FieldTheory/Finite): minimal polynomial of Frobenius |
for the normal basis theorem at *Formalizing Class Field Theory*
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
37/5 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Minpoly/Basic.lean |
4 |
6 |
['alreadydone', 'github-actions', 'kckennylau'] |
nobody |
1-32541 1 day ago |
1-32702 1 day ago |
1-84876 1 day |
27092 |
smorel394 author:smorel394 |
feat(LinearAlgebra.DirectSum.Finite): a finite direct sum of finite modules is a finite module |
Prove that a finite direct sum of finite modules is a finite module.
There are instances both in the `DFinsupp` and `DirectSum` namespaces, to help type class inference find them.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
32/0 |
Mathlib.lean,Mathlib/LinearAlgebra/DirectSum/Finite.lean |
2 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'smorel394'] |
nobody |
1-31747 1 day ago |
2-37597 2 days ago |
12-48713 12 days |
26704 |
euprunin author:euprunin |
chore: golf Algebra/ using `aesop` |
|
t-algebra label:t-algebra$ |
8/29 |
Mathlib/Algebra/Colimit/Ring.lean,Mathlib/Algebra/GroupWithZero/Regular.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/Embedding/Connect.lean,Mathlib/Algebra/Lie/Ideal.lean,Mathlib/Algebra/Polynomial/Reverse.lean |
6 |
28 |
['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] |
nobody |
1-31433 1 day ago |
1-31433 1 day ago |
17-74537 17 days |
27472 |
guelmi94 author:guelmi94 |
feat(Combinatorics/SimpleGraph/Walk): add lemma `support_injective` |
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
3/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
nobody |
1-30885 1 day ago |
1-30888 1 day ago |
1-30938 1 day |
26204 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): Add global preorder instance for schemes |
In this PR we added a default preorder instance for schemes, defined to be the specialization order as discussed here: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/dimension.20function.20for.20schemes/near/524997376 for discussion
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
18/0 |
Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/Scheme.lean |
2 |
14 |
['Raph-DG', 'erdOne', 'github-actions', 'joelriou', 'ocfnash'] |
nobody |
1-30650 1 day ago |
1-30650 1 day ago |
33-33374 33 days |
26679 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): 2-functoriality of `CatCommSqOver` |
This PR uses the notion of categorical cospan transforms from #26412 and its bicategory-like notations from #26447 to provide API for 2-functoriality of the construction `CatCommSqOver F G X`. We show that `ψ : CatCospanTransform F G F' G'` defines a functor `CatCommSqOver F G X ⥤ CatCommSqOver F' G' X`, and that a functor `U : X ⥤ Y` induces a functor `CatCommSqOver F G Y ⥤ CatCommSqOver F G X` via precomposition. We give the battery of lemma that shows that these constructions are components of a `Cat`-valued "bipseudofunctor", although we cannot state it this way to keep things unbundled and universe polymorphic.
---
- [x] depends on: #26447
I apologize in advance, for this one is very boring. As usual, the higher order lemmas are found by aesop_cat and are not marked simp, but I still want to state these explicitly so that in case automation goes wrong, "manual formal bicategory manipulations" remain an option.
A design choice was made here. Instead of stating this kind of functoriality for the categorical pullback itself, I chose to state everything in terms of `CatCommSqOver`, i.e in terms of the pseudofunctorial construction corepresented by the categorical pullback. The rationale here is that while we could have done everything only at the level of the categorical pullback itself, I believe this design will allow for easier manipulations of categorical pullback *squares*.
Actual bifunctoriality of the categorical pullback (and thus equivalence invariance, which is the key point of the notion compared to the strict pullback) will be in future PRs.
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
364/1 |
Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean |
1 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'robin-carlier'] |
nobody |
1-29912 1 day ago |
1-29912 1 day ago |
10-63555 10 days |
27447 |
eric-wieser author:eric-wieser |
refactor: rename `Rel` to `Set.Rel`, restore the old `Rel` |
Many users are confused that Rel no longer means what it used to. Since the design is not obvious, let's put it in a namespace that makes the choice obvious.
This then restores the old definition of `Rel`, as an abbrev; it's conceivable that many users were just using this as a shorthand, and this stops them being broken by #25587. Such users will of course be broken if they used [the old API](https://github.com/leanprover-community/mathlib4/blob/59bd63c72671849996d64c5d3b5f24a36333483c%5E/Mathlib/Data/Rel.lean).
This way, users bumping from 4.21.0 to 4.22.0 and using `Rel` only as a shorthand will not be broken.
[#mathlib4 > Changing `Rel` to `Set (α × β)`, to help uniform spaces @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Changing.20.60Rel.60.20to.20.60Set.20.28.CE.B1.20.C3.97.20.CE.B2.29.60.2C.20to.20help.20uniform.20spaces/near/528531852)
---
[](https://gitpod.io/from-referrer/)
|
t-order |
134/116 |
Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/Combinatorics/Hall/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Data/PFun.lean,Mathlib/Data/Rel.lean,Mathlib/Order/Filter/Partial.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Rel/GaloisConnection.lean,Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Length.lean,Mathlib/Topology/Partial.lean,Mathlib/Topology/UniformSpace/Basic.lean |
13 |
3 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
1-29872 1 day ago |
1-46004 1 day ago |
1-86358 1 day |
25951 |
themathqueen author:themathqueen |
feat(Analysis/InnerProductSpace/MulOpposite): defines the inner product on opposite spaces |
This pr defines the inner product on opposite spaces.
- [x] depends on: #25949
Motivation for having the inner product structure on the opposite:
One application comes up in non-commutative graphs, which are defined on a finite-dimensional C*-algebra with a faithful and positive functional (a Hilbert space structure can be induced by the defined faithful and positive functional (will be added to a pr soon)). For example, we'd need the Hilbert space structure to be defined on the opposite space to define the isomorphism: `(A →ₗ[ℂ] B) ≃ₗ[ℂ] TensorProduct ℂ B Aᵐᵒᵖ`, where `A`, `B` are again finite-dimensional C*-algebras with faithful and positive functionals.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
71/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/MulOpposite.lean |
2 |
6 |
['github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'themathqueen'] |
nobody |
1-24370 1 day ago |
3-41778 3 days ago |
20-63290 20 days |
27441 |
judithludwig author:judithludwig |
feat(RingTheory/Polynomial/Quotient): Lemma on PIDs |
This is part of a course project at Heidelberg University: https://matematiflo.github.io/CompAssistedMath2025/
feat(RingTheory/Polynomial/Quotient): add lemma: Let $$R$$ be an integral domain and assume $$R[X]$$ is a PID, then $$R$$ is a field. This lemma is useful for proving that some rings are not PIDs, such as $$\mathbb{Z}[X]$$.
Co-authored-by: Philipp Sivov @Silipp182
Co-authored-by: Veliyan Taslev @hubavelko
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
11/0 |
Mathlib/RingTheory/Polynomial/Quotient.lean |
1 |
3 |
['alreadydone', 'github-actions'] |
nobody |
1-20628 1 day ago |
2-11614 2 days ago |
2-11661 2 days |
27484 |
gasparattila author:gasparattila |
feat(Topology/Semicontinuous): use weaker assumptions for some results |
Previously, several results about semicontinuity assumed a dense ordering. In `lowerSemicontinuous_iff_isClosed_epigraph`, there was also a completeness requirement on the order, preventing its use with real-valued functions. This PR removes these superfluous assumptions.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
47/21 |
Mathlib/Topology/Semicontinuous.lean |
1 |
1 |
['github-actions'] |
nobody |
1-17287 1 day ago |
1-17618 1 day ago |
1-17665 1 day |
25491 |
tannerduve author:tannerduve |
feat(Control/Monad/Free): define free monad, prove it lawful, and implement standard effects |
This PR introduces the `Free` monad. This implementation uses the "freer monad" approach as the traditional free monad (eg from [Haskell](https://hackage.haskell.org/package/free-5.2/docs/Control-Monad-Free.html)) is not safely definable in Lean due to termination checking (it's not strictly positive).
The main contributions are:
* Definition of the `Free` monad as an inductive type which generates a monad given any type constructor `F : Type -> Type`.
* Functor and Monad instances for `Free F`, along with proofs of the `LawfulFunctor` and `LawfulMonad` laws.
* Canonical instances of `Free` with standard effect signatures:
* `FreeState s` for stateful computations, defined via a `StateF s` functor with `get` and `put` operations.
* `FreeWriter w` for logging computations, defined via a `WriterF w` functor with a `tell` operation.
* `FreeCont r` for continuation-passing computations, using the CPS functor `(α → r) → r`.
In this construction, computations are represented as **trees of effects**. Each node (`liftBind`)
represents a request to perform an effect, accompanied by a continuation specifying how the
computation proceeds after the effect. The leaves (`pure`) represent completed computations with
final results.
A key insight is that `FreeM F` satisfies the **universal property of free monads**: for any monad
`M` and effect handler `f : F → M`, there exists a unique way to interpret `FreeM F` computations
in `M` that respects the effect semantics given by `f`. This unique interpreter is `liftM f`, which
acts as the canonical **fold** for free monads.
To execute or interpret these computations, we provide two approaches:
1. **Hand-written interpreters** (`FreeState.run`, `FreeWriter.run`, `FreeCont.run`) that directly
pattern-match on the tree structure
2. **Canonical interpreters** (`FreeState.toStateM`, `FreeWriter.toWriteT`, `FreeCont.toContT`) derived from
the universal property via `liftM`
And then prove that these approaches are equivalent
---
This PR adds new files and definitions; no breaking changes.
**Tags:** free monad, freer monad, effect systems, state monad, writer monad, continuation monad, operational semantics, verified interpreters
|
t-data
maintainer-merge
|
696/0 |
Mathlib.lean,Mathlib/Control/Monad/Free.lean,Mathlib/Control/Monad/Free/Effects.lean,MathlibTest/freemonad.lean,docs/references.bib |
5 |
145 |
['YaelDillies', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'plp127', 'quangvdao', 'tannerduve'] |
nobody |
1-15571 1 day ago |
39-29286 1 month ago |
49-48369 49 days |
26912 |
pechersky author:pechersky |
chore(Algebra/Ring/Subring): simp tag `Subring.smul_def` |
s-multiplying by a subtype is easiest to manipulate when both terms are in the ambient type. Many places that had to use the _def lemma for a rewrite, or to include it in a simp set, no longer have to.
Ported from #25308
---
[](https://gitpod.io/from-referrer/)
I found this being not-simp frustrating when talking about submodules over a valuation subring. |
maintainer-merge
t-algebra
label:t-algebra$ |
68/67 |
Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Exact.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Ring/Periodic.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/RootSystem/RootPositive.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean,Mathlib/RingTheory/OreLocalization/Basic.lean |
25 |
16 |
['eric-wieser', 'github-actions', 'j-loreaux', 'linesthatinterlace', 'pechersky'] |
nobody |
1-15284 1 day ago |
4-8174 4 days ago |
15-23049 15 days |
26689 |
euprunin author:euprunin |
chore: golf Combinatorics/ using `grind` |
|
t-combinatorics |
9/62 |
Mathlib/Combinatorics/Enumerative/Composition.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/Hall/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean |
8 |
8 |
['bryangingechen', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] |
nobody |
1-12161 1 day ago |
18-85952 18 days ago |
23-16396 23 days |
27272 |
eric-wieser author:eric-wieser |
chore: generalize `sumAddHom` to `sumZeroHom` |
This hopefully will make this usable on quadratic maps, which preserve zero but not addition.
For now this does not change the simp-normal form of `sumAddHom`
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
t-algebra
label:t-algebra$ |
64/24 |
Mathlib/Data/DFinsupp/BigOperators.lean |
1 |
5 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
1-8935 1 day ago |
1-25832 1 day ago |
7-82652 7 days |
27492 |
euprunin author:euprunin |
chore: further golf some previously `grind` golfed proofs |
Replaces #27431, #27426, #27408 and #27404.
It is probably safer to go with local `grind [t1, t2, …]` for now and leave global `@[grind =, etc.] theorem t1 …` annotations for later. I guess the local `grind [t1, t2, …]` uses can help guide which `t1`, `t2`, etc are worth to annotate "globally". |
bench-after-CI |
9/37 |
Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/RingTheory/DividedPowers/Basic.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean |
4 |
1 |
['github-actions'] |
nobody |
1-8693 1 day ago |
1-8883 1 day ago |
1-8915 1 day |
26640 |
euprunin author:euprunin |
chore: golf Data/ using `grind` |
|
t-data |
13/96 |
Mathlib/Data/EReal/Operations.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/Indexes.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/PEquiv.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/Data/Set/Lattice.lean |
12 |
19 |
['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
1-8372 1 day ago |
1-8372 1 day ago |
24-10531 24 days |
27400 |
dleijnse author:dleijnse |
feat: define geometrically reduced algebras |
Define geometrically reduced algebras, and prove that if all finitely generated subalgebras of an algebra `A` are geometrically reduced, then `A` is geometrically reduced.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
137/0 |
Mathlib.lean,Mathlib/RingTheory/Nilpotent/GeometricallyReduced.lean |
2 |
23 |
['dleijnse', 'github-actions', 'kckennylau'] |
nobody |
1-7257 1 day ago |
3-12146 3 days ago |
3-12192 3 days |
27485 |
grunweg author:grunweg |
chore: some whitespace fixes |
Found by the linter in #26926.
---
[](https://gitpod.io/from-referrer/)
|
|
32/32 |
Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Notation/Lemmas.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Data/Nat/Find.lean,Mathlib/Data/Subtype.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Nontrivial/Defs.lean,Mathlib/Logic/UnivLE.lean,Mathlib/Order/Minimal.lean |
11 |
7 |
['JovanGerb', 'adomani', 'eric-wieser', 'github-actions', 'grunweg'] |
nobody |
1-5099 1 day ago |
1-17437 1 day ago |
1-17421 1 day |
27486 |
grunweg author:grunweg |
chore: add space around `rintro`/`rcases`/`obtain` or-patterns |
The pretty-printer enforces spaces in or-patterns, e.g. `_|_|x` to `_ | _ | x` (which seems clearly good).
I'm on the fence about `(_|_)` --- while `(_ | _)` seems nicer, I'm not sure if I'm really happy with it.
`_ | _` could be even nicer when possible. Opinions?
---
[](https://gitpod.io/from-referrer/)
|
|
181/180 |
Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Algebra/Group/Commute/Units.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Homology/Embedding/Boundary.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/OrderIso.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/Support.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/AlgebraicTopology/DoldKan/Degeneracies.lean,Mathlib/AlgebraicTopology/DoldKan/FunctorGamma.lean,Mathlib/AlgebraicTopology/DoldKan/Homotopies.lean,Mathlib/AlgebraicTopology/DoldKan/HomotopyEquivalence.lean,Mathlib/AlgebraicTopology/DoldKan/NCompGamma.lean,Mathlib/AlgebraicTopology/DoldKan/Normalized.lean,Mathlib/AlgebraicTopology/DoldKan/Projections.lean,Mathlib/AlgebraicTopology/DoldKan/SplitSimplicialObject.lean,Mathlib/AlgebraicTopology/SimplicialSet/Horn.lean,Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,Mathlib/Analysis/Calculus/LineDeriv/IntegrationByParts.lean,Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Analysis/NormedSpace/Connected.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Functor/OfSequence.lean,Mathlib/CategoryTheory/Limits/Bicones.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Products.lean,Mathlib/CategoryTheory/Limits/Final/ParallelPair.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Pullbacks.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/FiniteLimits.lean,Mathlib/CategoryTheory/Limits/Shapes/Multiequalizer.lean,Mathlib/CategoryTheory/Limits/Shapes/WideEqualizers.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean,Mathlib/CategoryTheory/Localization/Construction.lean,Mathlib/CategoryTheory/Localization/Pi.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/FunctorCategory.lean,Mathlib/CategoryTheory/Sites/MayerVietorisSquare.lean,Mathlib/Data/Fin/Fin2.lean,Mathlib/Data/Finsupp/Option.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/KummerPolynomial.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/Geometry/Manifold/Riemannian/Basic.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Filter/Subsingleton.lean,Mathlib/Probability/Independence/Kernel.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/DualNumber.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/Ideal/IsPrimary.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Lasker.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/NormNum/Prime.lean,Mathlib/Topology/Algebra/InfiniteSum/Group.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Category/LightProfinite/Sequence.lean,Mathlib/Topology/Compactness/HilbertCubeEmbedding.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/Separation/Basic.lean |
103 |
4 |
['JovanGerb', 'adomani', 'b-mehta', 'eric-wieser', 'github-actions'] |
nobody |
1-3812 1 day ago |
1-17323 1 day ago |
1-17307 1 day |
26299 |
adomani author:adomani |
perf: the `commandStart` linter only acts on modified files |
Introduces an `IO.Ref` to allow the `commandStart` linter to only run on files that git considers modified with respect to `master`.
The linter is also active on files that have had some error, as these are likely being modified!
The PR should also mitigate the speed-up that the linter introduced:
[#mathlib4 > A whitespace linter @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/A.20whitespace.20linter/near/525091877)
Assuming that this goes well, a similar mechanism could be applied to several linters that do not need to run on all code, just on the modified code.
Implementation detail: the linter is currently either on or off in "whole" files. It may be also a future development to make this more granular and only run the linter on "modifed commands in modified files", but this is not currently the plan for this modification!
---
[](https://gitpod.io/from-referrer/)
|
t-linter |
48/0 |
Mathlib/Tactic/Linter/CommandStart.lean |
1 |
5 |
['adomani', 'github-actions', 'grunweg', 'leanprover-bot'] |
nobody |
1-2173 1 day ago |
33-33757 1 month ago |
33-38390 33 days |
25945 |
adomani author:adomani |
feat: the empty line in commands linter |
This linter flags empty lines within a command.
It allows empty lines within doc-strings, module-docs and a couple of other "sensible" places.
It also skips files that are likely to contain meta-code, since there the use of empty lines in definition is more widespread.
This PR continues the work from #25236. |
large-import
t-linter
maintainer-merge
|
375/7 |
Mathlib.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/CategoryTheory/Comma/StructuredArrow/CommaMap.lean,Mathlib/Init.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/EmptyLine.lean,MathlibTest/EmptyLine.lean |
8 |
10 |
['adomani', 'eric-wieser', 'github-actions'] |
bryangingechen assignee:bryangingechen |
1-1608 1 day ago |
1-2472 1 day ago |
40-57384 40 days |
27225 |
eric-wieser author:eric-wieser |
refactor(Tactic/Lift): deprecate the third with argument |
We already have a number of tactics where the clearing happens all the time, and you have to opt out with `id h`.
This also fixes a bug where `lift z to Nat with n hn this_is_unused` would silently ignore `this_is_unused`.
---
- [ ] depends on: #27223
[](https://gitpod.io/from-referrer/)
|
t-meta |
21/9 |
Mathlib/Tactic/Lift.lean,MathlibTest/lift.lean |
2 |
5 |
['JovanGerb', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'vihdzp'] |
nobody |
1-556 1 day ago |
9-1098 9 days ago |
9-13579 9 days |
27152 |
xroblot author:xroblot |
feat(RingTheory/Ideal): prove transitivity for the relative norm |
---
- [x] depends on: #26070
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
150/13 |
Mathlib/Algebra/Algebra/Tower.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Prime.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Localization/AtPrime.lean,Mathlib/RingTheory/Localization/FractionRing.lean |
6 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'riccardobrasca', 'xroblot'] |
riccardobrasca assignee:riccardobrasca |
0-85268 23 hours ago |
11-570 11 days ago |
11-11519 11 days |
27487 |
thorimur author:thorimur |
docs: Inherit `Equivalence` docstring on notation |
The prior docstring for the notation `≌` for `Equivalence` read only
> We infix the usual notation for an equivalence
This PR instead attaches `@[inherit_doc Equivalence]` to the notation, so that information for `Equivalence` is displayed when hovering over `≌`.
We also clean up the formatting and grammar of the docstrings for `Equivalence` and its fields, and make them less "context-specific" (and therefore more appropriate for hovers) without changing their content radically.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
22/14 |
Mathlib/CategoryTheory/Equivalence.lean |
1 |
6 |
['eric-wieser', 'github-actions', 'thorimur'] |
nobody |
0-66179 18 hours ago |
1-12901 1 day ago |
1-15075 1 day |
26726 |
euprunin author:euprunin |
chore: golf Algebra/ using `grind` |
|
t-algebra label:t-algebra$ |
46/187 |
Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/ContinuedFractions/ConvergentsEquiv.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/TotalComplexShift.lean,Mathlib/Algebra/IsPrimePow.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/List.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/QuadraticDiscriminant.lean,Mathlib/Algebra/QuaternionBasis.lean,Mathlib/Algebra/TrivSqZeroExt.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicTopology/DoldKan/Homotopies.lean |
28 |
15 |
['euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] |
nobody |
0-63027 17 hours ago |
1-2129 1 day ago |
22-53023 22 days |
27166 |
joelriou author:joelriou |
feat(AlgebraicTopology): the functor `II : SimplexCategory ⥤ SimplexCategoryᵒᵖ` by Gabriel and Zisman |
In this file, we construct a cosimplicial object `SimplexCategory.II` in `SimplexCategoryᵒᵖ`, i.e. a functor `SimplexCategory ⥤ SimplexCategoryᵒᵖ`. If we identify `SimplexCategory` with the category of finite nonempty linearly ordered types, this functor could be interpreted as the contravariant functor which sends a finite nonempty linearly ordered type `T` to `T →o Fin 2`; in particular, it sends `Fin (n + 1)` to a linearly ordered type which is isomorphic to `Fin (n + 2)`. As a result, we define `SimplexCategory.II` as a functor which sends `⦋n⦌` to `⦋n + 1⦌`: on morphisms, it sends faces to degeneracies and vice versa.
(I plan to use this in order to show that the topological realization from simplicial sets to `TopCat` preserves finite limits, following the proof by Gabriel and Zisman.)
---
Suggestions for a better (short) name are welcome. `II` is the name given is the original source.
- [x] depends on: #27153
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
258/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialObject/II.lean |
2 |
3 |
['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] |
nobody |
0-61938 17 hours ago |
10-58571 10 days ago |
10-58563 10 days |
27501 |
wwylele author:wwylele |
feat(Algebra/Order): additional lemma about mkRat pos/neg |
There is `mkRat_nonneg` in the same file. This adds iff version for all pos/neg/nonpos/nonneg
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
12/0 |
Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-59110 16 hours ago |
0-59110 16 hours ago |
0-73411 20 hours |
27055 |
wwylele author:wwylele |
feat(RingTheory): add HahnSeries.truncate |
---
This is for the proof of Hahn embedding theorem #27043, but it feels niche to have it in HahnSeries file, so I am not sure... if this doesn't feel right, I could make them private to the proof.
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
31/0 |
Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Basic.lean |
2 |
3 |
['Ruben-VandeVelde', 'ScottCarnahan', 'github-actions'] |
nobody |
0-58991 16 hours ago |
0-58991 16 hours ago |
13-73485 13 days |
24872 |
smmercuri author:smmercuri |
feat: `apply` and `coe` results for `UniformSpace.Completion.mapRingHom` |
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-topology
|
9/0 |
Mathlib/Topology/Algebra/UniformRing.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-58851 16 hours ago |
0-58851 16 hours ago |
73-60258 73 days |
25322 |
thorimur author:thorimur |
style: use simplex notation (`⦋n⦌`) where possible |
`StandardSimplex.mk n` is replaced with `⦋n⦌` where possible (except in notation and macros, which are left untouched). This includes opening `Simplicial` in two files. Also, outdated and unused `local notation` `[n]` for `StandardSimplex.mk n` is removed.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-topology
|
38/39 |
Mathlib/AlgebraicTopology/CechNerve.lean,Mathlib/AlgebraicTopology/MooreComplex.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Coskeletal.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean |
7 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-58712 16 hours ago |
0-58712 16 hours ago |
57-1310 57 days |
25182 |
YaelDillies author:YaelDillies |
feat: `(M →* N₁) ≃* (M →* N₂)` if `N₁ ≃* N₂` |
The names were discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.20congruence.20of.20maps) but no consensus was reached due to lack of engagement.
The names I choose here are consistent with [`ContinuousLinearEquiv.continuousAlternatingMapCongrLeft`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=ContinuousLinearEquiv.continuousAlternatingMapCongrLeft#doc) and around.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
116/18 |
Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/Algebra/Category/Grp/LargeColimits.lean,Mathlib/Algebra/Category/MonCat/ForgetCorepresentable.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean |
5 |
20 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions'] |
eric-wieser assignee:eric-wieser |
0-56135 15 hours ago |
2-25352 2 days ago |
60-16614 60 days |
25089 |
Bergschaf author:Bergschaf |
feat(Order/Sublocale): definition of sublocales |
There are several possible definition of sublocales. I used one from [nlab](https://ncatlab.org/nlab/show/sublocale) which states that a sublocale is a subset of a locale which is closed under all meets and for any `s ∈ S` and `x ∈ X`, we have `(x ⇨ s) ∈ S`.
This PR also includes an order isomorphism between `(Nucleus)ᵒᵈ` and `Sublocale`.
---
I am open to better name suggestions for the order isomorphism.
- [x] depends on: #24941
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-order
|
311/30 |
Mathlib.lean,Mathlib/Order/Hom/Lattice.lean,Mathlib/Order/Nucleus.lean,Mathlib/Order/Sublocale.lean,Mathlib/Order/Synonym.lean,docs/references.bib |
6 |
76 |
['Bergschaf', 'YaelDillies', 'b-mehta', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'xhalo32'] |
bryangingechen assignee:bryangingechen |
0-52653 14 hours ago |
49-12104 1 month ago |
62-77926 62 days |
27502 |
grunweg author:grunweg |
chore: more indentation fixes |
Found by the linter in #27473.
---
[](https://gitpod.io/from-referrer/)
|
|
180/193 |
Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Azumaya/Defs.lean,Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/GrpWithZero.lean,Mathlib/Algebra/Category/ModuleCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean,Mathlib/Algebra/Homology/ShortComplex/HomologicalComplex.lean,Mathlib/Algebra/Homology/ShortComplex/Homology.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/ShortComplex/Preadditive.lean,Mathlib/Algebra/Homology/ShortComplex/PreservesHomology.lean,Mathlib/Algebra/Homology/ShortComplex/RightHomology.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/CategoryTheory/Adjunction/Reflective.lean,Mathlib/CategoryTheory/GradedObject.lean,Mathlib/CategoryTheory/GradedObject/Bifunctor.lean,Mathlib/CategoryTheory/GradedObject/Trifunctor.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Linear/LinearFunctor.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean,Mathlib/CategoryTheory/Preadditive/LeftExact.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/CategoryTheory/Subterminal.lean,Mathlib/CategoryTheory/WithTerminal/Cone.lean,Mathlib/Data/Finsupp/SMulWithZero.lean,Mathlib/Data/Fintype/Powerset.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/LinearAlgebra/BilinearMap.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/Order/Category/BddDistLat.lean,Mathlib/Order/Category/BddOrd.lean,Mathlib/Order/Category/BoolAlg.lean,Mathlib/Order/Category/DistLat.lean,Mathlib/Order/Category/FinPartOrd.lean,Mathlib/Order/Category/HeytAlg.lean,Mathlib/Order/Category/Lat.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/SetTheory/Cardinal/ENat.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/DiscreteSubset.lean,Mathlib/Topology/Homeomorph/Defs.lean |
68 |
1 |
['github-actions'] |
nobody |
0-52436 14 hours ago |
0-52515 14 hours ago |
0-52499 14 hours |
23181 |
YaelDillies author:YaelDillies |
refactor(Topology/UniformSpace): use `Rel` |
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).
---
- [x] depends on: #25587
[](https://gitpod.io/from-referrer/)
|
t-topology |
787/608 |
Mathlib/Data/Rel.lean,Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/Dynamics/TopologicalEntropy/Subset.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/MeasureTheory/Measure/RegularityCompacts.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/UniformSpace/Ascoli.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean,Mathlib/Topology/UniformSpace/Compact.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Completion.lean,Mathlib/Topology/UniformSpace/Defs.lean,Mathlib/Topology/UniformSpace/DiscreteUniformity.lean,Mathlib/Topology/UniformSpace/Equicontinuity.lean,Mathlib/Topology/UniformSpace/HeineCantor.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean,Mathlib/Topology/UniformSpace/OfFun.lean,Mathlib/Topology/UniformSpace/Separation.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean,Mathlib/Topology/UniformSpace/Ultra/Constructions.lean,Mathlib/Topology/UniformSpace/UniformApproximation.lean,Mathlib/Topology/UniformSpace/UniformConvergence.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean |
29 |
28 |
['ADedecker', 'PatrickMassot', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
0-51524 14 hours ago |
1-37451 1 day ago |
58-51119 58 days |
27497 |
ScottCarnahan author:ScottCarnahan |
feat(RingTheory/PowerSeries/Binomial): add basic lemmas, golf |
This PR adds two simp lemmas for binomial power series, and generalizes the hypotheses of `binomialSeries_nat`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
17/19 |
Mathlib/RingTheory/PowerSeries/Binomial.lean |
1 |
3 |
['ScottCarnahan', 'github-actions', 'wwylele'] |
nobody |
0-45269 12 hours ago |
0-82074 22 hours ago |
0-82070 22 hours |
26660 |
strihanje01 author:strihanje01 |
feat(Combinatorics/Additive/VerySmallDoubling): weak non-commutative Kneser's theorem |
add theorem about the structure of a doubling smaller than the golden ratio
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-combinatorics
|
430/5 |
Mathlib/Combinatorics/Additive/VerySmallDoubling.lean |
1 |
61 |
['YaelDillies', 'github-actions', 'strihanje01'] |
nobody |
0-34698 9 hours ago |
15-15416 15 days ago |
20-65637 20 days |
27496 |
bwangpj author:bwangpj |
feat(Topology/Instances/Matrix): topology of `Set.matrix` |
Prove topological results (`IsOpen`, `IsCompact`) about `Set.matrix`.
- [x] depends on: #27190
[Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/Set.2Ematrix/near/527826651)
Co-authored-by: Kevin Buzzard
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
25/0 |
Mathlib/Data/Matrix/Defs.lean,Mathlib/Topology/Instances/Matrix.lean |
2 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
0-31152 8 hours ago |
0-31723 8 hours ago |
0-35180 9 hours |
27304 |
jano-wol author:jano-wol |
feat: invariant dual submodules define Lie ideals |
Invariant dual submodules define Lie ideals
---
PR shows that Invariant dual submodules define Lie ideals.
This work is part of the framework: https://github.com/orgs/leanprover-community/projects/17
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
702/0 |
Mathlib.lean,Mathlib/Algebra/Lie/Weights/InvariantSubmoduleLieIdeal.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean |
4 |
1 |
['github-actions'] |
nobody |
0-29637 8 hours ago |
6-41069 6 days ago |
6-41116 6 days |
27508 |
chrisflav author:chrisflav |
feat(RingTheory): height under ring homomorphism |
We show that if `P` lies over `p`, the height of `P` is bounded by the height of `p` plus the height of the image of `P` in `S ⧸ p S`.
In a follow-up PR, we show that equality holds if `S` satisfies going-down as an `R`-algebra.
Co-authored by: Sihan Su
Co-authored by: Yi Song
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
120/1 |
Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Basic.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean |
7 |
1 |
['github-actions'] |
nobody |
0-27990 7 hours ago |
0-33282 9 hours ago |
0-33266 9 hours |
26757 |
fweth author:fweth |
feat(CategoryTheory/Topos): define elementary topos |
This commit begins the formalization of the notion of an *elementary topos*, following the definition in \[Mac Lane & Moerdijk, *Sheaves in Geometry and Logic* (1992), Ch. IV, Section 1]. It introduces the file `Mathlib/CategoryTheory/Topos/Basic.lean`, which currently includes:
* The definition of an elementary topos.
* Proof that the power object map is a functor
* Theorem about pullbacks of characterstic maps
Subobject classifiers, which are used in the definition, have already been defined in `CategoryTheory/Topos/Classifier.lean`
Work in progress: further formalization of the section is planned.
Questions:
* Should the definition of power objects be separated into its own file/module, perhaps under `CategoryTheory/Topos/PowerObject.lean`?
* Is the notation `P` / `P_morph` / `P_functor` for the power object functor on objects / morphisms / total acceptable?
* Should the comments and docstrings rather use the notation from the book, where `g ∘ f` denotes arrow composition from righ to left, or the Lean variant `f ≫ g`?
Klaus Gy klausgy@gmail.com
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
262/72 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Equalizer.lean,Mathlib/CategoryTheory/Topos/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean |
6 |
5 |
['fweth', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant'] |
nobody |
0-26893 7 hours ago |
0-37320 10 hours ago |
17-77468 17 days |
26270 |
vasnesterov author:vasnesterov |
chore(Analysis/Analytic): split `Analytic.Basic` |
Move the results on the radius of convergence from `Analytic/Basic.lean` to a new file `Analytic/ConvergenceRadius.lean`.
---
- [x] depends on: #26255
[](https://gitpod.io/from-referrer/)
|
t-analysis |
450/431 |
Mathlib.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean |
5 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
0-25795 7 hours ago |
0-30117 8 hours ago |
0-30647 8 hours |
27498 |
Komyyy author:Komyyy |
feat: Group isomorphisms between (`Equiv.Perm`|`alternatingGroup`)s |
Required to prove that A_n is simple iff n = 3 or 5 ≤ n(#26051).
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
29/0 |
Mathlib/Algebra/Group/End.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean |
2 |
1 |
['github-actions'] |
nobody |
0-22364 6 hours ago |
0-81519 22 hours ago |
0-81505 22 hours |
27509 |
bjornsolheim author:bjornsolheim |
feat (Geometry/Convex/Cone): add conical hull and cone tensor products |
Add three new files:
**AppendLemmas** (`Geometry/Convex/Cone/AppendLemmas.lean`):
- Prove lemmas for appending/de-appending finite sequences
**ConicalHull** (`Geometry/Convex/Cone/ConicalHull.lean`):
- Prove closure properties of sequences with nonnegative coefficients
- Define conical hull
- Prove that the smallest pointed cone containing s is the conical hull of s
**TensorProduct** (`Geometry/Convex/Cone/TensorProduct.lean`):
- Define minimal and maximal tensor products of cones
- Prove that min tensor product ≤ max tensor product
Tensor products of ordered modules don't have a unique ordering. Natural choices are bounded by the minimal and maximal tensor products of cones. |
t-convex-geometry
new-contributor
|
469/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Cone/AppendLemmas.lean,Mathlib/Geometry/Convex/Cone/ConicalHull.lean,Mathlib/Geometry/Convex/Cone/TensorProduct.lean |
4 |
3 |
['YaelDillies', 'bjornsolheim', 'github-actions'] |
nobody |
0-20785 5 hours ago |
0-37521 10 hours ago |
0-37571 10 hours |
26415 |
thorimur author:thorimur |
feat: basic translations between `X →o Y` and `X ⥤ Y` |
Adds basic definitions translating between `X →o Y` and `X ⥤ Y` where `X` and `Y` are regarded as `Preorder` categories.
---
[](https://gitpod.io/from-referrer/)
|
infinity-cosmos
t-category-theory
|
50/15 |
Mathlib/CategoryTheory/Category/Preorder.lean |
1 |
12 |
['github-actions', 'joelriou', 'robin-carlier', 'thorimur'] |
robin-carlier assignee:robin-carlier |
0-20745 5 hours ago |
0-20745 5 hours ago |
25-74562 25 days |
26844 |
kebekus author:kebekus |
feat: establish examples of harmonic functions |
If `f : ℂ → F` is complex-differentiable, then show that `f` is harmonic. If `F = ℂ`, then so is its real part, imaginary part, and complex conjugate. If `f` has no zero, then `log ‖f‖` is harmonic.
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. It is one of the ingredients in the proof of Jensen's Formula in complex analysis.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
128/0 |
Mathlib.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/InnerProductSpace/Harmonic/Constructions.lean |
3 |
12 |
['github-actions', 'grunweg', 'kebekus', 'sgouezel'] |
nobody |
0-19356 5 hours ago |
19-52081 19 days ago |
19-52130 19 days |
26839 |
kebekus author:kebekus |
feat: implement the Cauchy-Riemann Equation |
Describe complex differentiability for functions `f : ℂ → ℂ` using the Cauchy-Riemann equation.
This material closes a long-standing open TODO. It is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. It is one of the ingredients in the proof of Jensen's Formula in complex analysis.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
175/10 |
Mathlib/Analysis/Complex/Conformal.lean |
1 |
76 |
['YaelDillies', 'github-actions', 'grunweg', 'kebekus', 'sgouezel', 'themathqueen'] |
nobody |
0-18462 5 hours ago |
0-18504 5 hours ago |
16-5709 16 days |
27516 |
gaetanserre author:gaetanserre |
feat: add rational approximation lemma for suprema in `unitInterval` |
Add `sSup_eq_iUnion_rat` lemma that provides a rational approximation characterization of suprema in the unit interval. For monotone functions `f : α → I → ℝ`, the lemma establishes that the set of pairs where `a < sSup {x | f e.1 x < e.2}` equals the union over all rationals `q ∈ I` with `q > a` of the sets `{e | f e.1 q < e.2}`.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
21/0 |
Mathlib/Topology/UnitInterval.lean |
1 |
1 |
['github-actions'] |
nobody |
0-17820 4 hours ago |
0-21899 6 hours ago |
0-21945 6 hours |
27515 |
gaetanserre author:gaetanserre |
feat: `ProbabilityTheory.cdf_eq_real` for measure on `unitInterval` |
Given a probability measure `μ` on `I`, the CDF of the pushforward of `μ` along `Subtype.val` is equal to the measure of the closed interval.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
9/0 |
Mathlib/Probability/CDF.lean |
1 |
1 |
['github-actions'] |
nobody |
0-17797 4 hours ago |
0-23463 6 hours ago |
0-23509 6 hours |
27517 |
gaetanserre author:gaetanserre |
feat: a `MeasurableEmbedding` has a measurable left inverse |
Definition of the measurable left inverse of a `MeasurableEmbedding`.
Co-authored-by: Rémy Degenne
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
29/0 |
Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean |
1 |
1 |
['github-actions'] |
nobody |
0-17603 4 hours ago |
0-21224 5 hours ago |
0-21270 5 hours |
27270 |
EtienneC30 author:EtienneC30 |
chore: turn WithLp into a structure |
Turn `WithLp` into a one field structure, as was suggested many times on Zulip and discussed here: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithLp.60/near/526234806.
Here is what this PR does:
- The instances on `WithLp p α` which were defeq to those on `α` (algebraic instances, topology, uniformity, bornology) are now pulled back from `α` along `WithLp.equiv p α`. A few declarations are added to ease the process, such as versions of `WithLp.equiv` as a homeomorphism or a uniform isomorphism.
- It introduces some definitions to equip `α × β` with the Lp distance, and similarly for `Π i, α i`. This is then used to define relevant instances on type synonyms, such as for matrix norms.
- The PR fixes all the defeq abuses (which break obviously).
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-analysis
|
733/407 |
Archive/Hairer.lean,Mathlib.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Analysis/Analytic/WithLp.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/ProdL2.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Lp/MeasurableSpace.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Analysis/RCLike/Inner.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/Ideal/Asymptotics.lean |
31 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
0-14013 3 hours ago |
0-14412 3 hours ago |
7-79256 7 days |
26836 |
mans0954 author:mans0954 |
feat(Order/Lattice): conditions for an equivalence relation to be a lattice congruence |
Define a structure asserting that a binary relation is a lattice congruence and provide sufficient and necessary conditions.
An application is given in #26983
---
- [x] depends on: #27219
[](https://gitpod.io/from-referrer/)
|
large-import
t-order
|
114/0 |
Mathlib/Order/Hom/Lattice.lean,Mathlib/Order/Lattice.lean,docs/references.bib |
3 |
20 |
['YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mans0954', 'mathlib4-dependent-issues-bot'] |
nobody |
0-13629 3 hours ago |
9-9481 9 days ago |
17-72016 17 days |
26350 |
mans0954 author:mans0954 |
feature(RingTheory/RootsOfUnity/Basic) : rootsOfUnity coercions |
This PR continues the work from #25215.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25215 |
t-algebra label:t-algebra$ |
22/0 |
Mathlib/RingTheory/RootsOfUnity/Basic.lean |
1 |
2 |
['github-actions', 'mans0954'] |
nobody |
0-13591 3 hours ago |
32-55876 1 month ago |
32-55919 32 days |
25907 |
mans0954 author:mans0954 |
Low order roots of unity |
This PR continues the work from #25470.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25470 |
t-algebra label:t-algebra$ |
182/0 |
Mathlib/Algebra/CharP/Invertible.lean,Mathlib/RingTheory/RootsOfUnity/Complex.lean |
2 |
2 |
['github-actions', 'mans0954'] |
nobody |
0-13537 3 hours ago |
41-38943 1 month ago |
41-38993 41 days |
25905 |
mans0954 author:mans0954 |
feat(RingTheory/Polynomial/SmallDegreeVieta): polynomial versions of results in Algebra.QuadraticDiscriminant |
This PR continues the work from #25605.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25605 |
t-algebra label:t-algebra$ |
73/8 |
Mathlib/RingTheory/Polynomial/SmallDegreeVieta.lean |
1 |
31 |
['github-actions', 'kckennylau', 'mans0954'] |
nobody |
0-13508 3 hours ago |
41-39396 1 month ago |
41-39440 41 days |
27437 |
kckennylau author:kckennylau |
feat(RingTheory/Valuation): some lemmas about comparing with 1 and 0 and with each other |
*From the 2025 Local Class Field Theory Workshop.*
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
109/22 |
Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean |
4 |
18 |
['erdOne', 'github-actions', 'kckennylau', 'matthewjasper', 'pechersky'] |
nobody |
0-11930 3 hours ago |
2-24254 2 days ago |
2-24297 2 days |
27016 |
Komyyy author:Komyyy |
feat: `⋃ x ∈ s ×ˢ t, f x.1 ×ˢ g x.2 = (⋃ x ∈ s, f x) ×ˢ (⋃ x ∈ t, g x)` etc. |
This lemma is needed to prove that finite product of Alexandrov-discrete spaces is Alexandrov-discrete: #27018
This is the generalization of [Set.iUnion_prod](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Set/Lattice/Image.html#Set.iUnion_prod) to `biUnion`.
Also generalize pi version.
Also generalize the type of the lemma
```lean
`⋃ (i : ι), ⋃ j, ⋃ (i' : ι), ⋃ j', s i j i' j' = ⋃ (i' : ι), ⋃ j', ⋃ (i : ι), ⋃ j, s i j i' j'`
```
to
```lean
`⋃ (i : ι), ⋃ j, ⋃ (i' : ι'), ⋃ j', s i j i' j' = ⋃ (i' : ι'), ⋃ j', ⋃ (i : ι), ⋃ j, s i j i' j'`
```
---
Caution: The generalization of this lemma to `⋂` is not easy because it requires nonempty.
[](https://gitpod.io/from-referrer/)
|
t-set-theory
maintainer-merge
|
19/4 |
Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Lattice/Image.lean |
2 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-11467 3 hours ago |
0-11467 3 hours ago |
14-71674 14 days |
26851 |
oliver-butterley author:oliver-butterley |
feat(Mathlib/Algebra/Order): add 3 lemmas related to `partialSups` |
Add 3 lemmas related to `partialSups`:
- One concerns the partialSup of a function with a constant added
- Two concern the partialSup of the succ, both of which are natural variants of the other lemma already mathlib.
The lemmas couldn't be added to any of the files which already contain similar results on `partialSups` because in each case it would significantly increase imports.
Co-authored-by: Lua Viana Reis
---
Are these lemmas correctly located? Another option would be to have a folder `PartialSups` containing multiple files with the different lemmas.
- [x] depends on: #26848
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-order
|
58/0 |
Mathlib.lean,Mathlib/Algebra/Order/AddGroup/PartialSups.lean,Mathlib/Algebra/Order/SuccOrder/PartialSups.lean |
3 |
4 |
['Ruben-VandeVelde', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-10842 3 hours ago |
0-10842 3 hours ago |
12-36564 12 days |
27289 |
kckennylau author:kckennylau |
feat(FieldTheory): lemmas about trace and norm in finite fields |
---
Zulip: [#new members > How to formalize a finite field exercise?](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/How.20to.20formalize.20a.20finite.20field.20exercise.3F/with/529553211)
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
41/4 |
Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/Trace.lean |
2 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-10178 2 hours ago |
0-10178 2 hours ago |
7-38291 7 days |
25952 |
101damnations author:101damnations |
feat(RepresentationTheory/Homological/GroupHomology/Functoriality): the degree 1 part of the corestriction-coinflation exact sequence when the subgroup acts trivially |
Given a normal subgroup `S` of `G` and a `G`-representation `A` on which `S` acts trivially, this PR defines the short complex
`H₁(S, A) ⟶ H₁(G, A) ⟶ H₁(G ⧸ S, A)` induced by the natural inclusion `S → G` and projection `G → G / S`. We show it is exact and that the righthand map is an epimorphism.
---
- [x] depends on: #21652
- [x] depends on: #21732
- [x] depends on: #21733
- [x] depends on: #21735
- [x] depends on: #21736
- [x] depends on: #21738
- [x] depends on: #25868
- [x] depends on: #25873
- [x] depends on: #25880
- [x] depends on: #25884
- [x] depends on: #25888
- [x] depends on: #25939
[](https://gitpod.io/from-referrer/)
---
*Earlier version at #22654* |
t-algebra label:t-algebra$ |
138/0 |
Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean |
1 |
n/a |
['github-actions', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
0-8048 2 hours ago |
unknown |
unknown |
27361 |
101damnations author:101damnations |
feat(Algebra/Homology/AlternatingConst): generalize to any appropriate complex shape and pair of maps |
Given an object `X : C` and endomorphisms `φ, ψ : X ⟶ X` such that `φ ∘ ψ = ψ ∘ φ = 0`, this PR defines the periodic chain and cochain complexes `... ⟶ X --φ--> X --ψ--> X --φ--> X --ψ--> 0` and `0 ⟶ X --ψ--> X --φ--> X --ψ--> X --φ--> ...` (or more generally for any complex shape `c` on `ℕ` where `c.Rel i j` implies `i` and `j` have different parity).
We calculate the homology of these periodic complexes.
This generalizes some of the current content of the file, which works for the chain complex where `ψ = 0` and `φ = Id`.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
129/13 |
Mathlib/Algebra/Homology/AlternatingConst.lean |
1 |
3 |
['github-actions', 'kbuzzard'] |
nobody |
0-7770 2 hours ago |
0-7770 2 hours ago |
4-4284 4 days |
27362 |
101damnations author:101damnations |
feat(RepresentationTheory): add the norm map |
Given a representation `A` of a finite group `G`, `A.norm` is the representation morphism `A ⟶ A` defined by `x ↦ ∑ A.ρ g x` for `g` in `G`. We define this and prove related lemmas.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
154/0 |
Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/Rep.lean |
3 |
4 |
['github-actions', 'kbuzzard'] |
nobody |
0-7480 2 hours ago |
0-7480 2 hours ago |
4-4150 4 days |
27511 |
Nebula691 author:Nebula691 |
feat(Algebra/QuadraticAlgebra) : Define Quadratic Algebra |
co-authored-by : Edison Xie
co-authored-by : Kenny Lau
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
445/0 |
Mathlib.lean,Mathlib/Algebra/QuadraticAlgebra.lean |
2 |
25 |
['Whysoserioushah', 'github-actions', 'kckennylau'] |
nobody |
0-6705 1 hour ago |
0-27793 7 hours ago |
0-27839 7 hours |
27520 |
chrisflav author:chrisflav |
feat(Module/SpanRank): add various lemmas |
Add `spanFinrank` versions of `spanRank` lemmas.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
22/0 |
Mathlib/Algebra/Module/SpanRank.lean |
1 |
1 |
['github-actions'] |
nobody |
0-5344 1 hour ago |
0-5412 1 hour ago |
0-5397 1 hour |
25997 |
tb65536 author:tb65536 |
refactor(FieldTheory/Galois): Switch from `Fintype` to `Finite` |
This PR switches mathlib's Galois theory from `Fintype` to `Finite` to match the group theory library.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-algebra
label:t-algebra$ |
59/61 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/PolynomialGaloisGroup.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
8 |
5 |
['Ruben-VandeVelde', 'github-actions', 'j-loreaux', 'tb65536'] |
nobody |
0-4682 1 hour ago |
0-4682 1 hour ago |
39-29837 39 days |
26694 |
BoltonBailey author:BoltonBailey |
feat: add lemmas for modular exponentiation with the totient function |
This PR adds lemmas around reducing the exponent of a modular exponentiation.
These lemmas were found while doing work for [Project Numina](https://projectnumina.ai/).
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
|
52/0 |
Mathlib.lean,Mathlib/Data/Nat/PowModTotient.lean |
2 |
3 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-4528 1 hour ago |
0-11997 3 hours ago |
23-18078 23 days |
27076 |
Komyyy author:Komyyy |
refactor: don't require `DecidablePred` to state `PrimrecPred` |
```lean
def PrimrecPred {α} [Primcodable α] (p : α → Prop) [DecidablePred p] :=
Primrec fun a => decide (p a)
```
Currently, `DecidablePred` is required to **state** `PrimrecPred`, so this PR changes the definition and adds convenient APIs for this new definition:
```lean
def PrimrecPred {α} [Primcodable α] (p : α → Prop) :=
open scoped Classical in Primrec fun a => decide (p a)
```
---
[](https://gitpod.io/from-referrer/)
|
t-computability |
117/67 |
Mathlib/Computability/Halting.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/Primrec.lean,Mathlib/Computability/Reduce.lean |
4 |
5 |
['Komyyy', 'digama0', 'eric-wieser', 'github-actions'] |
nobody |
0-3026 50 minutes ago |
13-27503 13 days ago |
13-27489 13 days |
27522 |
euprunin author:euprunin |
chore(Algebra/Category/ModuleCat): remove use of `erw` in `coconeMorphism` |
|
t-algebra label:t-algebra$ |
1/1 |
Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean |
1 |
1 |
['github-actions'] |
nobody |
0-2618 43 minutes ago |
0-3311 54 minutes ago |
0-3356 55 minutes |
27523 |
euprunin author:euprunin |
chore(CategoryTheory/Idempotents): remove use of `erw` in `split_iff_of_iso` |
|
t-category-theory |
1/3 |
Mathlib/CategoryTheory/Idempotents/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-2204 36 minutes ago |
0-2211 36 minutes ago |
0-2257 37 minutes |
27524 |
euprunin author:euprunin |
chore(CategoryTheory/Localization): remove use of `erw` in `homMap_map` |
|
t-category-theory |
0/1 |
Mathlib/CategoryTheory/Localization/HomEquiv.lean |
1 |
1 |
['github-actions'] |
nobody |
0-1934 32 minutes ago |
0-1941 32 minutes ago |
0-1986 33 minutes |
27178 |
artie2000 author:artie2000 |
feat(Algebra/Order/Ring): make `IsOrderedRing.toStrictOrderedRing` an instance |
Requiring `IsStrictOrderedRing` on a `Field` is a footgun (the current instances come from a find and replace on `LinearOrderedField`). Weakening typeclasses can incur a performance hit so will be done where appropriate in future PRs.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
1/1 |
Mathlib/Algebra/Order/Ring/Defs.lean |
1 |
5 |
['YaelDillies', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
0-1856 30 minutes ago |
10-85641 10 days ago |
11-11928 11 days |