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 |
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'] |
ericrbg assignee:ericrbg |
49-80251 1 month ago |
60-70927 1 month ago |
81-31081 81 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 |
91/37 |
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'] |
alexjbest assignee:alexjbest |
48-70722 1 month ago |
67-30649 2 months ago |
67-30673 67 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'] |
ADedecker assignee:ADedecker |
48-4377 1 month ago |
93-79343 3 months ago |
93-79387 93 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'] |
bryangingechen assignee:bryangingechen |
47-61084 1 month ago |
78-68824 2 months ago |
98-33005 98 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'] |
robertylewis assignee:robertylewis |
46-61049 1 month ago |
68-34338 2 months ago |
68-34407 68 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'] |
ADedecker assignee:ADedecker |
45-61061 1 month ago |
65-26525 2 months ago |
121-9788 121 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'] |
erdOne assignee:erdOne |
45-61058 1 month ago |
92-62799 3 months ago |
92-62841 92 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 |
t-data |
30/0 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean |
3 |
2 |
['github-actions', 'mans0954'] |
alreadydone assignee:alreadydone |
45-28060 1 month ago |
45-28060 1 month ago |
86-37470 86 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'] |
mariainesdff assignee:mariainesdff |
44-61060 1 month ago |
66-10318 2 months ago |
66-20105 66 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-ring-theory |
120/0 |
Mathlib.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Subsemiring.lean |
2 |
1 |
['github-actions'] |
kim-em assignee:kim-em |
44-30004 1 month ago |
44-30004 1 month ago |
92-85120 92 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/)
|
t-ring-theory
toric
|
309/0 |
Mathlib.lean,Mathlib/RingTheory/Bialgebra/GroupLike.lean,Mathlib/RingTheory/Coalgebra/GroupLike.lean,Mathlib/RingTheory/HopfAlgebra/GroupLike.lean |
4 |
42 |
['Julian-Kuelshammer', 'Parcly-Taxel', 'Whysoserioushah', 'YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot', 'smorel394'] |
eric-wieser assignee:eric-wieser |
44-29898 1 month ago |
44-29898 1 month ago |
130-73352 130 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'] |
dagurtomas assignee:dagurtomas |
43-36791 1 month ago |
55-11102 1 month ago |
64-44740 64 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'] |
awainverse assignee:awainverse |
42-61072 1 month ago |
75-72550 2 months ago |
75-72590 75 days |
27991 |
sinianluoye author:sinianluoye |
feat (Rat): add Rat.den_eq_of_add_den_eq_one and its dependent lemmas |
```lean4
example {q r : ℚ} (h : (q + r).den = 1) : q.den = r.den := by
```
It is so simple, but I couldn't find it in current mathlib repo.
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
28/0 |
Mathlib/Data/Rat/Lemmas.lean |
1 |
14 |
['github-actions', 'sinianluoye', 'themathqueen'] |
nobody |
42-1258 1 month ago |
43-60661 1 month ago |
44-2311 44 days |
26765 |
KiringYJ author:KiringYJ |
feat(MeasureTheory/PiSystem): add π-λ theorem and SetLike instance |
Add two small features to `MeasureTheory/PiSystem`:
1. SetLike instance
`instance : SetLike (DynkinSystem α) (Set α)`
This lets us write `s ⊆ d` and `t ∈ d` for a DynkinSystem `d`, matching usual mathlib style.
2. `DynkinSystem.pi_lambda` lemma
Classical π‑λ theorem: if a π‑system `s` is contained in a Dynkin system `d`, every set measurable for `σ(s)` is also in `d`.
Currently, mathlib exposes this result only indirectly (e.g. via `generateFrom_eq`). Although logically equivalent, it is not obvious at first glance that those lemmas are the π‑λ theorem. The new lemma states the result in its familiar textbook form, so users can recognise and cite it immediately.
Both pieces are under 10 lines, term‑mode only, and do not modify existing APIs.
No breaking changes.
No dependencies.
|
new-contributor
t-measure-probability
|
13/0 |
Mathlib/MeasureTheory/PiSystem.lean |
1 |
13 |
['EtienneC30', 'KiringYJ', 'github-actions', 'ocfnash'] |
RemyDegenne assignee:RemyDegenne |
41-61071 1 month ago |
49-10720 1 month ago |
75-84960 75 days |
27534 |
PierreQuinton author:PierreQuinton |
feat: a typeclass for `sSup`/`sInf` to be lawful |
Adds lawful infima and suprema type classes.
A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set.
A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
121/8 |
Mathlib.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/LawfulSupInf.lean |
3 |
25 |
['PierreQuinton', 'YaelDillies', 'github-actions', 'plp127', 'vihdzp'] |
YaelDillies assignee:YaelDillies |
41-24848 1 month ago |
53-8145 1 month ago |
53-8176 53 days |
28111 |
euprunin author:euprunin |
chore: remove tactic `simp_lex` and use `simp` instead |
Motivation: `simp_lex` is just shorthand for `refine toLex.surjective.forall₃.2 ?_; rintro (a | a) (b | b) (c | c) <;> simp`, so plain `simp` seems preferable. |
t-data |
4/10 |
Mathlib/Data/Sum/Interval.lean |
1 |
5 |
['eric-wieser', 'euprunin', 'github-actions'] |
nobody |
41-12331 1 month ago |
41-12414 1 month ago |
41-20041 41 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'] |
joelriou assignee:joelriou |
40-61090 1 month ago |
75-36307 2 months ago |
96-81071 96 days |
27664 |
pechersky author:pechersky |
feat(Topology,Analysis): discrete topology metric space and normed groups |
Explicit construction of the discrete topology metric space and normed groups where `dist x y = 1` for all `x != y`
Provide PseudoMetricSpace, MetricSpace, Seminormed(Add)Group, and Normed(Add)Group constructions
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
137/0 |
Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Topology/MetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Pseudo/Constructions.lean |
3 |
3 |
['github-actions', 'kckennylau', 'pechersky'] |
urkud assignee:urkud |
40-61082 1 month ago |
50-51094 1 month ago |
50-51084 50 days |
28077 |
ShreckYe author:ShreckYe |
feat(Data/Finset/Card): add some more Pigeonhole Principle theorems `exists_ne_map_eq_of_card_image_lt` and `not_injOn_of_card_image_lt` |
`exists_ne_map_eq_of_card_image_lt` is a special case of `exists_ne_map_eq_of_card_lt_of_maps_to` where `t` is `s.image f`, and `not_injOn_of_card_image_lt` is its variant using `Set.InjOn`. I ran into some cases where such theorems would save me some time. |
t-data
new-contributor
|
10/0 |
Mathlib/Data/Finset/Card.lean |
1 |
4 |
['ShreckYe', 'github-actions', 'themathqueen'] |
nobody |
38-15369 1 month ago |
42-27151 1 month ago |
42-27195 42 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'] |
urkud assignee:urkud |
37-61088 1 month ago |
100-48398 3 months ago |
115-80329 115 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'] |
TwoFX assignee:TwoFX |
37-61084 1 month ago |
75-30621 2 months ago |
75-33664 75 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'] |
urkud assignee:urkud |
37-61083 1 month ago |
69-13810 2 months ago |
69-13858 69 days |
27815 |
BGuillemet author:BGuillemet |
feat(CategoryTheory/Limits/Shapes/Products): add limMapPi and sigmaMapColim |
Add the canonical morphism from a limit to the product over its objects. Prove that it is a monomorphism.
Dually, add the canonical morphism to a colimit from the coproduc of its objects and prove that it is an epimorphism.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
44/0 |
Mathlib/CategoryTheory/Limits/Shapes/Products.lean |
1 |
1 |
['github-actions'] |
jcommelin assignee:jcommelin |
37-61078 1 month ago |
48-20780 1 month ago |
48-20802 48 days |
27552 |
Equilibris author:Equilibris |
refactor: make universe levels visible in typevec |
This will be needed to allow `M.corec` to be generic across universes
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
16/10 |
Mathlib/Data/TypeVec.lean |
1 |
9 |
['Equilibris', 'eric-wieser', 'github-actions', 'plp127'] |
nobody |
36-42225 1 month ago |
36-81044 1 month ago |
53-7160 53 days |
27754 |
Parcly-Taxel author:Parcly-Taxel |
feat: `finCycle` as iterated `finRotate` |
Originally used in #25786, but eventually discovered to be unnecessary. |
t-logic |
26/5 |
Mathlib/Logic/Equiv/Fin/Rotate.lean |
1 |
1 |
['github-actions'] |
fpvandoorn assignee:fpvandoorn |
35-61074 1 month ago |
49-9430 1 month ago |
49-9480 49 days |
28057 |
plp127 author:plp127 |
feat(SuccOrder): simp lemma to refold `Order.succ` and `Order.pred` |
Adds `SuccOrder.succ_eq_succ` and `PredOrder.pred_eq_pred` to refold `SuccOrder.succ` and `PredOrder.pred` into `Order.succ` and `Order.pred`. These lemmas are marked `@[simp]`.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
8/2 |
Mathlib/Order/SuccPred/Basic.lean |
1 |
3 |
['YaelDillies', 'github-actions', 'plp127', 'vihdzp'] |
bryangingechen assignee:bryangingechen |
35-18776 1 month ago |
42-86355 1 month ago |
43-1 43 days |
27946 |
plp127 author:plp127 |
refactor: have `MetrizableSpace` not depend on `MetricSpace` |
Some theorems for uniform spaces with a countably generated uniformity do not mention their uniformity in any of the hypotheses or the conclusion (for example `UniformSpace.isCompact_iff_isSeqCompact`). This PR allows those theorems to be stated for (pseudo)metrizable spaces without importing the real numbers.
See also #2032
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
129/102 |
Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Topology/Compactness/PseudometrizableLindelof.lean,Mathlib/Topology/GDelta/MetrizableSpace.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/ContinuousMap.lean,Mathlib/Topology/Metrizable/Real.lean,Mathlib/Topology/Metrizable/Uniformity.lean |
7 |
7 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
urkud assignee:urkud |
34-61059 1 month ago |
44-29344 1 month ago |
44-81221 44 days |
28141 |
YaelDillies author:YaelDillies |
chore: deprecate `BialgHom.coe_toLinearMap` |
`BialgHom.toLinearMap` is a fake projection.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
easy
|
5/11 |
Mathlib/RingTheory/Bialgebra/Hom.lean |
1 |
8 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
alreadydone assignee:alreadydone |
32-61062 1 month ago |
40-38191 1 month ago |
40-38186 40 days |
28557 |
ShreckYe author:ShreckYe |
feat(Data/Nat/Factorization): some results on equality of powers of naturals proved from factorization |
I came across some math olympiad problems in number theory that could benefit from these theorems, expecially those on the prime power equality `p ^ m = a ^ n`. A specialized `eq_of_factorization_eq'` is added BTW to help with proof search. |
t-data |
102/0 |
Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Defs.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean |
3 |
1 |
['github-actions'] |
nobody |
31-72349 1 month ago |
32-3305 1 month ago |
32-3349 32 days |
28198 |
Sebi-Kumar author:Sebi-Kumar |
feat(Analysis/InnerProductSpace/PiL2): Add instances for EuclideanSpace rank and EuclideanSpace being infinite |
Add an instance for `Fact (Module.finrank 𝕜 (EuclideanSpace 𝕜 (Fin n)) = n)` which is needed to apply [stereographic'](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Geometry/Manifold/Instances/Sphere.html#stereographic') to EuclideanSpace. Also add an instance for `Infinite (EuclideanSpace 𝕜 ι)` where `ι` is a nonempty fintype. I wasn't sure if these should go in separate pull requests, but they seemed similar enough to me. Thank you to Kenny Lau for the suggestions at [#mathlib4 > Instances for EuclideanSpace](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Instances.20for.20EuclideanSpace).
---
To provide additional context, I am new to contributing to Mathlib, and I am doing so as a part of the Fields Undergraduate Summer Research Program at the University of Western Ontario under the supervision of Chris Kapulkin and Daniel Carranza. My goal is to contribute that the `n`-sphere is simply connected for `n > 1`.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
6/0 |
Mathlib/Analysis/InnerProductSpace/PiL2.lean |
1 |
1 |
['github-actions'] |
urkud assignee:urkud |
31-61063 1 month ago |
38-74299 1 month ago |
38-74341 38 days |
28072 |
kckennylau author:kckennylau |
feat(RingTheory/Valuation): make tactic rw_val_equiv |
Co-authored by Aaron Liu and Bhavik Mehta.
A tactic to rewrite relations such as `max (v₁ x) (v₁ y) * v₁ z < 1` into `max (v₂ x) (v₂ y) * v₂ z < 1` , given `h : v₁.IsEquiv v₂`.
Allowed relations are `≤`, `<`, `=`, `≠`.
Allowed operations are: `0`, `1`, `v₁ r`, `⁻¹`, `^` (both `ℕ` and `ℤ`), `*`, `/`, `min`, `max`.
Examples:
```lean
example {R Γ₁ Γ₂ : Type} [Ring R]
[LinearOrderedCommMonoidWithZero Γ₁] [LinearOrderedCommMonoidWithZero Γ₂]
{v₁ : Valuation R Γ₁} {v₂ : Valuation R Γ₂}
(h : v₁.IsEquiv v₂) {y z : R} :
{x | v₁ x ^ 2 * min (v₁ y) (v₁ z) ≤ 1} = {x | v₂ x ^ 2 * min (v₂ y) (v₂ z) ≤ 1} := by
rw_val_equiv h
```
It is also possible to use `←` to rewrite in the opposite direction, and to use `at h1 h3 ⊢` to specify which hypotheses (and/or goal) to rewrite, similar to the syntax of `rw`. There is also `rwa_val_equiv` to work like `rwa`.
---
Zulip: [#Is there code for X? > Tactics for comparing equivalent valuations](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Tactics.20for.20comparing.20equivalent.20valuations)
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
455/13 |
Mathlib/RingTheory/Valuation/Basic.lean,MathlibTest/Simproc/ValEquiv.lean |
2 |
34 |
['b-mehta', 'eric-wieser', 'github-actions', 'kckennylau', 'pechersky', 'plp127'] |
erdOne assignee:erdOne |
30-61078 30 days ago |
40-82770 1 month ago |
41-57271 41 days |
28191 |
kckennylau author:kckennylau |
feat(Logic): tag Injective, Surjective, and Bijective with fun_prop |
---
Zulip:
* [#Is there code for X? > surjective is not funprop!](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/surjective.20is.20not.20funprop!)
* [#mathlib4 > `fun_prop` for Injective/Surjective/Bijective?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60fun_prop.60.20for.20Injective.2FSurjective.2FBijective.3F)
[](https://gitpod.io/from-referrer/)
|
t-meta |
16/0 |
Mathlib/Tactic/FunProp.lean |
1 |
3 |
['github-actions', 'grunweg', 'kckennylau'] |
alexjbest assignee:alexjbest |
30-61076 30 days ago |
38-11187 1 month ago |
38-75794 38 days |
28125 |
nonisomorphiclinearmap author:nonisomorphiclinearmap |
feat(Combinatorics): basic definition of simplicial complexes |
This PR introduces the basic definition of a finite (abstract) simplicial complex, located in Mathlib/Combinatorics/SimplicialComplex/Basic.lean.
---
This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this is a small stepping stone in that direction. Some other commits will shortly depend on this one.
We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. We would also like to thank our group members Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. |
new-contributor
t-combinatorics
|
374/0 |
Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean |
5 |
1 |
['github-actions'] |
awainverse assignee:awainverse |
29-61086 29 days ago |
40-79555 1 month ago |
40-79596 40 days |
28153 |
kckennylau author:kckennylau |
feat(Simproc): Simproc for explicit diagonal matrices |
```lean
example : (diagonal ![37, -1] : Matrix (Fin 2) (Fin 2) ℤ) = !![37, 0; 0, -1] := by
simp
```
---
Shares code with #28148.
[](https://gitpod.io/from-referrer/)
|
t-meta |
114/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/Matrix.lean,scripts/noshake.json |
4 |
1 |
['github-actions'] |
alexjbest assignee:alexjbest |
29-61084 29 days ago |
39-85826 1 month ago |
39-85873 39 days |
28186 |
Sebi-Kumar author:Sebi-Kumar |
feat(Topology/Homotopy/Path): Add IsEquiv instance for Path.Homotopic |
Add `instance : IsEquiv (Path x₀ x₁) Homotopic` to the library. Allow use of lemmas like `of_eq` when proving two paths are homotopic.
---
To provide additional context, I am relatively new to contributing to Mathlib, and I am doing so as a part of the Fields Undergraduate Summer Research Program hosted at the University of Western Ontario and supervised by Chris Kapulkin and Daniel Carranza. My goal is to prove that the `n`-sphere is simply connected for `n > 1`.
Also, I am not super familiar with `IsEquiv` and when it should/shouldn't be used. I just wanted to use a lemma like `Path.Homotopic.of_eq` at one point while working on my code, and thought this was the best way to add such a result to the library.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
5/0 |
Mathlib/Topology/Homotopy/Path.lean |
1 |
4 |
['Sebi-Kumar', 'github-actions', 'kckennylau'] |
PatrickMassot assignee:PatrickMassot |
29-61083 29 days ago |
39-6013 1 month ago |
39-6057 39 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-ring-theory |
172/0 |
Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Integers.lean |
2 |
3 |
['JovanGerb', 'github-actions', 'mathlib4-merge-conflict-bot'] |
mariainesdff assignee:mariainesdff |
28-61095 28 days ago |
40-83418 1 month ago |
73-57934 73 days |
28352 |
agjftucker author:agjftucker |
feat(Analysis): add three little theorems relating argument to image |
These relate argument to image under a continuous function, given a Prop that eventually holds on a product of filters in domain and codomain. In fact the second pair of statements concern a segment whose end-points are the image. They should prove useful in PRs 26300 and 26985.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
28/3 |
Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Order/Filter/Prod.lean |
2 |
1 |
['github-actions'] |
sgouezel assignee:sgouezel |
28-61089 28 days ago |
35-85792 1 month ago |
36-6579 36 days |
26428 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: norm_num support for Int.fract |
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-meta
|
61/0 |
Mathlib/Data/Rat/Floor.lean,MathlibTest/norm_num_ext.lean |
2 |
6 |
['Rob23oba', 'github-actions', 'grunweg'] |
Rob23oba assignee:Rob23oba |
28-17799 28 days ago |
28-17799 28 days ago |
84-32283 84 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 |
350/0 |
Mathlib.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/NormNumI.lean,MathlibTest/norm_numI.lean |
5 |
47 |
['Whysoserioushah', 'dupuisf', 'eric-wieser', 'github-actions', 'hrmacbeth'] |
robertylewis assignee:robertylewis |
28-14489 28 days ago |
62-85205 2 months ago |
63-3118 63 days |
26267 |
vasnesterov author:vasnesterov |
feat(Analysis/Calculus): Taylor series converges to function on whole ball |
* Prove `FormalMultilinearSeries.AnalyticOnNhd`: the sum of series is analytic on its ball of convergence.
* Prove `AnalyticOn.hasFPowerSeriesOnBall`: a variant of `AnalyticAt.hasFPowerSeriesAt` which gives convergence to the function on the ball of convergence.
---
- [x] depends on: #23745
- [x] depends on: #23747
- [x] depends on: #23748
- [x] depends on: #26247
This PR continues the work from #23749.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23749 |
t-analysis |
65/0 |
Mathlib.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Calculus/IteratedDeriv/ConvergenceOnBall.lean |
3 |
5 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'vasnesterov'] |
urkud assignee:urkud |
26-73074 26 days ago |
29-11877 29 days ago |
75-83149 75 days |
28399 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: ring-theoretic fractions in Rat |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
47/0 |
Mathlib.lean,Mathlib/RingTheory/Localization/Rat.lean |
2 |
1 |
['github-actions'] |
robertylewis assignee:robertylewis |
26-61092 26 days ago |
35-34028 1 month ago |
35-34071 35 days |
28473 |
EtienneC30 author:EtienneC30 |
feat: toLp and ofLp are analytic |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
42/0 |
Mathlib.lean,Mathlib/Analysis/Analytic/WithLp.lean |
2 |
1 |
['github-actions'] |
hrmacbeth assignee:hrmacbeth |
26-61089 26 days ago |
34-15263 1 month ago |
34-15243 34 days |
27990 |
kckennylau author:kckennylau |
feat(Counterexamples): a nontrivial valuation with discrete topology |
This file constructs a valuation on `K[X]` satisfying `IsValuativeTopology K[X] ∧ Nonempty (valuation K[X]).RankOne ∧ IsNontrivial K[X] ∧ DiscreteTopology K[X]`, and proves that `IsValuativeTopology F ∧ IsNontrivial F ∧ DiscreteTopology F` is not possible if `F` is a field.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
172/0 |
Counterexamples.lean,Counterexamples/DiscreteTopologyWithNontrivialValuation.lean |
2 |
n/a |
['github-actions', 'grunweg', 'kckennylau', 'pechersky'] |
nobody |
26-46177 26 days ago |
unknown |
unknown |
28812 |
yury-harmonic author:yury-harmonic |
feat(PNat/Factors): add attrs and lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
42/0 |
Mathlib/Data/PNat/Factors.lean |
1 |
1 |
['github-actions'] |
nobody |
26-10291 26 days ago |
26-10447 26 days ago |
26-10484 26 days |
27245 |
rirarika author:rirarika |
feat: multivariate polynomial ring properties about irreducibility |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
88/0 |
Mathlib.lean,Mathlib/Algebra/MvPolynomial/Irreducible.lean |
2 |
5 |
['alreadydone', 'github-actions', 'mbkybky'] |
alreadydone assignee:alreadydone |
26-7480 26 days ago |
62-35926 2 months ago |
62-35965 62 days |
25907 |
mans0954 author:mans0954 |
feat: low order roots of unity |
This PR continues the work from #25470.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25470 |
t-algebra label:t-algebra$ |
182/0 |
Mathlib/Algebra/CharP/Invertible.lean,Mathlib/RingTheory/RootsOfUnity/Complex.lean |
2 |
2 |
['github-actions', 'mans0954'] |
kim-em assignee:kim-em |
26-7442 26 days ago |
95-20133 3 months ago |
95-20178 95 days |
28195 |
gasparattila author:gasparattila |
feat: separating a convex compact set and its neighborhood with a polytope |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
26/1 |
Mathlib/Analysis/Normed/Affine/Convex.lean |
1 |
2 |
['FrankieNC', 'github-actions'] |
sgouezel assignee:sgouezel |
25-61066 25 days ago |
38-77000 1 month ago |
38-77050 38 days |
28531 |
Ruben-VandeVelde author:Ruben-VandeVelde |
chore: remove Cardinal imports from Topology.Algebra.InfiniteSum.Group |
---
[](https://gitpod.io/from-referrer/)
|
|
51/15 |
Mathlib.lean,Mathlib/Analysis/BoxIntegral/UnitPartition.lean,Mathlib/Analysis/Normed/Group/Pointwise.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Const.lean,Mathlib/Topology/Algebra/InfiniteSum/Group.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Algebra/InfiniteSum/Real.lean,Mathlib/Topology/Category/Stonean/Basic.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean,Mathlib/Topology/Instances/NNReal/Lemmas.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/PartitionOfUnity.lean |
16 |
4 |
['Ruben-VandeVelde', 'YaelDillies', 'github-actions'] |
TwoFX assignee:TwoFX |
25-61058 25 days ago |
32-71910 1 month ago |
32-71889 32 days |
28766 |
yury-harmonic author:yury-harmonic |
feat(Nat/Factorial): add tail-recursive versions |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
58/1 |
Mathlib/Data/Nat/Factorial/Basic.lean |
1 |
1 |
['github-actions', 'plp127'] |
nobody |
25-60370 25 days ago |
27-40458 27 days ago |
27-40505 27 days |
28837 |
yury-harmonic author:yury-harmonic |
feat(ValMinAbs): add lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
24/6 |
Mathlib/Data/ZMod/ValMinAbs.lean |
1 |
1 |
['github-actions'] |
nobody |
25-38246 25 days ago |
25-38256 25 days ago |
25-38291 25 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$ |
36/0 |
Mathlib/Analysis/Normed/Operator/LinearIsometry.lean |
1 |
24 |
['Ruben-VandeVelde', 'dagurtomas', 'eric-wieser', 'github-actions', 'jcreedcmu', 'themathqueen'] |
dagurtomas assignee:dagurtomas |
24-73804 24 days ago |
24-73804 24 days ago |
54-56111 54 days |
28132 |
dupuisf author:dupuisf |
feat: preliminary `grind` tags for `IsUnit` |
This PR adds preliminary `grind` tags for the `IsUnit` predicate.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
61/17 |
Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Ring/Units.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean |
6 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
kim-em assignee:kim-em |
24-61063 24 days ago |
33-57411 1 month ago |
33-57391 33 days |
28325 |
pechersky author:pechersky |
feat(WithZeroTopology): `locallyCompactSpace_iff_locallyFiniteOrder_units` |
On the way to golf/generalize the proof that
locally compact valued fields have locally finite valuation groups as embodied in
`Valued.integer.locallyFiniteOrder_units_mrange_of_isCompact_integer` ]
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-order
t-topology
|
160/2 |
Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean |
3 |
1 |
['github-actions'] |
PatrickMassot assignee:PatrickMassot |
24-61060 24 days ago |
36-43276 1 month ago |
36-45982 36 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$ |
20/1 |
Mathlib/Topology/Algebra/Valued/WithVal.lean |
1 |
7 |
['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot', 'pechersky', 'smmercuri'] |
alreadydone assignee:alreadydone |
24-54000 24 days ago |
24-54116 24 days ago |
58-20394 58 days |
26988 |
YaelDillies author:YaelDillies |
feat(Rel): more API |
Some of this API already exists in `Topology.UniformSpace.Defs` but not spelled with `SetRel`, 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 |
182/8 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Data/Rel.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
24-44011 24 days ago |
36-42108 1 month ago |
69-16344 69 days |
23835 |
chrisflav author:chrisflav |
feat(Topology): cardinality of connected components is bounded by cardinality of fiber |
We show that if `f : X → Y` is an open and closed map to `Y` and `Y` is connected, the number of connected
components of `X` is bounded by the cardinality of the fiber of any point. In particular, if `Y` has finitely many connected components and `f` finite fibers, also `X` as finitely many connected components.
From Pi1.
---
- [x] depends on: #23849
[](https://gitpod.io/from-referrer/)
|
t-topology |
242/1 |
Mathlib.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/Topology/Clopen.lean,Mathlib/Topology/Connected/CardComponents.lean,Mathlib/Topology/Connected/Clopen.lean |
6 |
5 |
['chrisflav', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
grunweg assignee:grunweg |
23-61092 23 days ago |
31-18241 1 month ago |
33-12271 33 days |
27824 |
ChrisHughes24 author:ChrisHughes24 |
feat(Calculus): exists_gt_of_deriv_pos and variants |
---
I created a new file for this as I anticipate there will be many lemmas relating derivatives and monotonicity in future. Some lemmas relating deriviatives to monotonicity are already in mathlib and should maybe moved to the file (e.g. docs#HasDerivWithinAt.nonneg_of_monotoneOn).
I stated them in as much generality as I could, copying the generality of `HasDerivWithinAt.nonneg_of_monotoneOn`.
- [x] depends on: #28039
[](https://gitpod.io/from-referrer/)
|
t-analysis |
85/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Order.lean |
2 |
29 |
['ChrisHughes24', 'EtienneC30', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
hrmacbeth assignee:hrmacbeth |
23-61089 23 days ago |
34-4889 1 month ago |
38-22583 38 days |
28445 |
mitchell-horner author:mitchell-horner |
feat: `one_sub_one_div_cast_*` theorems |
---
Needed for a proof of the Erdős-Stone-Simonovits theorem in future PR.
[](https://gitpod.io/from-referrer/)
|
t-data
t-algebra
t-number-theory
label:t-algebra$ |
18/0 |
Mathlib/Data/Nat/Cast/Order/Field.lean |
1 |
1 |
['github-actions'] |
nobody |
23-33750 23 days ago |
23-33750 23 days ago |
34-72266 34 days |
28350 |
themathqueen author:themathqueen |
feat(Algebra/Module/LinearMap): `range (f.smulRight x) = span {x}` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
55/8 |
Mathlib.lean,Mathlib/Algebra/Module/LinearMap/Lemmas.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean |
4 |
3 |
['Ruben-VandeVelde', 'github-actions', 'themathqueen'] |
dagurtomas assignee:dagurtomas |
23-29487 23 days ago |
23-29487 23 days ago |
36-9339 36 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 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
adomani assignee:adomani |
0-543 9 minutes ago |
67-41300 2 months ago |
67-73153 67 days |
25292 |
YaelDillies author:YaelDillies |
feat: the `ConvexCone` generated by a set |
Define `ConvexCone.copy` and `ConvexCone.hull` and use them to golf the `CompleteLattice` instance.
From Toric
---
- [x] depends on: #25291
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
toric
|
94/35 |
Mathlib/Analysis/Convex/Cone/Basic.lean,Mathlib/Geometry/Convex/Cone/Basic.lean |
2 |
8 |
['YaelDillies', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
22-74178 22 days ago |
53-26621 1 month ago |
90-64944 90 days |
28768 |
yury-harmonic author:yury-harmonic |
feat(Data/Nat): define `Nat.nthRoot` |
Define `Nat.nthRoot n a` to be the `n`th root of a natural number `a`.
---
This is a dependency of a `norm_num` plugin that can handle `(8 : Real) ^ (2 / 3 : Real)`.
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
218/0 |
Mathlib.lean,Mathlib/Data/Nat/NthRoot/Defs.lean,Mathlib/Data/Nat/NthRoot/Lemmas.lean |
3 |
16 |
['b-mehta', 'eric-wieser', 'github-actions', 'j-loreaux', 'yury-harmonic'] |
nobody |
22-73315 22 days ago |
26-46624 26 days ago |
27-1307 27 days |
27992 |
staroperator author:staroperator |
feat(Algebra): cancellation inheritance |
This PR:
1. adds `Is{Left,Right}Cancel{Add,Mul,MulZero}` instances for `{Add,Mul,MulZero}MemClass` etc.
2. duplicates such instances for `Subsemiring` and `Subalgebra`, following #27955 (which is for `Submonoid` and `Submodule`).
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
74/1 |
Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/GroupWithZero/Submonoid/CancelMulZero.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Ring/Subsemiring/Defs.lean |
7 |
7 |
['Vierkantor', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator'] |
alreadydone assignee:alreadydone |
22-61089 22 days ago |
37-69751 1 month ago |
43-79914 43 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 |
6 |
['IvanRenison', 'github-actions', 'vlad902'] |
kmill assignee:kmill |
22-23327 22 days ago |
114-66853 3 months ago |
114-66903 114 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 |
144/5 |
Mathlib/Data/PFunctor/Univariate/Basic.lean |
1 |
19 |
['alexkeizer', 'eric-wieser', 'github-actions', 'quangvdao'] |
eric-wieser assignee:eric-wieser |
22-8043 22 days ago |
71-62150 2 months ago |
71-62191 71 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 |
25 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'grunweg', 'kkytola', 'mathlib4-dependent-issues-bot', 'urkud'] |
alreadydone assignee:alreadydone |
22-2319 22 days ago |
129-86084 4 months ago |
177-51898 177 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$ |
73/0 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
2 |
6 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
alreadydone assignee:alreadydone |
21-81404 21 days ago |
21-81424 21 days ago |
71-66435 71 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$ |
205/25 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
2 |
27 |
['github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky'] |
alreadydone assignee:alreadydone |
21-81272 21 days ago |
21-81293 21 days ago |
64-58379 64 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 |
17 |
['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'plp127', 'vihdzp'] |
mariainesdff assignee:mariainesdff |
21-60849 21 days ago |
129-65464 4 months ago |
195-65442 195 days |
28630 |
Antidite author:Antidite |
feat(Archive/Imo): right isosceles configuration in the complex plane |
feat(Archive/Imo): right isosceles configuration in the complex plane
This adds `Archive/Imo/Imo1975Q3.lean`, formalizing a triangle configuration
with points A=0, B=1, C=z and auxiliary points R, P, Q built via complex
rotations and sine-based scale factors.
Main results:
* `angle_and_distance`: ∠QRP = π/2 and dist Q R = dist R P.
* Key identity `QRP_rot90`: (Q z).z − R.z = e^{iπ/2} · ((P z).z − R.z).
Design/Style:
* Minimal imports; module docstring; semantic lemma names; all definitions and
theorems live under the namespace `IMO.TriangleConfig`.
Moves:
- (none)
Deletions:
- (none)
---
[](https://gitpod.io/from-referrer/)
|
IMO
new-contributor
|
196/0 |
Archive.lean,Archive/Imo/Imo1975Q3.lean |
2 |
36 |
['Antidite', 'LLaurance', 'github-actions', 'jsm28'] |
jsm28 assignee:jsm28 |
21-4881 21 days ago |
30-32044 30 days ago |
30-32084 30 days |
27392 |
Paul-Lez author:Paul-Lez |
feat(Tactic/SimpUtils): add simproc finding commands |
This PR adds some commands to allow users to find simprocs/dsimprocs/simp theorems that match on a given pattern.
Thanks to Robin Arnez for telling me about `simprocDeclExt` :)
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
690/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimpUtils.lean,MathlibTest/SimpUtils.lean |
4 |
9 |
['Paul-Lez', 'eric-wieser', 'github-actions', 'kmill'] |
robertylewis assignee:robertylewis |
21-1979 21 days ago |
43-75118 1 month ago |
45-75785 45 days |
26484 |
peabrainiac author:peabrainiac |
feat(Geometry/Diffeology): basics of diffeological spaces |
Introduces diffeological spaces, smooth maps between them, the D-topology and the standard diffeology on finite-dimensional normed spaces.
---
This PR continues the work from #21969. |
t-differential-geometry |
471/0 |
Mathlib.lean,Mathlib/Geometry/Diffeology/Basic.lean,docs/references.bib |
3 |
10 |
['JovanGerb', 'github-actions', 'grunweg', 'lecopivo', 'peabrainiac'] |
grunweg assignee:grunweg |
20-32711 20 days ago |
82-53927 2 months ago |
82-58675 82 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'] |
joneugster assignee:joneugster |
20-32467 20 days ago |
89-70030 2 months ago |
89-74637 89 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-algebraic-topology
t-category-theory
|
476/114 |
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 |
19 |
['dagurtomas', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] |
dagurtomas assignee:dagurtomas |
20-24252 20 days ago |
20-24252 20 days ago |
87-2723 87 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 |
44/0 |
Mathlib/MeasureTheory/Constructions/UnitInterval.lean,Mathlib/Topology/UnitInterval.lean |
2 |
6 |
['gaetanserre', 'github-actions', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
ocfnash assignee:ocfnash |
20-9602 20 days ago |
25-11321 25 days ago |
51-2321 51 days |
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 |
8/0 |
Mathlib/Combinatorics/SimpleGraph/Metric.lean |
1 |
5 |
['b-mehta', 'github-actions', 'vlad902'] |
awainverse assignee:awainverse |
20-7606 20 days ago |
55-18742 1 month ago |
55-18837 55 days |
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 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
awainverse assignee:awainverse |
20-6759 20 days ago |
20-7881 20 days ago |
50-22552 50 days |
27433 |
YaelDillies author:YaelDillies |
refactor: make `⇑e⁻¹ = e.symm` simp |
From BrauerGroup and ClassFieldTheory
---
[](https://gitpod.io/from-referrer/)
|
|
217/256 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/GroupTheory/Perm/Basic.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/Logic/Equiv/Set.lean |
16 |
3 |
['eric-wieser', 'github-actions'] |
dwrensha assignee:dwrensha |
19-61104 19 days ago |
32-14834 1 month ago |
32-46202 32 days |
27672 |
b-reinke author:b-reinke |
feat(GroupTheory/FreeGroup): add definition of cyclically reduced words |
This PR adds the definition of cyclically reduced words for free groups. It is a part of a series of PR on the theory of cyclically reduced words.
Upstreamed from the [EquationalTheories](https://github.com/teorth/equational_theories) project.
- [ ] depends on: #25966
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
72/0 |
Mathlib.lean,Mathlib/GroupTheory/FreeGroup/CyclicallyReduced.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
tb65536 assignee:tb65536 |
19-61103 19 days ago |
35-9869 1 month ago |
35-12999 35 days |
28560 |
euprunin author:euprunin |
chore(Combinatorics/Quiver): golf entire `lift_spec` using `rfl` |
---
Show trace profiling of lift_spec : <10 ms before, <10 ms after 🎉
### Trace profiling of `lift_spec` before PR 28560
```diff
diff --git a/Mathlib/Combinatorics/Quiver/Symmetric.lean b/Mathlib/Combinatorics/Quiver/Symmetric.lean
index 33e371b283..76a3371b36 100644
--- a/Mathlib/Combinatorics/Quiver/Symmetric.lean
+++ b/Mathlib/Combinatorics/Quiver/Symmetric.lean
@@ -164,6 +164,7 @@ def lift [HasReverse V'] (φ : Prefunctor V V') :
| Sum.inl g => φ.map g
| Sum.inr g => reverse (φ.map g)
+set_option trace.profiler true in
theorem lift_spec [HasReverse V'] (φ : Prefunctor V V') :
Symmetrify.of.comp (Symmetrify.lift φ) = φ := by
fapply Prefunctor.ext
```
```
✔ [147/147] Built Mathlib.Combinatorics.Quiver.Symmetric (1.3s)
Build completed successfully (147 jobs).
```
### Trace profiling of `lift_spec` after PR 28560
```diff
diff --git a/Mathlib/Combinatorics/Quiver/Symmetric.lean b/Mathlib/Combinatorics/Quiver/Symmetric.lean
index 33e371b283..3adf874946 100644
--- a/Mathlib/Combinatorics/Quiver/Symmetric.lean
+++ b/Mathlib/Combinatorics/Quiver/Symmetric.lean
@@ -164,13 +164,10 @@ def lift [HasReverse V'] (φ : Prefunctor V V') :
| Sum.inl g => φ.map g
| Sum.inr g => reverse (φ.map g)
+set_option trace.profiler true in
theorem lift_spec [HasReverse V'] (φ : Prefunctor V V') :
Symmetrify.of.comp (Symmetrify.lift φ) = φ := by
- fapply Prefunctor.ext
- · rintro X
- rfl
- · rintro X Y f
- rfl
+ tauto
theorem lift_reverse [h : HasInvolutiveReverse V']
(φ : Prefunctor V V') {X Y : Symmetrify V} (f : X ⟶ Y) :
```
```
✔ [147/147] Built Mathlib.Combinatorics.Quiver.Symmetric (1.2s)
Build completed successfully (147 jobs).
```
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
2/6 |
Mathlib/Combinatorics/Quiver/Symmetric.lean |
1 |
1 |
['github-actions'] |
awainverse assignee:awainverse |
19-61097 19 days ago |
32-2952 1 month ago |
32-2998 32 days |
28574 |
euprunin author:euprunin |
chore(Topology/Category): golf entire `finiteCoproduct.ι_desc_apply`, `piIsoPi_hom_apply`, `prodIsoProd_hom_apply` and `pullbackIsoProdSubtype_hom_apply` using `tauto` and `rfl` |
---
Show trace profiling of finiteCoproduct.ι_desc_apply : 15 ms before, 25 ms after
### Trace profiling of `finiteCoproduct.ι_desc_apply` before PR 28574
```diff
diff --git a/Mathlib/Topology/Category/CompHausLike/Limits.lean b/Mathlib/Topology/Category/CompHausLike/Limits.lean
index 493c277fec..216c5888f2 100644
--- a/Mathlib/Topology/Category/CompHausLike/Limits.lean
+++ b/Mathlib/Topology/Category/CompHausLike/Limits.lean
@@ -109,6 +109,7 @@ lemma finiteCoproduct.ι_injective (a : α) : Function.Injective (finiteCoproduc
lemma finiteCoproduct.ι_jointly_surjective (R : finiteCoproduct X) :
∃ (a : α) (r : X a), R = finiteCoproduct.ι X a r := ⟨R.fst, R.snd, rfl⟩
+set_option trace.profiler true in
lemma finiteCoproduct.ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x := by
intro x
```
```
ℹ [985/985] Built Mathlib.Topology.Category.CompHausLike.Limits (1.9s)
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.command] [0.011940] theorem ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x :=
by
intro x
change (ι X a ≫ desc X π) _ = _
simp only [ι_desc]
[Elab.definition.header] [0.011212] CompHausLike.finiteCoproduct.ι_desc_apply
[Elab.step] [0.010053] expected type: Sort ?u.7530, term
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.command] [0.012175] theorem finiteCoproduct.ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x :=
by
intro x
change (ι X a ≫ desc X π) _ = _
simp only [ι_desc]
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.command] [0.012211] lemma finiteCoproduct.ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x :=
by
intro x
change (ι X a ≫ desc X π) _ = _
simp only [ι_desc]
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.async] [0.015416] elaborating proof of CompHausLike.finiteCoproduct.ι_desc_apply
[Elab.definition.value] [0.014903] CompHausLike.finiteCoproduct.ι_desc_apply
[Elab.step] [0.014576]
intro x
change (ι X a ≫ desc X π) _ = _
simp only [ι_desc]
[Elab.step] [0.014564]
intro x
change (ι X a ≫ desc X π) _ = _
simp only [ι_desc]
[Elab.step] [0.011699] change (ι X a ≫ desc X π) _ = _
Build completed successfully (985 jobs).
```
### Trace profiling of `finiteCoproduct.ι_desc_apply` after PR 28574
```diff
diff --git a/Mathlib/Topology/Category/CompHausLike/Limits.lean b/Mathlib/Topology/Category/CompHausLike/Limits.lean
index 493c277fec..b70ed614b6 100644
--- a/Mathlib/Topology/Category/CompHausLike/Limits.lean
+++ b/Mathlib/Topology/Category/CompHausLike/Limits.lean
@@ -109,11 +109,10 @@ lemma finiteCoproduct.ι_injective (a : α) : Function.Injective (finiteCoproduc
lemma finiteCoproduct.ι_jointly_surjective (R : finiteCoproduct X) :
∃ (a : α) (r : X a), R = finiteCoproduct.ι X a r := ⟨R.fst, R.snd, rfl⟩
+set_option trace.profiler true in
lemma finiteCoproduct.ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x := by
- intro x
- change (ι X a ≫ desc X π) _ = _
- simp only [ι_desc]
+ tauto
instance : HasCoproduct X where
exists_colimit := ⟨finiteCoproduct.cofan X, finiteCoproduct.isColimit X⟩
diff --git a/Mathlib/Topology/Category/TopCat/Limits/Products.lean b/Mathlib/Topology/Category/TopCat/Limits/Products.lean
index 0b74c2f6ee..353896fce8 100644
--- a/Mathlib/Topology/Category/TopCat/Limits/Products.lean
+++ b/Mathlib/Topology/Category/TopCat/Limits/Products.lean
@@ -62,9 +62,7 @@ theorem piIsoPi_inv_π_apply {ι : Type v} (α : ι → TopCat.{max v u}) (i :
theorem piIsoPi_hom_apply {ι : Type v} (α : ι → TopCat.{max v u}) (i : ι)
(x : (∏ᶜ α : TopCat.{max v u})) : (piIsoPi α).hom x i = (Pi.π α i :) x := by
- have := piIsoPi_inv_π α i
- rw [Iso.inv_comp_eq] at this
- exact ConcreteCategory.congr_hom this x
+ tauto
/-- The inclusion to the coproduct as a bundled continuous map. -/
abbrev sigmaι {ι : Type v} (α : ι → TopCat.{max v u}) (i : ι) : α i ⟶ TopCat.of (Σ i, α i) := by
@@ -165,9 +163,7 @@ theorem prodIsoProd_hom_snd (X Y : TopCat.{u}) :
theorem prodIsoProd_hom_apply {X Y : TopCat.{u}} (x : ↑(X ⨯ Y)) :
(prodIsoProd X Y).hom x = ((Limits.prod.fst : X ⨯ Y ⟶ _) x,
(Limits.prod.snd : X ⨯ Y ⟶ _) x) := by
- ext
- · exact ConcreteCategory.congr_hom (prodIsoProd_hom_fst X Y) x
- · exact ConcreteCategory.congr_hom (prodIsoProd_hom_snd X Y) x
+ tauto
@[reassoc (attr := simp), elementwise]
theorem prodIsoProd_inv_fst (X Y : TopCat.{u}) :
diff --git a/Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean b/Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean
index 66049170b3..68b42db21b 100644
--- a/Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean
+++ b/Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean
@@ -110,9 +110,7 @@ theorem pullbackIsoProdSubtype_hom_apply {f : X ⟶ Z} {g : Y ⟶ Z}
(pullbackIsoProdSubtype f g).hom x =
⟨⟨pullback.fst f g x, pullback.snd f g x⟩, by
simpa using CategoryTheory.congr_fun pullback.condition x⟩ := by
- apply Subtype.ext; apply Prod.ext
- exacts [ConcreteCategory.congr_hom (pullbackIsoProdSubtype_hom_fst f g) x,
- ConcreteCategory.congr_hom (pullbackIsoProdSubtype_hom_snd f g) x]
+ tauto
theorem pullback_topology {X Y Z : TopCat.{u}} (f : X ⟶ Z) (g : Y ⟶ Z) :
(pullback f g).str =
```
```
✔ [982/985] Built Mathlib.Topology.Category.TopCat.Limits.Products (2.7s)
✔ [983/985] Built Mathlib.Topology.Category.TopCat.Limits.Pullbacks (2.4s)
✔ [984/985] Built Mathlib.CategoryTheory.Extensive (4.3s)
ℹ [985/985] Built Mathlib.Topology.Category.CompHausLike.Limits (3.0s)
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.command] [0.033044] theorem ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x := by tauto
[Elab.definition.header] [0.031659] CompHausLike.finiteCoproduct.ι_desc_apply
[Elab.step] [0.030394] expected type: Sort ?u.7530, term
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x
[Elab.step] [0.030250] expected type: Sort ?u.7534, term
finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x
[Elab.step] [0.030242] expected type: Sort ?u.7534, term
binrel% Eq✝ (finiteCoproduct.desc X π (finiteCoproduct.ι X a x)) (π a x)
[Elab.step] [0.025815] expected type: , term
finiteCoproduct.desc X π (finiteCoproduct.ι X a x)
[Elab.step] [0.010204] expected type: (fun X ↦ ↑X.toTop) (finiteCoproduct X), term
(finiteCoproduct.ι X a x)
[Elab.step] [0.010186] expected type: (fun X ↦ ↑X.toTop) (finiteCoproduct X), term
finiteCoproduct.ι X a x
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.command] [0.033536] theorem finiteCoproduct.ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x := by tauto
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.command] [0.033652] lemma finiteCoproduct.ι_desc_apply {B : CompHausLike P} {π : (a : α) → X a ⟶ B} (a : α) :
∀ x, finiteCoproduct.desc X π (finiteCoproduct.ι X a x) = π a x := by tauto
info: Mathlib/Topology/Category/CompHausLike/Limits.lean:113:0: [Elab.async] [0.025323] elaborating proof of CompHausLike.finiteCoproduct.ι_desc_apply
[Elab.definition.value] [0.024806] CompHausLike.finiteCoproduct.ι_desc_apply
[Elab.step] [0.024330] tauto
[Elab.step] [0.024317] tauto
[Elab.step] [0.024304] tauto
Build completed successfully (985 jobs).
```
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
4/15 |
Mathlib/Topology/Category/CompHausLike/Limits.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean |
3 |
1 |
['github-actions'] |
ADedecker assignee:ADedecker |
19-61096 19 days ago |
32-2314 1 month ago |
32-2353 32 days |
29089 |
hrmacbeth author:hrmacbeth |
feat: field tactic |
This PR creates a `field` tactic, i.e. an analogue of `ring` but for fields -- a finishing tactic for equality goals in fields. It is basically `field_simp; ring1`, with a few tweaks for better error reporting!
We could have done this at any point in the last five years, but since `field_simp` is more performant as of #28658, now seems like a good time.
I propose that `field` be preferred to terminal `field_simp`/`field_simp; ring` from now on. I'll follow up with a PR ([preview](https://github.com/leanprover-community/mathlib4/commit/44c0136fb8650f57416733d0b336c60b338f3d99)) making this change widely across the library. In the current PR I also rewrote the docstrings of `field_simp` and friends to nudge users in this direction.
Closes #4837
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
315/24 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Field.lean,Mathlib/Tactic/FieldSimp.lean,MathlibTest/FieldSimp.lean |
5 |
31 |
['github-actions', 'grunweg', 'hrmacbeth'] |
grunweg assignee:grunweg |
19-41194 19 days ago |
19-67427 19 days ago |
19-69049 19 days |
29014 |
ShreckYe author:ShreckYe |
feat(Data/List/Scan): some theorems that relate `scanl` with `foldl` |
I am not sure which is the best form of `getElem_scanl_eq_foldl_take` here, so I added several alternative forms. Feel free to remove any of them if necessary. |
t-data |
35/0 |
Mathlib/Data/List/Scan.lean |
1 |
9 |
['ShreckYe', 'github-actions', 'themathqueen', 'vlad902'] |
nobody |
19-35932 19 days ago |
22-31179 22 days ago |
22-31223 22 days |
25899 |
pfaffelh author:pfaffelh |
feat(Topology/Compactness/CompactSystem): introduce compact Systems |
A compact system is a set systems with the property that, whenever a countable intersections of sets in the set system is empty, there is a finite subset of sets with empty intersection. These are needed e.g. in measure theory if one wants to show sigma-additivity of a set function on a ring.
* Main result: The set of sets which are either compact and closed, or `univ`, is a compact system.
* Introduce `Dissipate s x := ⋂ y ≤ x, s y` (Data/Set/Dissipate), which is parallel to Data/Set/Accumulate.
Co-authored-by: Rémy Degenne remydegenne@gmail.com
---
*This PR continues the work from #24541.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24541* |
t-topology |
453/1 |
Mathlib.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/Topology/Compactness/CompactSystem.lean |
5 |
14 |
['github-actions', 'pfaffelh', 'sgouezel'] |
PatrickMassot assignee:PatrickMassot |
18-61082 18 days ago |
28-77783 28 days ago |
70-1968 70 days |
25902 |
pfaffelh author:pfaffelh |
feat: The finite product of semi-rings (in terms of measure theory) is a semi-ring. |
~~Move results for rings (in terms of measure theory) to a separate file; was in Semiring.lean before.~~
For `∀ i ∈ s, IsSetSemiring (C i))`, the product `s.pi '' s.pi C` is a semiring.
Prove two auxiliary lemmas in `Data.Set.Prod` needed on the way.
---
*This PR continues the work from #22714.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/22714* |
large-import
t-measure-probability
|
260/14 |
Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/Pi.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetSemiring.lean |
5 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
18-61081 18 days ago |
30-71557 30 days ago |
30-81749 30 days |
28343 |
RemyDegenne author:RemyDegenne |
feat(Probability): Fernique's theorem for distributions that are invariant by rotation |
Let `μ` be a finite measure on a second-countable normed space `E` such that the product measure `μ.prod μ` on `E × E` is invariant by rotation of angle `-π/4`.
Then there exists a constant `C > 0` such that the function `x ↦ exp (C * ‖x‖ ^ 2)` is integrable with respect to `μ`.
The main application of this theorem will be for Gaussian measures.
---
The PR is large, but is basically one big proof, so I don't think I can cut it at a meaningful place.
- [x] depends on: #28342
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
617/0 |
Mathlib.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Probability/Distributions/Fernique.lean,docs/references.bib |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
kex-y assignee:kex-y |
18-36652 18 days ago |
30-41647 30 days ago |
30-48922 30 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
|
457/77 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Data/List/ProdSigma.lean,Mathlib/Tactic/Simproc/ExistsAndEq.lean,MathlibTest/Simproc/ExistsAndEq.lean |
4 |
15 |
['JovanGerb', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'vasnesterov'] |
kmill assignee:kmill |
18-20690 18 days ago |
18-74482 18 days ago |
73-5619 73 days |
28676 |
sun123zxy author:sun123zxy |
feat(NumberTheory/ArithmeticFunction): wrap `Nat.totient` as an `ArithmeticFunction` |
This wraps the Euler's totient function `Nat.totient` into a new `ArithmeticFunction` `ϕ`, with some basic identities such as `ϕ * ζ = id` and `μ * id = ϕ.`
---
We use the notation `ϕ` to distinguish from `Nat.totient`'s notation `φ`, however this might be controversial. Suggestions are welcome!
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-number-theory
|
49/3 |
Mathlib/NumberTheory/ArithmeticFunction.lean |
1 |
10 |
['MichaelStollBayreuth', 'b-mehta', 'eric-wieser', 'github-actions', 'sun123zxy'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
17-83404 17 days ago |
29-48248 29 days ago |
29-49216 29 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
|
7/5 |
Mathlib/Data/Real/Sqrt.lean |
1 |
5 |
['MichaelStollBayreuth', 'github-actions', 'j-loreaux', 'leanprover-bot'] |
ericrbg assignee:ericrbg |
17-75222 17 days ago |
17-79938 17 days ago |
87-20133 87 days |
25883 |
pfaffelh author:pfaffelh |
feat: introduce Gram matrices |
A Gram matrix has entry `⟪v i, v j⟫` at `i j : n`, where `v : n → α` is an `InnerProductSpace 𝕜 α`.
Give this notion and show that Gram matrices are positive semi-definite.
This will be used later in order to show that the covariance matrix for Brownian Motion is positive semi-definite.
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24575.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24575* |
migrated-from-branch
new-contributor
t-analysis
|
142/2 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramMatrix.lean,Mathlib/MeasureTheory/Function/L2Space.lean |
3 |
38 |
['EtienneC30', 'eric-wieser', 'github-actions', 'pfaffelh'] |
hrmacbeth assignee:hrmacbeth |
17-61060 17 days ago |
28-77852 28 days ago |
72-13460 72 days |
28296 |
strihanje01 author:strihanje01 |
feat(Combinatorics/Additive/VerySmallDoubling): Hamidoune's Freiman-Kneser theorem for nonabelian groups |
add noncommutative Freiman-Kneser theorem for doubling less than 2-\epsilon
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-combinatorics
|
339/3 |
Mathlib/Combinatorics/Additive/VerySmallDoubling.lean |
1 |
14 |
['YaelDillies', 'github-actions', 'strihanje01'] |
awainverse assignee:awainverse |
17-61058 17 days ago |
28-17912 28 days ago |
29-81158 29 days |
28555 |
YaelDillies author:YaelDillies |
feat: pullback along an epi preserved under pullbacks is faithful |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
large-import
t-category-theory
|
39/2 |
Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean |
2 |
1 |
['github-actions'] |
kim-em assignee:kim-em |
17-61056 17 days ago |
32-4142 1 month ago |
32-4398 32 days |
25920 |
BoltonBailey author:BoltonBailey |
feat(Data/Finsupp/Basic): `Finsupp.optionElim'` |
Similar to how Finsupp.cons constructs a map Fin (n + 1) →₀ M from a map Fin n →₀ M,
we define Finsupp.optionElim' to construct a map Option α →₀ M from a map α →₀ M, given an additional value for none. We base this on the new optionEquiv definition. As a function, it behaves as Option.elim', hence the name.
We prove a variety of API lemmas, based on those for Finsupp.cons, to bring the definitions more in line with the contents of Data/Finsupp/Fin.
We also refactor to a new file to help avoid a too-long file and make this more analogous to Finsupp.cons
Original PR: https://github.com/leanprover-community/mathlib4/pull/13861
- [x] depends on: #26309 |
migrated-from-branch
t-data
|
114/23 |
Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Data/Finsupp/Option.lean |
2 |
15 |
['BoltonBailey', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
eric-wieser assignee:eric-wieser |
17-40710 17 days ago |
17-45756 17 days ago |
82-16240 82 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$ |
65/0 |
Mathlib/FieldTheory/Galois/Basic.lean |
1 |
7 |
['github-actions', 'tb65536', 'xroblot'] |
Vierkantor assignee:Vierkantor |
17-30365 17 days ago |
73-36010 2 months ago |
73-36053 73 days |
28452 |
plp127 author:plp127 |
feat: Define `ZMod.fintype` without cases |
Define `ZMod.fintype` without casing on `n` except inside the proof.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
2/3 |
Mathlib/Data/ZMod/Defs.lean |
1 |
2 |
['github-actions', 'jcommelin'] |
nobody |
17-16208 17 days ago |
34-56127 1 month ago |
34-56169 34 days |
27973 |
smmercuri author:smmercuri |
feat: the ring of integers of a `ℤₘ₀`-valued field is compact whenever it is a DVR and the residue field is finite |
This PR continues the work from #21844.
Original PR: https://github.com/leanprover-community/mathlib4/pull/21844 |
large-import
t-algebra
label:t-algebra$ |
54/2 |
Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean |
2 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
16-61085 16 days ago |
26-46134 26 days ago |
37-4972 37 days |
28602 |
gmcninch-tufts author:gmcninch-tufts |
feat(Algebra/Polynomial/Module): prove equivalence of a certain tensor product with PolynomialModule |
For a commutative ring `R` and an `R`-module `M`, construct an equivalence between the `R[X]`-modules `R[X] ⊗[R] M` and
`PolynomialModule R M`.
This equivalence enables application of some base-change results to `PolynomialModule R M` .
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
210/0 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Module/TensorProduct.lean |
2 |
1 |
['github-actions'] |
jcommelin assignee:jcommelin |
16-61083 16 days ago |
31-10159 1 month ago |
31-10199 31 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 |
5 |
['b-mehta', 'github-actions', 'grunweg', 'plp127'] |
b-mehta assignee:b-mehta |
16-3413 16 days ago |
87-48255 2 months ago |
87-62166 87 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 |
42/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean |
2 |
2 |
['github-actions', 'vlad902'] |
kmill assignee:kmill |
16-3334 16 days ago |
98-13270 3 months ago |
98-13249 98 days |
27238 |
alreadydone author:alreadydone |
feat(Algebra): IsDomain R[X] ↔ IsDomain R ∧ IsCancelAdd R |
---
- [x] depends on: #27241
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
133/1 |
Counterexamples.lean,Counterexamples/PolynomialIsDomain.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/GroupWithZero/TransferInstance.lean,Mathlib/Algebra/Opposites.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Opposites.lean |
8 |
7 |
['alreadydone', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
kim-em assignee:kim-em |
15-61093 15 days ago |
26-65317 26 days ago |
30-51106 30 days |
28929 |
grunweg author:grunweg |
experiment: use `fun_prop` in Homeomorph |
Can we make the continuity auto-parameters use `fun_prop`?
Or perhaps `first |fun_prop; |dsimp; fun_prop`?
---
Compared to #13994, it seems this is a much smoother experience. I suspect the RefineDiscTree changes have helped (but that is pure speculation).
[](https://gitpod.io/from-referrer/)
|
t-topology |
13/5 |
Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/Constructions/DomMulAct.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/Homeomorph/Defs.lean |
6 |
4 |
['euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
PatrickMassot assignee:PatrickMassot |
15-61086 15 days ago |
23-65364 23 days ago |
23-70680 23 days |
28887 |
alreadydone author:alreadydone |
feat(RingTheory): units are exactly non-zerodivisors in noncommutative Artinian rings |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
label:t-algebra$ |
70/24 |
Mathlib/RingTheory/Artinian/Algebra.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Artinian/Ring.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean |
4 |
2 |
['github-actions', 'themathqueen'] |
mattrobball assignee:mattrobball |
15-61086 15 days ago |
22-74667 22 days ago |
24-58457 24 days |
29281 |
plp127 author:plp127 |
docs: `Fin.natAdd_castLEEmb` |
Change the docstring of `Fin.natAdd_castLEEmb` which confused me when I read it so I rewrote it.
PS. this doesn't really follow the naming convention since data should be in `camelCase`
---
[](https://gitpod.io/from-referrer/)
|
t-data |
2/3 |
Mathlib/Data/Fin/Embedding.lean |
1 |
1 |
['github-actions'] |
nobody |
15-57123 15 days ago |
15-57129 15 days ago |
15-57168 15 days |
27308 |
xyzw12345 author:xyzw12345 |
feat(LinearAlgebra/SymmetricAlgebra): IsSymmetricAlgebra |
This PR continues the work from #24602.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24602 |
t-algebra label:t-algebra$ |
78/0 |
Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basis.lean |
2 |
3 |
['github-actions', 'mattrobball', 'xyzw12345'] |
mattrobball assignee:mattrobball |
15-35192 15 days ago |
60-12016 1 month ago |
60-12064 60 days |
27244 |
xroblot author:xroblot |
feat(RingTheory/DedekindDomain): lifting an ideal in an extension is injective |
This PR develops some API for [FractionalIdeal.extendedHomₐ](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/FractionalIdeal/Extended.html#FractionalIdeal.extendedHom%E2%82%90) and in particular proves when it is an injective map. As a consequence, it deduces the fact that lifting an integral ideal in an extension of Dedekind domains is an injective map.
Note: the import increase happens in a leaf file `Mathlib.RingTheory.FractionalIdeal.Extended`
---
- [x] depends on: #28800
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
large-import
|
140/8 |
Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/Localization/Basic.lean |
3 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'xroblot'] |
kbuzzard assignee:kbuzzard |
15-5974 15 days ago |
15-17593 15 days ago |
51-22178 51 days |
28831 |
qawbecrdtey author:qawbecrdtey |
feat(Logic/Equiv/List): add `decodeList_encodeList_eq_self` and removed unnecessary linter options |
---
This is useful when we call `encode` and `decode` of a list to define a new `Encoder` involving `List`s.
```lean
theorem decodeList_encodeList_eq_self (l : List α) : decodeList (encodeList l) = some l
```
[](https://gitpod.io/from-referrer/)
|
t-logic |
7/6 |
Mathlib/Logic/Equiv/List.lean |
1 |
1 |
['github-actions'] |
awainverse assignee:awainverse |
14-61090 14 days ago |
25-55134 25 days ago |
25-55172 25 days |
28906 |
gasparattila author:gasparattila |
feat(Topology/Algebra/Module): `prod` and `coprod` as `ContinuousLinearEquiv`s |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
36/5 |
Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean |
2 |
1 |
['github-actions'] |
jcommelin assignee:jcommelin |
14-61089 14 days ago |
24-1256 24 days ago |
24-1293 24 days |
29328 |
vlad902 author:vlad902 |
feat(SimpleGraph): graph isomorphism preserves `IsAcyclic`/`IsTree` |
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
21/2 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
14-44020 14 days ago |
14-79506 14 days ago |
14-79530 14 days |
26790 |
FlAmmmmING author:FlAmmmmING |
feat(Combinatorics/Enumerative/Bell.lean): define standard Bell number |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
46/1 |
Mathlib/Combinatorics/Enumerative/Bell.lean |
1 |
11 |
['AntoineChambert-Loir', 'FlAmmmmING', 'eric-wieser', 'github-actions', 'kckennylau', 'madvorak'] |
awainverse assignee:awainverse |
14-43359 14 days ago |
75-6485 2 months ago |
75-6527 75 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 |
3 |
['WangYiran01', 'github-actions'] |
b-mehta assignee:b-mehta |
14-39893 14 days ago |
69-31045 2 months ago |
69-31085 69 days |
29307 |
harahu author:harahu |
doc: hyphenate attributive compound adjectives ending in "exact" |
Compound adjectives that are attributive (coming before their noun) should almost always be hyphenated in English.
This PR covers such adjectives that are ending in "exact".
---
[](https://gitpod.io/from-referrer/)
|
|
144/144 |
Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Free.lean,Mathlib/Algebra/Homology/ConcreteCategory.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExactSequences.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExtClass.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/HomologySequence.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomologicalFunctor.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/Algebra/Homology/ShortComplex/ExactFunctor.lean,Mathlib/Algebra/Homology/ShortComplex/ShortExact.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/KernelCokernelComp.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Basic.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/CategoryTheory/Limits/ExactFunctor.lean,Mathlib/CategoryTheory/Limits/Preserves/Finite.lean,Mathlib/CategoryTheory/Limits/Preserves/Presheaf.lean,Mathlib/CategoryTheory/ObjectProperty/Extensions.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Preadditive/LeftExact.lean,Mathlib/CategoryTheory/Shift/ShiftSequence.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Sites/MayerVietorisSquare.lean,Mathlib/CategoryTheory/Sites/NonabelianCohomology/H1.lean,Mathlib/CategoryTheory/Sites/Sheafification.lean,Mathlib/CategoryTheory/Triangulated/HomologicalFunctor.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/GroupTheory/MonoidLocalization/GrothendieckGroup.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/LongExactSequence.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LongExactSequence.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean,Mathlib/RingTheory/Flat/CategoryTheory.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Finiteness.lean,Mathlib/RingTheory/Regular/IsSMulRegular.lean,Mathlib/Topology/Category/Profinite/Nobeling/Successor.lean |
47 |
n/a |
['github-actions'] |
nobody |
14-37560 14 days ago |
unknown |
unknown |
27254 |
yuanyi-350 author:yuanyi-350 |
2025 imo problem3 |
- [x] depends on: #28788
- [x] depends on: #28790
- [x] depends on: #28829
---
[](https://gitpod.io/from-referrer/)
|
IMO |
231/0 |
Archive.lean,Archive/Imo/Imo2025Q3.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean |
3 |
28 |
['github-actions', 'jsm28', 'kbuzzard', 'leanprover-community-bot-assistant', 'madvorak', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen', 'wwylele', 'yuanyi-350'] |
jsm28 assignee:jsm28 |
14-27508 14 days ago |
15-63174 15 days ago |
49-38041 49 days |
28561 |
euprunin author:euprunin |
chore(Data): golf entire `equivFunOnFintype_single`, `predAbove_right_zero`, `snoc_zero` and more using `rfl` |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
25/88 |
Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Fin/Tuple/Take.lean,Mathlib/Data/Finmap.lean,Mathlib/Data/Finsupp/AList.lean,Mathlib/Data/Finsupp/Single.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/PFunctor/Multivariate/W.lean,Mathlib/Data/PFunctor/Univariate/M.lean,Mathlib/Data/QPF/Multivariate/Constructions/Cofix.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Piecewise.lean,Mathlib/Data/Set/Sups.lean,Mathlib/Data/TypeVec.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Defs.lean |
17 |
7 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
13-83906 13 days ago |
13-83930 13 days ago |
29-59160 29 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 |
86/0 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean |
1 |
1 |
['github-actions'] |
b-mehta assignee:b-mehta |
13-61086 13 days ago |
97-15435 3 months ago |
97-15415 97 days |
28546 |
Sfgangloff author:Sfgangloff |
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… |
# Symbolic dynamics on groups: core API and entropy along finite shapes
This PR adds a **group-generic** foundation for symbolic dynamics over an arbitrary group `G`, together with convenient specializations for `ℤ` and `ℤ^d`.
## Summary of additions
- **Full shift and shift action**
- `abbrev FullShift (A G) := G → A` (inherits product topology from the Π-type).
- Right shift `shift g x` with convention `(shift g x) h = x (h * g)`.
- **Cylinders and topology**
- `cylinder U x : Set (G → A)` for finite `U : Finset G`.
- Cylinders are open under `[DiscreteTopology A]`; with a finite alphabet they are also closed.
- Equality with dependent products:
`cylinder U x = Set.pi (↑U) (fun i => ({x i} : Set A))`, enabling use of the `Set.pi` API.
- **Patterns, occurrences, and subshifts**
- `Pattern A G` with finite `support : Finset G` and `data : support → A`.
- `Pattern.occursIn p x g` (occurrence at translate `g`) and the expected shift law.
- `forbids F` and `Subshift A G` (closed, shift-invariant subsets).
- `FixedSupport A G U` with an equivalence to `(U → A)` to obtain finiteness.
- **Language on finite shapes and counting**
- `languageOn X U`, `languageCardOn X U`, and `patternCountOn Y U`.
- **Entropy along a shape sequence**
- `limsupAtTop` (as an `sInf` of eventual upper bounds).
- `entropyAlong X F hF := limsup (log (patternCountOn X (F n) + 1) / |F n|)`
for any nonempty finite shapes `F : ℕ → Finset G` (the `+ 1` avoids `log 0`).
- **Specializations**
- `IntShapes`: segments `[-n,n]` on `Multiplicative ℤ`, with `entropy_Z`.
- `ZdShapes`: boxes `[-n,n]^d` on `ℤ^d` (as functions `Fin d → ℤ`), with `entropy_Zd`.
## Mathematical remarks
- The API is **shape-parametric**: entropy is defined along user-provided finite shapes.
- On **amenable** groups, using a **Følner** sequence yields a canonical value (Ornstein–Weiss).
This PR does not assume amenability; the family of shapes is an explicit input.
## Motivation
Provide a clean, reusable base for symbolic dynamics on groups in mathlib.
## Future work
- Add a Følner predicate and prove shape-independence / limit existence on amenable groups.
- Expand the `ℤ`/`ℤ^d` toolkit (alternative shapes, mixing, factors).
- Develop 1D theory and, longer-term, multidimensional SFT results (e.g. along the lines of Hochman–Meyerovitch).
|
new-contributor
t-dynamics
|
513/0 |
Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Dynamics/SymbolicDynamics/EntropyFinitelyGenerated.lean |
3 |
14 |
['Sfgangloff', 'eric-wieser', 'github-actions', 'kckennylau', 'sgouezel'] |
sgouezel assignee:sgouezel |
13-37794 13 days ago |
32-16465 1 month ago |
32-16503 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-ring-theory |
554/2 |
Mathlib.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Hom.lean |
5 |
4 |
['AntoineChambert-Loir', 'eric-wieser', 'github-actions'] |
joneugster assignee:joneugster |
13-37740 13 days ago |
44-30126 1 month ago |
87-72744 87 days |
28613 |
espottesmith author:espottesmith |
feat(Combinatorics): define undirected hypergraphs |
This PR defines undirected hypergraphs:
```
@[ext]
structure Hypergraph (α : Type*) where
/-- The vertex set -/
vertexSet : Set α
/-- The hyperedge set -/
hyperedgeSet : Set (Set α)
/-- All hyperedges must be subsets of the vertex set -/
hyperedge_isSubset_vertexSet : ∀ ⦃e⦄, e ∈ hyperedgeSet → e ⊆ vertexSet
```
In addition to the main definition, some additional definitions and related lemmas are provided:
- vertex adjacency
- hyperedge adjacency
- vertex "stars"
- special cases (loops, empty hypergraphs, trivial hypergraphs, complete hypergraphs, simple hypergraphs, k-uniform hypergraphs, and d-regular hypergraphs)
- (some) hypergraph cardinality
- subhypergraphs, induced subhypergraphs, and partial hypergraphs
This implementation is certainly bare-bones. I'm submitting this PR at this point, rather than when my developments are more fleshed out, because there has been some interest in others contributing to hypergraph formalization in mathlib.
In the near future, goals include:
- defining incidence matrices (i.e., conversion from `Hypergraph α` to `Matrix α (Set α) β`
- coersion/generalization of graph as 2-uniform hypergraph
- conversion of a hypergraph into its associated clique graph/two-section graph
- constructing the dual of a hypergraph (note: on first blush, this appears somewhat challenging, given that we define hyperedges as `Set α` rather than some other type `β`)
- rank and co-rank
- walks, paths, cycles, etc. on hypergraphs
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
375/0 |
Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean |
2 |
52 |
['b-mehta', 'espottesmith', 'github-actions', 'jt496', 'lauramonk', 'mathlib4-merge-conflict-bot'] |
b-mehta assignee:b-mehta |
13-27136 13 days ago |
13-27136 13 days ago |
19-13322 19 days |
29028 |
themathqueen author:themathqueen |
feat(Algebra/Star): define `unitary R →* StarAlgEquiv S R R` |
Every unitary defines a star-algebra automorphism (this is an extension of a special version of `MulSemiringAction.toRingEquiv` for unitaries).
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
64/0 |
Mathlib.lean,Mathlib/Algebra/Star/UnitaryStarAlgAut.lean |
2 |
14 |
['eric-wieser', 'github-actions', 'themathqueen'] |
eric-wieser assignee:eric-wieser |
13-5732 13 days ago |
20-29621 20 days ago |
22-230 22 days |
19046 |
j-loreaux author:j-loreaux |
feat: define class `SemigroupAction` |
---
If I can get this building with minimal performance impact, I would like to change the names to:
`MulAction → MonoidAction`
`SemigroupAction → MulAction`
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
48/26 |
Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Group/Action/TypeTags.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/LinearAlgebra/Eigenspace/Matrix.lean,Mathlib/LinearAlgebra/FreeModule/Finite/Quotient.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/RingTheory/Trace/Basic.lean |
13 |
10 |
['alreadydone', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'urkud'] |
jcommelin assignee:jcommelin |
12-61092 12 days ago |
20-77322 20 days ago |
27-18212 27 days |
28311 |
eric-wieser author:eric-wieser |
fix(Tactic/NormNum): do not hang on large powers |
This uses `Lean.checkExponent` to guard against large powers.
Unfortunately the log messages it emits are currently swallowed, but surfacing these may require changing the API for norm_num extensions (to live in `OptionT MetaM`) and so is left to future work.
---
[](https://gitpod.io/from-referrer/)
|
t-meta
bug
|
41/23 |
Mathlib/Tactic/NormNum/Pow.lean,Mathlib/Tactic/Ring/Basic.lean,MathlibTest/norm_num.lean,MathlibTest/norm_num_ext.lean |
4 |
4 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
robertylewis assignee:robertylewis |
12-61090 12 days ago |
21-67746 21 days ago |
29-34564 29 days |
29040 |
PMKielstra author:PMKielstra |
feat: trapezoidal rule for integration |
This PR defines the trapezoidal rule and proves the standard error bound on it in terms of bounds on the second derivative.
I have vague plans of using this plus interval arithmetic to develop a tactic that can automatically close goals of the form `\integral x in a..b, f x < y` or similar.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
273/0 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/TrapezoidalRule.lean |
3 |
40 |
['PMKielstra', 'github-actions', 'tb65536'] |
kex-y assignee:kex-y |
12-61086 12 days ago |
21-67979 21 days ago |
21-68420 21 days |
29042 |
vihdzp author:vihdzp |
feat(SetTheory/Ordinal/Exponential): generalize theorems from `y = succ x` to `x < y` |
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
18/6 |
Mathlib/SetTheory/Ordinal/Exponential.lean |
1 |
1 |
['github-actions'] |
b-mehta assignee:b-mehta |
12-61085 12 days ago |
21-57727 21 days ago |
21-57715 21 days |
29058 |
vihdzp author:vihdzp |
feat: `Colex` type synonym |
We create a new `Colex` type synonym for the colexicographic order on a type. We use this to re-define the colexicographic order on `Finset`, protecting and deprecating the existing `Finset.Colex` type synonym.
A future PR will add instances for `Pi` types and `Finsupp`.
See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Pi.2ELex/near/536563593) for some discussion on this.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
152/59 |
Mathlib/Combinatorics/Colex.lean,Mathlib/Order/Synonym.lean |
2 |
1 |
['github-actions'] |
bryangingechen assignee:bryangingechen |
12-61084 12 days ago |
21-23089 21 days ago |
21-23084 21 days |
29082 |
grunweg author:grunweg |
RFC: tag `IsInducing` and `Is{Open,Closed,}Embedding` with `fun_prop` |
I have not tested if this is usable in practice; perhaps it is not.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
37/5 |
Mathlib/Topology/Constructions.lean,Mathlib/Topology/Defs/Induced.lean,Mathlib/Topology/Maps/Basic.lean |
3 |
1 |
['github-actions'] |
jcommelin assignee:jcommelin |
12-61083 12 days ago |
20-79735 20 days ago |
20-79770 20 days |
27882 |
euprunin author:euprunin |
chore: golf using `grind [Nat.cast_*]` |
|
|
6/18 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/RingTheory/ZMod/UnitsCyclic.lean |
4 |
10 |
['github-actions', 'kim-em', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
urkud assignee:urkud |
12-34424 12 days ago |
12-34424 12 days ago |
46-76946 46 days |
27370 |
euprunin author:euprunin |
chore(Tactic/CancelDenoms): golf `cancel_factors_eq` |
---
Show trace profiling of cancel_factors_eq : 120 ms before, 46 ms after 🎉
### Trace profiling of `cancel_factors_eq` before PR 27370
```diff
diff --git a/Mathlib/Tactic/CancelDenoms/Core.lean b/Mathlib/Tactic/CancelDenoms/Core.lean
index c4b62d3e29..3ec2128994 100644
--- a/Mathlib/Tactic/CancelDenoms/Core.lean
+++ b/Mathlib/Tactic/CancelDenoms/Core.lean
@@ -80,6 +80,7 @@ theorem cancel_factors_le {α} [Field α] [LinearOrder α] [IsStrictOrderedRing
· exact mul_pos had hbd
· exact one_div_pos.2 hgcd
+set_option trace.profiler true in
theorem cancel_factors_eq {α} [Field α] {a b ad bd a' b' gcd : α} (ha : ad * a = a')
(hb : bd * b = b') (had : ad ≠ 0) (hbd : bd ≠ 0) (hgcd : gcd ≠ 0) :
(a = b) = (1 / gcd * (bd * a') = 1 / gcd * (ad * b')) := by
```
```
ℹ [436/436] Built Mathlib.Tactic.CancelDenoms.Core (2.8s)
info: Mathlib/Tactic/CancelDenoms/Core.lean:84:0: [Elab.command] [0.015258] theorem cancel_factors_eq {α} [Field α] {a b ad bd a' b' gcd : α} (ha : ad * a = a')
(hb : bd * b = b') (had : ad ≠ 0) (hbd : bd ≠ 0) (hgcd : gcd ≠ 0) :
(a = b) = (1 / gcd * (bd * a') = 1 / gcd * (ad * b')) :=
by
rw [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd]
ext; constructor
· rintro rfl
rfl
· intro h
simp only [← mul_assoc] at h
refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
on_goal 1 => apply mul_ne_zero
on_goal 1 => apply div_ne_zero
· exact one_ne_zero
all_goals assumption
[Elab.definition.header] [0.014988] CancelDenoms.cancel_factors_eq
info: Mathlib/Tactic/CancelDenoms/Core.lean:84:0: [Elab.async] [0.122474] elaborating proof of CancelDenoms.cancel_factors_eq
[Elab.definition.value] [0.119890] CancelDenoms.cancel_factors_eq
[Elab.step] [0.118614]
rw [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd]
ext; constructor
· rintro rfl
rfl
· intro h
simp only [← mul_assoc] at h
refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
on_goal 1 => apply mul_ne_zero
on_goal 1 => apply div_ne_zero
· exact one_ne_zero
all_goals assumption
[Elab.step] [0.118601]
rw [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd]
ext; constructor
· rintro rfl
rfl
· intro h
simp only [← mul_assoc] at h
refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
on_goal 1 => apply mul_ne_zero
on_goal 1 => apply div_ne_zero
· exact one_ne_zero
all_goals assumption
[Elab.step] [0.010324] rw [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd]
[Elab.step] [0.010312] (rewrite [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd];
with_annotate_state"]" (try (with_reducible rfl)))
[Elab.step] [0.010299] rewrite [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd];
with_annotate_state"]" (try (with_reducible rfl))
[Elab.step] [0.010291] rewrite [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd];
with_annotate_state"]" (try (with_reducible rfl))
[Elab.step] [0.105805] ·
intro h
simp only [← mul_assoc] at h
refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
on_goal 1 => apply mul_ne_zero
on_goal 1 => apply div_ne_zero
· exact one_ne_zero
all_goals assumption
[Elab.step] [0.105661]
intro h
simp only [← mul_assoc] at h
refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
on_goal 1 => apply mul_ne_zero
on_goal 1 => apply div_ne_zero
· exact one_ne_zero
all_goals assumption
[Elab.step] [0.105650]
intro h
simp only [← mul_assoc] at h
refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
on_goal 1 => apply mul_ne_zero
on_goal 1 => apply div_ne_zero
· exact one_ne_zero
all_goals assumption
[Elab.step] [0.043946] refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
[Elab.step] [0.043859] expected type: a = b, term
mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
[Elab.step] [0.025447] expected type: ?m.103 * ?m.104 ≠ 0, term
(mul_ne_zero ?_ ?_)
[Elab.step] [0.025432] expected type: ?m.103 * ?m.104 ≠ 0, term
mul_ne_zero ?_ ?_
[Meta.synthInstance] [0.019262] ✅️ NoZeroDivisors α
[Elab.step] [0.021441] on_goal 1 => apply mul_ne_zero
[Elab.step] [0.019543] apply mul_ne_zero
[Elab.step] [0.019530] apply mul_ne_zero
[Elab.step] [0.019514] apply mul_ne_zero
[Meta.synthInstance] [0.013986] ✅️ NoZeroDivisors α
[Elab.step] [0.018650] · exact one_ne_zero
[Elab.step] [0.018355] exact one_ne_zero
[Elab.step] [0.018309] exact one_ne_zero
[Elab.step] [0.018269] exact one_ne_zero
[Elab.step] [0.017827] expected type: 1 ≠ 0, term
one_ne_zero
[Meta.synthInstance] [0.012295] ✅️ NeZero 1
Build completed successfully (436 jobs).
```
### Trace profiling of `cancel_factors_eq` after PR 27370
```diff
diff --git a/Mathlib/Tactic/CancelDenoms/Core.lean b/Mathlib/Tactic/CancelDenoms/Core.lean
index c4b62d3e29..066f915189 100644
--- a/Mathlib/Tactic/CancelDenoms/Core.lean
+++ b/Mathlib/Tactic/CancelDenoms/Core.lean
@@ -80,20 +80,11 @@ theorem cancel_factors_le {α} [Field α] [LinearOrder α] [IsStrictOrderedRing
· exact mul_pos had hbd
· exact one_div_pos.2 hgcd
+set_option trace.profiler true in
theorem cancel_factors_eq {α} [Field α] {a b ad bd a' b' gcd : α} (ha : ad * a = a')
(hb : bd * b = b') (had : ad ≠ 0) (hbd : bd ≠ 0) (hgcd : gcd ≠ 0) :
(a = b) = (1 / gcd * (bd * a') = 1 / gcd * (ad * b')) := by
- rw [← ha, ← hb, ← mul_assoc bd, ← mul_assoc ad, mul_comm bd]
- ext; constructor
- · rintro rfl
- rfl
- · intro h
- simp only [← mul_assoc] at h
- refine mul_left_cancel₀ (mul_ne_zero ?_ ?_) h
- on_goal 1 => apply mul_ne_zero
- on_goal 1 => apply div_ne_zero
- · exact one_ne_zero
- all_goals assumption
+ grind
theorem cancel_factors_ne {α} [Field α] {a b ad bd a' b' gcd : α} (ha : ad * a = a')
(hb : bd * b = b') (had : ad ≠ 0) (hbd : bd ≠ 0) (hgcd : gcd ≠ 0) :
```
```
ℹ [436/436] Built Mathlib.Tactic.CancelDenoms.Core (3.1s)
info: Mathlib/Tactic/CancelDenoms/Core.lean:84:0: [Elab.command] [0.034809] theorem cancel_factors_eq {α} [Field α] {a b ad bd a' b' gcd : α} (ha : ad * a = a')
(hb : bd * b = b') (had : ad ≠ 0) (hbd : bd ≠ 0) (hgcd : gcd ≠ 0) :
(a = b) = (1 / gcd * (bd * a') = 1 / gcd * (ad * b')) := by grind
[Elab.definition.header] [0.014091] CancelDenoms.cancel_factors_eq
info: Mathlib/Tactic/CancelDenoms/Core.lean:84:0: [Elab.async] [0.046425] elaborating proof of CancelDenoms.cancel_factors_eq
[Elab.definition.value] [0.045869] CancelDenoms.cancel_factors_eq
[Elab.step] [0.045340] grind
[Elab.step] [0.045327] grind
[Elab.step] [0.045311] grind
info: Mathlib/Tactic/CancelDenoms/Core.lean:87:2: [Elab.async] [0.027621] Lean.addDecl
[Kernel] [0.027585] ✅️ typechecking declarations [CancelDenoms.cancel_factors_eq._proof_1_1]
Build completed successfully (436 jobs).
```
|
t-meta |
1/11 |
Mathlib/Tactic/CancelDenoms/Core.lean |
1 |
7 |
['euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
alexjbest assignee:alexjbest |
12-32909 12 days ago |
12-32909 12 days ago |
57-67599 57 days |
29365 |
staroperator author:staroperator |
feat(SetTheory/ZFC): add `ZFSet.card` |
The same as `ZFSet.rank`, we define `ZFSet.card` as `ZFSet.{u} → Cardinal.{u}` and prove some basic properties.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
123/4 |
Mathlib.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Cardinal.lean |
4 |
2 |
['github-actions', 'staroperator', 'vihdzp'] |
nobody |
12-14362 12 days ago |
13-21368 13 days ago |
13-21407 13 days |
28140 |
YaelDillies author:YaelDillies |
feat: a `PointedCone`-valued version of `Submodule.span` |
This is merely to guide typing.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
toric
|
11/2 |
Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
12-7217 12 days ago |
12-7248 12 days ago |
40-2139 40 days |
28970 |
Whysoserioushah author:Whysoserioushah |
feat(Algebra/Algebra/ReducedNorm) : Defines reduced norm and trace |
TODO :
1. add the theorem proving reduced charpoly is independent from the choice of AlgEquiv (blocked by this [discussion](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Algebra.2ETensorProduct.2Eassoc/with/536349758))
2. prove reduced charpoly is "actually" in the polynomial ring of base field (blocked by this [discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.E2.9C.94.20Refactor.20Subfield))
therefore content about this topic is basically the best I could do for now :-(
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
66/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/ReducedNorm.lean |
2 |
15 |
['Whysoserioushah', 'chrisflav', 'eric-wieser', 'github-actions', 'kbuzzard'] |
chrisflav assignee:chrisflav |
12-6033 12 days ago |
12-7381 12 days ago |
23-8760 23 days |
26923 |
oliver-butterley author:oliver-butterley |
feat(Dynamics/BirkhoffSum): add the pointwise ergodic theorem (Birkhoff's) |
The Pointwise Ergodic Theorem, also known as Birkhoff's Ergodic Theorem.
Co-authored-by: Lua Viana Reis
- [x] depends on: #26074
- [x] depends on: #26807
- [x] depends on: #26810
- [x] depends on: #26840
- [x] depends on: #26842
- [x] depends on: #26848
- [x] depends on: #26851
- [x] depends on: #26852
- [x] depends on: #26853
- [x] depends on: #27008
- [x] depends on: #28901
Zulip: [PR thread](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2326923.20The.20pointwise.20ergodic.20theorem.20.28Birkhoff's.29/with/527835158)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-dynamics
|
401/0 |
Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Pointwise.lean |
2 |
7 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
urkud assignee:urkud |
11-61078 11 days ago |
23-47432 23 days ago |
30-16904 30 days |
28339 |
JovanGerb author:JovanGerb |
feat(gcongr): support `@[gcongr]` for `Monotone` and friends |
This PR adds the feature to `gcongr` that you can now tag lemmas whose conclusion is `Monotone f`, `Antitone f`, etc.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
119/88 |
Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Module/Algebra.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Log/ERealExp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Cast/Order/Basic.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Tactic/GCongr/Core.lean,MathlibTest/GCongr/inequalities.lean |
20 |
4 |
['github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
11-61077 11 days ago |
23-9307 23 days ago |
35-65926 35 days |
28833 |
yury-harmonic author:yury-harmonic |
feat(MvPolynomial/Expand): more lemmas |
---
- [x] depends on: #28832
- [x] depends on: #28830
[](https://gitpod.io/from-referrer/)
|
|
88/18 |
Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Expand.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
dwrensha assignee:dwrensha |
11-61075 11 days ago |
24-77816 24 days ago |
24-79568 24 days |
28876 |
ScottCarnahan author:ScottCarnahan |
feat (Algebra/Group/Action/Basic): add IsLeftCancelSMul |
This PR adds classes `IsLeftCancelSMul` and `IsLeftCancelVAdd`, for actions that are injective on the left. This property automatically holds for group actions, and for the left multiplication action of a left cancellative monoid.
---
[](https://gitpod.io/from-referrer/)
|
|
41/15 |
Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Set/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean |
5 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
11-61075 11 days ago |
19-30342 19 days ago |
24-75804 24 days |
29121 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: MvPolynomial.symmetricSubalgebra.{aevalMultiset,sumPolynomial} |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
192/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Eval.lean |
2 |
1 |
['github-actions'] |
chrisflav assignee:chrisflav |
11-61072 11 days ago |
19-60744 19 days ago |
19-60781 19 days |
29369 |
vlad902 author:vlad902 |
feat(SimpleGraph): `IsSubwalk` of common Walk decompositions |
Add some helper lemmas to show that decompositions of walks are sub-walks. |
t-combinatorics |
61/17 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean |
2 |
1 |
['github-actions'] |
nobody |
11-42461 11 days ago |
13-156 13 days ago |
13-203 13 days |
29376 |
vlad902 author:vlad902 |
feat(SimpleGraph): Helper lemmas for `Walk.IsSubwalk` |
|
t-combinatorics |
29/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
nobody |
11-42290 11 days ago |
12-38778 12 days ago |
12-38816 12 days |
29306 |
YaelDillies author:YaelDillies |
chore(GroupTheory/GroupAction/Basic): don't import `Module` |
This is useful to be able to replace `NoZeroSMulDivisors` with `Module.IsTorsionFree` later.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
16/17 |
Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/LinearAlgebra/Projectivization/Cardinality.lean |
2 |
7 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
eric-wieser assignee:eric-wieser |
11-38186 11 days ago |
11-38264 11 days ago |
14-86011 14 days |
28511 |
YaelDillies author:YaelDillies |
feat(Finsupp): `congr!`-compatible version of `prod_congr` |
`congr!` doesn't like the `g1 x (f x)` appearing in the hypothesis of `Finsupp.prod_congr`: `f x` isn't a free variable.
Note: A few proofs broke due to `simp` using `congr` lemmas internally.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
17/11 |
Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean |
5 |
12 |
['JovanGerb', 'YaelDillies', 'eric-wieser', 'github-actions', 'kmill'] |
kmill assignee:kmill |
11-25770 11 days ago |
33-32225 1 month ago |
33-32262 33 days |
29362 |
stepanholub author:stepanholub |
Periods of lists and the Periodicity Lemma |
Period of a word (List) is defined and a proof of the Periodicity Lemma (aka Fine-Wilf Theorem) is provided. Fine-Wilf is the basic fact about a word having two periods.
---
|
t-data
new-contributor
|
223/0 |
Mathlib.lean,Mathlib/Data/List/PeriodicityLemma.lean |
2 |
99 |
['Timeroot', 'github-actions', 'madvorak', 'plp127', 'stepanholub'] |
nobody |
11-10419 11 days ago |
13-30590 13 days ago |
13-30631 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/)
|
t-number-theory |
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 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
alexjbest assignee:alexjbest |
11-643 11 days ago |
11-670 11 days ago |
62-17437 62 days |
29410 |
jsm28 author:jsm28 |
feat(Data/Nat/Init): `n.AtLeastTwo` implies `NeZero (n - 1)` |
Add an instance for `NeZero (n - 1)` deduced from `n.AtLeastTwo`.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
2/0 |
Mathlib/Data/Nat/Init.lean |
1 |
1 |
['github-actions'] |
nobody |
10-75534 10 days ago |
10-75598 10 days ago |
10-75578 10 days |
28835 |
euprunin author:euprunin |
chore(Data/List): golf 13 lines from `bidirectionalRec_cons_append` using `grind` |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
1/14 |
Mathlib/Data/List/Induction.lean |
1 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
10-66282 10 days ago |
10-66282 10 days ago |
25-45759 25 days |
28219 |
joelriou author:joelriou |
feat(CategoryTheory): monomorphisms in Type are stable under transfinite compositions |
---
- [x] depends on: #26030
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
71/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean,Mathlib/CategoryTheory/Types/Monomorphisms.lean |
3 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
10-61081 10 days ago |
19-71533 19 days ago |
20-1976 20 days |
29185 |
eric-wieser author:eric-wieser |
feat: add missing `norm_cast` on subobject coercion lemmas to set |
This is not exhaustive, but performed manually with some regex searches.
Only one proof breaks, and only because `convert` goes further than it previously did.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
56/52 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Algebra/GroupWithZero/Subgroup.lean,Mathlib/Algebra/GroupWithZero/Submonoid/Pointwise.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subring/Pointwise.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Defs.lean,Mathlib/Algebra/Ring/Subsemiring/Pointwise.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/NonUnitalSubsemiring.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Algebra/Star/Subsemiring.lean,Mathlib/Topology/Algebra/Group/ClosedSubgroup.lean |
28 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
10-61074 10 days ago |
17-83781 17 days ago |
17-83762 17 days |
27742 |
ChrisHughes24 author:ChrisHughes24 |
feat(Nat/nth): inequalities about Nat.nth |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
51/0 |
Mathlib/Data/Nat/Nth.lean |
1 |
3 |
['ChrisHughes24', 'github-actions'] |
nobody |
10-37828 10 days ago |
49-25094 1 month ago |
49-25136 49 days |
27390 |
alreadydone author:alreadydone |
feat(FieldTheory/Galois): normal basis theorem |
Co-authored-by: Madison Crim @maddycrim
Co-authored-by: Aaron Liu @plp127
Co-authored-by: Justus Springer @justus-springer
from [*Formalizing Class Field Theory*](https://www.claymath.org/events/formalizing-class-field-theory/)
---
- [x] depends on: #27355
- [x] depends on: #27368
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
156/1 |
Mathlib.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Polynomial/Module/AEval.lean,Mathlib/FieldTheory/Galois/NormalBasis.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,docs/references.bib |
7 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
dagurtomas assignee:dagurtomas |
10-18272 10 days ago |
10-18336 10 days ago |
35-64702 35 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/)
|
t-data
new-contributor
|
31/0 |
Mathlib.lean,Mathlib/Data/PNat/Order.lean |
2 |
14 |
['Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'jburroni', 'vihdzp'] |
ericrbg assignee:ericrbg |
10-552 10 days ago |
10-5556 10 days ago |
80-7870 80 days |
28945 |
harahu author:harahu |
doc: hyphenate compound adjectives ending in -dimensional |
Compound adjectives appearing before the noun they are modifying should be hyphenated in order to avoid ambiguity. This PR hyphenates such compound adjectives than are ending in "-dimensional".
It does not cover similar compound adjectives appearing _after_ their noun, as hyphenation is then regarded as a stylistic choice, as opposed to a grammatical tool.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
180/180 |
Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Lie/Derivation/Killing.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/SmoothApprox.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/LineDeriv/QuadraticMap.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Tietze.lean,Mathlib/Analysis/Convex/AmpleSet.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/Measure.lean,Mathlib/Analysis/Convex/SimplicialComplex/Basic.lean,Mathlib/Analysis/Distribution/AEEqOfIntegralContDiff.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/EuclideanDist.lean,Mathlib/Analysis/InnerProductSpace/JointEigenspace.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Operator/ContinuousLinearMap.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean,Mathlib/Analysis/RCLike/Lemmas.lean,Mathlib/CategoryTheory/Preadditive/Schur.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/FieldTheory/Differential/Liouville.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/IsAlgClosed/Spectrum.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/Geometry/Manifold/BumpFunction.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/Metrizable.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean,Mathlib/LinearAlgebra/Coevaluation.lean,Mathlib/LinearAlgebra/Complex/FiniteDimensional.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Dimension/Finrank.lean,Mathlib/LinearAlgebra/Dimension/FreeAndStrongRankCondition.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/LinearAlgebra/FiniteDimensional/Defs.lean,Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean,Mathlib/LinearAlgebra/Matrix/FiniteDimensional.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Card.lean,Mathlib/LinearAlgebra/Multilinear/FiniteDimensional.lean,Mathlib/MeasureTheory/Integral/TorusIntegral.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/Order/RelSeries.lean,Mathlib/Probability/Process/FiniteDimensionalLaws.lean,Mathlib/RepresentationTheory/FDRep.lean,Mathlib/RepresentationTheory/Maschke.lean,Mathlib/RepresentationTheory/Tannaka.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Lattice.lean,Mathlib/RingTheory/Grassmannian.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/MetricSpace/HausdorffDimension.lean,MathlibTest/fun_prop.lean,docs/overview.yaml,docs/undergrad.yaml |
76 |
6 |
['github-actions', 'mathlib4-merge-conflict-bot', 'tb65536'] |
tb65536 assignee:tb65536 |
9-78052 9 days ago |
9-78071 9 days ago |
22-72255 22 days |
29351 |
staroperator author:staroperator |
feat(SetTheory/Cardinal): generalize and rename theorems on `Cardinal.sum` |
Some theorems on `Cardinal.sum f` are taking `f : ι → Cardinal.{max u v}`, which can be generalized to `f : ι → Cardinal.{v}`. Also rename `sum_le_iSup_lift`, `sum_lt_lift_of_isRegular`, `sum_eq_iSup_lift` etc. to reflect their signatures in names.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
79/36 |
Mathlib/Data/W/Cardinal.lean,Mathlib/ModelTheory/Encoding.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Cardinal/Pigeonhole.lean,Mathlib/SetTheory/Cardinal/Regular.lean |
10 |
5 |
['github-actions', 'staroperator', 'vihdzp'] |
nobody |
9-67239 9 days ago |
13-67138 13 days ago |
13-86329 13 days |
29224 |
euprunin author:euprunin |
chore: remove redundant `rcases` invocations |
---
**Note:** Although technically redundant, some of these may be worth keeping for readability, or other reasons. Let me know if you think any should stay.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
1/10 |
Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/Support.lean |
7 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
chrisflav assignee:chrisflav |
9-61080 9 days ago |
16-67569 16 days ago |
16-79619 16 days |
29449 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): add Turán density related theorems |
Refactors `tendsto_turanDensity` and implements `turanDensity_eq_sInf` and `isContained_of_card_edgeFinset` (theorems that are common in proofs involving Turán density).
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
52/14 |
Mathlib/Combinatorics/SimpleGraph/Extremal/TuranDensity.lean |
1 |
1 |
['github-actions'] |
nobody |
9-55435 9 days ago |
9-70830 9 days ago |
9-70873 9 days |
27162 |
themathqueen author:themathqueen |
feat(Analysis/InnerProductSpace/Positive): `U.starProjection ≤ V.starProjection` iff `U ≤ V` |
For symmetric projections `p` and `q`, `p ≤ q` iff `q ∘ p = p`, so then: `U.starProjection ≤ V.starProjection` iff `U ≤ V`, which implies that `Submodule.starProjection` is an injective function.
---
- [x] depends on: #25910
- [x] depends on: #27619
- [x] depends on: #27642
[](https://gitpod.io/from-referrer/)
|
t-analysis |
58/0 |
Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
j-loreaux assignee:j-loreaux |
9-25504 9 days ago |
29-69031 29 days ago |
34-49456 34 days |
28950 |
Vierkantor author:Vierkantor |
fix(TacticAnalysis): comment out syntax range check |
In #28802 we discovered the tactic analysis framework does not fire on declarations using `where` clauses. The reason is that `def foo where ...` gets turned into `def foo := { ... }`, and the `{ ... }` syntax is assigned a range outside of the `where ...` syntax; this causes the syntax range check to omit the whole declaration body. I am not entirely sure this is a bug in Lean or it was a misuse of ranges; in the meantime it should be okay to skip the check: the worst that happens is we analyze a piece of syntax outside of the declaration, which we'd get to later anyway.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
23/3 |
Mathlib/Tactic/TacticAnalysis.lean,MathlibTest/TacticAnalysis.lean |
2 |
3 |
['Vierkantor', 'github-actions', 'thorimur'] |
robertylewis assignee:robertylewis |
9-10400 9 days ago |
23-29136 23 days ago |
23-29117 23 days |
27567 |
themathqueen author:themathqueen |
feat(LinearAlgebra/TensorProduct/Associator): add `lid` and `assoc` tensor lemmas |
This adds `TensorProduct.lid_tensor` and `TensorProduct.assoc_tensor`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
31/2 |
Mathlib/LinearAlgebra/TensorProduct/Associator.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
2 |
3 |
['github-actions', 'themathqueen'] |
mattrobball assignee:mattrobball |
9-6736 9 days ago |
38-82659 1 month ago |
52-75492 52 days |
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$ |
69/3 |
Mathlib/LinearAlgebra/Projectivization/Subspace.lean |
1 |
5 |
['eric-wieser', 'gasparattila', 'github-actions'] |
Vierkantor assignee:Vierkantor |
8-86054 8 days ago |
71-78684 2 months ago |
71-78728 71 days |
25736 |
robin-carlier author:robin-carlier |
feat(AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms): Normal forms for `P_σ`s |
We prove that admissible lists introduced in #21744 indeed provide a suitable normal form for morphisms of `SimplexCategoryGenRel` satisfying `P_σ` (i.e that are compositions of degeneracies).
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, thanks to the fifth simplicial identity, composition on the right by some `σ i` corresponds to simplicial insertion of `i` in the list. This gives existence of a normal form for every morphism satisfying `P_σ`, i.e exhibits such morphism as some `standardσ`.
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. Since admissible lists are sorted, this fully characterizes the list, and thus shows that the list only depends on the morphism `standardσ` attached to it.
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* |
t-algebraic-topology
large-import
|
189/7 |
Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean |
1 |
12 |
['github-actions', 'jcommelin', 'joelriou', 'mathlib4-dependent-issues-bot', 'robin-carlier'] |
mattrobball assignee:mattrobball |
8-75478 8 days ago |
8-75533 8 days ago |
91-22496 91 days |
28719 |
mitchell-horner author:mitchell-horner |
refactor: redefine `IsTuranMaximal` |
Redefined `IsTuranMaximal := G.IsExtremal (CliqueFree · (r + 1))` and
- replaced `classical` in `IsTuranMaximal.le_iff_eq` with `DecidableRel`
- refactored `turanGraph.instDecidableRelAdj`, `turanGraph_zero`, `exists_isTuranMaximal`
- added `open Fintype`
- replaced `simp only` with `rw` or `simp_rw`
---
- [x] depends on: #28721
- [x] depends on: #29054
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
33/46 |
Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean |
1 |
7 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mitchell-horner', 'vihdzp'] |
kmill assignee:kmill |
8-61072 8 days ago |
17-13983 17 days ago |
21-57077 21 days |
26331 |
Timeroot author:Timeroot |
feat(Algebra/Polynomial): Descartes' Rule of signs |
This PR continues the work from #23681.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23681 |
t-algebra label:t-algebra$ |
467/3 |
Mathlib.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Data/Sign/Defs.lean |
6 |
27 |
['Ruben-VandeVelde', 'Timeroot', 'adomani', 'chrisflav', 'github-actions'] |
adomani assignee:adomani |
8-51812 8 days ago |
86-53795 2 months ago |
86-53836 86 days |
29115 |
CBirkbeck author:CBirkbeck |
feat: develop some more limUnder api |
We add results about how the `limUndet atTop` function behaves under addition, multiplication, etc. This is useful for defining the Eisensten series E2. See #28733
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
105/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/LimUnder.lean |
2 |
10 |
['CBirkbeck', 'github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-merge-conflict-bot', 'plp127'] |
j-loreaux assignee:j-loreaux |
8-14851 8 days ago |
17-28290 17 days ago* |
20-348 20 days* |
25324 |
eric-wieser author:eric-wieser |
feat: more functorial results about DFinsupp |
We have these already for Finsupp.
The `DFinsupp` statements need some extra casts in some places.
---
- [ ] depends on: #27182
[](https://gitpod.io/from-referrer/)
[#mathlib4 > Equiv.cast for structures @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Equiv.2Ecast.20for.20structures/near/521390935)
|
t-data
t-algebra
label:t-algebra$ |
137/16 |
Mathlib/Data/DFinsupp/Defs.lean,Mathlib/LinearAlgebra/DFinsupp.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
7-83548 7 days ago |
7-83703 7 days ago |
7-83680 7 days |
29057 |
jeremypparker author:jeremypparker |
feat(Topology/Instances): `AddCircle.liftIoc_continuous` |
Previously `AddCircle.liftIco_continuous` existed but this equivalent result did not. In the process I prove that
`liftIoc` is equivalent to `liftIco` if the endpoint values are equal.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
50/5 |
Mathlib/Topology/Instances/AddCircle/Defs.lean |
1 |
8 |
['Ruben-VandeVelde', 'github-actions', 'jeremypparker'] |
ADedecker assignee:ADedecker |
7-76924 7 days ago |
21-23209 21 days ago |
21-23244 21 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 |
7 |
['Paul-Lez', 'eric-wieser', 'github-actions', 'kckennylau'] |
nobody |
7-73276 7 days ago |
156-77601 5 months ago |
156-77646 156 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 |
7-65392 7 days ago |
unknown |
unknown |
29221 |
euprunin author:euprunin |
chore: remove redundant `rintro` invocations (before `omega`) |
---
[](https://gitpod.io/from-referrer/)
|
|
0/4 |
Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/Group/Nat/Range.lean,Mathlib/Data/List/Range.lean |
3 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
RemyDegenne assignee:RemyDegenne |
7-61076 7 days ago |
15-73613 15 days ago |
16-80706 16 days |
29300 |
Louddy author:Louddy |
feat: SkewPolynomial |
# Univariate skew polynomials
Skew polynomials are represented as `SkewMonoidAlgebra R (Multiplicative ℕ)`, where `R` is usually at least a Semiring.
In this file, we define `SkewPolynomial` and provide basic instances.
The point if this PR is to introduce the very most basic definitions and API.
From #23949.
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$ |
178/0 |
Mathlib.lean,Mathlib/Algebra/SkewPolynomial/Basic.lean,docs/references.bib |
3 |
1 |
['github-actions'] |
joelriou assignee:joelriou |
7-61068 7 days ago |
15-26469 15 days ago |
15-26498 15 days |
29302 |
harahu author:harahu |
doc: hyphenate attributive compound adjectives starting with "upper" or "lower" |
Compound adjectives that are attributive (coming before their noun) should almost always be hyphenated in English.
This PR covers such adjectives that are starting with "upper" or "lower".
---
[](https://gitpod.io/from-referrer/)
|
|
53/53 |
Mathlib/Analysis/LocallyConvex/Barrelled.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/Order/ModularLattice.lean,Mathlib/Topology/Semicontinuous.lean |
4 |
1 |
['github-actions'] |
EtienneC30 assignee:EtienneC30 |
7-61067 7 days ago |
15-28934 15 days ago |
15-28914 15 days |
29315 |
kbuzzard author:kbuzzard |
chore: raise priority of `IsTopologicalSemiring.toIsModuleTopology` |
Instances of the form `SMul A B -> SMul (F A) (F B)` can be problematic for several reasons, one of them being that if `A = B` is a ring and if `F A` is also ring then this can cause a diamond with `Algebra.id`. In mathlib we attempt to coerce typeclass inference away from such problems by raising the priority of `Algebra.id` to 1100; this hack (implemented in #13032) seems to work well, indeed it seems sensible to try this instance early because it should be quick to fail and is always the right idea when it doesn't (the change also made mathlib faster and made a proof better). By the same logic it seems safe to raise the priority of `IsTopologicalSemiring.toIsModuleTopology` by the same amount; in FLT there is a mathematically natural but mathlib-problematic instance `Algebra K L -> Algebra (𝔸 K) (𝔸 L)`
and then another instance `Algebra K L -> IsModuleTopology (𝔸 K) (𝔸 L)` where `𝔸 K` is the adele ring of the number field `K`, and the change in this PR solves timeouts when `K = L`.
Zulip: [#mathlib4 > product of modules over product of rings @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/product.20of.20modules.20over.20product.20of.20rings/near/532799613)
---
[](https://gitpod.io/from-referrer/)
There are other solutions to this problem -- I am certainly not claiming that the FLT project needs this PR to be merged! We can tinker with priorities locally in FLT for example. However when I noticed that `Algebra.id` had a raised priority in mathlib I realised that mathlib might be amenable to this further ~~hack~~change.
|
t-topology |
6/1 |
Mathlib/Topology/Algebra/Module/ModuleTopology.lean |
1 |
4 |
['github-actions', 'kbuzzard', 'leanprover-bot'] |
j-loreaux assignee:j-loreaux |
7-61067 7 days ago |
15-16812 15 days ago |
15-16852 15 days |
29539 |
YaelDillies author:YaelDillies |
feat: monoid algebras are invariant under base change |
From Toric
Co-authored-by: Michał Mrugała
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
large-import
|
112/6 |
Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/RingTheory/TensorProduct/MonoidAlgebra.lean |
3 |
1 |
['github-actions'] |
nobody |
7-42130 7 days ago |
7-42130 7 days ago |
7-43536 7 days |
29326 |
FormulaRabbit81 author:FormulaRabbit81 |
feat(Analysis): constant * function tending to 0 is still 0 |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-analysis
|
24/0 |
Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean,Mathlib/Topology/Instances/Real/Lemmas.lean |
3 |
2 |
['FormulaRabbit81', 'github-actions'] |
nobody |
7-32569 7 days ago |
7-32569 7 days ago |
14-85726 14 days |
29552 |
RemyDegenne author:RemyDegenne |
feat(Probability): lemmas about composition of kernels and measures |
From the LeanBandits project.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
44/0 |
Mathlib/Probability/ConditionalProbability.lean,Mathlib/Probability/Kernel/Composition/Lemmas.lean,Mathlib/Probability/Kernel/Composition/MeasureComp.lean,Mathlib/Probability/Kernel/Composition/ParallelComp.lean,Mathlib/Probability/Kernel/Composition/Prod.lean |
5 |
1 |
['github-actions'] |
nobody |
7-25381 7 days ago |
7-25391 7 days ago |
7-25428 7 days |
29554 |
RemyDegenne author:RemyDegenne |
feat(Probability): `CondIndepFun` lemmas |
Lemmas about conditional independence of constant random variables and of random variables that are measurable with respect to the sigma-algebra that we are conditioning on.
From the LeanBandits project.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
94/2 |
Mathlib/Probability/Independence/Basic.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Independence/Kernel.lean |
3 |
1 |
['github-actions'] |
nobody |
7-24410 7 days ago |
7-24419 7 days ago |
7-24455 7 days |
29556 |
joelriou author:joelriou |
feat(CategoryTheory): canonical colimits |
Given a functor `F : C ⥤ D` and `Y : D`, we say that `Y` is a canonical colimit relatively to `F` is `Y` identifies to the colimit of all `F.obj X` for `X : C` and `f : F.obj X ⟶ Y`, i.e. `Y` identifies to the colimit of the obvious functor `CostructuredArrow F Y ⥤ D` (see definitions `canonicalCocone` and `CanonicalColimit`). We introduce the corresponding property `isCanonicalColimit F` of objects of `D`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
72/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Canonical.lean |
2 |
1 |
['github-actions'] |
nobody |
7-21784 7 days ago |
7-21854 7 days ago |
7-21834 7 days |
25735 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Sifted): characterization of sifted categories |
Characterize small sifted as those for which the `Type`-valued colimit functor preserves finite product. Deduce that filtered categories, and that categories admitting a final functor from a sifted categories are also sifted.
---
Second part of what used to be #17554. The core of the proof relies on a few private lemmas/defs (`colimBoxIsoColimTensColim` and `factorization_prod_comparison_colim` being the most important ones) and I don’t know if that can be avoided.
I am still unsure wether or not the part relating sifted categories to filtered categories should be split off in a different file to avoid importing `CategoryTheory/Limits/FilteredColimitCommutesFiniteLimit.lean` every time `CategoryTheory/Limits/Sifted.lean` is imported.
The fact that filtered categories are sifted can also be proved without the characterization in this PR (it reduces essentially to `IsFiltered.bowtie`), and so it could also stay in this file with less imports, but I find it nicer to do it using the characterization.
- [x] depends on: #17766
- [x] depends on: #17779
- [x] depends on: #25732
- [x] depends on: #25734
- [x] depends on: #25731
- [x] depends on: #24735
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #17781.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/17781* |
large-import
t-category-theory
|
166/3 |
Mathlib/CategoryTheory/Limits/Indization/FilteredColimits.lean,Mathlib/CategoryTheory/Limits/Sifted.lean |
2 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
adamtopaz assignee:adamtopaz |
7-21650 7 days ago |
32-28442 1 month ago |
32-28449 32 days |
29562 |
ShreckYe author:ShreckYe |
feat(Analysis/SpecialFunctions/Trigonometric): tangent half-angle substitution |
|
t-analysis |
82/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean |
1 |
1 |
['github-actions'] |
nobody |
7-5914 7 days ago |
7-5926 7 days ago |
7-5969 7 days |
27847 |
euprunin author:euprunin |
chore(Algebra): avoid duplicating proofs by reusing existing theorems or lemmas |
|
t-algebra label:t-algebra$ |
46/73 |
Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo2015Q6.lean,Mathlib/Algebra/Homology/Embedding/Extend.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Degree.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/NumberTheory/Pell.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Topology/Algebra/Order/Group.lean,Mathlib/Topology/MetricSpace/Algebra.lean,MathlibTest/GCongr/inequalities.lean,MathlibTest/GRewrite.lean |
25 |
18 |
['Ruben-VandeVelde', 'euprunin', 'github-actions', 'grunweg', 'kbuzzard', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
mariainesdff assignee:mariainesdff |
7-4640 7 days ago |
7-4640 7 days ago |
44-30949 44 days |
28035 |
euprunin author:euprunin |
chore: replace `norm_num` with `simp` where applicable |
Same motivation as in kim-em's #24064 (chore: replace `norm_num` with `simp` where applicable):
> Consider replacing a tactic with a (ahem) simpler alternative.
Note that `norm_num` runs `simp` internally, so using `simp` is simply faster.
|
|
156/157 |
Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/ConstantSpeed.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Fourier/Inversion.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/LinearMap.lean,Mathlib/Analysis/InnerProductSpace/Orthonormal.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Analysis/NormedSpace/ENormedSpace.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Additive/SmallTripling.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Lemma.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Nat/Digits/Div.lean,Mathlib/Data/Real/GoldenRatio.lean,Mathlib/Data/Real/Sign.lean,Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/MongePoint.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/KleinFour.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/NumberTheory/ADEInequality.lean,Mathlib/NumberTheory/Bernoulli.lean,Mathlib/NumberTheory/Cyclotomic/Discriminant.lean,Mathlib/NumberTheory/Cyclotomic/PID.lean,Mathlib/NumberTheory/Cyclotomic/Rat.lean,Mathlib/NumberTheory/FactorisationProperties.lean,Mathlib/NumberTheory/Fermat.lean,Mathlib/NumberTheory/FermatPsp.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/DirichletContinuation.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/LevelOne.lean,Mathlib/NumberTheory/Multiplicity.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/ConvexBody.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Defs.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Zsqrtd/GaussianInt.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Fintype.lean,Mathlib/RingTheory/Ideal/NatInt.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/ZMod/UnitsCyclic.lean,Mathlib/Tactic/NormNum/LegendreSymbol.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean,Mathlib/Topology/Instances/CantorSet.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean,Mathlib/Topology/Separation/CompletelyRegular.lean |
90 |
22 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
7-1941 7 days ago |
7-6151 7 days ago |
42-23844 42 days |
26640 |
euprunin author:euprunin |
chore(Data): golf `Data/` using `grind` |
|
bench-after-CI
t-data
|
10/78 |
Mathlib/Data/EReal/Operations.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/PEquiv.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Set/Lattice.lean |
9 |
29 |
['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
7-1909 7 days ago |
7-9861 7 days ago |
75-55570 75 days |
27864 |
BoltonBailey author:BoltonBailey |
feat(Data/{Finset,Multiset}/Sort): give sort functions ≤ default argument |
Changes the `Finset.sort` and `Multiset.sort` functions to take `≤` as the default relation argument. Then removes this argument where possible through the rest of the library.
This involves switching the order of arguments, but I think this is fine, as this function is mostly called by dot notation anyway, and I think it is more typical for the first argument of such functions to have the type that matches the namespace.
Thanks to @eric-wieser for suggesting this approach
Zulip discussion: [#mathlib4 > Redefine {Fin/Multi}set.sort to take linear order?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Redefine.20.7BFin.2FMulti.7Dset.2Esort.20to.20take.20linear.20order.3F/with/532398325)
---
[](https://gitpod.io/from-referrer/)
|
t-data |
121/97 |
Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/Multiset/Sort.lean,Mathlib/Data/Nat/Nth.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/Logic/Equiv/Finset.lean,Mathlib/Logic/Equiv/Multiset.lean,Mathlib/NumberTheory/ADEInequality.lean |
9 |
5 |
['BoltonBailey', 'eric-wieser', 'github-actions', 'grunweg'] |
nobody |
7-360 7 days ago |
47-9404 1 month ago |
47-62940 47 days |
29530 |
ShreckYe author:ShreckYe |
feat(Dynamics/PeriodicPts): some theorems for `Pi.map` in `Dynamics/PeriodicPts` analogous to those for `Prod.map` |
Split from #29204. Some namespace prefixes are added in `GroupTheory/OrderOfElement.lean` to distinguish the extra imports introduced.
- [ ] depends on: #29528
|
large-import |
77/8 |
Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/GroupTheory/OrderOfElement.lean |
3 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
7-122 7 days ago |
7-505 7 days ago |
7-1161 7 days |
26398 |
ChrisHughes24 author:ChrisHughes24 |
feat(ModelTheory): definable functions |
---
Possibly this should be generalized to partial functions.
I migrated the PR by hand instead of using the script.
- [x] depends on: #20166
- [x] depends on: #20161
- [x] depends on: #20115
- [x] depends on: #20174
- [x] depends on: #20175
- [x] depends on: #21948
[](https://gitpod.io/from-referrer/)
|
t-logic |
618/0 |
Mathlib.lean,Mathlib/ModelTheory/FunctionalFormula.lean |
2 |
7 |
['ChrisHughes24', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot'] |
fpvandoorn assignee:fpvandoorn |
6-84161 6 days ago |
85-31949 2 months ago |
85-32204 85 days |
26720 |
vlad902 author:vlad902 |
feat(SimpleGraph): lemmas relating edges and darts to the support |
Useful lemmas to make it easier to pass between the support/edges/darts of a walk.
- [ ] depends on: #25812
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
27/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
6-83590 6 days ago |
7-4097 7 days ago |
7-4179 7 days |
26785 |
TOMILO87 author:TOMILO87 |
feat: beta distribution |
Add the Beta distribution to the probability distributions in mathlib4
This PR introduces the Beta distribution on the reals.
Main definitions:
- betaPDFReal (α β x : ℝ) — the probability density function as a real-valued function
- betaPDF (α β x : ℝ) — the pdf as a ℝ≥0∞-valued function
- betaMeasure (α β : ℝ) — the probability measure associated with the Beta distribution
Main results:
- lintegral_betaPDF_eq_one — proof that the pdf integrates to 1 (normalization)
- Lemmas on positivity, measurability, and integrability of the pdf
- isProbabilityMeasureBeta — the Beta measure is a probability measure
Notes:
- Follows the general structure of other distributions in mathlib (e.g. Gamma).
- Several unused helper lemmas were removed, and proofs streamlined in response to reviewer feedback.
- Thanks to @EtienneC30 and @RemyDegenne for detailed reviews across multiple rounds.
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).
|
new-contributor
t-measure-probability
|
206/2 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Probability/Distributions/Beta.lean |
4 |
34 |
['EtienneC30', 'RemyDegenne', 'TOMILO87', 'github-actions'] |
EtienneC30 assignee:EtienneC30 |
6-83467 6 days ago |
33-26448 1 month ago |
64-39198 64 days |
29569 |
chrisflav author:chrisflav |
chore(RingTheory/LocalProperties): add algebra versions of exactness lemmas |
The module variants are less convenient to apply directly in the case of algebras.
From Pi1.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
67/0 |
Mathlib/RingTheory/LocalProperties/Exactness.lean |
1 |
1 |
['github-actions'] |
nobody |
6-67386 6 days ago |
6-67386 6 days ago |
6-67508 6 days |
27956 |
bryangingechen author:bryangingechen |
feat: automation for removing outdated deprecations |
This is a new weekly workflow that opens a PR attempting to remove deprecated aliases / declarations older than 6 months and then sends a Zulip message to the `nightly-testing` channel. It also supports being triggered manually with a custom date as well as a "dry-run" mode, which only prints the edits that would be done without actually doing them.
cf. [#mathlib reviewers > auto-removing oudated deprecations @ 💬](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/auto-removing.20oudated.20deprecations/near/532535945)
The workflow and shell script are adapted from `nolints.yml` and `scripts/update_nolints_CI.sh`, respectively.
The python script was mostly written by Claude, though I did check it. The regex is adapted from ones used in #21271 by YaelDillies and #29287 by kim-em.
---
See #29336 for an example of the changes generated by the script. |
CI |
330/0 |
.github/workflows/remove_deprecated_decls.yml,scripts/README.md,scripts/remove_deprecated_decls.py,scripts/remove_deprecated_decls_CI.sh |
4 |
2 |
['bryangingechen', 'github-actions'] |
robertylewis assignee:robertylewis |
6-61090 6 days ago |
14-59210 14 days ago |
44-60276 44 days |
28571 |
euprunin author:euprunin |
chore(RingTheory): golf entire `mem_extended_iff`, `coeff_opRingEquiv` and `comp_assoc` using `rfl` |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
4/12 |
Mathlib/RingTheory/ClassGroup.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/Polynomial/Opposites.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean |
4 |
7 |
['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
chrisflav assignee:chrisflav |
6-61087 6 days ago |
13-71902 13 days ago |
23-45536 23 days |
29223 |
dwrensha author:dwrensha |
feat: norm_num extension for abs |
Adds a `norm_num` extension for the [absolute value operator](https://github.com/leanprover-community/mathlib4/blob/3a941a8fd0acf2b70463b31aeb8ce08bb214a512/Mathlib/Algebra/Order/Group/Unbundled/Abs.lean#L39-L40).
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
93/5 |
Mathlib.lean,Mathlib/Analysis/Complex/ExponentialBounds.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum.lean,Mathlib/Tactic/NormNum/Abs.lean,MathlibTest/norm_num_abs.lean |
6 |
17 |
['dwrensha', 'eric-wieser', 'github-actions', 'plp127', 'vihdzp'] |
adamtopaz assignee:adamtopaz |
6-61083 6 days ago |
14-7723 14 days ago |
15-70661 15 days |
29270 |
euprunin author:euprunin |
chore: remove redundant `refine` invocations |
---
**Note:** Although technically redundant, some of these may be worth keeping for readability, or other reasons. Let me know if you think any should stay.
---
[](https://gitpod.io/from-referrer/)
|
|
4/12 |
Mathlib/Algebra/Order/GroupWithZero/Lex.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Probability/Density.lean |
5 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
dupuisf assignee:dupuisf |
6-61082 6 days ago |
15-66227 15 days ago |
15-69605 15 days |
27307 |
xyzw12345 author:xyzw12345 |
feat(RingTheory/GradedAlgebra): homogeneous relation |
This PR continues the work from #22279.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22279 |
t-ring-theory |
391/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousRelation.lean |
9 |
7 |
['chrisflav', 'eric-wieser', 'github-actions', 'xyzw12345'] |
ocfnash assignee:ocfnash |
6-49060 6 days ago |
45-1067 1 month ago |
60-12386 60 days |
29310 |
Louddy author:Louddy |
feat(SkewMonoidAlgebra): algebra instance |
Algebra instance for skew monoid algebras.
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$ |
65/12 |
Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
6-18808 6 days ago |
6-18836 6 days ago |
13-82065 13 days |
29587 |
uniwuni author:uniwuni |
feat(GroupTheory/Finiteness): define finitely generated semigroups |
We define finitely generated semigroups and basics similarly to monoids and groups and prove that semigroups and monoids remain finitely generated when a congruence is quotiented out. This will be important when further developing semigroup theory.
---
[](https://gitpod.io/from-referrer/)
|
|
259/14 |
Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/GroupTheory/Finiteness.lean |
2 |
3 |
['github-actions', 'plp127', 'uniwuni'] |
nobody |
6-15543 6 days ago |
6-20867 6 days ago |
6-20847 6 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$ |
205/6 |
Mathlib.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
4 |
17 |
['D-Thomine', 'eric-wieser', 'github-actions', 'kbuzzard', 'mathlib4-merge-conflict-bot'] |
kbuzzard assignee:kbuzzard |
5-84985 5 days ago |
29-3703 29 days ago |
58-10941 58 days |
28818 |
NotWearingPants author:NotWearingPants |
feat(Data/Setoid/Basic): add theorems about lifting a function to its kernel |
Currently `ker_lift_injective` and `quotientKerEquivOfRightInverse` lift `f` to `ker f` in their definition.
This PR makes this function available as `Setoid.ker_lift f` and adds a few more theorems about it.
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
28/13 |
Counterexamples/AharoniKorman.lean,Mathlib/Data/Setoid/Basic.lean |
2 |
3 |
['NotWearingPants', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
5-84526 5 days ago |
5-84578 5 days ago |
24-13121 24 days |
29241 |
yoh-tanimoto author:yoh-tanimoto |
feat(Analysis/InnerProductSpace/Orthogonal): add duplicates for `ClosedSubmodule` |
add duplicates of definitions and API's for `ClosedSubmodule` in an `InnerProductSpace`.
motivation: when one considers a Hilbert space (`CompleteSpace`), it is more natural to consider `ClosedSubmodule`s. They form a complete lattice and satisfy `sup_orthogonal` #29243.
- [x] depends on: #29230 for `Lattice` `CompleteLattice` |
|
191/0 |
Mathlib/Analysis/InnerProductSpace/Orthogonal.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
5-84259 5 days ago |
6-4234 6 days ago |
6-4719 6 days |
29235 |
yoh-tanimoto author:yoh-tanimoto |
feat(Topology/Algebra/Module/ClosedSubmodule): add `mapEquiv`, a variation of `ClosedSubmodule.map` for CLE |
add `ClosedSubmodule.map` for continuous linear equivalence. In this case, a closed map is mapped to a closed map, so the definitions are easier and behave nicely with `closure` and `⊔`.
motivation: needed to define standard subspaces in a Hilbert space (scalar multiplication by `Complex.I`) #29251
https://ems.press/content/serial-article-files/48171
- [x] depends on: #29230 for `Lattice` `CompleteLattice` |
t-topology |
69/1 |
Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
5-84247 5 days ago |
6-4232 6 days ago |
6-6522 6 days |
29513 |
grunweg author:grunweg |
fix(lint-style): parse linter options and load environment extensions correctly |
Parse options and load linter set extension correctly.
This fixes two issues:
- We never called the `toOptions` function that parses Lakefile options into a `Lean.Options` structure: the function we use instead is only meant for command-line options and doesn't handle the `weak.` prefix correctly.
- The way we load linter sets was incorrect: `withImportModules` doesn't update any environment extensions, and that is exactly what we use to store linter sets. We can replace it with `importModules` instead, but that is a bit less safe. It would be great if we had some sort of macro that can give us the environment at the point of elaboration instead.
TODO: that is now wrong, update the description to be correct!
---
- [x] depends on: #29584
- [x] depends on: #29585
- [x] depends on: #29586
[](https://gitpod.io/from-referrer/)
|
t-meta |
10/8 |
scripts/lint-style.lean |
1 |
7 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot'] |
nobody |
5-75346 5 days ago |
5-75540 5 days ago |
5-78139 5 days |
28061 |
CoolRmal author:CoolRmal |
feat(MeasureTheory): Uniqueness of Measures in the Riesz–Markov–Kakutani Representation Theorem |
This PR adds the proof of the uniqueness of measures in the Riesz–Markov–Kakutani representation theorem (i.e. if two regular measures on a locally compact Hausdorff space induce the same linear functionals on the set of compactly supported continuous functions, then these two measures are equal).
cf. https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Uniqueness.20in.20Riesz.E2.80.93Markov.E2.80.93Kakutani.20representation.20theorem
---
- [ ] depends on: #28059
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
182/0 |
Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/NNReal.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Real.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/Topology/UrysohnsLemma.lean |
4 |
12 |
['CoolRmal', 'github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
RemyDegenne assignee:RemyDegenne |
5-61097 5 days ago |
12-63842 12 days ago |
12-69412 12 days |
28695 |
chrisflav author:chrisflav |
feat(RingTheory): meta properties of bijective ring homomorphisms |
In particular, we show that bijective is a property local on the (algebraic) source.
---
- [x] depends on: #28642
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
large-import
|
170/7 |
Mathlib.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/LocalProperties/Exactness.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/RingHom/Bijective.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
11 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
kbuzzard assignee:kbuzzard |
5-61096 5 days ago |
15-80755 15 days ago |
15-83801 15 days |
29322 |
xroblot author:xroblot |
feat(RingTheory/Localization/AtPrime): bijection between prime ideals |
Let `R ⊆ S` be an extension of rings and `p` be a prime ideal of `R`. Denote by `Rₚ` the localization of `R` at the complement of `p` and by `Sₚ` the localization of `S` at the (image) of the complement of `p`.
In this PR, we study the extension `Rₚ ⊆ Sₚ` and the relation between the (nonzero) prime ideals of `Sₚ` and the prime ideals of `S` above `p`. In particular, we prove that (under suitable conditions) they are in bijection. In a following PR #27706, we prove that the residual degree and ramification index are preserved by this bijection.
Note. The new file `RingTheory.Localization.AtPrime.Extension` is imported in `RingTheory.Trace.Quotient` because one function from the latter was moved to the former, but the plan is eventually to move the isomorphisms proved in `RingTheory.Trace.Quotient` to `RingTheory.Localization.AtPrime.Basic` and `RingTheory.Localization.AtPrime.Extension` where they belong. This will be done in #27706.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
145/8 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean |
6 |
1 |
['github-actions'] |
chrisflav assignee:chrisflav |
5-61095 5 days ago |
15-6811 15 days ago |
15-6850 15 days |
29361 |
FlAmmmmING author:FlAmmmmING |
feat(RingTheory/PowerSeries/Catalan.lean) |
We introduce the Catalan generating function as a formal power series over `ℕ`.
## Main Definitions
* `PowerSeries.catalanSeries`: The Catalan generating function as a power series.
## Main Results
* `PowerSeries.sum_coeff_X_catalanSeries`: When `n` is a natural number,
each term in the sum `coeff i X * catalan (n - i)` is 0 except for `i = 1`.
* `PowerSeries.coeff_X_mul_catalanSeries`: The coefficient of `X * catalanSeries` at `X^n` is
`catalan (n - 1)` when `n > 0`.
* `PowerSeries.catalanSeries_one_add_X_mul_self_sq`: The Catalan generating function satisfies the
equation `catalanSeries = 1 + X * catalanSeries ^ 2`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
89/0 |
Mathlib.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean |
2 |
2 |
['github-actions', 'wwylele'] |
kbuzzard assignee:kbuzzard |
5-61093 5 days ago |
13-33756 13 days ago |
13-33790 13 days |
27599 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): define `CompleteEquipartiteSubgraph` |
Define the complete equipartite subgraphs in `r` parts each of size `t` in `G` as the `r` subsets of vertices each of size `t` such that vertices in distinct subsets are adjacent.
In this case `Nonempty (G.CompleteEquipartiteSubgraph r t)` is equivalent to `completeEquipartiteGraph r t ⊑ G`, that is, finding `r` subsets of vertices each of size `t` in `G` such that vertices in distinct subsets are adjacent is equivalent to finding an injective homomorphism from `completeEquipartiteGraph r t` to `G`.
---
- [x] depends on: #27597
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
113/7 |
Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean |
1 |
19 |
['YaelDillies', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] |
YaelDillies assignee:YaelDillies |
5-28186 5 days ago |
15-10448 15 days ago |
23-54189 23 days |
27602 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): define `CompleteBipartiteSubgraph` |
Define the complete bipartite subgraphs of `s` and `t` parts as a "left" subset of `s` vertices and a "right" subset of `t` vertices such that every vertex in the "left" subset is adjacent to every vertex in the "right" subset.
In this case `Nonempty (G.CompleteBipartiteSubgraph (card α) (card β))` is equivalent to `completeBipartiteGraph α β ⊑ G`, that is, finding a "left" subset of `s` vertices and a "right" subset of `t` vertices such that every vertex in the "left" subset is adjacent to every vertex in the "right" subset is equivalent to finding an injective homomorphism `completeBipartiteGraph α β` to `G`.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
88/0 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean |
1 |
3 |
['github-actions', 'mitchell-horner', 'vlad902'] |
YaelDillies assignee:YaelDillies |
5-27537 5 days ago |
52-671 1 month ago |
52-718 52 days |
29278 |
Jlh18 author:Jlh18 |
feat: groupoid instance on quotient category |
Show that `CategoryTheory.Quotient` constructs a groupoid when the original category was a groupoid.
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-category-theory
|
30/0 |
Mathlib/CategoryTheory/Quotient.lean |
1 |
5 |
['Jlh18', 'github-actions', 'joelriou', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
5-19003 5 days ago |
6-73133 6 days ago |
15-20159 15 days |
28329 |
pechersky author:pechersky |
feat(RingTheory/Valuation): generalize CommGroupWithZero on mrange to MonoidWithZeroHom |
Before, they were only for Valuation, but that is too restricted
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-order
t-algebra
label:t-algebra$ |
77/27 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/GroupWithZero/Submonoid/Instances.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean |
5 |
11 |
['YaelDillies', 'eric-wieser', 'github-actions', 'pechersky', 'riccardobrasca'] |
YaelDillies assignee:YaelDillies |
5-18539 5 days ago |
24-45632 24 days ago |
32-73985 32 days |
26096 |
vasnesterov author:vasnesterov |
feat(Topology/Instances): Cantor set is the set of ternary numbers without `1`s |
* Prove `ofDigits_zero_two_sequence_mem_cantorSet`: If `x = 0.d₀d₁...` in base-3, and none of the digits `dᵢ` is `1`, then `x` belongs to the Cantor set.
* Prove `ofDigits_zero_two_sequence_unique`: such a representation is uniquie.
* Define `toTernary` which converts a real number from the Cantor set to its ternary representation without `1`s.
* Prove `ofDigits_cantorToTernary : ofDigits (cantorToTernary x) = x`.
---
This is a prerequisite for #26136.
- [x] depends on: #26001
- [x] depends on: #26021
[](https://gitpod.io/from-referrer/)
|
large-import
t-topology
|
231/0 |
Mathlib/Topology/Instances/CantorSet.lean,scripts/noshake.json |
2 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
5-6771 5 days ago |
6-73617 6 days ago |
6-73977 6 days |
28477 |
yapudpill author:yapudpill |
feat(RingTheory): golf `IsPrincipalIdealRing.of_prime` |
In complement to #28451 and as discussed in #27200, this PR uses the newly added Oka predicates to golf the proof of `IsPrincipalIdealRing.of_prime`.
---
- [x] depends on: #28525
- [x] depends on: #29567
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
53/55 |
Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/PrincipalIdealDomainOfPrime.lean |
2 |
11 |
['Ruben-VandeVelde', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'yapudpill'] |
nobody |
5-1380 5 days ago |
5-64369 5 days ago |
11-54684 11 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 |
8 |
['YaelDillies', 'erdOne', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-merge-conflict-bot'] |
eric-wieser assignee:eric-wieser |
4-82382 4 days ago |
4-82407 4 days ago |
152-70126 152 days |
29611 |
vihdzp author:vihdzp |
feat: alternate characterization of `≤` on Archimedean classes |
The definition of `mk x ≤ mk y` is that `|y| ≤ n * |x|` for some natural `n`. We prove the alternate characterization that `q * |y| ≤ |x|` for some positive rational `q`, and in fact prove a more general version for any densely ordered Archimedean ring.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
26/1 |
Mathlib/Algebra/Order/Ring/Archimedean.lean |
1 |
5 |
['github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp', 'wwylele'] |
nobody |
4-77793 4 days ago |
5-602 5 days ago |
5-43914 5 days |
27936 |
alreadydone author:alreadydone |
feat(Algebra): additivize Dvd and Prime |
`Prime` can't be directly additivized, so we introduce `Preprime`, which drops the `≠ 0` condition, and additivize it to `AddPrime`. To show that `Preprime` is a reasonable definition, we show its connection to `Irreducible` under `IsPrimal` and `IsRegular` conditions. We also show that an element in a product monoid is preprime iff one component is a unit and the other is preprime, and the same with `Preprime` replaced by `Irreducible`.
Also additivize `IsPrimal`, `IsRelPrime` and `DecompositionMonoid`.
The motivation is that the primality of `single g 1` in `AddMonoidAlgebra k G` is connected to the primality of `g` in `G`.
---
I've checked [all 29 files](https://github.com/search?q=repo%3Aleanprover-community%2Fmathlib4%20%E2%88%A3%20to_additive&type=code) containing the `∣` symbol and the `to_additive` attribute and fixed the wrongly translated (`dvd` to `addDvd`) names.
TODO: connect (Add)Dvd to [ExistsMul/AddOfLE](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Monoid/Unbundled/ExistsOfLE.html#ExistsMulOfLE)
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
400/191 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Finite.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Prime/Prod.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Coset/Card.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Period.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Tactic/ToAdditive/GuessName.lean |
30 |
11 |
['JovanGerb', 'adomani', 'alreadydone', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] |
bryangingechen assignee:bryangingechen |
4-74649 4 days ago |
4-81796 4 days ago |
43-44682 43 days |
29622 |
uniwuni author:uniwuni |
feat(RepresentationTheory/Commutative): simple representations of commutative monoids are 1-dimensional |
Shows that for a commutative monoid, the simple finite dimensional representations over algebraically closed fields are all 1-dimensional.
---
Some things in here I am a bit uncomfortable with. `FDRep` seems to be not particularly fleshed out yet, so I had to explicitly construct embeddings and so on instead of using `Rep.subrepresentation`.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
81/1 |
Mathlib.lean,Mathlib/RepresentationTheory/Commutative.lean,docs/undergrad.yaml |
3 |
1 |
['github-actions'] |
nobody |
4-73328 4 days ago |
4-83433 4 days ago |
4-83474 4 days |
27252 |
Parcly-Taxel author:Parcly-Taxel |
feat: sharp bounds for `‖exp (I * x) - 1‖` when `x` is real |
From Carleson |
carleson
t-analysis
|
44/0 |
Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean |
2 |
13 |
['Parcly-Taxel', 'eric-wieser', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
hrmacbeth assignee:hrmacbeth |
4-61071 4 days ago |
12-27096 12 days ago |
13-33556 13 days |
29055 |
vihdzp author:vihdzp |
feat: `Ordinal.toENat` |
We essentially copy the Cardinal/ENat file but make it for ordinals instead. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2317758.20Ordinal.2EtoENat/near/479768508) for some prior discussion on this PR (particularly, the duplication and how there's no easy way to resolve it.)
---
Moved from #17758.
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
292/0 |
Mathlib.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/SetTheory/Cardinal/ENat.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/ENat.lean |
6 |
1 |
['github-actions'] |
alreadydone assignee:alreadydone |
4-61069 4 days ago |
21-27301 21 days ago |
21-27322 21 days |
29271 |
euprunin author:euprunin |
chore: remove redundant `let` and `letI` invocations |
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
1/8 |
Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean,Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/Topology/Metrizable/Uniformity.lean |
5 |
10 |
['JovanGerb', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'ocfnash'] |
dupuisf assignee:dupuisf |
4-61068 4 days ago |
12-23275 12 days ago |
15-69255 15 days |
29087 |
dupuisf author:dupuisf |
feat: Define strictly positive operators (i.e. positive definite) |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
192/21 |
Mathlib.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Topology/UniformSpace/Real.lean |
7 |
22 |
['dupuisf', 'github-actions', 'themathqueen'] |
kim-em assignee:kim-em |
4-60540 4 days ago |
18-69399 18 days ago |
18-69380 18 days |
29027 |
grunweg author:grunweg |
feat/fix(FlexibleLinter): mark more tactics as flexible |
and add proper tests for all of these. In particular, this PR
- fixes the handling of `(n)linarith` (which had a bug), and adds a test,
- adds `ring!` and `abel!` (as flexible tactics),
- adds `ring_nf!` and `abel_nf!` as stopper tactics,
- adds `cfc_tac` and its sisters as flexible tactic (as they use aesop and/or fun_prop),
- adds `continuity` and `measurability` as flexible (as they are aesop-based),
- add `group` and `module` as flexible,
- add `grind` as flexible,
- add `positivity` and `finiteness` as flexible, and `finiteness_nonterminal` as stopper tactic.
I'm happy to discuss any of these particular additions further.
---
Zulip discussion at https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/flexible.20vs.20rigid.20tactics/with/536424236.
[](https://gitpod.io/from-referrer/)
|
t-linter |
232/56 |
Mathlib/Tactic/Linter/FlexibleLinter.lean,MathlibTest/FlexibleLinter.lean,MathlibTest/ImportHeavyFlexibleLinter.lean |
3 |
17 |
['adomani', 'b-mehta', 'github-actions', 'grunweg'] |
b-mehta and joneugster assignee:joneugster assignee:b-mehta |
4-55455 4 days ago |
22-1723 22 days ago |
22-1704 22 days |
29479 |
harahu author:harahu |
doc: move docstring references to definitions to correct locations |
This addresses some instances of docstrings referring to results that have been moved away form their prior locations.
---
[](https://gitpod.io/from-referrer/)
|
t-computability |
14/20 |
Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean |
3 |
7 |
['bjoernkjoshanssen', 'bryangingechen', 'github-actions', 'harahu', 'mathlib4-merge-conflict-bot'] |
nobody |
4-37482 4 days ago |
8-37526 8 days ago |
8-78147 8 days |
29256 |
harahu author:harahu |
doc: attach "quasi" as a prefix where it is currently freestanding |
Quasi is rarely used as a free-standing adjective. Rather, it is commonly understood as just a prefix modifying some other concept. This PR takes this into account by attaching the prefix to whatever it is modifying.
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics
t-measure-probability
|
25/25 |
Mathlib/AlgebraicGeometry/Morphisms/Descent.lean,Mathlib/Dynamics/BirkhoffSum/QuasiMeasurePreserving.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/Ergodic/Function.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/AEEqFun/DomAct.lean,Mathlib/MeasureTheory/Group/AEStabilizer.lean,Mathlib/MeasureTheory/Measure/QuasiMeasurePreserving.lean,Mathlib/MeasureTheory/Measure/Restrict.lean |
10 |
2 |
['MichaelStollBayreuth', 'github-actions'] |
nobody |
4-37004 4 days ago |
7-31291 7 days ago |
15-83975 15 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 |
64 |
['FLDutchmann', 'Paul-Lez', 'YaelDillies', 'eric-wieser', 'github-actions', 'grunweg', 'kckennylau', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
eric-wieser assignee:eric-wieser |
4-29556 4 days ago |
155-27788 5 months ago |
210-74903 210 days |
29297 |
harahu author:harahu |
doc: hyphenate "first order" and "higher order" when used attributively |
Compound adjectives that are attributive (coming before their noun) should almost always be hyphenated in English.
This PR covers "first order" and "higher order".
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
24/24 |
Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/Logic/Basic.lean,Mathlib/ModelTheory/Algebra/Field/Basic.lean,Mathlib/ModelTheory/Algebra/Field/CharP.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Algebra/Ring/Basic.lean,Mathlib/RingTheory/MvPolynomial/FreeCommRing.lean,Mathlib/Topology/VectorBundle/Riemannian.lean,docs/undergrad.yaml |
11 |
3 |
['github-actions', 'grunweg'] |
nobody |
4-24273 4 days ago |
7-32481 7 days ago |
15-34125 15 days |
29538 |
YaelDillies author:YaelDillies |
refactor(FractionalIdeal): use algebraic order theory API |
Instantiate instances earlier and use generic lemmas instead of the `FractionalIdeal`-specific ones.
Also rename `_nonzero` in lemma names to `_ne_zero`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
158/176 |
Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Inverse.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean |
8 |
1 |
['github-actions'] |
nobody |
4-13842 4 days ago |
4-16776 4 days ago |
4-16764 4 days |
29347 |
themathqueen author:themathqueen |
refactor(Algebra/Star/StarAlgHom): let `StarAlgEquiv` extend `StarRingEquiv` instead of `RingEquiv` |
Instead of having `StarAlgEquiv` extend `RingEquiv` and have properties `map_star'` and `map_smul'`, it now extends `StarRingEquiv` with only `map_smul'`.
---
Will add more API in the next PR.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
29/36 |
Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean |
2 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
kbuzzard assignee:kbuzzard |
4-11411 4 days ago |
11-73999 11 days ago |
14-10557 14 days |
27313 |
pechersky author:pechersky |
feat(RingTheory/ValuativeRel/Trivial): the trivial valuative relation |
lemmas stated using `[Valuation.Compatible (1 : Valuation R Γ₀)]`
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #27312
- [x] depends on #28890
|
t-algebra
t-number-theory
label:t-algebra$ |
103/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean |
3 |
18 |
['faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
riccardobrasca assignee:riccardobrasca |
4-9160 4 days ago |
21-81036 21 days ago |
30-62320 30 days |
26345 |
mans0954 author:mans0954 |
feat(Analysis/LocallyConvex/Polar): Bipolar theorem |
The bipolar theorem states that the polar of the polar of a set `s` is equal to the closed absolutely convex hull of `s`.
The argument here follows Conway, Chapter V. 1.8.
This PR continues the work from #20843.
Original PR: https://github.com/leanprover-community/mathlib4/pull/20843
- [x] depends on: #27316 |
large-import
t-analysis
|
328/93 |
Mathlib.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Bipolar.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Topology/Algebra/Module/LinearSpan.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakBilin.lean |
9 |
n/a |
['JonBannon', 'eric-wieser', 'faenuccio', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mans0954', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mcdoll'] |
nobody |
4-3106 4 days ago |
unknown |
unknown |
29156 |
harahu author:harahu |
doc: treat "non" as a prefix where it appears as a free-standing word |
In English, "non" is merely a prefix, not a word in itself. Hence, it should always be attached to another word, either directly or by hyphen.
This PR attaches the prefix "non" to whatever it is prefixing in the cases where it currently appears as a free-standing word.
There's a couple of tricky cases in the PR that needs some extra attention. I will call these out by review comments.
---
[](https://gitpod.io/from-referrer/)
|
|
89/89 |
Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Order/Sub/Basic.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Star/CentroidHom.lean,Mathlib/AlgebraicTopology/DoldKan/Degeneracies.lean,Mathlib/Analysis/Complex/Arg.lean,Mathlib/Analysis/Complex/Polynomial/Basic.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Unbundled/RingSeminorm.lean,Mathlib/Analysis/SpecialFunctions/NonIntegrable.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Mod_.lean,Mathlib/CategoryTheory/SmallObject/Iteration/Basic.lean,Mathlib/Combinatorics/Additive/AP/Three/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/TransfiniteIteration.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/KrullDimension/NonZeroDivisors.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Defs.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/OrderOfVanishing.lean,Mathlib/RingTheory/Polynomial/Eisenstein/Criterion.lean,Mathlib/RingTheory/Regular/IsSMulRegular.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/Connected/LocallyConnected.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean,Mathlib/Topology/Sets/Compacts.lean |
51 |
72 |
['github-actions', 'grunweg', 'harahu', 'mathlib4-merge-conflict-bot'] |
nobody |
3-85346 3 days ago |
3-85364 3 days ago |
16-14684 16 days |
29649 |
MichaelStollBayreuth author:MichaelStollBayreuth |
feat(Analysis/Normed/Algebra/GelfandMazur): new file |
This adds two version of the *Gelfand-Mazur* *Theorem*:
```lean
NormedAlgebra.Complex.nonempty_algEquiv (F : Type*) [NormedRing F] [NormOneClass F]
[NormMulClass F] [NormedAlgebra ℂ F] [Nontrivial F] :
Nonempty (ℂ ≃ₐ[ℂ] F)
NormedAlgebra.Real.nonempty_algEquiv_or (F : Type*) [NormedField F] [NormedAlgebra ℝ F] :
Nonempty (F ≃ₐ[ℝ] ℝ) ∨ Nonempty (F ≃ₐ[ℝ] ℂ)
```
The version for complex algebras differs in its assumptions from the existing version [NormedRing.algEquivComplexOfComplete](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Algebra/Spectrum.html#NormedRing.algEquivComplexOfComplete) (nontrivial normed algebra with multiplicative norm vs. complete division ring with submultiplicative norm).
A version for real algebras is not yet in Mathlib; it is needed in the context of implementing (absolute) heights; see [Heights](https://github.com/MichaelStollBayreuth/Heights).
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
367/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/GelfandMazur.lean |
2 |
1 |
['github-actions'] |
nobody |
3-79505 3 days ago |
3-79543 3 days ago |
3-79555 3 days |
27107 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(GroupTheory/GroupAction/SubMulAction/Combination) : combinations and group actions |
`Nat.Combination X n` is the type all `s : Finset X` such that `s.card = n`.
This PR provides some API for this subtype and the `SubMulAction` it inherits when a group acts on `X`.
It will be used in conjunction with the description of some maximal subgroups of `Equiv.Perm X` to construct primitive actions.
Question on the names: when `X` is a fintype, there is `Finset.powersetCard` that gives the same object, as a `Finset`. But the present PR also applies when `X` is infinite. Then maybe `Nat.Combination` should be renamed as `Set.powersetCard`?
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
325/0 |
Mathlib.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean |
4 |
39 |
['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'tb65536'] |
alreadydone assignee:alreadydone |
3-75596 3 days ago |
44-29518 1 month ago |
66-59262 66 days |
29656 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Angle/Bisector): bisecting angles and equal distances |
Prove a lemma
```lean
/-- A point `p` is equidistant to two affine subspaces if and only if the angles at a point `p'`
in their intersection between `p` and its orthogonal projections onto the subspaces are equal. -/
lemma dist_orthogonalProjection_eq_iff_angle_eq {p p' : P} {s₁ s₂ : AffineSubspace ℝ P}
[s₁.direction.HasOrthogonalProjection] [s₂.direction.HasOrthogonalProjection]
(hp' : p' ∈ s₁ ⊓ s₂) :
haveI : Nonempty s₁ := ⟨p', hp'.1⟩
haveI : Nonempty s₂ := ⟨p', hp'.2⟩
dist p (orthogonalProjection s₁ p) = dist p (orthogonalProjection s₂ p) ↔
∠ p p' (orthogonalProjection s₁ p) = ∠ p p' (orthogonalProjection s₂ p) := by
```
that gives the basic fact relating equal distances to affine subspaces, and bisecting angles involving those subspaces, needed to connect `incenter` and `excenter` to bisecting angles. (Other pieces involved in getting such a statement for angles involving vertices of a triangle rather than just touchpoints include #29410, #29413, #29418 and their dependencies.)
I expect the new file `Bisector.lean` to be an appropriate place to end up with actual definitions of bisectors as submodules and affine subspaces; those definitions aren't needed for my immediate goals with `incenter` and `excenter`, but it seems appropriate to use such a file for lemmas relating to bisectors whether or not they explicitly involve such definitions.
I do expect to add similar statements involving oriented angles in a followup, so the imports of this new file should be expected to increase.
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
114/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean |
2 |
1 |
['github-actions'] |
nobody |
3-61134 3 days ago |
3-61203 3 days ago |
3-61184 3 days |
26544 |
vihdzp author:vihdzp |
feat(SetTheory/ZFC/Ordinal): Lean ordinals to ZFC ordinals |
We define `Ordinal.toZFSet` and prove that its outputs are precisely the ZFC ordinals. Moved from #19985.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-set-theory
|
166/5 |
Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean,Mathlib/SetTheory/ZFC/Rank.lean |
4 |
23 |
['alreadydone', 'github-actions', 'leanprover-community-bot-assistant', 'staroperator', 'vihdzp'] |
b-mehta assignee:b-mehta |
3-61064 3 days ago |
11-29622 11 days ago |
38-6983 38 days |
29400 |
ShreckYe author:ShreckYe |
feat(`Algebra/BigOperators`): products of the results of insertion and removal on tuples and lists, and some needed lemmas |
|
large-import |
102/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BigOperators/Group/Vector/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean |
6 |
5 |
['ShreckYe', 'eric-wieser', 'github-actions'] |
bryangingechen assignee:bryangingechen |
3-61060 3 days ago |
11-22468 11 days ago |
11-22515 11 days |
29409 |
Julian author:Julian |
feat(Mathlib/Analysis): deriv_eq_self and deriv_exp_iff |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
32/0 |
Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean |
1 |
2 |
['eric-wieser', 'github-actions'] |
j-loreaux assignee:j-loreaux |
3-61057 3 days ago |
10-76286 10 days ago |
10-76329 10 days |
29413 |
jsm28 author:jsm28 |
refactor(Geometry/Euclidean/Altitude,Geometry/Euclidean/Incenter): use `Nat.AtLeastTwo` |
Using `[Nat.AtLeastTwo n]` in place of `(hn : 1 < n)` saves passing various explicit hypotheses around, and is convenient in particular if applying lemmas in the common use case of a triangle.
As discussed on Zulip, `AtLeastTwo` is mainly used with literals at present, and there is no clear consensus about broader use in groups of lemmas sharing a common value of `n`, but `NeZero` is used in a similar way in the `rootsOfUnity` API.
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
23/21 |
Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Incenter.lean |
2 |
4 |
['eric-wieser', 'github-actions', 'jsm28'] |
JovanGerb assignee:JovanGerb |
3-61056 3 days ago |
10-72720 10 days ago |
10-72701 10 days |
28484 |
euprunin author:euprunin |
chore(Data): golf entire `toReal_eq_toReal`, `count_eq_of_nodup`, `smul_mat_cons` and `coe_inj` |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
8/13 |
Mathlib/Combinatorics/Matroid/Minor/Restrict.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/List/Nodup.lean,Mathlib/LinearAlgebra/Matrix/Notation.lean |
4 |
6 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
3-45057 3 days ago |
20-46059 20 days ago |
33-60683 33 days |
29364 |
hrmacbeth author:hrmacbeth |
feat(Tactic/FieldSimp): handle inequalities |
This PR extends the `field_simp` tactic to cancel positive denominators in inequalities, by analogy with the existing behaviour of cancelling nonzero denominators in equalities. For example, `field_simp` now reduces the following goal (from `Mathlib.Analysis.Convex.Mul`):
```
x y a b : ℚ
hx : 0 < x
hy : 0 < y
ha : 0 < a
hb : 0 < b
⊢ (a * x + b * y)⁻¹ ≤ a * x⁻¹ + b * y⁻¹
```
to `⊢ x * y ≤ (a * x + b * y) * (a * y + x * b)`.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-meta
|
279/87 |
Mathlib.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/Mul.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/RingTheory/RootsOfUnity/Complex.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FieldSimp.lean,Mathlib/Tactic/FieldSimp/Attr.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean,MathlibTest/FieldSimp.lean,scripts/noshake.json |
14 |
3 |
['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
3-44662 3 days ago |
4-64585 4 days ago |
10-34965 10 days |
29636 |
harahu author:harahu |
doc: spell semiring in closed form |
My impression of the literature is that it is quite uncommon to spell "semiring" as "semi-ring".
In mathlib there is only 14 cases of "semi-ring", as opposed to ~1400 cases of "semiring" in docstrings.
I figure that standardizing on "semiring" will help improve search-ability of mathlib somewhat.
---
[](https://gitpod.io/from-referrer/)
|
|
14/14 |
Mathlib/Algebra/Star/CentroidHom.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean |
4 |
2 |
['alreadydone', 'github-actions'] |
nobody |
3-35646 3 days ago |
4-23560 4 days ago |
4-23540 4 days |
28432 |
euprunin author:euprunin |
chore(CategoryTheory/Monoidal): golf entire `counitInv_app_comp_functor_map_η_inverse` |
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
2/5 |
Mathlib/CategoryTheory/Monoidal/Functor.lean |
1 |
1 |
['github-actions'] |
adamtopaz assignee:adamtopaz |
3-35263 3 days ago |
34-80408 1 month ago |
34-80453 34 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 |
17 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors'] |
eric-wieser assignee:eric-wieser |
3-33477 3 days ago |
127-16514 4 months ago |
211-75943 211 days |
29253 |
FernandoChu author:FernandoChu |
feat(CategoryTheory): (Co)limits in preorders |
Characterize (co)limits in preorders as glbs/lubs, plus some other instances. |
new-contributor
t-category-theory
|
151/13 |
Mathlib/CategoryTheory/Discrete/Basic.lean,Mathlib/CategoryTheory/Limits/Preorder.lean |
2 |
10 |
['FernandoChu', 'github-actions', 'joelriou'] |
joelriou assignee:joelriou |
3-33472 3 days ago |
3-37619 3 days ago |
14-31927 14 days |
29652 |
fmortimore author:fmortimore |
feat(Order): the Bourbaki–Witt theorem |
We prove the Bourbaki-Witt theorem, one of Wiedijk's 1000+ theorems
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
228/0 |
Mathlib.lean,Mathlib/Order/BourbakiWitt.lean |
2 |
5 |
['eric-wieser', 'fmortimore', 'github-actions'] |
nobody |
3-32888 3 days ago |
3-73004 3 days ago |
3-73039 3 days |
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-ring-theory
maintainer-merge
RFC
|
2/1 |
Mathlib/Algebra/Order/Ring/Defs.lean |
1 |
25 |
['Vierkantor', 'YaelDillies', 'alreadydone', 'artie2000', 'erdOne', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
erdOne assignee:erdOne |
3-28522 3 days ago |
3-30549 3 days ago |
34-63896 34 days |
29668 |
harahu author:harahu |
doc: cleanup of kleene star docs |
This PR:
- Corrects "Kleene's star" to "Kleene star"
- Clarifies a comment about notation.
---
[](https://gitpod.io/from-referrer/)
|
t-computability |
5/5 |
Mathlib/Computability/Language.lean |
1 |
1 |
['github-actions'] |
nobody |
3-29490 3 days ago |
3-29498 3 days ago |
3-29534 3 days |
29237 |
harahu author:harahu |
doc: capitalize archimedean |
Adjectives derived from people's last names are usually capitalized in English.
---
[](https://gitpod.io/from-referrer/)
|
|
337/336 |
Counterexamples/MapFloor.lean,Mathlib/Algebra/ContinuedFractions/Computation/ApproximationCorollaries.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/Archimedean/Hom.lean,Mathlib/Algebra/Order/Archimedean/Submonoid.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Order/Module/Archimedean.lean,Mathlib/Algebra/Order/Nonneg/Floor.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/Basic.lean,Mathlib/Algebra/Order/Ring/IsNonarchimedean.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Normed/Algebra/Ultra.lean,Mathlib/Analysis/Normed/Field/Ultra.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Analysis/Normed/Order/Hom/Basic.lean,Mathlib/Analysis/Normed/Order/Hom/Ultra.lean,Mathlib/Analysis/Normed/Ring/Ultra.lean,Mathlib/Analysis/Normed/Unbundled/FiniteExtension.lean,Mathlib/Analysis/Normed/Unbundled/InvariantExtension.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromBounded.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/Data/Int/SuccPred.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/SuccPred.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/GroupTheory/Archimedean.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/LSeries/DirichletContinuation.lean,Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/NumberTheory/Padics/Complex.lean,Mathlib/NumberTheory/Padics/MahlerBasis.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean,Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/Order/Filter/AtTopBot/Archimedean.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/SuccPred/IntervalSucc.lean,Mathlib/Order/SuccPred/LinearLocallyFinite.lean,Mathlib/Order/SuccPred/Tree.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/HahnSeries/Lex.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Nonarchimedean.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/Basic.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/Nonarchimedean/TotallyDisconnected.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/Algebra/Order/Archimedean.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/MetricSpace/Ultra/Basic.lean,Mathlib/Topology/MetricSpace/Ultra/Pi.lean,Mathlib/Topology/MetricSpace/Ultra/TotallySeparated.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean,Mathlib/Topology/UniformSpace/Ultra/Completion.lean,Mathlib/Topology/UniformSpace/Ultra/Constructions.lean |
74 |
5 |
['euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
3-29396 3 days ago |
3-29414 3 days ago |
14-30562 14 days |
28533 |
kim-em author:kim-em |
feat(linarith): add `linarith?` mode which suggests a `linarith only` call |
Adds `linarith?`, which traces the internal to watch which inequalities are being used, and suggests a `linarith only` call via the "try this:" mechanism.
Also adds a `+minimize` flag, on by default, which then greedily tries to drop hypotheses from the used set, to see if the problem is still possible with a smaller set. Currently I don't have test case showing this is worthwhile, however. Contributions welcome.
------
https://chatgpt.com/codex/tasks/task_e_68a02bce93a883218485c7e7cafb877a |
codex
t-meta
|
212/68 |
Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Linarith/Verification.lean,MathlibTest/linarith.lean |
3 |
12 |
['YaelDillies', 'eric-wieser', 'github-actions', 'hrmacbeth', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot'] |
robertylewis assignee:robertylewis |
3-17804 3 days ago |
16-53595 16 days ago |
32-52957 32 days |
29626 |
themathqueen author:themathqueen |
chore(Algebra/Order/Module/PositiveLinearMap): generalize `OrderHomClass.ofLinear` |
Generalize `OrderHomClass.ofLinear` from linear maps to additive group homomorphisms.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
10/11 |
Mathlib/Algebra/Order/Module/PositiveLinearMap.lean,Mathlib/Analysis/CStarAlgebra/CompletelyPositiveMap.lean |
2 |
5 |
['Ruben-VandeVelde', 'github-actions', 'themathqueen'] |
nobody |
3-14220 3 days ago |
3-14241 3 days ago |
4-78997 4 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$ |
263/10 |
Mathlib.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/Regular/RegularSequence.lean |
7 |
86 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'kbuzzard', 'smorel394', 'themathqueen'] |
kbuzzard assignee:kbuzzard |
3-14150 3 days ago |
21-29822 21 days ago |
115-82273 115 days |
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-ring-theory |
121/38 |
Mathlib/LinearAlgebra/BilinearForm/Properties.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Trace/Basic.lean |
3 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
adomani assignee:adomani |
3-13675 3 days ago |
3-13699 3 days ago |
83-67725 83 days |
29411 |
llllvvuu author:llllvvuu |
feat(LinearAlgebra/Matrix/Rank): rank factorization |
The rank factorization derived from `Module.finBasis`.
Co-authored-by: @Aristotle-Harmonic
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
20/0 |
Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean |
2 |
1 |
['github-actions'] |
jcommelin assignee:jcommelin |
3-12147 3 days ago |
10-73715 10 days ago |
10-73712 10 days |
29630 |
yury-harmonic author:yury-harmonic |
feat: prove Gauss-Lucas theorem |
The proof was found by Aristotle AI,
then rewritten by me in Mathlib style.
Co-authored-by: @Aristotle-Harmonic
---
[](https://gitpod.io/from-referrer/)
|
|
159/8 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Analysis/Complex/Polynomial/GaussLucas.lean,docs/1000.yaml |
5 |
1 |
['github-actions'] |
nobody |
3-11208 3 days ago |
4-40683 4 days ago |
4-40663 4 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/) |
t-meta |
300/29 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/Graph/Basic.lean,Mathlib/Tactic/Order/Preprocessing.lean,Mathlib/Tactic/Order/ToInt.lean,MathlibTest/order.lean |
7 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vasnesterov'] |
alexjbest assignee:alexjbest |
3-8465 3 days ago |
3-8473 3 days ago |
67-22780 67 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 |
7 |
['YaelDillies', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
adomani assignee:adomani |
3-7615 3 days ago |
7-2046 7 days ago |
91-2092 91 days |
29679 |
Jlh18 author:Jlh18 |
fix: attributes to_app and reassoc |
In `../Pseudofunctor`,
- the parallel attributes `@[reassoc, to_app]` fail to generate the useful lemmas `..._app_assoc`. These have been replaced with the attribute `@[to_app (attr:=reassoc)]`
- there were several usages of `@[reassoc]` on lemmas `f = ...` where `f` is not a composition. This generates a useless lemma. These have been removed.
In `../NaturalTransformation/Pseudo`,
- there are again some usages of `@[reassoc]` on lemmas `f = ...` where `f` is not a composition. These have been removed.
- there was no `@[to_app]` on `naturality_comp_inv`, but there was for `naturality_comp_hom`, so I added it.
Related zulip posts:
[#mathlib4 > reassoc and simp](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/reassoc.20and.20simp/with/449403172)
By the way, for `../NaturalTransformation/Pseudo`,
- I'm also not sure whether
```lean4
@[reassoc (attr := simp), to_app]
theorem whiskerLeft_naturality_naturality (f : a' ⟶ G.obj a) {g h : a ⟶ b} (β : g ⟶ h) :
f ◁ G.map₂ β ▷ θ.app b ≫ f ◁ (θ.naturality h).hom =
f ◁ (θ.naturality g).hom ≫ f ◁ θ.app a ◁ H.map₂ β :=
θ.toOplax.whiskerLeft_naturality_naturality _ _
```
really is the behaviour that we want. I am not changing it because I am unsure.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
17/17 |
Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Pseudo.lean |
2 |
1 |
['github-actions'] |
nobody |
3-6245 3 days ago |
3-6815 3 days ago |
3-6855 3 days |
21965 |
JovanGerb author:JovanGerb |
feat: extensible `push` and `pull` tactics |
This PR defines the `push` and `pull` tactics, and makes `push_neg` a macro for `push Not`. The tactics are also available in `conv` mode.
For tagging, there is only the `@[push]` attribute, which adds the reverse rewrite for the `pull` tactic when relevant. In the future, we may also need a separate `@[pull X]` attribute for pulling `X`.
Thanks to this change, we will be able to make `push_neg` into a more powerful tactic by tagging more lemmas. It also means that about 60 files now don't need to import `LinearOrder`/`PartialOrder`. This will be especially useful when we get the `@[to_dual]` attribute.
This work originally started in #21769. There is now the follow up PR #29000 which adds `push` tags and tests for them.
The `@[push]` attribute is defined in `Mathlib.Tactic.Push.Attr` and the main implementation of `push` and `pull` is in `Mathlib.Tactic.Push`.
Some proofs need to be fixed because the new simp-based `push_neg` can see through more reducible definitions.
Zulip conversation: [#mathlib4 > I made an extensible `push` tactic generalizing `push_neg`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/I.20made.20an.20extensible.20.60push.60.20tactic.20generalizing.20.60push_neg.60)
closes #21841
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-meta
|
505/178 |
Mathlib.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/HahnSeries/Lex.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Push/Attr.lean,Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,MathlibTest/push.lean,MathlibTest/push_neg.lean,scripts/noshake.json |
17 |
62 |
['JovanGerb', 'adomani', 'github-actions', 'grunweg', 'j-loreaux', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'plp127'] |
robertylewis assignee:robertylewis |
3-6135 3 days ago |
3-6156 3 days ago |
141-85768 141 days |
29344 |
JovanGerb author:JovanGerb |
feat(Geometry/Euclidean/Sphere/Power): use side condition `p ∈ line[ℝ, a, b]` |
This PR changes the side condition used in theorems about `Sphere.power` to be `p ∈ line[ℝ, a, b]`. This is symmetric in `a` and `b`, and more general than the current condition.
TODO (in this PR?): add some basic lemmas about `p ∈ line[ℝ, a, b]`.
TODO (in another PR): prove the power theorems about `Sphere.secondInter`, which is more general in the sense that it also includes the case where `a` and `b` coincide, and then `p` is on the tangent line.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-euclidean-geometry
|
31/34 |
Mathlib/Geometry/Euclidean/Sphere/Power.lean |
1 |
4 |
['github-actions', 'jsm28', 'mathlib4-merge-conflict-bot'] |
jsm28 assignee:jsm28 |
3-5688 3 days ago |
3-61002 3 days ago |
13-82774 13 days |
29119 |
JovanGerb author:JovanGerb |
fix(Tactic/ToAdditive/Frontend): swap `reorderForall` and `applyReplacementForall` |
This PR does some general clean-up in the `to_additive` implementation:
- `expand` is moved up so that it can be called directly inside of `applyReplacementFun`. The current situation requires uses of `applyReplacementFun` to know that they need to call `expand` first.
- `applyReplacementFun` is significantly cleaned up, without changing the implementation, making it shorter, more readable and more efficient.
- It swaps reorderForall/Lambda with applyReplacementForall/Lambda, because in the previous order, if `reorder` would reorder some argument that appears in `dontTranslate`, it would do the wrong thing (although I don't think this will ever come up in practice)
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
93/106 |
Mathlib/Tactic/ToAdditive/Frontend.lean,MathlibTest/toAdditive.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
robertylewis assignee:robertylewis |
3-4773 3 days ago |
3-4795 3 days ago |
19-69173 19 days |
29422 |
jsm28 author:jsm28 |
fix(Data/Finset/Max): Use `DecidableEq` for `insert` lemmas |
These `insert` in these lemma statements uses a `DecidableEq` instance derived from `LinearOrder`; make them syntactically more general by passing in a `DecidableEq` instance separately. (Some `insert` lemmas in this file already take `DecidableEq` hypotheses.)
---
[](https://gitpod.io/from-referrer/)
|
t-data |
8/8 |
Mathlib/Data/Finset/Max.lean |
1 |
2 |
['eric-wieser', 'github-actions'] |
nobody |
3-3355 3 days ago |
10-59033 10 days ago |
10-59014 10 days |
29624 |
mcdoll author:mcdoll |
feat(LinearAlgebra/LinearPMap): add definition of resolvent and first resolvent identity |
---
Still work in progress, but it compiles and feedback on naming and design is very welcome.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
180/2 |
Mathlib/LinearAlgebra/LinearPMap.lean |
1 |
2 |
['github-actions', 'mcdoll'] |
nobody |
2-85797 2 days ago |
2-85797 2 days ago |
2-85778 2 days |
28702 |
Timeroot author:Timeroot |
feat(Algebra/Group/Hom/Defs): MonoidHom switching from MulOneClass to MulOne |
Currently `MonoidHom` relies on a `MulOneClass`, stating that 1 is a multiplicative identity; when actually all a "monoid" hom does is preserve multiplication and one. So, really, a MonoidHom is a "mul-and-one hom", but one cannot use it with any type that isn't a MulOneClass. (It also does not enforce being a Monoid: associativity is not required.)
In general, homs like this should only rely on the data being present in the source and destination type; any applications of it are then free to assume MulOneClass or Monoid where appropriate, which is essentially already how it does. This drops the MulOneClass assumption so that MonoidHom just takes the Mul and One types.
_But_ if we wrote `MonoidHom [Mul M] [One M]`, this would essentially double the effort needed for typeclass inference. An experiment in #28889 confirmed this performance hit. So, we define a `MulOne` type which is just the `Mul` and `One` data bundled together, and the performance change becomes pretty minimal.
And then there are the corresponding changes to `AddMonoidHom` / `AddZeroClass` becoming `AddZero`. This follows some discussion at [#mathlib4 > RingHom for not-a-ring](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/RingHom.20for.20not-a-ring)
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
78/68 |
Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean |
7 |
12 |
['JovanGerb', 'Timeroot', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
dagurtomas assignee:dagurtomas |
2-80254 2 days ago |
2-80254 2 days ago |
29-97 29 days |
26871 |
grunweg author:grunweg |
feat: finite sum, difference, scalar product of differentiable sections is differentiable |
This mirrors the additions of #26674 to `mdifferentiable` sections.
Part of the path towards geodesics and the Levi-Civita connection.
Co-authored-by: Patrick Massot
---
- [x] depends on: #26870 (and perhaps more/need to split afterwards)
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
179/3 |
Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean |
1 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
2-76973 2 days ago |
2-77517 2 days ago |
2-78553 2 days |
29688 |
tb65536 author:tb65536 |
feat(FieldTheory/IsGaloisGroup): prove the Galois correspondence for `IsGaloisGroup` |
This PR reproves the Galois correspondence for `IsGaloisGroup`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
89/0 |
Mathlib/FieldTheory/Galois/IsGaloisGroup.lean |
1 |
1 |
['github-actions'] |
nobody |
2-75794 2 days ago |
2-75794 2 days ago |
2-75775 2 days |
29690 |
jt496 author:jt496 |
chore(SimpleGraph/Subgraph): remove duplicate def and fix names |
We previously had `Subgraph.topEquiv` and `Subgraph.topIso` for the graph isomorphism `(⊤ : G.Subgraph).coe ≃g G`.
`Subgraph.topIso` seems preferable as a name for this so this PR deprecates the other name.
Also rename and deprecate `Subgraph.botEquiv` to `Subgraph.botIso`.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
5/6 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
1 |
1 |
['github-actions'] |
nobody |
2-75345 2 days ago |
2-75360 2 days ago |
2-75400 2 days |
29395 |
YaelDillies author:YaelDillies |
refactor: make `PosMulMono` and alike custom classes |
In the current setup, users get confusing non-beta-reduced goals involving a subtype when trying to provide an instance of `PosMulMono`.
This PR changes it to be a custom structure with the expected fields.
This follows `PosSMulMono` and alike.
---
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
label:t-algebra$ |
188/267 |
Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/InjSurj.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Algebra/Order/Ring/Opposite.lean,Mathlib/Algebra/Order/Ring/Prod.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Filter/Ring.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,MathlibTest/GRewrite.lean |
22 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
2-74256 2 days ago |
2-74280 2 days ago |
6-67285 6 days |
27841 |
CBirkbeck author:CBirkbeck |
feat(Topology/Algebra/InfiniteSum/NatInt): add more pnat tsum lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
32/7 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean |
3 |
8 |
['CBirkbeck', 'github-actions', 'loefflerd'] |
ADedecker assignee:ADedecker |
2-61089 2 days ago |
9-85537 9 days ago |
10-414 10 days |
29373 |
staroperator author:staroperator |
doc(ModelTheory): clarify free and (in-scope) bound variables in `BoundedFormula` |
The current design of `BoundedFormula` is actually a locally nameless representation. Following PL convention, we should call the `α` indexed variables as free variables, and the `Fin n` indexed variables as (in-scope) bound variables.
Also clarify that the bound variables are actually de Bruijn levels.
Some references:
-
- [Locally nameless in CSLib](https://github.com/leanprover/cslib/blob/4734d98a80d82e8bb15cbb64b6cfaa30c08691a8/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean)
- [Locally nameless in Lean core](https://github.com/leanprover/lean4/blob/540e9e85f3317d04133aa2a69d5a24fb31e92d8b/src/Lean/Expr.lean#L238)
---
[](https://gitpod.io/from-referrer/)
|
t-logic
documentation
|
32/31 |
Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
fpvandoorn assignee:fpvandoorn |
2-61085 2 days ago |
10-16426 10 days ago |
12-55417 12 days |
29439 |
themathqueen author:themathqueen |
feat(Analysis/InnerProductSpace/Projection/Basic): `e ∘ f = 0` iff `(ker e).starProjection ∘ f = f` |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
13/0 |
Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean |
1 |
1 |
['github-actions'] |
j-loreaux assignee:j-loreaux |
2-61082 2 days ago |
10-7948 10 days ago |
10-7987 10 days |
28884 |
kim-em author:kim-em |
chore: deprecate ShiftLeft Int instance |
This PR proposes deprecating the `ShiftLeft Int` instance (which allows bit-shifting an integer by an integer), and similarly for `ShiftRight`.
These are unused in Mathlib.
I'm happy if someone wants to keep this, but I would ask that they:
* fix the doc-strings to explain what happens for negative shifts
* ~~restores the theorem `Int.shiftLeft_add` which I've commented out on `nightly-testing` (and then revert b33c9d7aaea on `nightly-testing`).~~
* ideally but optionally, complete the API, e.g. reducing shifts by casts back to shifts by a Nat |
t-data |
22/3 |
Mathlib/Data/Int/Bitwise.lean |
1 |
5 |
['eric-wieser', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
2-61074 2 days ago |
2-61092 2 days ago |
24-29194 24 days |
29486 |
kim-em author:kim-em |
chore: scope an expensive `IsDomain`->`IsAddTorsionFree` instance |
Unfortunately this instance significantly affects (10%) the run time of
```
import Mathlib
variable {K : Type*} [Field K]
example : Lean.Grind.NoNatZeroDivisors K := inferInstance
```
which is on the critical path for `grind`. It seems okay to scope it? It is only used once, in a file with explicit `IsDomain` variables. |
t-algebra label:t-algebra$ |
11/2 |
Mathlib/Algebra/Ring/Torsion.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Lemmas.lean,MathlibTest/slow_instances.lean |
3 |
5 |
['github-actions', 'kbuzzard', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
2-60846 2 days ago |
2-60878 2 days ago |
8-28385 8 days |
29547 |
kim-em author:kim-em |
chore: remove defunct polyrith tactic |
In my understanding, the public Sage server that `polyrith` relies on is down and never going to come back, and hence the `polyrith` code is dead. There are a bunch of viable options for restoring this, e.g. running Sage locally, running our own Sage server, moving to a different external CAS, implementing Grobner bases in a way that produces nullstellensatz certificates (including by modifying the `grind` implementation). But none of these exist at the moment, so this code in Mathlib is not of any use. It can immediately be restored from history if someone wants to implement one of these solutions. In the meantime, one can also use `grobner` (which calls the Grobner module in `grind`) to close the goal without a source code certificate. |
file-removed |
16/1241 |
Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo2006Q3.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Tactic/Polyrith.lean,MathlibTest/polyrith.lean,scripts/README.md,scripts/noshake.json,scripts/polyrith_sage_helper.py |
8 |
3 |
['euprunin', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
2-60676 2 days ago |
2-60703 2 days ago |
6-84529 6 days |
29573 |
kim-em author:kim-em |
chore: deprecate `Traversable` deriving handler |
This broke on `nightly-testing`. It's very probably fixable, but I'm not interested in doing that myself, and I think this is a good opportunity to remove some code which has not been used since 2018. |
file-removed |
7/3 |
Mathlib.lean,Mathlib/Deprecated/Tactic/DeriveTraversable.lean,Mathlib/Tactic.lean,MathlibTest/Traversable.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
2-60637 2 days ago |
2-60655 2 days ago |
6-31193 6 days |
29492 |
kim-em author:kim-em |
feat: grind golf in Mathlib.Data.List |
Much of this comes from locations identified by the new `linter.tacticAnalysis.terminalToGrind`, and then cleaning up in flagged files. |
t-data |
73/211 |
Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/Lattice.lean,Mathlib/Data/List/Lookmap.lean,Mathlib/Data/List/ReduceOption.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/TakeDrop.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Multiset/UnionInter.lean |
10 |
6 |
['eric-wieser', 'euprunin', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
2-53320 2 days ago |
2-60767 2 days ago |
8-10571 8 days |
27982 |
ShreckYe author:ShreckYe |
chore(Data/Nat/GCD): use `Nat.Prime.dvd_or_dvd` from #27981 in `Nat.Prime.dvd_or_dvd_of_dvd_lcm` from #27963 to simplify the proof a bit |
- [ ] depends on: #27963
- [ ] depends on: #27981 |
new-contributor |
1/1 |
Mathlib/Data/Nat/GCD/Prime.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
2-52147 2 days ago |
2-52154 2 days ago |
2-62927 2 days |
29697 |
kim-em author:kim-em |
chore: run 'lake build AesopTest' on nightlies |
This would have prevented an annoying hurdle during the last release cycle. |
CI |
24/0 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml |
4 |
1 |
['github-actions'] |
nobody |
2-48836 2 days ago |
2-49023 2 days ago |
2-49061 2 days |
28973 |
YaelDillies author:YaelDillies |
feat(TensorProduct): `lTensor` as an `AlgHom` and other lemmas |
From Toric
Co-authored-by: Michał Mrugała
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
|
21/0 |
Mathlib/RingTheory/TensorProduct/Basic.lean |
1 |
7 |
['YaelDillies', 'eric-wieser', 'github-actions', 'themathqueen'] |
mattrobball assignee:mattrobball |
2-42452 2 days ago |
2-62050 2 days ago |
20-32669 20 days |
27887 |
JovanGerb author:JovanGerb |
feat: `to_dual` attribute |
This PR defines the `to_dual` attribute for translating lemmas to their dual. This is useful in order theory and in category theory. It is built on top of the `to_additive` machinery.
This PR only adds `@[to_dual]` tags in files that directly need to import `ToDual`, namely `Order/Defs/PartialOrder`, `Order/Notation` and `Combinatorics/Quiver/Basic`. Further tagging is left for (many) future PRs.
This PR continues the work from #21719
This PR depends on/supersedes #27894
Related (mathlib3) issues:
- https://github.com/leanprover-community/mathlib3/issues/13461
- https://github.com/leanprover-community/mathlib3/issues/7691
Co-authored-by: @bryangingechen
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-meta
|
616/293 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Notation.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToAdditive/ToDual.lean,Mathlib/Tactic/ToDual.lean,MathlibTest/toAdditive.lean,scripts/noshake.json |
15 |
12 |
['JovanGerb', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
2-37721 2 days ago |
3-4027 3 days ago |
20-22873 20 days |
29674 |
xroblot author:xroblot |
feat(PowerBasis): various ways to create power bases |
Add the two following results:
- If `x` generates `S` over `R` and is integral over `R`, then it defines a power basis over `R` (also version over a field),
- Construct a power basis from a basis consisting of powers of an element.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
45/0 |
Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/RingTheory/Adjoin/PowerBasis.lean,Mathlib/RingTheory/PowerBasis.lean |
3 |
1 |
['github-actions'] |
nobody |
2-37073 2 days ago |
2-37073 2 days ago |
3-15404 3 days |
29665 |
xroblot author:xroblot |
feat(IsCyclotomicExtension): some results for the sub-algebra case |
We add some results about cyclotomic extensions which are also contained in an extension `A ⊆ B` of rings. In this case,
the cyclotomic extension `IsCyclotomicExtension S A C` is determined by `S` and thus we can prove various statements such as the fact that the compositum of `A[ζₙ]` and `A[ζₘ]` is `A[ζₗ]` where `l` is the lcm of `n` and `m`.
---
- [x] depends on: #29600
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
114/0 |
Mathlib/NumberTheory/Cyclotomic/Basic.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
2-35450 2 days ago |
2-35474 2 days ago |
2-62995 2 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 |
156/99 |
Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,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 |
18 |
28 |
['JovanGerb', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] |
Vierkantor assignee:Vierkantor |
2-35185 2 days ago |
2-75912 2 days ago |
173-47118 173 days |
29704 |
RemyDegenne author:RemyDegenne |
Refactor(Probability/Kernel): build `compProd` from `comp` and `parallelComp` |
This PR changes the definitions of `Kernel.compProd` and `Kernel.prod`.
- Before this PR, we had 3 types of compositions of kernels that were built "from scratch": `comp`, `parallelComp` and `compProd`. And then `prod` was defined using `compProd`.
- After this PR, only `comp` and `parallelComp` are basic blocks of the compositions/products of kernels: `compProd` and `prod` are built from those (and from particular deterministic kernels).
The auxiliary definition `compProdFun` that was used only to build `compProd` is deleted.
I had to move several lemmas around to reflect changes in the import structure in the folder. The PR summary bot comment shows that nothing was lost besides results about `compProdFun`.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
220/286 |
Mathlib.lean,Mathlib/Probability/Kernel/Composition/CompProd.lean,Mathlib/Probability/Kernel/Composition/KernelLemmas.lean,Mathlib/Probability/Kernel/Composition/Lemmas.lean,Mathlib/Probability/Kernel/Composition/MeasureComp.lean,Mathlib/Probability/Kernel/Composition/Prod.lean |
6 |
1 |
['github-actions'] |
nobody |
2-34836 2 days ago |
2-34898 2 days ago |
2-34942 2 days |
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
|
391/68 |
Mathlib.lean,Mathlib/CategoryTheory/Closed/PowerObjects.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/CommSq.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Equalizer.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean |
9 |
13 |
['fweth', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
riccardobrasca assignee:riccardobrasca |
2-33601 2 days ago |
11-11854 11 days ago |
30-70419 30 days |
29341 |
joelriou author:joelriou |
feat(Topology): the topology generated by a family of spaces |
Some categories of topological spaces are "convenient" in the sense that they have nice categorical properties (e.g. they have limits, colimits and are cartesian closed). This PR is the first in a series towards showing that delta generated spaces form a cartesian closed monoidal category (see https://github.com/joelriou/topcat-model-category/blob/852a514c1d955ab586507bcd5a7b5efb99c6c3df/TopCatModelCategory/Convenient/CartesianClosed.lean#L92 for the general result), and this result is part of my formalization effort towards the Quillen model category structure on simplicial sets.
In this PR, given a family `X` of topological spaces, and a topological space `Y`, we introduce the `X`-generated topology on `Y`, which is coinduced by all continuous maps `X i → Y`.
(Eventually, this will generalize previous works by Dagur Asgeirsson and Ben Eltschig about compactly/delta generated spaces in mathlib. At some point, their definitions will be refactored as particular cases of the definitions in this PR series.)
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
243/0 |
Mathlib.lean,Mathlib/Topology/Convenient/GeneratedBy.lean,docs/references.bib |
3 |
3 |
['github-actions', 'joelriou'] |
jcommelin assignee:jcommelin |
2-29115 2 days ago |
14-30329 14 days ago |
14-30309 14 days |
29526 |
llllvvuu author:llllvvuu |
feat: `Multiset.map f` identifies `f` up to permutation |
Example use case: Reason about `Matrix.IsHermitian.eigenvalues`, which is `Fintype`-indexed, via `Matrix.charpoly.roots` which is a `Multiset`. May also apply to #29610
Co-authored-by: @Aristotle-Harmonic
---
[](https://gitpod.io/from-referrer/)
|
t-data |
29/0 |
Mathlib/Data/Multiset/Fintype.lean |
1 |
6 |
['github-actions', 'llllvvuu', 'vihdzp', 'wwylele'] |
nobody |
2-28952 2 days ago |
7-59485 7 days ago |
7-59482 7 days |
29110 |
NotWearingPants author:NotWearingPants |
feat(Counterexamples): Euler's sum of powers conjecture |
feat(Counterexamples): Euler's sum of powers conjecture
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
158/0 |
Counterexamples.lean,Counterexamples/EulerSumOfPowers.lean |
2 |
40 |
['MichaelStollBayreuth', 'NotWearingPants', 'eric-wieser', 'github-actions', 'tb65536'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
2-27470 2 days ago |
2-65846 2 days ago |
16-18714 16 days |
29418 |
jsm28 author:jsm28 |
feat(Analysis/Convex/Between): interior of a 1-simplex |
Add lemmas relating the `interior` or `closedInterior` of a 1-simplex to betweenness.
---
- [ ] depends on: #29415
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry |
93/0 |
Mathlib/Analysis/Convex/Between.lean |
1 |
8 |
['eric-wieser', 'github-actions', 'jsm28', 'mathlib4-dependent-issues-bot'] |
nobody |
2-27000 2 days ago |
3-2246 3 days ago |
3-2554 3 days |
28669 |
kckennylau author:kckennylau |
chore: clean up some proofs about locally compact valuation |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
26/24 |
Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean |
3 |
5 |
['github-actions', 'grunweg', 'kckennylau', 'pechersky'] |
nobody |
2-21486 2 days ago |
2-21486 2 days ago |
11-45294 11 days |
29354 |
themathqueen author:themathqueen |
refactor(Algebra/Algebra/Equiv): allow for non-unital `AlgEquiv` |
This refactors `AlgEquiv` to allow for non-unital algebras. More specifically, we weaken the type class assumptions from:
```lean
structure AlgEquiv (R A B : Type*) [CommSemiring R] [Semiring A] [Semiring B]
[Algebra R A] [Algebra R B]
```
to
```lean
structure AlgEquiv (R A B : Type*) [Add A] [Add B] [Mul A] [Mul B] [SMul R A] [SMul R B]
```
Instead of a `commutes'` field, we now have a `map_smul'` field. We also include a definition `AlgEquiv.ofCommutes` which takes in a `RingEquiv` and a `commutes'` field to match before and for convenience.
`StarAlgEquiv` now extends `AlgEquiv`. We also generalize a few files to allow for non-unital.
I suspect there are a few more things to generalize, but will leave this for later.
Co-authored-by: Jireh Loreaux
---
Revives #8686.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
525/482 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/DualQuaternion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Taylor.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Matrix/DualNumber.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/LinearAlgebra/CliffordAlgebra/BaseChange.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Conjugation.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/LinearMap.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/Unique.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IntegralClosure/IntegrallyClosed.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Invariant/Profinite.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Jacobson/Artinian.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/MatrixAlgebra.lean,Mathlib/RingTheory/MvPolynomial/Localization.lean,Mathlib/RingTheory/Norm/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/PolynomialAlgebra.lean,Mathlib/RingTheory/PowerSeries/WeierstrassPreparation.lean,Mathlib/RingTheory/RingHom/FiniteType.lean,Mathlib/RingTheory/SimpleModule/Isotypic.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Pi.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/TensorProduct/Pi.lean,Mathlib/RingTheory/TensorProduct/Quotient.lean,Mathlib/RingTheory/Trace/Basic.lean,Mathlib/RingTheory/Unramified/Field.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/LocallyConstant/Algebra.lean |
93 |
23 |
['fpvandoorn', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
nobody |
2-18279 2 days ago |
4-9821 4 days ago |
5-67711 5 days |
24754 |
urkud author:urkud |
feat: define `pathIntegral` |
This is a step towards formalizing of the Poincaré lemma for 1-forms.
---
- [x] depends on: #24831
- [x] depends on: #25047
- [x] depends on: #25048
[](https://gitpod.io/from-referrer/)
|
t-analysis |
553/9 |
Mathlib.lean,Mathlib/Analysis/Convex/PathConnected.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/ContDiff.lean,Mathlib/MeasureTheory/Integral/PathIntegral/Basic.lean |
6 |
26 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel', 'urkud'] |
nobody |
2-17003 2 days ago |
2-17010 2 days ago |
10-69601 10 days |
29706 |
kim-em author:kim-em |
feat: add piCongrSigmaFiber and piCongrFiberwise equivalences |
## Summary
Add two new equivalence functions for working with fibers and sigma types:
- `Equiv.piCongrSigmaFiber`: transforms between functions on sigma fibers and regular pi types
- `Equiv.piCongrFiberwise`: lifts fiber-wise equivalences to product equivalences
These functions are from the FLT (Fermat's Last Theorem) project and are useful for manipulating dependent function types indexed by fibers of a function.
## Details
The new definitions allow for elegant transformations between:
1. Functions defined on sigma types representing fibers of a function
2. Regular dependent functions
These are particularly useful in algebraic contexts where one needs to work with products indexed by fibers.
## Context
This PR was prepared by Claude (Claude Code) based on the following prompt:
> "Please read FLT/Mathlib/Logic/Equiv/Basic.lean, and also the corresponding file in the Mathlib repository. Please prepare a PR to Mathlib containing this content, putting it at an appropriate point in the corresponding Mathlib file. Make sure the PR is label FLT, and write in the PR comment an explanation that the PR was prepared by Claude, including quoting the prompting."
The content is sourced from `/Users/kim/projects/lean/FLT/FLT/Mathlib/Logic/Equiv/Basic.lean` in the FLT project repository.
🤖 Generated with [Claude Code](https://claude.ai/code) |
FLT
t-logic
|
39/0 |
Mathlib/Logic/Equiv/Basic.lean |
1 |
5 |
['Ruben-VandeVelde', 'github-actions', 'kim-em'] |
nobody |
2-15935 2 days ago |
2-16413 2 days ago |
2-32624 2 days |
29693 |
kckennylau author:kckennylau |
feat(RingTheory): make Euclidean domain from DVR |
---
Zulip: https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Leading.20term.20of.20valuation/near/539666529
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
maintainer-merge
|
82/0 |
Mathlib/RingTheory/DiscreteValuationRing/Basic.lean |
1 |
6 |
['github-actions', 'kckennylau', 'pechersky'] |
nobody |
2-14634 2 days ago |
2-15286 2 days ago |
2-61191 2 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.
Co-authored-by: @Aristotle-Harmonic
---
[](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'] |
loefflerd assignee:loefflerd |
2-10523 2 days ago |
85-82103 2 months ago |
85-82146 85 days |
29715 |
ADedecker author:ADedecker |
feat: generalize `IsClosed.vadd_right_of_isCompact` to proper actions |
I realized a few weeks after adding them to Mathlib that the more conceptual approach for lemmas of the form "`s • t` is closed when one of `s` and `t` is closed and the other is compact" is that of proper maps and proper actions. This PR switches to this approach.
More precisely:
- I refactored the proof [IsClosed.smul_left_of_isCompact](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Algebra/Group/Pointwise.html#IsClosed.smul_left_of_isCompact) in terms of properness. The proof is essentially the same length, but conceptually simpler.
- More importantly, I generalize [IsClosed.vadd_right_of_isCompact](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Algebra/Group/AddTorsor.html#IsClosed.vadd_right_of_isCompact) from topological torsors to proper actions. Note that I do not assume separation, which creates some troubles as compact sets are not closed...
- To support the above, I introduce a bit more API on proper maps
- I also moved `isProperMap_iff_isClosedMap_filter` to `Topology/Maps/Proper/UniversallyClosed`, together with the ultrafilter analog.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-topology
|
196/93 |
Mathlib/Topology/Algebra/Group/AddTorsor.lean,Mathlib/Topology/Algebra/Group/Pointwise.lean,Mathlib/Topology/Algebra/ProperAction/Basic.lean,Mathlib/Topology/Algebra/ProperAction/ProperlyDiscontinuous.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/Maps/Proper/Basic.lean,Mathlib/Topology/Maps/Proper/UniversallyClosed.lean |
7 |
2 |
['ADedecker', 'github-actions'] |
nobody |
2-10268 2 days ago |
2-20693 2 days ago |
2-20735 2 days |
29154 |
ScottCarnahan author:ScottCarnahan |
feat (Algebra/Lie): Define low-degree cochains and differentials for coefficients with trivial action |
This PR defines 1-cochains and 2-cochains of a Lie algebra `L` with coefficients in a module `M` on which `L` acts trivially. This special case is useful for constructing central extensions of Lie algebras, while not needing the general machinery of Lie algebra cohomology.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
143/0 |
Mathlib.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/CochainTrivial.lean |
3 |
1 |
['github-actions'] |
mariainesdff assignee:mariainesdff |
2-1127 2 days ago |
18-45009 18 days ago |
18-45044 18 days |
29248 |
mans0954 author:mans0954 |
feature(Analysis/Convex/Basic): Convexity and the algebra map |
Let `R` and `A` be ordered rings, `A` an `R`-algebra and `R`, `A`, `M` a scalar tower. We provide sufficient conditions for an `R`-convex subset of `M` to be `A`-convex and for an `A`-convex subset of `M` to be `R`-convex.
These are used to show that, when `K` is `RCLike` and `ℝ` `K` `E` is a scalar tower, a set is `K`-convex if and only if it is `ℝ`-convex.
Used in #29258
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
49/0 |
Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/RCLike/Lemmas.lean |
2 |
4 |
['github-actions', 'mans0954'] |
j-loreaux assignee:j-loreaux |
2-659 2 days ago |
16-3025 16 days ago |
16-3014 16 days |
29700 |
kim-em author:kim-em |
feat: miscellaneous grind golfs |
---
[](https://gitpod.io/from-referrer/)
|
|
17/58 |
Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Combinatorics/Matroid/Map.lean,Mathlib/Data/Int/Init.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Data/PEquiv.lean,Mathlib/MeasureTheory/Constructions/Cylinders.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/Order/WellFoundedSet.lean |
11 |
1 |
['euprunin', 'github-actions'] |
nobody |
1-84952 1 day ago |
2-44193 2 days ago |
2-44173 2 days |
29478 |
llllvvuu author:llllvvuu |
feat(LinearAlgebra): roots of charpoly are the eigenvalues/spectrum |
Co-authored-by: @Aristotle-Harmonic
---
- [ ] depends on: #29428 for the lemma `LinearMap.charpoly_sub_smul`
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
134/27 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Eigenspace/Charpoly.lean,Mathlib/LinearAlgebra/Eigenspace/Matrix.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Eigs.lean |
6 |
14 |
['github-actions', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
nobody |
1-84737 1 day ago |
2-10499 2 days ago |
5-80327 5 days |
29604 |
mans0954 author:mans0954 |
refactor(Analysis/LocallyConvex/WithSeminorms): Relax some of the hypothesis |
Relax some of the hypothesis in `Analysis/LocallyConvex/WithSeminorms`
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
21/19 |
Mathlib/Analysis/LocallyConvex/WithSeminorms.lean |
1 |
3 |
['ADedecker', 'github-actions', 'mans0954'] |
nobody |
1-84058 1 day ago |
5-80491 5 days ago |
5-80528 5 days |
29725 |
kebekus author:kebekus |
feat: representation of log⁺ as a circle average |
If `a` is any complex number, show that the circle average of `log ‖· - a‖` over the unit circle equals the positive part of the logarithm, `log⁺ ‖a‖`.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. The formula established here is a key ingredient in Jensen's formula of complex analysis.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-analysis
|
159/18 |
Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean |
1 |
1 |
['github-actions'] |
nobody |
1-83249 1 day ago |
2-2918 2 days ago |
2-2959 2 days |
29723 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: add TensorProduct.piScalarRight_symm_algebraMap |
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-algebra
label:t-algebra$ |
5/0 |
Mathlib/LinearAlgebra/TensorProduct/Pi.lean |
1 |
3 |
['Ruben-VandeVelde', 'github-actions', 'themathqueen'] |
nobody |
1-83048 1 day ago |
2-8570 2 days ago |
2-8608 2 days |
28967 |
utkuokur author:utkuokur |
refactor(Combinatorics/SimpleGraph/Walk): simplify proof of "support_tail_of_not_nil" |
The proof of the lemma named "support_tail_of_not_nil" is shortened. Since "support_tail" is not needed anymore, it is removed.
@[deprecated (since := "2025-08-26")] sign is added for the removed "support_tail".
The library references to "support_tail" are replaced with "support_tail_of_not_nil".
To keep [@simp] on "cons_support_tail" and avoid the linter error, the [@simp] of "support_tail_of_not_nil" (previously on "support_tail") is removed. There might be a better way that I am missing, to deal with the linter error.
---
Additionally, a merge conflict with `master` was resolved by keeping the
generalized `support_tail_of_not_nil` and reintroducing `support_tail` as
a deprecated alias for compatibility.
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
7/10 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean |
2 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
awainverse assignee:awainverse |
1-73462 1 day ago |
9-76219 9 days ago |
23-5735 23 days |
28026 |
kim-em author:kim-em |
feat: grind annotations for `Disjoint` |
---
[](https://gitpod.io/from-referrer/)
|
|
92/48 |
Archive/Imo/Imo2001Q3.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/BoundedOrder/Lattice.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Lattice.lean |
7 |
6 |
['github-actions', 'grunweg', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
1-66054 1 day ago |
1-66076 1 day ago |
42-57968 42 days |
23360 |
kim-em author:kim-em |
chore: review of `erw` in `Algebra/Homology/DerivedCategory` |
|
t-algebra label:t-algebra$ |
23/13 |
Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExtClass.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/CategoryTheory/Shift/SingleFunctors.lean |
5 |
5 |
['Ruben-VandeVelde', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
1-63563 1 day ago |
1-63563 1 day ago |
84-32965 84 days |
29719 |
kim-em author:kim-em |
feat(Topology/Algebra/Group/Units): add topological properties of units |
## Summary
Add lemmas about units in topological monoids:
- `Submonoid.units_isOpen`: units of open submonoids are open in the units topology
- `ContinuousMulEquiv.piUnits`: homeomorphism between units of a product and product of units
This content was prepared by Claude from the FLT project.
Source file: `/Users/kim/projects/lean/flt/FLT/Mathlib/Topology/Algebra/Group/Units.lean`
GitHub source: https://github.com/ImperialCollegeLondon/FLT/blob/main/FLT/Mathlib/Topology/Algebra/Group/Units.lean
🤖 Generated with [Claude Code](https://claude.ai/code) |
FLT
t-topology
|
52/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Group/Units.lean |
2 |
5 |
['Ruben-VandeVelde', 'github-actions', 'kim-em'] |
nobody |
1-62802 1 day ago |
2-14494 2 days ago |
2-14536 2 days |
26735 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): The codimension of a point of a scheme is equal to the krull dimension of the stalk |
In this PR we show that the codimension of a point in a scheme is equal to the krull dimension of the local ring at that point, as in stacks 02IZ.
---
The proof of the main result `stalk_dim_eq_coheight` is currently a bit long for my (and I suspect the broader community's) tastes. That said, I'm not quite sure the best way to break it into pieces, any comments would be very much appreciated!
- [ ] depends on: #26204 [For the notion of codimension, here we are using the coheight in the specialization order. ]
- [ ] depends on: #26225
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
204/1 |
Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Topology/KrullDimension.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
erdOne assignee:erdOne |
1-61089 1 day ago |
9-37359 9 days ago |
9-38132 9 days |
28097 |
themathqueen author:themathqueen |
feat(LinearAlgebra/Matrix/PosDef): kronecker of positive (semi-)definite matrices is positive (semi-)definite |
This first shows that `U * x * star U` is positive (semi-)definite if and only if `x` is, for an invertible matrix `U` in a not necessarily commutative star-ring. Then using the spectral theorem, it follows that the kronecker of positive (semi-)definite matrices is positive (semi-)definite.
---
- [x] depends on: #28093
- [x] depends on: #28476
- [x] depends on: #28544
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
67/6 |
Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/Kronecker.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean |
4 |
6 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
joneugster assignee:joneugster |
1-61088 1 day ago |
9-13247 9 days ago |
16-81002 16 days |
29132 |
YaelDillies author:YaelDillies |
feat(AdjoinRoot): bundle operations as `AlgHom`s |
In particular, generalise and rename `liftHom` to use a general `eval₂` instead of `aeval`.
From Toric
Co-authored-by: Andrew Yang the.erd.one@gmail.com
Co-authored-by: Michał Mrugała kiolterino@gmail.com
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
|
164/103 |
Mathlib/Algebra/Algebra/Hom.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/RingTheory/Adjoin/Field.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean,Mathlib/RingTheory/Localization/Away/AdjoinRoot.lean |
9 |
3 |
['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
1-61087 1 day ago |
16-11999 16 days ago |
18-22460 18 days |
29474 |
sgouezel author:sgouezel |
feat: explicit zsmul field in ring constructor to solve performance issue |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
2/0 |
Mathlib/Algebra/Ring/InjSurj.lean |
1 |
4 |
['github-actions', 'leanprover-bot', 'sgouezel'] |
ocfnash assignee:ocfnash |
1-61086 1 day ago |
9-8013 9 days ago |
9-8047 9 days |
29477 |
izanbf1803 author:izanbf1803 |
feat(Algebra/Ring/Invertible): add `eq_of_invOf_add_eq_invOf_add_invOf` |
Formalize statement and prove eq_of_invOf_add_eq_invOf_add_invOf
⅟(a + b) = ⅟a + ⅟b → a * ⅟b * a = b * ⅟a * b (for a, b in a ring; a, b invertible)
This will be useful to formalize a proof in https://github.com/eric-wieser/lean-matrix-cookbook.
|
new-contributor
t-algebra
label:t-algebra$ |
28/0 |
Mathlib/Algebra/Ring/Invertible.lean |
1 |
8 |
['eric-wieser', 'github-actions', 'izanbf1803'] |
ocfnash assignee:ocfnash |
1-61085 1 day ago |
8-84750 8 days ago |
8-84794 8 days |
29648 |
loefflerd author:loefflerd |
feat(Topology/Constructions): `piMap` is inducing / embedding / etc |
Show that an arbitrary product of topologically inducing maps is inducing, and similarly for embeddings, etc. As an application, show that the image of SL2Z in GL2R is discrete.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-topology
|
182/20 |
Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/NumberTheory/ModularForms/ArithmeticSubgroups.lean,Mathlib/Order/Filter/Pi.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Instances/Matrix.lean |
7 |
22 |
['ADedecker', 'github-actions', 'kim-em', 'loefflerd'] |
ADedecker assignee:ADedecker |
1-44499 1 day ago |
3-79738 3 days ago |
3-79778 3 days |
29295 |
YaelDillies author:YaelDillies |
chore: rename `mul_lt_mul_left`/`mul_lt_mul_right` to `mul_lt_mul_iff_right₀`/`mul_lt_mul_iff_left₀` |
Follow up to #28645
---
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
label:t-algebra$ |
121/122 |
Archive/Imo/Imo2011Q3.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Analysis/BoxIntegral/UnitPartition.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Lemma.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Choose/Central.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Ordmap/Invariants.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/ZMod/ValMinAbs.lean,Mathlib/FieldTheory/ChevalleyWarning.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/SeparableMeasure.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Topology/Algebra/Monoid.lean,Mathlib/Topology/MetricSpace/Contracting.lean,Mathlib/Topology/MetricSpace/Dilation.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean |
44 |
7 |
['JovanGerb', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-43086 1 day ago |
1-43105 1 day ago |
13-85417 13 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.
---
- [x] depends on: #27221
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-analysis
|
466/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Affine/AsymptoticCone.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Topology/Algebra/AsymptoticCone.lean |
4 |
45 |
['AntoineChambert-Loir', 'YaelDillies', 'gasparattila', 'github-actions', 'mathlib4-dependent-issues-bot'] |
YaelDillies assignee:YaelDillies |
1-42626 1 day ago |
44-4519 1 month ago |
58-22055 58 days |
28295 |
artie2000 author:artie2000 |
feat(Algebra/Order/Ring/Ordering): basic results about ring (pre)orderings |
* Basic automation for membership of ring orderings
* Alternative constructors for ring preorderings and ring orderings
* Basic results about ring preorderings and their supports, including the special case over a field
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #27282 |
maintainer-merge
t-algebra
label:t-algebra$ |
203/0 |
Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Order/Ring/Ordering/Basic.lean |
3 |
57 |
['Rob23oba', 'YaelDillies', 'artie2000', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
nobody |
1-41017 1 day ago |
1-41017 1 day ago |
7-4155 7 days |
29707 |
loefflerd author:loefflerd |
feat(GroupTheory/Commensurable): additivize |
Move `Commensurable` into the `Subgroup` namespace, and add `to_additive` flags (hence auto-creating a parallel def `AddSubgroup.commensurable`)
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
43/21 |
Mathlib/GroupTheory/Commensurable.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean |
3 |
4 |
['Ruben-VandeVelde', 'github-actions', 'loefflerd'] |
nobody |
1-38404 1 day ago |
1-39348 1 day ago |
1-76617 1 day |
29579 |
vlad902 author:vlad902 |
feat(SimpleGraph): characterize graphs with chromatic number 1 or 2 |
- [ ] depends on: #29578 |
t-combinatorics |
42/7 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean |
3 |
7 |
['github-actions', 'jt496', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] |
nobody |
1-36922 1 day ago |
1-41824 1 day ago |
1-47797 1 day |
29301 |
harahu author:harahu |
doc: hyphenate attributive compound adjectives ending in "preserving" |
Compound adjectives that are attributive (coming before their noun) should almost always be hyphenated in English.
This PR covers such adjectives that are ending in "preserving".
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
73/73 |
Mathlib/Algebra/Order/CompleteField.lean,Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/Monoidal/OfHasFiniteProducts.lean,Mathlib/CategoryTheory/Preadditive/LeftExact.lean,Mathlib/CategoryTheory/Sites/Coherent/ExtensiveSheaves.lean,Mathlib/CategoryTheory/Sites/PreservesLocallyBijective.lean,Mathlib/CategoryTheory/Sites/Sheafification.lean,Mathlib/Condensed/Discrete/Colimit.lean,Mathlib/Condensed/Discrete/LocallyConstant.lean,Mathlib/Dynamics/BirkhoffSum/QuasiMeasurePreserving.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/GroupTheory/SpecificGroups/KleinFour.lean,Mathlib/LinearAlgebra/Reflection.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousCompMeasurePreserving.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Continuous.lean,Mathlib/MeasureTheory/Group/AEStabilizer.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Group/FundamentalDomain.lean,Mathlib/MeasureTheory/Measure/ContinuousPreimage.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/MeasureTheory/Measure/QuasiMeasurePreserving.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/Probability/Density.lean,Mathlib/RingTheory/FractionalIdeal/Norm.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/OrderOfVanishing.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean,Mathlib/Topology/Sheaves/SheafOfFunctions.lean |
35 |
6 |
['github-actions', 'harahu', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
1-34931 1 day ago |
1-34931 1 day ago |
15-25085 15 days |
28242 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Bicategory): EqToHom for bicategories |
We generalize the `eqToHom` construction from `Category` to `CategoryStruct`, allowing its usage in bicategorical contexts.
We introduce a file `CategoryTheory/Bicategory/EqToHom` that records some of the properties of `eqToHom`s 1-morphisms and 2-morphisms, such as the transitivity up to isomorphism of `eqToHom` 1-morphisms, and congruence lemmas for unitors, associators and whiskering with respects to `eqToHom` 2-morphisms.
This generalization and these congruence lemmas will be used to define icons between lax functors, and work with categories of strictly unitary lax/pseudo-functors (e.g for pseudocomposable arrows and lax-composable arrows in bicategories, which are part of the definitions of nerve constructions in bicategories).
---
A follow-up PR will move some existing `eqToHom`-related lemmas from `CategoryTheory/Bicategory/Strict` to this new file.
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
141/4 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/EqToHom.lean,Mathlib/CategoryTheory/EqToHom.lean |
3 |
3 |
['erdOne', 'github-actions', 'robin-carlier'] |
erdOne assignee:erdOne |
1-29093 1 day ago |
1-29093 1 day ago |
37-12022 37 days |
29664 |
Komyyy author:Komyyy |
fix: unexpander for `|a|ₘ` doesn't work |
This occurs because it's mistakenly written `@[app_unexpander abs]` instead of `@[app_unexpander mabs]`, so the fix is straightforward.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-meta
bug
label:t-algebra$ |
1/1 |
Mathlib/Algebra/Order/Group/Unbundled/Abs.lean |
1 |
2 |
['JovanGerb', 'github-actions'] |
nobody |
1-28768 1 day ago |
3-33790 3 days ago |
3-33880 3 days |
29113 |
scholzhannah author:scholzhannah |
chore: rename PartialHomeomorph to OpenPartialHomeomorph |
This PR renames `PartialHomeomorph` to `OpenPartialHomeomorph` as discussed in [#mathlib4 > Generalizing `PartialHomeomorph`?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Generalizing.20.60PartialHomeomorph.60.3F). This is the first step towards generalizing `PartialHomeomorph` to allow arbitrary sources and targets.
---
This is the first time that I am doing this type of renaming. I tried to do everything well but I am not sure that I did it how it is supposed to be done.
[](https://gitpod.io/from-referrer/)
|
file-removed |
1257/1021 |
Mathlib.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ApproximatesLinearOn.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ContDiff.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/FDeriv.lean,Mathlib/Analysis/Complex/Tietze.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Topology.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Analysis/Normed/Module/Ball/Homeomorph.lean,Mathlib/Analysis/SpecialFunctions/Arsinh.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogDeriv.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SpecialFunctions/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean,Mathlib/Deprecated/AnalyticManifold.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/ConformalGroupoid.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Geometry/Manifold/MFDeriv/Atlas.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/Tangent.lean,Mathlib/Geometry/Manifold/MFDeriv/UniqueDifferential.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/FiberwiseLinear.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/UniformConvergence.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/PolarCoord.lean,Mathlib/Topology/Covering.lean,Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/FiberBundle/Constructions.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Instances/AddCircle/Defs.lean,Mathlib/Topology/IsLocalHomeomorph.lean,Mathlib/Topology/OpenPartialHomeomorph.lean,Mathlib/Topology/VectorBundle/Basic.lean,MathlibTest/MfldSetTac.lean |
64 |
13 |
['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
1-27705 1 day ago |
1-27729 1 day ago |
14-63461 14 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
---
- [x] depends on: #22322
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
237/0 |
Mathlib.lean,Mathlib/RingTheory/DividedPowers/Padic.lean |
2 |
5 |
['github-actions', 'loefflerd', 'mariainesdff', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
mattrobball assignee:mattrobball |
1-23367 1 day ago |
2-14588 2 days ago |
59-47602 59 days |
28119 |
JasperMS author:JasperMS |
feat(Data/Set/Pairwise): prove pairwise results for Chains, move `Set.pairwise_iUnion₂` |
Initiate a new file `Data/Set/Pairwise/Chain.lean` which makes some `Pairwise` results available to the `IsChain` predicate.
In the process, move `Set.pairwise_iUnion₂` to group it with similar results. Perform some variable harmonization.
Part of Carleson, original result by Edward van de Meent.
Moves:
- Set.pairwise_iUnion₂: from Data.Set.Lattice to Data.Set.Pairwise.Lattice
---
This PR was discussed and advice was given in [#mathlib4 > Novice questions on style and structure](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Novice.20questions.20on.20style.20and.20structure/with/533462814). Many thanks to those who helped me out!
Mathlib PRs are still new to me, so please point out where I can improve!
[](https://gitpod.io/from-referrer/)
|
carleson
t-data
new-contributor
|
56/12 |
Mathlib.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Chain.lean,Mathlib/Data/Set/Pairwise/Lattice.lean |
4 |
11 |
['JasperMS', 'Ruben-VandeVelde', 'edegeltje', 'github-actions'] |
nobody |
1-22120 1 day ago |
41-13876 1 month ago |
41-14315 41 days |
29437 |
NotWearingPants author:NotWearingPants |
feat(Data/Seq): add Seq.subsequence and prove basic theorems about it |
I added `Seq.subsequence` to compose a sequence with a monotone function, creating a subsequence. Aliased to `Seq.comp` since it's a composition.
I also added `Nat.le_induction_step_iff` which is needed to prove a subsequence is a sequence. This proves the comment at the top of `Defs.lean` that says "if `f n = none`, then `f m = none` for all `m ≥ n`" while `IsSeq` only talks about `n+1`.
For completion I added the same statement for `Int`.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-data
new-contributor
|
114/0 |
Mathlib/Data/Int/Init.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/Seq/Defs.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-21870 1 day ago |
1-21891 1 day ago |
10-9384 10 days |
26668 |
mariainesdff author:mariainesdff |
feat(Analysis/Normed/Unbundled/SpectralNorm): add API |
Co-authored-by: @faenuccio
---
- [ ] depends on: #26667
[](https://gitpod.io/from-referrer/)
|
t-analysis
t-number-theory
|
127/16 |
Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
1-20513 1 day ago |
1-23019 1 day ago |
1-24620 1 day |
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-ring-theory |
224/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 |
9 |
['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
eric-wieser assignee:eric-wieser |
1-20495 1 day ago |
1-27915 1 day ago |
176-1008 176 days |
27969 |
smmercuri author:smmercuri |
feat: collections of non-trivial and pairwise inequivalent absolute values contain values that diverge around 1 |
If $v_1, ..., v_k$ is a a finite collection of non-trivial and pairwise inequivalent absolute values in a field, then for each $v_i$ there is a point $a$ for which $1 < v_i(a)$ while $v_j(a) < 1$ for all $j \neq i$. This generalises the corresponding result on pairs of absolute values PR'd in #27964
This PR continues the work from #22142.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22142
---
- [x] depends on: #27964 |
FLT
t-algebra
t-number-theory
label:t-algebra$ |
151/0 |
Mathlib/Analysis/AbsoluteValue/Equivalence.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Data/Fintype/Sum.lean |
3 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
1-16095 1 day ago |
1-19998 1 day ago |
1-20282 1 day |
24789 |
Ruben-VandeVelde author:Ruben-VandeVelde |
chore: move Algebra.Group.Hom.End to Algebra.Ring |
This moves us towards the goal of not depending on `Ring` under `Algebra.Group`; this is mentioned in https://github.com/leanprover-community/mathlib4/issues/11757 and on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Call.20for.20help.3A.20technical.2F.20organisational.20debt/near/512348574).
---
[](https://gitpod.io/from-referrer/)
|
file-removed
t-algebra
label:t-algebra$ |
4/10 |
Mathlib.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/Ring/Hom/End.lean |
5 |
8 |
['Ruben-VandeVelde', 'YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
1-15526 1 day ago |
1-33563 1 day ago |
1-35159 1 day |
27288 |
themathqueen author:themathqueen |
chore(LinearAlgebra/TensorProduct/Basic): semi-linearize `map` and `lift` |
Semi-linearizing `TensorProduct.map`. This is important as we can then define `star` on tensors as: `star x := map (starLinearEquiv R) (starLinearEquiv R) x`. We can then also define the inner product on tensors.
Co-authored-by: Anatole Dedecker
---
Part of #27353.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
45/29 |
Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Coalgebra/Hom.lean |
3 |
11 |
['ADedecker', 'eric-wieser', 'github-actions', 'themathqueen'] |
ocfnash assignee:ocfnash |
1-15130 1 day ago |
44-74043 1 month ago |
56-10971 56 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$ |
205/20 |
Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
3 |
19 |
['ADedecker', 'adamtopaz', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
kbuzzard assignee:kbuzzard |
1-12990 1 day ago |
36-7573 1 month ago |
72-73293 72 days |
29642 |
pechersky author:pechersky |
chore(RingTheory/AdicValuation,LaurentSeries): switch to `WithZero.exp` instead of coercions of `Multiplicative.ofAdd` |
as requested at
https://github.com/leanprover-community/mathlib4/pull/27339#issuecomment-3285102305
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
108/142 |
Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean,Mathlib/RingTheory/LaurentSeries.lean |
5 |
1 |
['github-actions'] |
nobody |
1-12832 1 day ago |
1-57983 1 day ago |
4-12071 4 days |
29617 |
gasparattila author:gasparattila |
chore: generalize `ContinuousAffineMap.contLinear` to `IsTopologicalAddTorsor` |
---
- [x] depends on: #29616
[](https://gitpod.io/from-referrer/)
|
|
171/153 |
Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/Topology/Algebra/ContinuousAffineMap.lean |
4 |
5 |
['ADedecker', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
1-12395 1 day ago |
1-84934 1 day ago |
1-85052 1 day |
29471 |
harahu author:harahu |
doc: use en dash instead of hyphen in Akra-Bazzi |
When joining two names, like is done here, the en dash is usually preferred over a regular hyphen.
This also aligns the naming in mathlib with that of [Wikipedia](https://en.wikipedia.org/wiki/Akra%E2%80%93Bazzi_method).
Some concern was raised [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.23.2029464.20corrections.20to.20docs.20by.20way.20of.20LLM/near/538466767) regarding what this implies for code searches using `grep` and similar tools. Consequently, tags have been added to make sure searches using the regular hyphen will still hit the relevant files.
---
[](https://gitpod.io/from-referrer/)
|
t-computability |
29/22 |
Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean |
3 |
5 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-10606 1 day ago |
1-10630 1 day ago |
8-70308 8 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-ring-theory |
256/6 |
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/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/LinearDisjoint.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean |
10 |
17 |
['chrisflav', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
1-10238 1 day ago |
4-79175 4 days ago |
100-63412 100 days |
29164 |
vlad902 author:vlad902 |
feat(SimpleGraph): Hall's Marriage Theorem for bipartite graphs |
Derive the graph theoretic proof of Hall's marriage theorem from the combinatorial version.
Note that I specifically implement this for the more general case of infinite graphs that are locally finite (e.g. every vertex has only finite neighbors.) As a result, the theorem depends on some category theoretic infrastructure required for the infinite combinatorial formulation of Hall's Marriage Theorem and hence I've placed the theorems into their own file to avoid requiring it in `Matching.lean`
- [ ] depends on: #29162 |
t-combinatorics |
128/7 |
Mathlib.lean,Mathlib/Combinatorics/Hall/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,docs/1000.yaml |
5 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
1-9562 1 day ago |
4-50087 4 days ago |
4-53315 4 days |
28699 |
chrisflav author:chrisflav |
feat(RingTheory/Cotangent): cotangent of composition with localization away from an element |
Let `R → S → T` be algebras such that `T` is the localization of `S` away from one
element, where `S` is generated over `R` by `P : R[X] → S` with kernel `I` and
`Q : S[Y] → T` is the canonical `S`-presentation of `T` with kernel `K`.
Denote by `J` the kernel of the composition `R[X,Y] → T`.
We deduce `J/J² ≃ₗ[T] T ⊗[S] (I/I²) × K/K²` from the Jacobi Zariski sequence.
From Pi1.
---
- [x] depends on: #28697
The import increase is expected: This file was PRed in two steps and only the second one depends on more imports.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
large-import
|
157/4 |
Mathlib/RingTheory/Extension/Cotangent/LocalizationAway.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Smooth/StandardSmoothCotangent.lean |
4 |
4 |
['chrisflav', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] |
erdOne assignee:erdOne |
1-9410 1 day ago |
28-16492 28 days ago |
28-17905 28 days |
29596 |
alreadydone author:alreadydone |
chore(Algebra): extract `Submonoid.IsLocalizationMap` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
282/119 |
Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Lemmas.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Localization/Defs.lean |
7 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-8584 1 day ago |
1-14633 1 day ago |
5-27558 5 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/)
|
t-algebra
t-number-theory
label:t-algebra$ |
73/77 |
Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/LaurentSeries.lean |
2 |
8 |
['Louddy', 'faenuccio', 'github-actions', 'mathlib4-merge-conflict-bot', 'pechersky'] |
Vierkantor assignee:Vierkantor |
1-8138 1 day ago |
1-12941 1 day ago |
52-29537 52 days |
29709 |
llllvvuu author:llllvvuu |
refactor(LinearAlgebra/Matrix): move lemmas around to reduce imports |
This makes results such as `Matrix.det_one_sub_mul_comm` and `Matrix.eval_det` more accessible.
From https://github.com/leanprover-community/mathlib4/pull/29709#issuecomment-3297172309,
> | File | Base Count | Head Count | Change |
> | --- | --- | --- | --- |
> | Mathlib.LinearAlgebra.Matrix.SchurComplement | 2231 | 1438 | -793 (-35.54%) |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
112/124 |
Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/RingTheory/MatrixPolynomialAlgebra.lean |
5 |
6 |
['eric-wieser', 'github-actions', 'themathqueen'] |
nobody |
1-7069 1 day ago |
2-29012 2 days ago |
2-29770 2 days |
29680 |
jt496 author:jt496 |
chore(Combinatorics/SimpleGraph): split long file `Combinatorics.SimpleGraph.Walk` |
Split the long file `Combinatorics.SimpleGraph.Walk` into two files and deprecate:
1. `Combinatorics.SimpleGraph.Walks` contains all material not dependent on `getVert`
2. `Combinatorics.SimpleGraph.Connectivity.GetVert` contains all material using `getVert`
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
1536/1490 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/GetVert.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Combinatorics/SimpleGraph/Walks.lean |
6 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-4811 1 day ago |
1-37130 1 day ago |
2-77041 2 days |
28489 |
joelriou author:joelriou |
feat(CategoryTheory): weaken assumptions for the stability of the left lifting property under transfinite compositions |
This PR introduces two predicates `HasLiftingPropertyFixedBot/Top` which assert the existence of a lifting in squares when the left/right/top (resp. left/right/bottom) morphisms are fixed. (This weakens the `HasLiftingProperty` class which assumes there is a lifting when we only fix the left and right morphisms.)
The `HasLiftingPropertyFixedTop` variant shall be used in the study of the homotopy theory of Kan complexes. The `HasLiftingPropertyFixedBot` variant will be used in the formalization of the model category structure on simplicial sets: this is the reason why this PR also weakens the assumptions in the proof that the left lifting property with respect to certain morphisms is stable under transfinite composition.
---
In https://github.com/joelriou/topcat-model-category/blob/c3fe37ef7a2f6bfa48c4b989aec12bbab25784b1/TopCatModelCategory/TopCat/SerreFibrationLocal.lean#L314 the content of this PR is used in an essential way in order to show that the property that a continuous map `E ⟶ B` is a Serre fibration is local on the base (this still depends on a `sorry`).
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
28/2 |
Mathlib/CategoryTheory/LiftingProperties/Basic.lean,Mathlib/CategoryTheory/SmallObject/TransfiniteCompositionLifting.lean |
2 |
1 |
['github-actions'] |
b-mehta assignee:b-mehta |
1-3229 1 day ago |
34-2812 1 month ago |
34-2792 34 days |
29663 |
euprunin author:euprunin |
chore(Combinatorics/Matroid/Minor): golf entire `Matroidᵣ.coe_inj` |
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-combinatorics
|
1/2 |
Mathlib/Combinatorics/Matroid/Minor/Restrict.lean |
1 |
2 |
['github-actions', 'grunweg'] |
nobody |
1-3204 1 day ago |
1-3204 1 day ago |
3-33990 3 days |
26129 |
LessnessRandomness author:LessnessRandomness |
feat(Geometry/Euclidean/Angle/Unoriented): triangle inequality for angles |
This PR continues the work from #24206.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24206 |
new-contributor
t-euclidean-geometry
|
203/16 |
Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/Orthogonality.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/TriangleInequality.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean |
8 |
76 |
['JovanGerb', 'LessnessRandomness', 'Timeroot', 'github-actions', 'jsm28', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
jsm28 assignee:jsm28 |
1-2707 1 day ago |
13-65824 13 days ago |
89-7219 89 days |
29678 |
vihdzp author:vihdzp |
feat: stronger version of `ArchimedeanClass.mk_le_mk` |
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-order
t-algebra
easy
label:t-algebra$ |
7/0 |
Mathlib/Algebra/Order/Archimedean/Class.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions', 'wwylele'] |
nobody |
1-1803 1 day ago |
1-1803 1 day ago |
3-6915 3 days |
28820 |
yury-harmonic author:yury-harmonic |
feat(PeriodicPts, OrderOfElement): add `nontriviality` lemmas |
Also golf 1 proof.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
25/19 |
Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/Logic/Function/Defs.lean |
3 |
4 |
['Ruben-VandeVelde', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-1230 1 day ago |
1-1230 1 day ago |
13-60928 13 days |
29747 |
JovanGerb author:JovanGerb |
feat(Order/Filter/Basic): `gcongr` for `EventuallyEq` |
This was originally requested in [#mathlib4 > ✔ `rw` with ae relations](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.E2.9C.94.20.60rw.60.20with.20ae.20relations/with/529301301)
---
[](https://gitpod.io/from-referrer/)
|
|
55/83 |
Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Lebesgue.lean,Mathlib/Order/Filter/Basic.lean |
6 |
1 |
['github-actions'] |
grunweg assignee:grunweg |
1-1151 1 day ago |
1-18272 1 day ago |
1-18252 1 day |
29532 |
Aaron1011 author:Aaron1011 |
feat: add group/field versions of Filter.map_*_atTop_eq_nat |
Add Filter.map_add_atTop_eq, Filter.map_sub_atTop_eq, and Filter.map_div_atTop_eq, which correspond to
Filter.map_add_atTop_eq_nat, Filter.map_sub_atTop_eq_nat, and Filter.map_div_atTop_eq_nat respectively.
These theorems apply to ordered groups/fields
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-order
|
14/0 |
Mathlib/Order/Filter/AtTopBot/Archimedean.lean,Mathlib/Order/Filter/AtTopBot/Field.lean |
2 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-85389 23 hours ago |
0-85390 23 hours ago |
7-58484 7 days |
29324 |
tb65536 author:tb65536 |
refactor(Analysis/Calculus/IteratedDeriv/Defs): tweak statement of `iteratedDerivWithin_one` |
This PR removes the `x` from `iteratedDerivWithin_one` to make it match `iteratedDerivWithin_zero`.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
3/2 |
Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean |
1 |
3 |
['Ruben-VandeVelde', 'github-actions', 'grunweg'] |
grunweg assignee:grunweg |
0-85260 23 hours ago |
14-81202 14 days ago |
14-81183 14 days |
29597 |
alreadydone author:alreadydone |
feat(Algebra): preliminaries for ring structure on `AddLocalization` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
77/5 |
Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
5 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-79553 22 hours ago |
6-6853 6 days ago |
6-6834 6 days |
29735 |
vihdzp author:vihdzp |
feat: order instances on quotients |
We define a `Preorder (Quotient s)` instance in the natural way, and prove that it can be strengthened to a `LinearOrder` when all equivalence classes are `OrdConnected`.
---
See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Quotient.20of.20linear.20order.20is.20linear.20order/near/539915988) for some long-winded discussion about this.
[](https://gitpod.io/from-referrer/)
|
t-order |
125/0 |
Mathlib.lean,Mathlib/Order/Quotient.lean |
2 |
2 |
['github-actions', 'plp127'] |
nobody |
0-79338 22 hours ago |
1-45321 1 day ago |
1-45359 1 day |
29756 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: Finsupp.comapDomain_surjective |
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-data
|
9/0 |
Mathlib/Data/Finsupp/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-78998 21 hours ago |
0-79036 21 hours ago |
0-79075 21 hours |
29476 |
llllvvuu author:llllvvuu |
feat(LinearAlgebra/Matrix): `charpoly` splits into `IsHermitian.eigenvalues` |
Co-authored-by: @Aristotle-Harmonic
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
52/12 |
Mathlib/LinearAlgebra/Matrix/HermitianFunctionalCalculus.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean |
2 |
8 |
['github-actions', 'llllvvuu', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
0-74635 20 hours ago |
7-59348 7 days ago |
8-80749 8 days |
25794 |
dagurtomas author:dagurtomas |
feat(CategoryTheory): localization preserves braided structure |
---
- [x] depends on: #29568
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24485.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24485* |
file-removed
t-category-theory
|
217/3 |
Mathlib.lean,Mathlib/CategoryTheory/Localization/Monoidal/Basic.lean,Mathlib/CategoryTheory/Localization/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Sites/Monoidal.lean |
5 |
13 |
['dagurtomas', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
mattrobball assignee:mattrobball |
0-73299 20 hours ago |
0-73345 20 hours ago |
46-51253 46 days |
29734 |
bwangpj author:bwangpj |
feat(Probability/Kernel): \phi-irreducibility of kernels |
Define powers of kernels, the Chapman-Kolmogorov equations, as well as \phi-irreducibility of kernels, following Robert-Casella, "Monte Carlo Statistical Methods", Definition 6.13.
Co-authored-by: Matteo Cipollina @or4nge19
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
104/8 |
Mathlib.lean,Mathlib/Probability/Kernel/Composition/Comp.lean,Mathlib/Probability/Kernel/Composition/CompMap.lean,Mathlib/Probability/Kernel/Irreducible.lean,docs/references.bib |
5 |
1 |
['github-actions'] |
nobody |
0-73008 20 hours ago |
1-59446 1 day ago |
1-59489 1 day |
29759 |
NotWearingPants author:NotWearingPants |
feat(Analysis/SpecificLimits/Fibonacci): prove that the ratio of consecutive Fibonacci numbers tends to the golden ratio |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
41/0 |
Mathlib.lean,Mathlib/Analysis/SpecificLimits/Fibonacci.lean |
2 |
1 |
['github-actions'] |
nobody |
0-69874 19 hours ago |
0-70500 19 hours ago |
0-70541 19 hours |
29760 |
wwylele author:wwylele |
feat(RingTheory): (Mv)PowerSeries.(weighted)Order of neg |
Also renamed the wrong `PowerSeries.order_add_of_order_eq` while I am at it.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
21/4 |
Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/PowerSeries/Order.lean |
2 |
1 |
['github-actions'] |
nobody |
0-67997 18 hours ago |
0-68013 18 hours ago |
0-68053 18 hours |
29610 |
llllvvuu author:llllvvuu |
feat(LinearAlgebra): define LinearMap.Eigenbasis |
Some theorems are left TODO for follow-up work.
Co-authored-by: @eric-wieser ([#Is there code for X? > diagonalizable linear maps @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/diagonalizable.20linear.20maps/near/539163222)), @Aristotle-Harmonic
---
- [ ] depends on: #29420 (golfs some `[Nontrivial R]` assumptions)
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
418/5 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/LinearAlgebra/Eigenbasis.lean,Mathlib/LinearAlgebra/FreeModule/PID.lean |
4 |
29 |
['github-actions', 'kckennylau', 'llllvvuu', 'mathlib4-dependent-issues-bot'] |
nobody |
0-67069 18 hours ago |
0-67070 18 hours ago |
2-80354 2 days |
29692 |
kim-em author:kim-em |
feat: golfing Imo2008Q4 |
No strong opinions on this one, just interesting to see what `grind` can already handle. |
IMO
maintainer-merge
|
13/23 |
Archive/Imo/Imo2008Q4.lean |
1 |
11 |
['eric-wieser', 'github-actions', 'grunweg', 'kim-em', 'themathqueen'] |
nobody |
0-61666 17 hours ago |
0-61666 17 hours ago |
2-20835 2 days |
28395 |
joelriou author:joelriou |
feat(AlgebraicTopology/SimplicialSet): nondegenerate simplices in the standard simplex |
In this PR, we show that `d`-dimensional nondegenerate simplices in `Δ[n]` identify to `Fin (d + 1) ↪o Fin (n + 1)`.
(This PR also contains some general additional API for (non)degenerate simplices. For this reason, three definitions related to subcomplexes generated by a simplex had to be moved from `StdSimplex.lean` to `Subcomplex.lean`.)
---
- [x] depends on: #28337
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
248/20 |
Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/AlgebraicTopology/SimplicialSet/Simplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean,Mathlib/Order/Hom/Basic.lean |
5 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
robin-carlier assignee:robin-carlier |
0-61091 16 hours ago |
7-86026 7 days ago |
7-86006 7 days |
28891 |
joelriou author:joelriou |
feat(Analysis/Convex): functoriality of the standard simplex |
When `f : X → Y` is a map between finite types, and `S` is an ordered semiring, we define the maps `stdSimplex.map f : stdSimplex S X → stdSimplex S Y`. In the case `S := ℝ`, we show that these maps are continuous. In a future PR #28893, the definition of the topological simplex in `AlgebraicTopology` shall be refactored.
---
- [x] depends on: #28869
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry |
192/1 |
Mathlib.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/Topology/Algebra/Monoid/FunOnFinite.lean |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
YaelDillies assignee:YaelDillies |
0-61090 16 hours ago |
19-6376 19 days ago |
19-7565 19 days |
29257 |
harahu author:harahu |
doc: attach "pre", "pseudo", "semi" and "sub" as a prefixes where they are now free-standing |
These are all merely prefixes and should be attached, either in closed form or by hyphen, to some other construct.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
50/50 |
Mathlib/Algebra/Star/NonUnitalSubsemiring.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Group/BallSphere.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Lean/Meta/KAbstractPositions.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Initialize.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Gluing.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/MetricSpace/ThickenedIndicator.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/Uniformity.lean,scripts/autolabel.lean |
21 |
1 |
['euprunin', 'github-actions'] |
JovanGerb assignee:JovanGerb |
0-61089 16 hours ago |
15-83437 15 days ago |
15-83479 15 days |
29497 |
xyzw12345 author:xyzw12345 |
feat(Counterexamples): A ring such that dim A = 1 but dim A[x] = 3 |
In this PR, we constructed an example of a commutative ring `A` that satisfies `ringKrullDim A = 1` but `ringKrullDim A[X] = 3`, following the construction of
https://math.stackexchange.com/questions/1267419/examples-of-rings-whose-polynomial-rings-have-large-dimension
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
177/0 |
Counterexamples.lean,Counterexamples/DimensionPolynomial.lean,Mathlib.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/KrullDimension/LocalRing.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Basic.lean |
7 |
13 |
['github-actions', 'kbuzzard', 'kckennylau', 'kim-em', 'xyzw12345'] |
joelriou assignee:joelriou |
0-61087 16 hours ago |
8-32282 8 days ago |
8-32309 8 days |
29500 |
vihdzp author:vihdzp |
feat: `WellFoundedLT (LowerSet α)` |
We prove that `LowerSet α` is well-founded when `α` is a WQO.
---
This result is used in the CGT repository to construct the poset game!
[](https://gitpod.io/from-referrer/)
|
t-order |
31/0 |
Mathlib.lean,Mathlib/Order/UpperLower/WellFounded.lean |
2 |
2 |
['github-actions', 'plp127'] |
bryangingechen assignee:bryangingechen |
0-61086 16 hours ago |
8-17397 8 days ago |
8-17439 8 days |
29504 |
zhuyizheng author:zhuyizheng |
feat(MeasureTheory): add absolutely continuous functions |
Add absolutely continuous functions. Part of originally planned #29092.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
375/0 |
Mathlib.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean |
3 |
1 |
['github-actions'] |
sgouezel assignee:sgouezel |
0-61084 16 hours ago |
8-5614 8 days ago |
8-12453 8 days |
29510 |
sgouezel author:sgouezel |
chore: add missing fast_instance attributes |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
11/10 |
Mathlib/Topology/ContinuousMap/Bounded/Normed.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean |
2 |
5 |
['github-actions', 'grunweg', 'leanprover-bot', 'themathqueen'] |
PatrickMassot assignee:PatrickMassot |
0-61084 16 hours ago |
8-6492 8 days ago |
8-6529 8 days |
29511 |
luigi-massacci author:luigi-massacci |
feat: integrating wrt a finite measure as a continuous linear map on bounded continuous functions |
Add a definition `integralFiniteMeasure` of type `ContinuousLinearMap` packaging the integral of a bounded continuous function by a finite measure.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-measure-probability
|
17/0 |
Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean |
1 |
26 |
['github-actions', 'grunweg', 'luigi-massacci', 'ocfnash'] |
EtienneC30 assignee:EtienneC30 |
0-61083 16 hours ago |
7-84807 7 days ago |
8-551 8 days |
29518 |
joelriou author:joelriou |
feat(CategoryTheory): extremal epimorphisms |
An extremal epimorphism `p : X ⟶ Y` is an epimorphism which does not factor through any proper subobject of `Y`. In case the category has equalizers, we show that a morphism `p : X ⟶ Y` which does not factor through any proper subobject of `Y` is automatically an epimorphism, and also an extremal epimorphism. We also show that a strong epimorphism is an extremal epimorphism, and that both notions coincide when the category has pullbacks.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
75/0 |
Mathlib.lean,Mathlib/CategoryTheory/ExtremalEpi.lean |
2 |
3 |
['github-actions', 'joelriou'] |
robin-carlier assignee:robin-carlier |
0-61082 16 hours ago |
7-67557 7 days ago |
7-67539 7 days |
24105 |
urkud author:urkud |
feat(Topology/UniformSpace/Path): new file |
---
- [x] depends on: #24066
[](https://gitpod.io/from-referrer/)
|
t-topology |
119/0 |
Mathlib.lean,Mathlib/Topology/ContinuousMap/Defs.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Path.lean |
5 |
15 |
['ADedecker', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'sgouezel', 'urkud'] |
nobody |
0-56893 15 hours ago |
0-56936 15 hours ago |
14-23111 14 days |
29640 |
loefflerd author:loefflerd |
feat(NumberTheory/ModularForms): integrand for Petersson product |
Define integrand in Petersson product pairing of modular forms, & show its invariance property
---
(Later PR's will show that if one of `f, f'` is a cusp form then this function has rapid decay & hence it is integrable, so we can define the Petersson scalar product. These results are also a step in proving bounds for the growth of modular forms and of their q-expansion coefficients.)
Carved off from the WIP PR #25930
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
91/0 |
Mathlib.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/NumberTheory/ModularForms/Petersson.lean |
3 |
1 |
['github-actions'] |
nobody |
0-44352 12 hours ago |
4-18933 4 days ago |
4-19336 4 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
|
134/137 |
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/Enriched/Ordinary/Basic.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/Cartesian/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.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/Basic.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 |
27 |
18 |
['YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'yuma-mizuno'] |
kim-em assignee:kim-em |
0-40971 11 hours ago |
0-40994 11 hours ago |
78-66429 78 days |
29762 |
DavidLedvinka author:DavidLedvinka |
feat(MeasureTheory/Probability): add formula for the pdf of the multiplication of two independent random variables |
Add theorems for the `pdf` of the multiplication of two independent random variables (existence results in form of `HasPDF` and a formula in terms of `mlconvolution` of the individual `pdf`s).
Also refactor previous related results about `rnderiv` to help with the proof (as well as fix a mistake I made in previous PRs with the assumption MeasureSpace instead of MeasurableSpace). |
t-measure-probability |
60/14 |
Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/Probability/Density.lean |
3 |
1 |
['github-actions'] |
nobody |
0-40405 11 hours ago |
0-40405 11 hours ago |
0-40402 11 hours |
29136 |
YaelDillies author:YaelDillies |
feat(CategoryTheory/Monoidal): `mapMon` of a lax-braided functor is lax-braided |
Also move the `BraidedCategory (Mon_ C)` instance earlier in the file to avoid splitting up the functor material. I think it makes more sense like this (defining `Mon_Class`, then `Mon_`, then `Functor.mapMon`).
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
460/399 |
Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean |
3 |
6 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
0-40110 11 hours ago |
1-32260 1 day ago |
18-20922 18 days |
27429 |
smorel394 author:smorel394 |
feat(RepresentationTheory/FinGroupCharZero): applications of Maschke's theorem |
Prove some properties of representations that follow from Maschke's theorem:
* If `G` is a finite group whose order is invertible in a field `k`, then every object of `Rep k G` (resp. `FDRep k G`) is injective and projective.
* For an object `V` of `FDRep k G`, when `k` is an algebraically closed field in which the order of `G` is invertible:
(1) `V` is simple if and only `V ⟶ V` is a `k`-vector space of dimension `1` (`FDRep.simple_iff_end_is_rank_one`);
(2) When `k` is characteristic zero, `V` is simple if and only if `∑ g : G, V.character g * V.character g⁻¹ = Fintype.card G` (`FDRep.simple_iff_char_is_norm_one`).
Note: This used to be #27165, but it was closed for some reason I don't understand.
- [x] depends on: #27154
- [x] depends on: #27134
- [x] depends on: #27125
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
135/0 |
Mathlib.lean,Mathlib/RepresentationTheory/FinGroupCharZero.lean |
2 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-35838 9 hours ago |
6-6826 6 days ago |
6-7181 6 days |
29754 |
or4nge19 author:or4nge19 |
feat(Combinatorics/Quiver): add strongly connected quivers |
feat(Combinatorics/Quiver): add strongly connected quivers
Define strongly connected quivers and their components. Add both standard strong connectivity (allowing length-0 paths) and positive-path strong connectivity. Establish basic properties and relationships to weak connectivity via symmetrification.
This is part of Perron Frobenius theorem and grounds its characterization/def of Irreducible matrices and Markov chain analysis in subsequent PRs.
split from #28728
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
207/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Path/StronglyConnected.lean |
2 |
1 |
['github-actions'] |
nobody |
0-34473 9 hours ago |
1-1688 1 day ago |
1-1727 1 day |
29488 |
Timeroot author:Timeroot |
feat: 'said' tactic |
Functionally similar to `says`, but explicitly not for checking output or even saying there ever was output. `X said Y` just means that `X` was part of the process for (a human, or machine, or both) to generate `Y`.
Based on this [#mathlib4 > noisy simp says in CI @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/noisy.20simp.20says.20in.20CI/near/538443152) Zulip discussion
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
40/0 |
Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/Says.lean,MathlibTest/says.lean |
4 |
2 |
['MichaelStollBayreuth', 'github-actions'] |
nobody |
0-32994 9 hours ago |
0-33051 9 hours ago |
8-52602 8 days |
29737 |
chrisflav author:chrisflav |
feat(CategoryTheory/Sites): generating precoverage for localized topology |
We show that the Grothendieck topology on `Over X`, obtained from localizing the topology generated
by the precoverage `K`, is generated by the preimage of `K`.
The newly introduced `Precoverage.toGrothendieck` / `GrothendieckTopology.toPrecoverage` don't match the existing naming scheme for `Pretopology` and `Coverage`. The reason is that the name `GrothendieckTopology.toPrecoverage` is friendlier to dot notation (anonymous dot notation would need additional parenthesis). We will change the names for `Pretopology` and `Coverage` in a separate PR.
---
I am not sure about the import increase: I consider `IsPullback` to be part of the basic limit API and maybe more of a historical fact that it lives in a rather late file in the import hierarchy. But if people are unhappy about it, I can move the lemmas requiring `IsPullback` to a separate file.
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
216/6 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Preserves/Creates/Pullbacks.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/Precoverage.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/CategoryTheory/Sites/Sieves.lean |
7 |
4 |
['chrisflav', 'github-actions', 'joelriou'] |
nobody |
0-32957 9 hours ago |
0-32984 9 hours ago |
0-83020 23 hours |
29607 |
wwylele author:wwylele |
feat(RingTheory): summability lemma for (Mv)PowerSeries |
About `PowerSeries.summable_of_tendsto_weightedOrder_atTop_nhds_top`, it surprised me that `PowerSeries.order` isn't implemented using `MvPowerSeries.order`, so I had to duplicate the proof for `MvPowerSeries` and `PowerSeries`. The other lemmas are also duplication instead of reusing the same proof, because it turned out piercing through defeq actually makes the code longer.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
maintainer-merge
|
80/0 |
Mathlib/RingTheory/MvPowerSeries/PiTopology.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean |
2 |
3 |
['Ruben-VandeVelde', 'github-actions', 'riccardobrasca'] |
nobody |
0-32169 8 hours ago |
0-85738 23 hours ago |
5-67286 5 days |
29551 |
chrisflav author:chrisflav |
feat(CategoryTheory/Sites): the category of `1`-hypercovers up to homotopy |
We define the category of `1`-hypercovers up to homotopy as the category of `1`-hypercovers where morphisms are considered up to existence of a homotopy. We show that this category is cofiltered if the base category has pullbacks.
This category will be used to define a second construction of sheafification by taking certain colimits of multiequalizers over this category.
---
- [x] depends on: #29553
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
304/4 |
Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/Hypercover/Homotopy.lean,Mathlib/CategoryTheory/Sites/Hypercover/One.lean,Mathlib/CategoryTheory/Sites/Hypercover/Zero.lean,Mathlib/CategoryTheory/Sites/Sieves.lean |
5 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-32061 8 hours ago |
0-32082 8 hours ago |
3-29405 3 days |
28780 |
gaetanserre author:gaetanserre |
feat(Analysis/SpecialFunctions): add the sigmoid function |
Add the Sigmoid from `ℝ` to `ℝ` and show some analytical properties. Then, add `sigmoid_ord_embedding`, the Sigmoid function seen as an `OrderEmbedding` from `ℝ` to `I`. Show that it is a `MeasurableEmbedding` and that we could use it to construct a `MeasurableEmbedding` from any `StandardBorelSpace` to `I`.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
292/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Sigmoid.lean,Mathlib/Data/Set/Operations.lean |
3 |
66 |
['gaetanserre', 'github-actions', 'j-loreaux', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
0-30203 8 hours ago |
8-21830 8 days ago |
23-44791 23 days |
29748 |
luigi-massacci author:luigi-massacci |
feat: integrating on a compact against a LocallyIntegrable map as a continuous linear map on scalar bounded continuous functions |
Add a definition `testAgainstLocallyIntegrableCLM` of type `ContinuousLinearMap` packaging the integral of a scalar valued bounded continuous function against a `LocallyIntegrable` map on a fixed compact.
Intermediate result for representing locally integrable maps as distributions. See #29511 for a related (independent) PR.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-measure-probability
|
56/0 |
Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean |
1 |
2 |
['github-actions', 'luigi-massacci'] |
nobody |
0-27614 7 hours ago |
0-27614 7 hours ago |
0-40184 11 hours |
29713 |
jessealama author:jessealama |
feat (Algebra/Homology): add Euler-Poincaré formula |
This PR adds the Euler characteristic for chain complexes and proves the Euler-Poincaré formula relating the alternating sum of chain dimensions to the alternating sum of homology dimensions.
### Main definitions (in `EulerCharacteristic.lean`)
* `ChainComplex.eulerChar`: The Euler characteristic (alternating sum of dimensions) for a bounded chain complex
* `ChainComplex.homologyEulerChar`: The homological Euler characteristic (alternating sum of homology dimensions)
Both definitions work with ℤ-indexed complexes over any ring R.
### Main result (in `EulerPoincare.lean`)
* `ChainComplex.eulerChar_eq_homology_eulerChar`: For ℤ-indexed bounded chain complexes of finite-dimensional modules over a division ring, the alternating sum of chain dimensions equals the alternating sum of homology dimensions.
### Supporting infrastructure
The proof uses:
* Telescoping sum lemmas for alternating sums
* The rank-nullity theorem for linear maps over division rings
* Properties of exact sequences in homology
This is part of a series of PRs building toward a formalization of Euler's polyhedron formula (Wiedijk #13).
---
* depends on: (none)
* related to: #29639, #29643, #29646 |
new-contributor
t-algebra
label:t-algebra$ |
435/0 |
Mathlib.lean,Mathlib/Algebra/Homology/EulerCharacteristic.lean,Mathlib/Algebra/Homology/EulerPoincare.lean |
3 |
18 |
['github-actions', 'jessealama', 'joelriou', 'kim-em'] |
nobody |
0-26256 7 hours ago |
1-13476 1 day ago |
2-23329 2 days |
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$ |
35/2 |
Mathlib/LinearAlgebra/AffineSpace/Ordered.lean |
1 |
8 |
['JovanGerb', 'Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'kbuzzard', 'ocfnash'] |
kbuzzard assignee:kbuzzard |
0-26000 7 hours ago |
0-26053 7 hours ago |
28-46444 28 days |
29769 |
Vierkantor author:Vierkantor |
CI: run a weekly linter workflow |
This PR adds a workflow analogous to the nightly regression lints, that reports possible refactors using the tactic analysis framework. Those would be too noisy or take too much time to run in regular CI.
As a first linter, we have the `mergeWithGrind` linter that reports when a sequence of tactics followed by `grind` can become just `grind`.
---
[](https://gitpod.io/from-referrer/)
|
CI |
102/1 |
.github/workflows/weekly-lints.yml,Mathlib/Init.lean |
2 |
1 |
['github-actions'] |
nobody |
0-25515 7 hours ago |
0-25581 7 hours ago |
0-25562 7 hours |
29503 |
zhuyizheng author:zhuyizheng |
feat(MeasureTheory): add Lebesgue differentiation theorem for intervals |
Add the Lebesgue differentiation theorem for intervals. Part of originally planned #29092.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
77/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/LebesgueDifferetiationThm.lean |
3 |
19 |
['github-actions', 'themathqueen', 'vlad902'] |
nobody |
0-24619 6 hours ago |
8-5632 8 days ago |
8-12915 8 days |
25831 |
ScottCarnahan author:ScottCarnahan |
feat (RingTheory/HahnSeries): Powers of a binomial |
This PR introduces powers of a binomial `single g 1 - single g' 1` in a Hahn series, where the powers take values in a binomial ring. These series behave as one would expect with respect to addition of powers, and comparison with natural number powers. They are often used in the theory of vertex algebras.
---
- [x] depends on: #25830
- [x] depends on: #27497
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24102.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24102* |
t-ring-theory |
132/0 |
Mathlib.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Binomial.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean |
5 |
12 |
['ScottCarnahan', 'github-actions', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
kbuzzard assignee:kbuzzard |
0-24129 6 hours ago |
34-70533 1 month ago |
34-71992 34 days |
29122 |
yonggyuchoimath author:yonggyuchoimath |
feat(CategoryTheory/MorphismProperty/Representable): add relative representability of diagonal map |
Adds a criterion for the diagonal morphism `X ⟶ X × X` to be relatively representable with respect to a functor `F : C ⥤ D` under mild assumptions.
`CategoryTheory.Functor.relativelyRepresentable.diag_iff` proves that when:
- `C` has pullbacks and binary products
- `D` has pullbacks, binary products and a terminal object
- `F : C ⥤ D` is full and preserves pullbacks and binary products
the diagonal morphism `X ⟶ X × X` is relatively representable if and only if every morphism of the form `F.obj a ⟶ X` is relatively representable. |
new-contributor
t-category-theory
|
103/0 |
Mathlib/CategoryTheory/MorphismProperty/Representable.lean |
1 |
4 |
['github-actions', 'riccardobrasca', 'yonggyuchoimath'] |
riccardobrasca assignee:riccardobrasca |
0-24096 6 hours ago |
0-24122 6 hours ago |
18-55947 18 days |
26961 |
mariainesdff author:mariainesdff |
feat(RingTheory/PowerSeries/Substitution): add API |
Co-authored-by: @AntoineChambert-Loir
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
57/5 |
Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean |
2 |
13 |
['Ruben-VandeVelde', 'github-actions', 'mariainesdff', 'mattrobball'] |
mattrobball assignee:mattrobball |
0-23554 6 hours ago |
0-23554 6 hours ago |
47-43579 47 days |
26155 |
xroblot author:xroblot |
feat(DedekindDomain/Different): add the transitivity formula |
This PR proves the transitivity formula for the different ideal.
The PR also adds one new instance:
- `FiniteDimensional (FractionRing A) (FractionRing B)` deduced from `Module.Finite A B` when `B` is a Dedekind domain.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
177/10 |
Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/Localization/Basic.lean |
4 |
15 |
['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'xroblot'] |
Vierkantor assignee:Vierkantor |
0-23001 6 hours ago |
14-35938 14 days ago |
86-42790 86 days |
29772 |
ScottCarnahan author:ScottCarnahan |
feat (RingTheory/HahnSeries/Multiplication): Add group instances to HahnModule |
This PR adds `Zero` and `AddCommGroup` instances to `HahnModule` when appropriate. We also add comparison lemmas for subtraction in the `AddCommGroup` case, and reorganize some `variables`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
18/9 |
Mathlib/RingTheory/HahnSeries/Multiplication.lean |
1 |
1 |
['github-actions'] |
nobody |
0-22834 6 hours ago |
0-22845 6 hours ago |
0-22883 6 hours |
27215 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): Define the Zariski site on `CommRingCatᵒᵖ` |
We define the Zariski site on `CommRingCatᵒᵖ` by inducing the topology from `Scheme`, and then we show that this topology is equal to the one generated by the pretopology of finite, surjective, and standard open morphisms.
---
- [x] depends on: #28614
- [x] depends on: #28615
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
314/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Sites/BigAffineZariski.lean |
3 |
22 |
['chrisflav', 'github-actions', 'joelriou', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
chrisflav assignee:chrisflav |
0-22625 6 hours ago |
0-22721 6 hours ago |
2-1660 2 days |
29729 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: Ideal.sum_ramification_inertia_of_isLocalRing |
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-number-theory
|
21/0 |
Mathlib/NumberTheory/RamificationInertia/Basic.lean |
1 |
2 |
['github-actions', 'xroblot'] |
nobody |
0-16968 4 hours ago |
1-77304 1 day ago |
1-77346 1 day |
29755 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: Matrix.map_trace |
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-algebra
easy
label:t-algebra$ |
5/0 |
Mathlib/LinearAlgebra/Matrix/Trace.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
0-16287 4 hours ago |
0-79601 22 hours ago |
0-79637 22 hours |
27977 |
smmercuri author:smmercuri |
feat: predicates for extensions of complex embeddings |
If `L/K` and `ψ : K →+* ℂ`, we define the subtype `ComplexExtension L ψ` of `L →+* ℂ` that extend `ψ` to `L`. Also define two predicates asserting ways that `φ` can extend `ψ`.
- `φ.IsMixed` : `ψ` has real image while `φ` has complex image.
- `φ.IsUnmixed`: the negation of `IsMixed` -- `ψ` has real image if and only if `φ` has real image.
`ComplexExtension.IsMixed` and `ComplexExtension.IsUnmixed` are the `ComplexEmbedding` analogues to ramified and unramified infinite places, which is a two-to-one isomorphism in the former and a one-to-one isomorphism in the latter, hence the slightly different terminology.
This PR continues the work from #24877.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24877 |
FLT
t-number-theory
|
52/1 |
Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean |
1 |
6 |
['github-actions', 'riccardobrasca', 'smmercuri', 'xroblot'] |
riccardobrasca assignee:riccardobrasca |
0-16133 4 hours ago |
0-16133 4 hours ago |
0-16142 4 hours |
28349 |
kckennylau author:kckennylau |
feat(Meta): add notation for naming stacked polynomials |
This PR changes the notation for naming formal variables associated to recursive polynomial-like objects.
Registration is done only once per each polynomial-like functor.
Usage:
```lean
register_poly_vars "[" "]" Polynomial Polynomial.C Polynomial.X
register_poly_vars (mv := true) "[" "]" MvPolynomial MvPolynomial.C MvPolynomial.X
name_poly_vars R[a,b][C]
name_poly_vars _[x,y,z]
```
`_[[x,y,z]]` allows for the hole to be substituted by any base ring, so `(x : R[[x,y,z]])` will be valid syntax.
---
I have not mass deployed the new syntax at every possible location, I plan to do that in a future PR following this.
Zulip: [#mathlib4 > Notation for polynomial variables](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Notation.20for.20polynomial.20variables)
[](https://gitpod.io/from-referrer/)
|
t-meta |
485/59 |
Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/Tactic/Ring/NamePolyVars.lean,MathlibTest/NamePolyVars.lean,scripts/noshake.json |
7 |
60 |
['JovanGerb', 'adamtopaz', 'eric-wieser', 'github-actions', 'kckennylau', 'plp127'] |
adamtopaz assignee:adamtopaz |
0-13826 3 hours ago |
7-73948 7 days ago |
34-77573 34 days |
29550 |
Raph-DG author:Raph-DG |
feat(RingTheory): Order of vanishing in a discrete valuation ring |
In this PR we develop some API for working with the order of vanishing in a discrete valuation ring.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
file-removed
|
462/3 |
Mathlib.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Properties.lean |
4 |
1 |
['github-actions'] |
nobody |
0-13784 3 hours ago |
7-25965 7 days ago |
7-26016 7 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
t-number-theory
label:t-algebra$ |
88/2 |
Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean |
5 |
7 |
['github-actions', 'leanprover-community-bot-assistant', 'mariainesdff', 'mathlib4-merge-conflict-bot', 'riccardobrasca', 'xroblot'] |
mariainesdff assignee:mariainesdff |
0-12466 3 hours ago |
32-36316 1 month ago |
65-66563 65 days |
29775 |
Vierkantor author:Vierkantor |
chore(Data/Nat): move `PowModTotient` to `NumberTheory` |
This PR removes the only import of `Mathlib/FieldTheory` in `Mathlib/Data`, by moving a file on the totient function to the number theory folder. I add an entry to the directory dependency linter.
---
[](https://gitpod.io/from-referrer/)
|
file-removed
maintainer-merge
t-number-theory
|
2/1 |
Mathlib.lean,Mathlib/NumberTheory/PowModTotient.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
3 |
2 |
['github-actions', 'grunweg'] |
nobody |
0-12424 3 hours ago |
0-12424 3 hours ago |
0-20832 5 hours |
29765 |
YaelDillies author:YaelDillies |
feat: commutative monoids are internal monoids |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
76/6 |
Mathlib/CategoryTheory/Monoidal/Cartesian/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean |
2 |
2 |
['eric-wieser', 'github-actions'] |
nobody |
0-12224 3 hours ago |
0-37636 10 hours ago |
0-37673 10 hours |
29517 |
pechersky author:pechersky |
feat(RingTheory/Torsion): torsion = union of roots of unity |
with additional API for Associates and rootsOfUnity sups
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
236/44 |
Mathlib.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean,Mathlib/NumberTheory/Cyclotomic/Rat.lean,Mathlib/NumberTheory/MulChar/Lemmas.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/RootsOfUnity/Basic.lean,Mathlib/RingTheory/RootsOfUnity/EnoughRootsOfUnity.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/Torsion.lean |
15 |
5 |
['github-actions', 'kckennylau', 'pechersky'] |
nobody |
0-11115 3 hours ago |
7-73201 7 days ago |
7-73292 7 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/)
|
new-contributor
t-analysis
|
131/1 |
Mathlib.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean |
3 |
8 |
['fbarroero', 'github-actions', 'mathlib4-merge-conflict-bot', 'sgouezel'] |
sgouezel assignee:sgouezel |
0-9734 2 hours ago |
0-10064 2 hours ago |
88-64358 88 days |
29771 |
Vierkantor author:Vierkantor |
refactor(TacticAnalysis): use full CommandElabM context in test |
Running the `rwMerge` linter on the whole of Mathlib reveals that the tactic analysis framework did not always correctly pass the environment to the test step of a pass. By running the test in a full `CommandElabM` and adding a `ContextInfo` and `TacticInfo`, we can access the right environment (using the `ctxI.runTacticCode` function). There are still a few subtle issues to do with notation but I would like to get this fix in first, since it involves some larger refactors.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
44/17 |
Mathlib/Tactic/TacticAnalysis.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean |
3 |
7 |
['adomani', 'bryangingechen', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
0-8597 2 hours ago |
0-8597 2 hours ago |
0-25129 6 hours |
29778 |
hrmacbeth author:hrmacbeth |
chore: `abel_nf` bug |
Fix the bug reported at https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/abel_nf.20bug/with/540086130.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
29/1 |
Mathlib/Tactic/Abel.lean,MathlibTest/abel.lean |
2 |
1 |
['github-actions'] |
nobody |
0-7598 2 hours ago |
0-10202 2 hours ago |
0-10196 2 hours |
29151 |
yuanyi-350 author:yuanyi-350 |
feat: Corollary of Hahn-Banach theorem |
In this PR, I have proved [Rudin, *Functional Analysis* (Theorem 3.7)][rudin1991] which is a step in proving the Closed Range Theorem. Also, I have added tags for the corresponding theorems in Rudin to mathlib.
3.7 Theorem. Suppose B is a convex, balanced, closed set in a locally convex space $X, x_0 \in X$, but $x_0 \notin B$. Then there exists $\Lambda \in X^*$ such that $|\Lambda x| \leq 1$ for all $x \in B$, but $\Lambda x_0>1$
proof. Since $B$ is closed and convex, we can apply (b) of Theorem 3.4, with $A=\{ x_0 \}$ , to obtain $\Lambda_1 \in X^*$ such that $\Lambda_1 x_0=r e^{i \theta}$ lies outside the closure $K$ of $\Lambda_1(B)$. Since $B$ is balanced, so is $K$. Hence there exists $s, 0" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
|
71/4 |
Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/Analysis/RCLike/Lemmas.lean,Mathlib/Topology/Order/OrderClosed.lean |
3 |
6 |
['github-actions', 'themathqueen'] |
faenuccio assignee:faenuccio |
0-7448 2 hours ago |
0-7501 2 hours ago |
18-57713 18 days |
29776 |
yuanyi-350 author:yuanyi-350 |
chore(Functional Analysis) : refactor `ContinuousLinearMap.isOpenMap` by separating it into sublemmas |
The [open mapping theorem](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Operator/Banach.html#ContinuousLinearMap.isOpenMap) in mathlib need `f` to be surjective.
However, this can be weakened to the condition `h : ∃ (n : ℕ) (x : _), x ∈ interior (closure (f '' ball 0 n))` . I need this stronger formulation to prove the closed range theorem c.f. *Rudin Functional Analysis Thm 4.13*
[zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/refactor.20.60ContinuousLinearMap.2EisOpenMap.60)
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
49/32 |
Mathlib/Analysis/Normed/Operator/Banach.lean |
1 |
7 |
['faenuccio', 'github-actions', 'kckennylau', 'leanprover-bot', 'yuanyi-350'] |
faenuccio assignee:faenuccio |
0-5057 1 hour ago |
0-19608 5 hours ago |
0-19647 5 hours |
29780 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: Units.{continuous_map,isOpenMap_map} |
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-topology
|
19/2 |
Mathlib/Topology/Algebra/Constructions.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
0-4986 1 hour ago |
0-6928 1 hour ago |
0-6965 1 hour |
29330 |
plp127 author:plp127 |
chore: define `Fin.cycleIcc` with conditions |
Redefine `Fin.cycleIcc` using conditionals instead of composing existing `Fin` operations together. Its worst-case runtime drops from O(n) to O(1). As a bonus, the definition no longer needs explaining.
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
67/68 |
Mathlib/GroupTheory/Perm/Fin.lean |
1 |
9 |
['JovanGerb', 'eric-wieser', 'github-actions', 'plp127', 'tb65536'] |
nobody |
0-3701 1 hour ago |
14-76721 14 days ago |
14-76757 14 days |
29316 |
euprunin author:euprunin |
chore: remove redundant `suffices` invocations |
---
**Note:** Although technically redundant, some of these may be worth keeping for readability, or other reasons. Let me know if you think any should stay.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
0/4 |
Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean |
3 |
6 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'tb65536'] |
tb65536 assignee:tb65536 |
0-2990 49 minutes ago |
0-2990 49 minutes ago |
15-15147 15 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/)
|
t-order |
135/0 |
Mathlib.lean,Mathlib/Order/Lattice/Congruence.lean,docs/references.bib |
3 |
63 |
['YaelDillies', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mans0954', 'mathlib4-dependent-issues-bot', 'vihdzp'] |
nobody |
0-2435 40 minutes ago |
0-36786 10 hours ago |
20-32313 20 days |
29761 |
bwangpj author:bwangpj |
feat: Chinese Remainder Theorem for `ZMod n` |
Define `ZMod.equivPi`, the Chinese Remainder Theorem for `ZMod n`, decomposing it as a product of `ZMod` over its prime power factors.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
27/0 |
Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/ZMod/QuotientRing.lean |
2 |
3 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
0-1459 24 minutes ago |
0-49128 13 hours ago |
0-49175 13 hours |
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$ |
105/0 |
Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/RingTheory/Nilpotent/GeometricallyReduced.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
5 |
62 |
['dleijnse', 'github-actions', 'joelriou', 'kckennylau'] |
joelriou assignee:joelriou |
0-1401 23 minutes ago |
7-37225 7 days ago |
54-16881 54 days |
27229 |
WilliamCoram author:WilliamCoram |
feat(GroupTheory/DoubleCoset): multiple lemmas |
From FLT
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory
FLT
new-contributor
|
106/0 |
Mathlib/GroupTheory/DoubleCoset.lean |
1 |
9 |
['Ruben-VandeVelde', 'github-actions', 'mathlib4-merge-conflict-bot'] |
mariainesdff assignee:mariainesdff |
0-920 15 minutes ago |
0-1358 22 minutes ago |
58-67237 58 days |