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 |
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 |
68-32158 2 months ago |
99-39898 3 months ago |
119-4075 119 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 |
65-1078 2 months ago |
65-1078 2 months ago |
113-56190 113 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 |
65-972 2 months ago |
65-972 2 months ago |
151-44422 151 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 |
63-32146 2 months ago |
96-43624 3 months ago |
96-43660 96 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 |
62-32145 2 months ago |
69-68194 2 months ago |
96-56030 96 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 |
61-82322 2 months ago |
73-65619 2 months ago |
73-65646 73 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 |
61-32156 2 months ago |
71-22168 2 months ago |
71-22154 71 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 |
58-32162 1 month ago |
121-19472 3 months ago |
136-51399 136 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 |
58-32157 1 month ago |
89-71284 2 months ago |
89-71328 89 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 |
56-32148 1 month ago |
69-66904 2 months ago |
69-66950 69 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 |
55-32133 1 month ago |
65-418 2 months ago |
65-52291 65 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 |
53-32136 1 month ago |
61-9265 2 months ago |
61-9256 61 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 |
52-32137 1 month ago |
59-45373 1 month ago |
59-45411 59 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 |
51-32152 1 month ago |
61-53844 2 months ago |
62-28341 62 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 |
50-32160 1 month ago |
61-50629 2 months ago |
61-50666 61 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 |
50-32157 1 month ago |
59-63487 1 month ago |
59-63527 59 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 |
47-32166 1 month ago |
56-5102 1 month ago |
56-5142 56 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 |
47-17251 1 month ago |
unknown |
unknown |
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 |
46-64954 1 month ago |
83-7000 2 months ago |
83-7035 83 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 |
46-64916 1 month ago |
115-77607 3 months ago |
115-77648 115 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 |
46-32132 1 month ago |
53-42984 1 month ago |
53-42960 53 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 |
46-9320 1 month ago |
46-9330 1 month ago |
46-9361 46 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 |
45-32137 1 month ago |
54-28485 1 month ago |
54-28461 54 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 |
45-32134 1 month ago |
57-14350 1 month ago |
57-17053 57 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 |
44-32166 1 month ago |
51-75715 1 month ago |
53-69741 53 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 |
44-32163 1 month ago |
54-62363 1 month ago |
58-80053 58 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 |
43-45252 1 month ago |
73-84095 2 months ago |
111-36013 111 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 |
42-80801 1 month ago |
135-37927 4 months ago |
135-37972 135 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 |
42-65517 1 month ago |
92-33224 3 months ago |
92-33261 92 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 |
42-59793 1 month ago |
150-57158 4 months ago |
198-22967 198 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 |
42-31923 1 month ago |
150-36538 4 months ago |
216-36512 216 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 |
41-59453 1 month ago |
64-46192 2 months ago |
66-46855 66 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 |
41-3785 1 month ago |
103-25001 3 months ago |
103-29745 103 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 |
41-3541 1 month ago |
110-41104 3 months ago |
110-45707 110 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 |
40-67076 1 month ago |
45-68795 1 month ago |
71-59791 71 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 |
40-32178 1 month ago |
52-72308 1 month ago |
53-17272 53 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 |
40-32171 1 month ago |
52-60426 1 month ago |
52-60469 52 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 |
40-7006 1 month ago |
43-2253 1 month ago |
43-2293 43 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 |
38-78164 1 month ago |
39-45556 1 month ago |
93-63089 93 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 |
38-46296 1 month ago |
38-51012 1 month ago |
107-77603 107 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 |
38-32132 1 month ago |
48-75386 1 month ago |
50-52229 50 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 |
38-11784 1 month ago |
38-16830 1 month ago |
102-73710 102 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 |
37-32157 1 month ago |
51-67633 1 month ago |
51-67670 51 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 |
36-60887 1 month ago |
108-19329 3 months ago |
108-33236 108 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 |
36-32160 1 month ago |
44-36438 1 month ago |
44-41750 44 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 |
36-6266 1 month ago |
80-69490 2 months ago |
80-69535 80 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 |
35-32164 1 month ago |
46-26208 1 month ago |
46-26242 46 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 |
35-32163 1 month ago |
44-58730 1 month ago |
44-58763 44 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 |
35-14433 1 month ago |
95-63959 3 months ago |
95-63997 95 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 |
35-10967 1 month ago |
90-2119 2 months ago |
90-2155 90 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 |
35-8634 1 month 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 |
34-84982 1 month ago |
36-34248 1 month ago |
70-9112 70 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 |
34-8814 1 month ago |
65-1200 2 months ago |
108-43814 108 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 |
33-84610 1 month ago |
33-84610 1 month ago |
39-70793 39 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 |
33-63206 1 month ago |
41-695 1 month ago |
42-57700 42 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 |
33-32166 1 month ago |
41-48396 1 month ago |
47-75681 47 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 |
33-32164 1 month ago |
42-38820 1 month ago |
50-5635 50 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 |
33-32160 1 month ago |
42-39053 1 month ago |
42-39490 42 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 |
33-32159 1 month ago |
42-28801 1 month ago |
42-28785 42 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 |
33-32157 1 month ago |
41-50809 1 month ago |
41-50840 41 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 |
32-64691 1 month ago |
32-64722 1 month ago |
60-59609 60 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 |
32-32151 1 month ago |
43-66781 1 month ago |
56-36997 56 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 |
32-32149 1 month ago |
45-48890 1 month ago |
45-50638 45 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 |
31-83244 1 month ago |
54-3299 1 month ago |
54-3333 54 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 |
30-58026 1 month ago |
30-63030 1 month ago |
100-65340 100 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 |
29-64210 29 days ago |
59-53733 1 month ago |
73-46562 73 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 |
26-32170 26 days ago |
36-51829 1 month ago |
36-54871 36 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 |
25-53456 25 days ago |
25-53481 25 days ago |
173-41195 173 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 |
25-45723 25 days ago |
25-52870 25 days ago |
64-15752 64 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 |
25-32145 25 days ago |
32-84570 1 month ago |
34-4626 34 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 |
25-32143 25 days ago |
41-84775 1 month ago |
41-84792 41 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 |
25-630 25 days ago |
175-85262 5 months ago |
231-45972 231 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 |
24-32138 24 days ago |
32-696 1 month ago |
58-64453 58 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 |
24-4551 24 days ago |
147-73988 4 months ago |
232-47012 232 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 |
24-564 24 days ago |
24-572 24 days ago |
24-605 24 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 |
23-75278 23 days ago |
37-24669 1 month ago |
53-24028 53 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 |
23-65939 23 days ago |
23-65947 23 days ago |
87-80250 87 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 |
23-65089 23 days ago |
27-59520 27 days ago |
111-59562 111 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 |
23-60829 23 days ago |
31-30107 1 month ago |
31-30085 31 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 |
23-32148 23 days ago |
23-32166 23 days ago |
45-264 45 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 |
23-13526 23 days ago |
23-33124 23 days ago |
20-32669 20 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 |
22-32161 22 days ago |
36-69473 1 month ago |
38-79930 38 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 |
22-13700 22 days ago |
64-61993 2 months ago |
78-79526 78 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 |
21-79344 21 days ago |
21-79365 21 days ago |
30-66855 30 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 |
21-60181 21 days ago |
34-36898 1 month ago |
109-64689 109 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 |
21-56334 21 days ago |
35-52276 1 month ago |
35-52254 35 days |
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 |
21-50072 21 days ago |
21-50110 21 days ago |
21-50146 21 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 |
20-81028 20 days ago |
20-81028 20 days ago |
68-14649 68 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 |
13 |
['ScottCarnahan', 'github-actions', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
kbuzzard assignee:kbuzzard |
20-54216 20 days ago |
55-41607 1 month ago |
55-43062 55 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 |
22/0 |
Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/ZMod/QuotientRing.lean |
2 |
8 |
['Ruben-VandeVelde', 'bwangpj', 'github-actions', 'j-loreaux'] |
nobody |
20-40817 20 days ago |
20-40817 20 days ago |
21-5801 21 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'] |
jcommelin assignee:jcommelin |
20-32152 20 days ago |
27-44691 27 days ago |
27-45047 27 days |
29530 |
ShreckYe author:ShreckYe |
feat(Dynamics/PeriodicPts): some theorems for `Pi.map` in `Dynamics/PeriodicPts` analogous to those for `Prod.map` |
Split from #29204. Some namespace prefixes are added in `GroupTheory/OrderOfElement.lean` to distinguish the extra imports introduced.
- [ ] depends on: #29528
|
large-import |
77/8 |
Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/GroupTheory/OrderOfElement.lean |
3 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
dupuisf assignee:dupuisf |
20-32146 20 days ago |
27-57979 27 days ago |
27-58632 27 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'] |
mattrobball assignee:mattrobball |
20-32141 20 days ago |
27-38460 27 days ago |
27-38579 27 days |
27306 |
xyzw12345 author:xyzw12345 |
feat: `lie_ring` tactic and `LieReduce` command |
This PR continues the work from #22196.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22196 |
t-meta |
810/2 |
Mathlib.lean,Mathlib/Algebra/Lie/Derivation/AdjointAction.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LieAlgebra/Basic.lean,Mathlib/Tactic/LieAlgebra/LieRingNF.lean,Mathlib/Util/AtomM.lean,MathlibTest/lie_ring.lean,scripts/noshake.json |
8 |
12 |
['JovanGerb', 'github-actions', 'xyzw12345'] |
JovanGerb assignee:JovanGerb |
20-18160 20 days ago |
30-22749 1 month ago |
77-76227 77 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 |
173/0 |
Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Integers.lean |
2 |
7 |
['JovanGerb', 'github-actions', 'mariainesdff', 'mathlib4-merge-conflict-bot', 'pechersky'] |
mariainesdff assignee:mariainesdff |
19-64106 19 days ago |
61-54492 2 months ago |
94-29004 94 days |
29400 |
ShreckYe author:ShreckYe |
feat(`Algebra/BigOperators`): products of the results of insertion and removal on tuples and lists, and some needed lemmas |
|
large-import |
102/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BigOperators/Group/Vector/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean |
6 |
6 |
['ShreckYe', 'bryangingechen', 'eric-wieser', 'github-actions'] |
bryangingechen assignee:bryangingechen |
19-43990 19 days ago |
31-79942 1 month ago |
31-79986 31 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'] |
jcommelin assignee:jcommelin |
19-32163 19 days ago |
26-64300 26 days ago |
26-64651 26 days |
29562 |
ShreckYe author:ShreckYe |
feat(Analysis/SpecialFunctions/Trigonometric): tangent half-angle substitution |
|
t-analysis |
82/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean |
1 |
1 |
['github-actions'] |
urkud assignee:urkud |
19-32158 19 days ago |
27-63400 27 days ago |
27-63440 27 days |
29235 |
yoh-tanimoto author:yoh-tanimoto |
feat(Topology/Algebra/Module/ClosedSubmodule): add `mapEquiv`, a variation of `ClosedSubmodule.map` for CLE |
add `ClosedSubmodule.mapEquiv` for continuous linear equivalence. In this case, a closed submodule is mapped to a closed submodule, so the definitions are easier and behave nicely with `closure` and `⊔`.
motivation: needed to define standard subspaces in a Hilbert space (scalar multiplication by `Complex.I`) #29251
https://ems.press/content/serial-article-files/48171
- [x] depends on: #29230 for `Lattice` `CompleteLattice` |
t-topology |
69/1 |
Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
fpvandoorn assignee:fpvandoorn |
18-41892 18 days ago |
26-61706 26 days ago |
26-63992 26 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 |
5 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'themathqueen'] |
kbuzzard assignee:kbuzzard |
17-45730 17 days ago |
32-45073 1 month ago |
34-68028 34 days |
29744 |
espottesmith author:espottesmith |
feat(Combinatorics): define directed hypergraphs |
This PR defines directed hypergraphs:
```
@[ext]
structure DiHypergraph (α : Type*) where
/-- The vertex set -/
vertexSet : Set α
/-- The edge set -/
edgeSet : Set ((Set α) × (Set α))
/-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/
edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet
```
Additional definitions:
- tail/head stars and negative/positive stars
- some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty)
- Vertex and (hyper)edge adjacency
- isolated vertices
- empty and nonempty dihypergraphs
The design employed here is based off of #28613, but this PR does not depend on that one.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
391/0 |
Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
16-74623 16 days ago |
21-81156 21 days ago |
21-81202 21 days |
22151 |
alreadydone author:alreadydone |
feat(RingTheory): a semiprimary ring is Noetherian/Artinian iff its Jacobson radical is fg |
A key fact used is `Module.FG.smul`: if `I` is a two-sided ideal of `R` that is f.g. as a left ideal and `N` is a f.g. `R`-module, then `I • M` is also a f.g. `R`-module.
Many lemmas about coprimality of ideals are also generalized to the noncommutative, two-sided setting.
---
- [x] depends on: #21904
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
233/166 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Ideal.lean,Mathlib/RingTheory/HopkinsLevitzki.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean |
9 |
10 |
['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
eric-wieser assignee:eric-wieser |
16-49494 16 days ago |
16-49560 16 days ago |
196-48614 196 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$ |
176/0 |
Counterexamples.lean,Counterexamples/DimensionPolynomial.lean,Mathlib.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/KrullDimension/LocalRing.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Basic.lean |
7 |
15 |
['github-actions', 'joelriou', 'kbuzzard', 'kckennylau', 'kim-em', 'xyzw12345'] |
joelriou assignee:joelriou |
16-34482 16 days ago |
16-34482 16 days ago |
27-64684 27 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'] |
Vierkantor assignee:Vierkantor |
16-32156 16 days ago |
23-71715 23 days ago |
25-50068 25 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'] |
joneugster assignee:joneugster |
16-32152 16 days ago |
23-46868 23 days ago |
23-46846 23 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$ |
209/4 |
Mathlib.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
4 |
21 |
['D-Thomine', 'eric-wieser', 'github-actions', 'kbuzzard', 'mathlib4-merge-conflict-bot'] |
kbuzzard assignee:kbuzzard |
15-70459 15 days ago |
15-70486 15 days ago |
78-43714 78 days |
25799 |
dagurtomas author:dagurtomas |
feat(CategoryTheory): the universal property of localized monoidal categories |
This PR provides a monoidal structure on any functor out of a localized monoidal category whose precomposition with the localization functor is monoidal
---
- [x] depends on: #29564
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #24727.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/24727* |
file-removed
t-category-theory
|
244/2 |
Mathlib.lean,Mathlib/CategoryTheory/Localization/Bifunctor.lean,Mathlib/CategoryTheory/Localization/Monoidal/Basic.lean,Mathlib/CategoryTheory/Localization/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Multifunctor.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Sites/Monoidal.lean |
8 |
20 |
['dagurtomas', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
15-57896 15 days ago |
15-60923 15 days ago |
30-50597 30 days |
29624 |
mcdoll author:mcdoll |
feat(LinearAlgebra/LinearPMap): add definition of resolvent and first resolvent identity |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
180/2 |
Mathlib/LinearAlgebra/LinearPMap.lean |
1 |
2 |
['github-actions', 'mcdoll'] |
kim-em assignee:kim-em |
15-45920 15 days ago |
23-56871 23 days ago |
23-56849 23 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
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
|
597/276 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Notation.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToAdditive/ToDual.lean,Mathlib/Tactic/ToDual.lean,MathlibTest/toAdditive.lean,scripts/noshake.json |
15 |
13 |
['JovanGerb', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] |
alexjbest assignee:alexjbest |
15-39774 15 days ago |
15-40511 15 days ago |
40-71081 40 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'] |
grunweg assignee:grunweg |
15-32150 15 days ago |
22-78167 22 days ago |
22-78206 22 days |
27817 |
zhuyizheng author:zhuyizheng |
feat: add IMO2025P1 |
Add a solution to IMO2025P1, the original problem statement from https://github.com/jsm28/IMOLean
---
[](https://gitpod.io/from-referrer/)
|
IMO
new-contributor
|
1310/0 |
Archive.lean,Archive/Imo/Imo2025Q1.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
dwrensha assignee:dwrensha |
14-81674 14 days ago |
20-14746 20 days ago |
52-39852 52 days |
27244 |
xroblot author:xroblot |
feat(RingTheory/DedekindDomain): lifting an ideal in an extension is injective |
This PR develops some API for [FractionalIdeal.extendedHomₐ](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/FractionalIdeal/Extended.html#FractionalIdeal.extendedHom%E2%82%90) and in particular proves when it is an injective map. As a consequence, it deduces the fact that lifting an integral ideal in an extension of Dedekind domains is an injective map.
Note: the import increase happens in a leaf file `Mathlib.RingTheory.FractionalIdeal.Extended`
---
- [x] depends on: #28800
|
t-ring-theory
large-import
|
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 |
14-78099 14 days ago |
35-75067 1 month ago |
71-79648 71 days |
26396 |
xroblot author:xroblot |
feat(RingTheory): define the dual of a basis for the trace and prove basic properties |
Specialize the construction of `BilinForm.dualBasis` to the case of the trace and proves basic results about it.
This will be useful for future works on the [Submodule.traceDual](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/DedekindDomain/Different.html#Submodule.traceDual)
---
|
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 |
14-77871 14 days ago |
23-71173 23 days ago |
104-38795 104 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.
---
|
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 |
14-77835 14 days ago |
35-7012 1 month ago |
107-13860 107 days |
28871 |
JaafarTanoukhi author:JaafarTanoukhi |
feat(Combinatorics/Digraph): Tournaments |
Define orientations and tournaments. Related to #26771.
Co-authored-by: Rida Hamadani
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
62/0 |
Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean |
3 |
5 |
['JaafarTanoukhi', 'NotWearingPants', 'Rida-Hamadani', 'github-actions'] |
kmill assignee:kmill |
14-61807 14 days ago |
45-52044 1 month ago |
45-52078 45 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 |
14-53121 14 days ago |
30-47293 1 month ago |
43-63205 43 days |
27307 |
xyzw12345 author:xyzw12345 |
feat(RingTheory/GradedAlgebra): homogeneous relation |
This PR continues the work from #22279.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22279 |
t-ring-theory |
391/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousRelation.lean |
9 |
9 |
['chrisflav', 'eric-wieser', 'github-actions', 'ocfnash', 'xyzw12345'] |
mattrobball assignee:mattrobball |
14-32154 14 days ago |
65-58541 2 months ago |
80-69857 80 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'] |
kim-em assignee:kim-em |
14-32150 14 days ago |
21-72107 21 days ago |
25-85029 25 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'] |
joneugster assignee:joneugster |
14-32147 14 days ago |
22-66044 22 days ago |
22-66079 22 days |
29947 |
JaafarTanoukhi author:JaafarTanoukhi |
feat(Combinatorics/Digraph): Maps |
Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
476/0 |
Mathlib.lean,Mathlib/Combinatorics/Digraph/Maps.lean |
2 |
1 |
['github-actions'] |
nobody |
14-2586 14 days ago |
14-62089 14 days ago |
14-62129 14 days |
27229 |
WilliamCoram author:WilliamCoram |
feat(GroupTheory/DoubleCoset): multiple lemmas |
From FLT
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory
FLT
new-contributor
|
97/0 |
Mathlib/GroupTheory/DoubleCoset.lean |
1 |
16 |
['Ruben-VandeVelde', 'WilliamCoram', 'github-actions', 'mathlib4-merge-conflict-bot'] |
mariainesdff assignee:mariainesdff |
13-83187 13 days ago |
20-58832 20 days ago |
79-38307 79 days |
26259 |
Raph-DG author:Raph-DG |
feat(Topology): Connecting different notions of locally finite |
In this PR we connect the notions of local finiteness of an indexed family of sets (as in LocallyFinite) and of a set of sets (as in Function.locallyFinsuppWithin)
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-topology
|
38/0 |
Mathlib/Topology/LocallyFinsupp.lean |
1 |
18 |
['Raph-DG', 'chrisflav', 'github-actions', 'jcommelin', 'kckennylau'] |
jcommelin assignee:jcommelin |
13-62829 13 days ago |
14-1745 14 days ago |
102-52133 102 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 |
13-61861 13 days ago |
31-44789 1 month ago |
31-44783 31 days |
29526 |
llllvvuu author:llllvvuu |
feat: `Multiset.map f` identifies `f` up to permutation |
Motivation: Reason about `Fintype`-indexed families via `Multiset` equality.
Example use case 1:
```lean
theorem Matrix.IsHermitian.cfc_eigenvalues {d : Type*} [Fintype d] [DecidableEq d]
{M : Matrix d d 𝕜} (hM : M.IsHermitian) (f : ℝ → ℝ)
(hcfc : Matrix.IsHermitian (cfc f M) := cfc_predicate f M) :
∃ (e : d ≃ d), hcfc.eigenvalues = f ∘ hM.eigenvalues ∘ e := by
have := hcfc.roots_charpoly_eq_eigenvalues.symm
rw [hM.charpoly_cfc_eq f, Polynomial.roots_prod] at this; swap
· simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero]
simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this
have he := (Multiset.compTriple_equivOfMapUnivEq this).comp_eq
simp_rw [← Function.comp_def RCLike.ofReal, ← Function.comp_def f, Function.comp_assoc] at he
exact ⟨_, RCLike.ofReal_injective.comp_left he.symm⟩
```
Example use case 2 (on top of https://github.com/leanprover-community/mathlib4/pull/29610):
```lean
theorem LinearMap.Eigenbasis.μ_equiv {ι ι' R G : Type*} [Fintype ι] [Fintype ι']
[CommRing R] [IsDomain R] [AddCommGroup G] [Module R G] [Module.Free R G] [Module.Finite R G]
{f : Module.End R G} (B₁ : f.Eigenbasis ι) (B₂ : f.Eigenbasis ι') :
∃ e : ι ≃ ι', B₁.μ = B₂.μ ∘ e := by
classical
have := congr(Polynomial.roots $(B₁.charpoly_eq.symm.trans B₂.charpoly_eq))
rw [Polynomial.roots_prod, Polynomial.roots_prod] at this; rotate_left
· simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero]
· simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero]
simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this
exact ⟨Multiset.equivOfMapUnivEq this, (Multiset.compTriple_equivOfMapUnivEq this).comp_eq.symm⟩
```
Co-authored-by: Aristotle Harmonic
---
[](https://gitpod.io/from-referrer/)
|
t-data |
35/0 |
Mathlib/Data/Multiset/Fintype.lean |
1 |
8 |
['Ruben-VandeVelde', 'github-actions', 'llllvvuu', 'vihdzp', 'wwylele'] |
nobody |
13-61529 13 days ago |
28-30559 28 days ago |
28-30553 28 days |
29488 |
Timeroot author:Timeroot |
feat: 'said' tactic |
Functionally similar to `says`, but explicitly not for checking output or even saying there ever was output. `X said Y` just means that `X` was part of the process for (a human, or machine, or both) to generate `Y`.
Based on this [#mathlib4 > noisy simp says in CI @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/noisy.20simp.20says.20in.20CI/near/538443152) Zulip discussion
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
40/0 |
Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/Says.lean,MathlibTest/says.lean |
4 |
3 |
['JovanGerb', 'MichaelStollBayreuth', 'github-actions'] |
JovanGerb assignee:JovanGerb |
13-32151 13 days ago |
21-4125 21 days ago |
29-23673 29 days |
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 |
3 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
kim-em assignee:kim-em |
13-32147 13 days ago |
21-8710 21 days ago |
21-8744 21 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'] |
bryangingechen assignee:bryangingechen |
13-32146 13 days ago |
20-83055 20 days ago |
20-83033 20 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'] |
kim-em assignee:kim-em |
13-32145 13 days ago |
20-66071 20 days ago |
20-82600 20 days |
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 |
28/21 |
Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean |
3 |
6 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
13-12034 13 days ago |
13-12059 13 days ago |
29-27997 29 days |
23920 |
YaelDillies author:YaelDillies |
feat: relation-separated sets |
Define a notion of separation of a set relative to a relation. This will be used to unify metric and dynamical separation.
From MiscYD and LeanAPAP
---
- [x] depends on: #26988
[](https://gitpod.io/from-referrer/)
|
t-data |
66/0 |
Mathlib.lean,Mathlib/Data/Rel/Separated.lean |
2 |
21 |
['ADedecker', 'D-Thomine', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
ADedecker assignee:ADedecker |
12-63843 12 days ago |
12-63865 12 days ago |
43-41393 43 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$ |
527/484 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/DualQuaternion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Taylor.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Matrix/DualNumber.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/LinearAlgebra/CliffordAlgebra/BaseChange.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Conjugation.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/LinearMap.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/Unique.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/NumberField/Discriminant/Defs.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IntegralClosure/IntegrallyClosed.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Invariant/Profinite.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Jacobson/Artinian.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/MatrixAlgebra.lean,Mathlib/RingTheory/MvPolynomial/Localization.lean,Mathlib/RingTheory/Norm/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/PolynomialAlgebra.lean,Mathlib/RingTheory/PowerSeries/WeierstrassPreparation.lean,Mathlib/RingTheory/RingHom/FiniteType.lean,Mathlib/RingTheory/SimpleModule/Isotypic.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Pi.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/TensorProduct/Pi.lean,Mathlib/RingTheory/TensorProduct/Quotient.lean,Mathlib/RingTheory/Trace/Basic.lean,Mathlib/RingTheory/Unramified/Field.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/LocallyConstant/Algebra.lean |
96 |
25 |
['fpvandoorn', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
joelriou assignee:joelriou |
12-59929 12 days ago |
12-62550 12 days ago |
26-33926 26 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'] |
chrisflav assignee:chrisflav |
11-32140 11 days ago |
24-74250 24 days ago |
24-74235 24 days |
29791 |
llllvvuu author:llllvvuu |
feat(Order): lemmas about `iSupIndep` |
* generalize `Finset.SupIndep` "bind" operations from `DistribLattice` to `IsModularLattice`
* new lemma `iSupIndep.iInf`
* more characterizations of `iSupIndep` on submodules:
* `iSupIndep_iff_finset_sum_eq_zero_imp_eq_zero`
* `iSupIndep_iff_finset_sum_eq_imp_eq`
* add `@[simp]` and `@[grind]` attributes which were helpful for these proofs
Original motivation was to have the following fact:
```lean
theorem iSupIndep_iInf_genEigenspace [NoZeroSMulDivisors R M] {α : Type*} (f : α → End R M)
(k : ℕ∞) : iSupIndep fun μ : α → R ↦ ⨅ a : α, ((f a).genEigenspace (μ a)) k :=
.iInf (f · |>.genEigenspace · k) (f · |>.independent_genEigenspace k)
```
Co-authored-by: Aristotle Harmonic
---
[](https://gitpod.io/from-referrer/)
|
t-order |
166/62 |
Mathlib/Data/Finset/Disjoint.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Finset/Lattice/Union.lean,Mathlib/Data/Finset/Sigma.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/Logic/Embedding/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/SupIndep.lean |
11 |
12 |
['github-actions', 'leanprover-bot', 'llllvvuu'] |
bryangingechen assignee:bryangingechen |
11-32139 11 days ago |
19-28728 19 days ago |
19-52348 19 days |
29512 |
grunweg author:grunweg |
feat: check for PR titles which do not start with "feat" etc. |
We ignore draft PRs and PRs with the WIP label.
The set of checks is intentionally kept small, and could be expanded in the
future.
---
More basic version of #16303: given that mathlib's statistics will use the PR kind, let's make sure PR kinds are somewhat appropriate.
[](https://gitpod.io/from-referrer/)
|
|
365/0 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ValidatePRTitle.lean,lakefile.lean,scripts/README.md,scripts/check_title_labels.lean |
10 |
17 |
['bryangingechen', 'eric-wieser', 'github-actions', 'grunweg'] |
bryangingechen assignee:bryangingechen |
11-13676 11 days ago |
28-62511 28 days ago |
28-62488 28 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 |
8 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mitchell-horner', 'vihdzp'] |
kmill assignee:kmill |
11-2421 11 days ago |
11-5752 11 days ago |
38-24875 38 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 |
11-2397 11 days ago |
117-72909 3 months ago |
117-72885 117 days |
29362 |
stepanholub author:stepanholub |
feat:(Data/List) add the notion of period of List and prove the Periodicity Lemma |
Add the concept of the period of a List (word, sequence) which is missing, and prove its basic nontrivial property describing under which conditions list can have two periods known as the Periodicity Lemma (aka Fine-Wilf Theorem).
---
|
t-data
new-contributor
|
227/0 |
Mathlib.lean,Mathlib/Data/List/PeriodicityLemma.lean |
2 |
125 |
['Ruben-VandeVelde', 'Timeroot', 'fpvandoorn', 'github-actions', 'madvorak', 'plp127', 'stepanholub', 'wwylele'] |
nobody |
10-50787 10 days ago |
14-53601 14 days ago |
32-49799 32 days |
29369 |
vlad902 author:vlad902 |
feat(SimpleGraph): `IsSubwalk` of common Walk decompositions |
Add some helper lemmas to show that decompositions of walks are sub-walks. |
t-combinatorics |
61/17 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean |
2 |
1 |
['github-actions'] |
awainverse assignee:awainverse |
10-32153 10 days ago |
33-57630 1 month ago |
33-57674 33 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 |
10-6691 10 days ago |
40-31818 1 month ago |
40-31851 40 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 |
3 |
['github-actions', 'plp127'] |
bryangingechen assignee:bryangingechen |
9-75346 9 days ago |
22-16395 22 days ago |
22-16430 22 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
|
t-algebra label:t-algebra$ |
121/12 |
Mathlib/NumberTheory/Cyclotomic/Basic.lean |
1 |
8 |
['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash', 'xroblot'] |
ocfnash assignee:ocfnash |
9-68486 9 days ago |
9-68608 9 days ago |
22-38585 22 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
|
225/4 |
Mathlib.lean,Mathlib/CategoryTheory/Localization/Monoidal/Basic.lean,Mathlib/CategoryTheory/Localization/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Multifunctor.lean,Mathlib/CategoryTheory/Sites/Monoidal.lean |
6 |
15 |
['dagurtomas', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
mattrobball assignee:mattrobball |
9-61585 9 days ago |
9-62456 9 days ago |
65-71607 65 days |
27258 |
JovanGerb author:JovanGerb |
Imo2020 q6 |
Original PR: #23431
This PR adds a solution to IMO 2020 Q6. It follows the solution that I found when I was participating in the IMO. I used the statement formalization that was given by @jsm28.
TODO: The function `project a b p` that is defined here should be replaced with `signedDist a p (b -ᵥ a)`.
---
- [x] depends on: #27257
[](https://gitpod.io/from-referrer/)
|
IMO |
346/0 |
Archive.lean,Archive/Imo/Imo2020Q6.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
dwrensha assignee:dwrensha |
9-32153 9 days ago |
16-64240 16 days ago |
16-65522 16 days |
27416 |
joelriou author:joelriou |
feat(Algebra/Homology): Ext modules |
In this PR, we show that if `C` is a `R`-linear abelian category, then there is a `R`-module structure on the groups `Ext X Y n` for `X` and `Y` in `C` and `n : ℕ`.
---
- [x] depends on: #26031
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
t-category-theory
label:t-algebra$ |
164/12 |
Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean,Mathlib/Algebra/Homology/DerivedCategory/Linear.lean,Mathlib/CategoryTheory/Shift/ShiftedHom.lean |
5 |
6 |
['Thmoas-Guan', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] |
dagurtomas assignee:dagurtomas |
9-32152 9 days ago |
16-64253 16 days ago |
16-64374 16 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'] |
pechersky assignee:pechersky |
9-32150 9 days ago |
69-82568 2 months ago |
69-82606 69 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'] |
pechersky assignee:pechersky |
9-32149 9 days ago |
67-66878 2 months ago |
68-34010 68 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'] |
pechersky assignee:pechersky |
9-32148 9 days ago |
64-31735 2 months ago |
64-59781 64 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'] |
pechersky assignee:pechersky |
9-32147 9 days ago |
62-84625 2 months ago |
62-84665 62 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'] |
pechersky assignee:pechersky |
9-32146 9 days ago |
61-71350 2 months ago |
61-71785 61 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'] |
alreadydone assignee:alreadydone |
9-32144 9 days ago |
34-38212 1 month ago |
34-57400 34 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$ |
187/268 |
Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/InjSurj.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Algebra/Order/Ring/Opposite.lean,Mathlib/Algebra/Order/Ring/Prod.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Filter/Ring.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,MathlibTest/GRewrite.lean |
22 |
4 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
9-32142 9 days ago |
17-7371 17 days ago |
26-56384 26 days |
29877 |
Komyyy author:Komyyy |
feat: inner product of the gradient |
Also, this PR enables the `conj` notation in the file.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
37/10 |
Mathlib/Analysis/Calculus/Gradient/Basic.lean |
1 |
1 |
['github-actions'] |
hrmacbeth assignee:hrmacbeth |
9-32137 9 days ago |
16-77401 16 days ago |
16-77380 16 days |
29888 |
mcdoll author:mcdoll |
feat(Analysis/Normed): Extend densely defined LinearMaps to CLM |
This PR both adds a new and more user-friendly way to extend a CLM defined on a dense subspace.
It also moves the old definition to the same file and as a side effect, we reduce the import tree.
The moved parts are not modified except for adapting the sections and imports.
Original definition of `ContinuousLinearMap.extend` was by Zhouhang Zhou in 2019 (mathlib3 PR #1649)
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
254/86 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/Normed/Operator/Completeness.lean,Mathlib/Analysis/Normed/Operator/Extend.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean |
5 |
2 |
['github-actions', 'mcdoll'] |
hrmacbeth assignee:hrmacbeth |
9-32136 9 days ago |
16-44604 16 days ago |
16-62355 16 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 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
8-69254 8 days ago |
8-69281 8 days ago |
24-81664 24 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 |
291/0 |
Mathlib.lean,Mathlib/Topology/Convenient/GeneratedBy.lean,docs/references.bib |
3 |
10 |
['github-actions', 'joelriou', 'peabrainiac'] |
jcommelin assignee:jcommelin |
8-61735 8 days ago |
35-1403 1 month ago |
35-1380 35 days |
29207 |
YaelDillies author:YaelDillies |
chore(MonoidAlgebra/Defs): reorder, rename variables |
Sort the declarations according to typeclass assumptions, *and* according to the order in which we need them to be for #25273.
Rename the semiring variable to `R` and the monoid one to `M`. Simultaneously golf.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
461/588 |
Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Laurent.lean |
9 |
6 |
['JovanGerb', 'YaelDillies', 'github-actions'] |
dagurtomas assignee:dagurtomas |
8-32135 8 days ago |
15-61481 15 days ago |
15-61464 15 days |
29729 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: Ideal.ramificationIdx_mul_inertiaDeg_of_isLocalRing |
---
[](https://gitpod.io/from-referrer/)
|
FLT
t-number-theory
|
27/0 |
Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/DedekindDomain/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean |
3 |
8 |
['Ruben-VandeVelde', 'github-actions', 'mathlib4-merge-conflict-bot', 'tb65536', 'xroblot'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
8-32134 8 days ago |
16-9204 16 days ago |
22-3135 22 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'] |
erdOne assignee:erdOne |
8-32133 8 days ago |
20-80319 20 days ago |
20-80354 20 days |
29909 |
Vierkantor author:Vierkantor |
feat(CI): add build output to CI workflows |
This PR uses the Zulip build report script (originally developed for the nightly-regression-report workflow) to add a summary of build output to other Zulip posts about workflow results. This allows us to more easily see the origin of a failure. This requires redoing the script a little to make it a bit more flexible, and the output is slightly reformatted to become consistent across the various workflows (4 of them that post to Zulip).
We don't do so for the nightly-testing failures, since those run in a different workflow, and it would be a lot of work to access the command output from another workflow.
---
[](https://gitpod.io/from-referrer/)
|
CI |
93/69 |
.github/workflows/daily.yml,.github/workflows/nightly-docgen.yml,.github/workflows/nightly-regression-report.yml,scripts/zulip_build_report.sh |
4 |
1 |
['github-actions'] |
robertylewis assignee:robertylewis |
8-32129 8 days ago |
15-69904 15 days ago |
15-69883 15 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 |
12 |
['FernandoChu', 'github-actions', 'joelriou'] |
joelriou assignee:joelriou |
8-3438 8 days ago |
8-3442 8 days ago |
35-2078 35 days |
25974 |
scholzhannah author:scholzhannah |
feat(Topology/Compactness/CompactlyCoherentSpace): compact coherentification (k-ification) |
This PR defines the notion of turning an arbitrary topological space into a compactly coherent space. Compactly coherent spaces are commonly referred to as "compactly generated spaces" or "k-spaces" in the literature while the operation of turning a space into such as space is called the "k-ification". There are however three different notions that are described with this name. To disambiguate we use the names "compactly coherent space" and "compactcoherentification" here. See [this wikipedia page](https://en.wikipedia.org/wiki/Compactly_generated_space) for an explanation of these notions.
This PR continues the work from #25318.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25318
Co-authored-by: Floris van Doorn |
large-import
t-topology
|
174/5 |
Mathlib/Topology/Compactness/CompactlyCoherentSpace.lean |
1 |
4 |
['github-actions', 'joelriou', 'scholzhannah'] |
ADedecker assignee:ADedecker |
8-2386 8 days ago |
8-74508 8 days ago |
107-54919 107 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 |
8 |
['YaelDillies', 'eric-wieser', 'github-actions', 'riccardobrasca'] |
eric-wieser assignee:eric-wieser |
7-83917 7 days ago |
32-9338 1 month ago |
35-57081 35 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'] |
riccardobrasca assignee:riccardobrasca |
7-83855 7 days ago |
35-83943 1 month ago |
35-83968 35 days |
29314 |
Louddy author:Louddy |
feat(SkewMonoidAlgebra): Lifts for skew monoid algebras |
Lemmas about different kinds of "lifts" to `SkewMonoidAlgebra` - Similar in spirit to the MonoidAlgebra.Lift file.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
- [x] depends on: #29310
[](https://gitpod.io/from-referrer/)
|
|
238/2 |
Mathlib.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean |
3 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
riccardobrasca assignee:riccardobrasca |
7-83807 7 days ago |
9-51655 9 days ago |
9-57073 9 days |
29143 |
RemyDegenne author:RemyDegenne |
feat(Probability/Decision): basic properties of the Bayes risk |
- Comparison of the Bayes risk and the minimax risk
- Maximal value of the Bayes risk and particular cases where it equals that value
- Data-processing inequality
---
- [x] depends on: #29137
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
262/1 |
Mathlib.lean,Mathlib/Probability/Decision/Risk/Basic.lean,Mathlib/Probability/Decision/Risk/Defs.lean |
3 |
14 |
['EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
EtienneC30 assignee:EtienneC30 |
7-81048 7 days ago |
7-81048 7 days ago |
10-10540 10 days |
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)
This is a refactor of the currently existing [Mathlib.Tactic.namePolyVarsOver](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Tactic/Ring/NamePolyVars.html#Mathlib.Tactic.namePolyVarsOver). More explicitly, the current invocation `name_poly_vars x,y over R` is now `poly_variable R[x,y]`. The behaviours inherited from `name_poly_vars` are:
* We do not synthesize the necessary instances (such as `[CommRing R]`) at the point of declaration, but only when the new notations are used.
* We refer to an explicit term (`R` in the examples) which is "fixed", in the sense that:
* it is only valid for `R` explicitly, and not any other `variable` such as `S`.
* it has built-in hygiene, so if you shadow the variable by declaring a new `variable (R : Type*)`, it will still refer to the old one.
And the new behaviours are:
* Currently only `x` and `y` are new notations, but in the new tactic the whole ring `R[x,y]` is also available as notation.
* Currently only the forward direction (i.e. elaboration, going from `x` to `MvPolynomial.X 0`) is implemented, but in the new tactic we also implement the backward direction, printing `MvPolynomial.X 0` back as `x` (and `MvPolynomial (Fin 2) R` is printed as `R[x,y]`).
* Support beyond just `MvPolynomial`.
[](https://gitpod.io/from-referrer/)
|
t-meta |
652/88 |
Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/PolyVariable.lean,Mathlib/Tactic/Ring/NamePolyVars.lean,MathlibTest/PolyVariable.lean,scripts/noshake.json |
10 |
80 |
['JovanGerb', 'adamtopaz', 'eric-wieser', 'github-actions', 'j-loreaux', 'kckennylau', 'kim-em', 'plp127', 'robertmaxton42', 'sgouezel'] |
adamtopaz assignee:adamtopaz |
7-76408 7 days ago |
15-68721 15 days ago |
55-48644 55 days |
26332 |
Timeroot author:Timeroot |
feat(ModelTheory/Definability): TermDefinable functions |
This PR continues the work from #23506.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23506 |
t-logic |
145/0 |
Mathlib/Data/Rel.lean,Mathlib/ModelTheory/Definability.lean,scripts/noshake.json |
3 |
28 |
['Timeroot', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator'] |
fpvandoorn assignee:fpvandoorn |
7-73050 7 days ago |
23-64135 23 days ago |
105-25922 105 days |
26287 |
mbkybky author:mbkybky |
feat(Data/ENat/Lattice): coercion to `WithBot ℕ∞` commutes with `biSup` |
The coercion from `ℕ∞` to `WithBot ℕ∞` commutes with `biSup` and `biInf`.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
24/0 |
Mathlib/Data/ENat/Lattice.lean |
1 |
5 |
['github-actions', 'kckennylau', 'mbkybky'] |
ericrbg assignee:ericrbg |
7-68879 7 days ago |
7-68879 7 days ago |
87-70102 87 days |
25969 |
101damnations author:101damnations |
feat(RepresentationTheory/Homological/GroupHomology/Functoriality): the degree 1 part of the corestriction-coinflation exact sequence |
Given a `G`-representation `A` and a normal subgroup `S` of `G`, this PR defines the corestriction-coinflation short complex
`H₁(S, A) ⟶ H₁(G, A) ⟶ H₁(G ⧸ S, A_S)` induced by the natural inclusion `S → G` and projections `G → G / S, A → A_S`. We prove it's exact, and that the righthand map is an epimorphism.
---
- [x] depends on: #21652
- [x] depends on: #21732
- [x] depends on: #21733
- [x] depends on: #21735
- [x] depends on: #21736
- [x] depends on: #21738
- [x] depends on: #25868
- [x] depends on: #25873
- [x] depends on: #25880
- [x] depends on: #25884
- [x] depends on: #25888
- [x] depends on: #25939
- [x] depends on: #25952
[](https://gitpod.io/from-referrer/)
---
*Earlier version at #22656.*
|
t-algebra label:t-algebra$ |
262/9 |
Mathlib/Algebra/Homology/ShortComplex/ModuleCat.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Basic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean |
5 |
n/a |
['101damnations', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
7-49754 7 days ago |
unknown |
unknown |
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 |
14 |
['fweth', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
joelriou assignee:joelriou |
7-32165 7 days ago |
31-69328 1 month ago |
51-41489 51 days |
27978 |
smmercuri author:smmercuri |
feat: `InfinitePlace.Extension` API for extensions of infinite places. |
If `L / K` are fields and `v : InfinitePlace K`, then we define and add basic API for `v.Extension L` : the subtype of `w : InfinitePlace L` whose restriction to `K` matches `v`.
This PR continues the work from #24881.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24881
---
- [x] depends on: #27977 |
FLT
t-number-theory
|
49/0 |
Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
7-32163 7 days ago |
14-63340 14 days ago |
15-4841 15 days |
29941 |
themathqueen author:themathqueen |
feat(Algebra/Star): define the convolution star on linear maps |
This pr defines the _convolution_ star operation on linear maps `E →ₗ F` where `(star f) x = star (f (star x))`.
This corresponds to a map being star-preserving, i.e., a map is self-adjoint iff it is star-preserving.
The name "convolution star" is just to match the naming of the _convolution_ product in #25183.
This is scoped to `ConvolutionStar` as to not conflict with the global instance on `E →ₗ[𝕜] E` on finite-dimensional Hilbert spaces, where `star` is defined as `LinearMap.adjoint`.
In a finite-dimensional C⋆-algebra with a positive linear functional, which induces the GNS Hilbert space (TODO) and a coalgebra given by the adjoint of the multiplication map and the algebra unit map (TODO), we get a star ring where multiplication is given by the convolution product and star is given by the convolution star.
In such a space, we can then define the isomorphism `(E →ₗ[ℂ] F) ≃⋆ₐ (F ⊗[ℂ] Eᵐᵒᵖ)`, which is an important identification in the theory of non-commutative graphs.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
94/0 |
Mathlib.lean,Mathlib/Algebra/Star/Convolution.lean |
2 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
7-32155 7 days ago |
14-75779 14 days ago |
14-76540 14 days |
26464 |
joelriou author:joelriou |
feat(LinearAlgebra): generators of pi tensor products |
In this PR, we show that the `R`-module `⨂[R] i, M i` is finitely generated if the index type is finite and all `M i` are finitely generated. This follows from a more precise result about generators of `⨂[R] i, M i`.
---
This PR continues the work from #18725.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18725 |
file-removed
t-algebra
label:t-algebra$ |
270/5 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/SubtypeNeLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
10 |
21 |
['eric-wieser', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
mattrobball assignee:mattrobball |
7-10819 7 days ago |
18-54041 18 days ago |
85-17014 85 days |
30119 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: WithTop/Bot.mapD |
To replace Option.elim; working towards #27918
---
[](https://gitpod.io/from-referrer/)
|
t-order |
32/4 |
Mathlib/Order/Hom/WithTopBot.lean,Mathlib/Order/WithBot.lean |
2 |
1 |
['github-actions'] |
nobody |
7-5379 7 days ago |
7-5563 7 days ago |
7-5606 7 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 |
13 |
['D-Thomine', 'github-actions', 'leanprover-community-bot-assistant', 'lua-vr', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
urkud assignee:urkud |
6-86063 6 days ago |
44-18506 1 month ago |
50-74374 50 days |
30123 |
erdOne author:erdOne |
feat(Topology): add `IsCompact.closure_eq_nhdsKer` |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
11/0 |
Mathlib/Topology/Separation/Regular.lean |
1 |
1 |
['github-actions'] |
nobody |
6-82618 6 days ago |
6-82628 6 days ago |
6-82662 6 days |
30124 |
erdOne author:erdOne |
feat(RingTheory): `IsAdicComplete I R ↔ CompleteSpace R ∧ T2Space R` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-topology
label:t-algebra$ |
40/0 |
Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Topology.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Separation/Basic.lean |
5 |
1 |
['github-actions'] |
nobody |
6-81565 6 days ago |
6-81565 6 days ago |
6-81669 6 days |
29935 |
ineol author:ineol |
fix: cache fails when Mathlib is a nightly dependency |
Cache should on check for the nightly-testing remote when it is run from the Mathlib root and not from a repo which depends on Mathlib.
Fixes #28594
---
I don't know how to test this fix since it would need to be in a nightly release, but at least it is working when ran from from tip of master.
[](https://gitpod.io/from-referrer/)
|
new-contributor
CI
|
3/3 |
Cache/Requests.lean |
1 |
3 |
['github-actions', 'ineol', 'robin-carlier'] |
kim-em assignee:kim-em |
6-76223 6 days ago |
6-76223 6 days ago |
15-466 15 days |
27364 |
101damnations author:101damnations |
feat(RepresentationTheory/Homological/GroupCohomology): cohomology of finite cyclic groups |
Let `k` be a commutative ring, `G` a group and `A` a `k`-linear `G`-representation. Given endomorphisms `φ, ψ : A ⟶ A` such that `φ ∘ ψ = ψ ∘ φ = 0`. Denote by `Chains(A, φ, ψ)` the periodic chain complex `... ⟶ A --φ--> A --ψ--> A --φ--> A --ψ--> A ⟶ 0` and by `Cochains(A, φ, ψ)` the periodic cochain complex `0 ⟶ A --ψ--> A --φ--> A --ψ--> A --φ--> A ⟶ ...`.
When `G` is finite and generated by `g : G`, then `P := Chains(k[G], N, ρ(g) - Id)` (with `ρ` the left regular representation) is a projective resolution of `k` as a trivial representation. In this PR we show that for `A : Rep k G`, `Hom(P, A)` is isomorphic to
`Cochains(A, N, ρ_A(g) - Id)` as a complex of `k`-modules, and hence the cohomology of this complex computes group cohomology.
---
- [x] depends on: #27362
- [x] depends on: #27361
- [x] depends on: #27363
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
142/1 |
Mathlib.lean,Mathlib/RepresentationTheory/Homological/FiniteCyclic.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/FiniteCyclic.lean |
3 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
6-65242 6 days ago |
6-65576 6 days ago |
6-68145 6 days |
27365 |
101damnations author:101damnations |
feat(RepresentationTheory/Homological/GroupHomology): homology of finite cyclic groups |
Let `k` be a commutative ring, `G` a group and `A` a `k`-linear `G`-representation. Given endomorphisms `φ, ψ : A ⟶ A` such that `φ ∘ ψ = ψ ∘ φ = 0`. Denote by `Chains(A, φ, ψ)` the periodic chain complex `... ⟶ A --φ--> A --ψ--> A --φ--> A --ψ--> A ⟶ 0`.
When `G` is finite and generated by `g : G`, then `P := Chains(k[G], N, ρ(g) - Id)` (with `ρ` the left regular representation) is a projective resolution of `k` as a trivial representation.
In this PR we show that for `A : Rep k G`, `(A ⊗ P)_G` is isomorphic to `Chains(A, N, ρ_A(g) - Id)` as a complex of `k`-modules, and hence the homology of this complex computes group homology.
---
- [x] depends on: #27362
- [x] depends on: #27361
- [x] depends on: #27363
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
142/1 |
Mathlib.lean,Mathlib/RepresentationTheory/Homological/FiniteCyclic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/FiniteCyclic.lean |
3 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
6-65234 6 days ago |
6-65462 6 days ago |
6-67911 6 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 |
6-64473 6 days ago |
83-56279 2 months ago |
83-60588 83 days |
30131 |
fpvandoorn author:fpvandoorn |
feat: alias_in attribute |
* A small wrapper for adding an alias of a declaration in another namespace.
* application time `.afterCompilation` is necessary for `#eval` to work correctly
* Docstrings are copied, jump-to-definition works (no test in the test file, but tested locally)
* To be used for CW-complexes, where lemmas are frequently duplicated between `RelCWComplex` and `CWComplex`.
---
[](https://gitpod.io/from-referrer/)
cc @scholzhannah
|
t-meta |
93/0 |
Mathlib.lean,Mathlib/Util/AliasIn.lean,MathlibTest/Util/AliasIn.lean |
3 |
1 |
['github-actions'] |
nobody |
6-62140 6 days ago |
6-62140 6 days ago |
6-62119 6 days |
30130 |
Bergschaf author:Bergschaf |
feat(GroupTheory/FreeGroup/Orbit): The orbit of a point generated by parts of a free group can be "duplicated" |
Applying `w⁻¹` to the orbit generated by all elements of a free group that start with `w` yields
the orbit generated by all the words that start with every letter execpt `w⁻` (and the original point)
The orbit of a point `x` generated by a set of group elements `s` defined as all the points that can be reached by applying the elements of `s` to `x`.
A special case of this result is needed for the banach tarski theorem.
---
I tried my best to shorten the proof of orbit.duplicate, but is quite long. There are some aspects that are duplicated due to case splits but I don't konw if it is possible to avoid that. I'd apprectiate some tips on that.
And I'm not quite sure about the naming of the theorems and definitions, please let me know if you have other (better) ideas!
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
135/0 |
Mathlib.lean,Mathlib/GroupTheory/FreeGroup/Orbit.lean |
2 |
1 |
['github-actions'] |
nobody |
6-50151 6 days ago |
6-65359 6 days ago |
6-65402 6 days |
30141 |
shalliso author:shalliso |
fix(Topology/Baire/Lemmas): fix index type in isMeagre_iUnion |
The index set ι needs to be of type Sort* instead of type Type* in isMeagre_iUnion otherwise I get the following message when I try to use it:
typeclass instance problem is stuck, it is often due to metavariables
Countable ?m.27
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
1/1 |
Mathlib/Topology/GDelta/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
6-44871 6 days ago |
6-44884 6 days ago |
6-44919 6 days |
30140 |
chrisflav author:chrisflav |
feat(AlgebraicGeometry): locally directed colimits in `P.Over ⊤ S` |
We lift the colimit properties of `Scheme` to `P.Over ⊤ S` if `IsLocalAtSource P`. In particular, `P.Over ⊤ S` has pushouts along open immersions and (small) coproducts.
We also add two instances, that make
```
example [IsLocalAtSource P] {U X Y : Scheme.{u}} (f : U ⟶ X) (g : U ⟶ Y)
[IsOpenImmersion f] [IsOpenImmersion g] : HasPushout f g :=
inferInstance
```
work.
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
164/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/LimitsOver.lean,Mathlib/CategoryTheory/Limits/MorphismProperty.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean |
5 |
1 |
['github-actions'] |
nobody |
6-42770 6 days ago |
6-46068 6 days ago |
6-46046 6 days |
29728 |
ADA-Projects author:ADA-Projects |
feat(Topology/KrullDimension): add subspace dimension inequality |
This PR extends topological Krull dimension theory with basic results about subspaces.
- Add mapIrreducibleClosed function for canonical maps between irreducible closed sets
- Prove injectivity and strict monotonicity of these maps
- Establish partial order structure on IrreducibleCloseds
- Prove topKrullDim_subspace_le theorem showing dim(Y) ≤ dim(X) for subspaces
**Update (per reviewer feedback):**
Reorganized code structure as requested:
- Moved `IrreducibleCloseds` extensions from `KrullDimension.lean` to `Sets/Closeds.lean`
- This includes `PartialOrder` instance, `map` functions, and embedding lemmas
- Better modularity: other files can now use `IrreducibleCloseds` without importing Krull dimension theory
The main result `topologicalKrullDim_subspace_le` remains the same - any subspace Y has dim(Y) ≤ dim(X).
Some sections of this code (and documentation) were generated with the help of Gemini.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
146/20 |
Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sets/Closeds.lean |
2 |
9 |
['ADA-Projects', 'fpvandoorn', 'github-actions', 'kim-em'] |
PatrickMassot assignee:PatrickMassot |
6-32161 6 days ago |
14-1601 14 days ago |
14-18322 14 days |
29954 |
kckennylau author:kckennylau |
feat(RingTheory): an algebra that is an invertible module is isomorphic to the base ring |
This PR considers the case where we have an `R`-algebra `A` which is also an invertible `R`-module, then constructs an isomorphism between `R` and `A` as `R`-algebras:
```lean
variable (R A : Type*) [CommSemiring R] [Semiring A] [Algebra R A] [Module.Invertible R A]
def algEquivOfRing : R ≃ₐ[R] A :=
```
---
Zulip: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/an.20algebra.20that.20is.20module-invertible.20is.20the.20base.20ring/with/541351797
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
90/0 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/RingTheory/PicardGroup.lean |
2 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
6-32156 6 days ago |
13-68527 13 days ago |
14-28113 14 days |
29964 |
Vierkantor author:Vierkantor |
feat(TacticAnalysis): check if we are in a `try`/`anyGoals` context |
This PR adds a check if the tactic is being run in a `try` or `anyGoals` call, so that we do not add a warning for the original tactic failing in this context. This was the source of a few "original tactic failed" in the `grind` regression reports.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
71/31 |
Mathlib/Tactic/TacticAnalysis.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean |
3 |
1 |
['github-actions'] |
adamtopaz assignee:adamtopaz |
6-32154 6 days ago |
14-4550 14 days ago |
14-4529 14 days |
29967 |
kim-em author:kim-em |
chore: fix longest pole utilities, and verify in CI |
We should consider outright deleting these. The fact that they were broken is good evidence they haven't been used recently. Sebastian also has a good replacement available (that is aware of the module system), although I'm not sure it's deployed yet. |
CI |
26/22 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,LongestPole/Main.lean,LongestPole/Unused.lean |
6 |
2 |
['bryangingechen', 'github-actions'] |
bryangingechen assignee:bryangingechen |
6-32153 6 days ago |
13-82155 13 days ago |
13-82192 13 days |
29976 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(Topology/Semicontinuous): lower bounds on compact sets |
Prove that lower semicontinuous functions attain their lower bound on nonempty compact sets, and the analogous lemma for upper semicontinuous functions.
By the way, add several basic results for semicontinuous functions, relating the WithinAt, At, On versions.
Co-authored with @ADedecker
---
[](https://gitpod.io/from-referrer/)
|
|
300/1 |
Mathlib/Order/Filter/Extr.lean,Mathlib/Topology/Semicontinuous.lean |
2 |
1 |
['github-actions'] |
TwoFX assignee:TwoFX |
6-32151 6 days ago |
13-51516 13 days ago |
13-51493 13 days |
26219 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory/KrullDimension): Krull Dimension of quotient regular sequence |
We show that if M is a finite module over a Noetherian local ring R, [r₁, …, rₙ] is an M-sequence, then dim M⧸(r₁, …, rₙ)M + n = dim M.
Co-authored-by: Yongle Hu @mbkybky
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
225/15 |
Mathlib.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean,Mathlib/RingTheory/Jacobson/Ideal.lean,Mathlib/RingTheory/KrullDimension/Module.lean,Mathlib/RingTheory/KrullDimension/Regular.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Basic.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Support.lean |
9 |
n/a |
['Thmoas-Guan', 'chrisflav', 'github-actions', 'leanprover-community-bot-assistant', 'mbkybky'] |
chrisflav assignee:chrisflav |
6-27985 6 days ago |
unknown |
unknown |
28241 |
alreadydone author:alreadydone |
chore(Data): `SetLike Finset` |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
56/65 |
Counterexamples/AharoniKorman.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Combinatorics/Additive/RuzsaCovering.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/Finset/Attach.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Union.lean,Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Probability/Independence/Kernel.lean,Mathlib/RingTheory/Ideal/Quotient/Index.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/Topology/Separation/Basic.lean |
27 |
5 |
['alreadydone', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] |
nobody |
6-27227 6 days ago |
6-27227 6 days ago |
39-14199 39 days |
29558 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): definition of global dimension |
In this PR, we define projective dimension and global dimension using `CategoryTheory.HasProjectiveDimensionLT`
---
- [ ] depends on: #29882
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
212/0 |
Mathlib.lean,Mathlib/RingTheory/GlobalDimension.lean |
2 |
7 |
['Thmoas-Guan', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
6-25792 6 days ago |
14-76289 14 days ago |
15-78546 15 days |
30148 |
mbkybky author:mbkybky |
chore(RingTheory/Spectrum/Prime/Module): golf `stableUnderSpecialization_support` using `mem_support_mono` |
Golf [Module.stableUnderSpecialization_support](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Spectrum/Prime/Module.html#Module.stableUnderSpecialization_support) using [Module.mem_support_mono](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Support.html#Module.mem_support_mono).
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
2/6 |
Mathlib/RingTheory/Spectrum/Prime/Module.lean |
1 |
1 |
['github-actions'] |
nobody |
6-23447 6 days ago |
6-23460 6 days ago |
6-23496 6 days |
30003 |
vlad902 author:vlad902 |
feat(Order): helper lemmas for `IsChain`/`IsAntichain` |
These were useful in formalizing Dilworth's theorem.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
16/0 |
Mathlib/Order/Antichain.lean,Mathlib/Order/Preorder/Chain.lean |
2 |
6 |
['github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vlad902'] |
nobody |
6-13218 6 days ago |
6-13247 6 days ago |
12-55990 12 days |
29835 |
vlad902 author:vlad902 |
feat(Order): add `IsMaxAntichain` and some lemmas for `IsMaxChain` |
Define `IsMaxAntichain` to be the antichain analogue of `IsMaxChain` and add some useful lemmas to both that I needed for proving Mirsky's theorem.
- [ ] depends on: #29834
---
[](https://gitpod.io/from-referrer/)
|
t-order |
51/0 |
Mathlib/Order/Antichain.lean,Mathlib/Order/Preorder/Chain.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
6-12755 6 days ago |
6-48855 6 days ago |
6-49182 6 days |
30069 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph): add lemma `IsTree.dist_ne_of_adj` and necessary lemmas |
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
34/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean |
1 |
7 |
['github-actions', 'themathqueen', 'vlad902'] |
nobody |
6-5853 6 days ago |
9-65348 9 days ago |
9-71100 9 days |
30120 |
FernandoChu author:FernandoChu |
feat(CategoryTheory): Pullback of equalizer is an equalizer |
We show that the pullback of an equalizer (seen as a subobject) along some morphism `h` is the subobject that comes from the equalizer of the two original arrows precomposed with `h`. A `TODO` was completed in the process.
This is a prerequisite of the [MTT project](https://github.com/kyoDralliam/model-theory-topos), which aims to use the internal language of toposes to reason about e.g. sheaves. |
large-import
t-category-theory
|
112/2 |
Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/PullbackCone.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Limits.lean |
5 |
3 |
['FernandoChu', 'github-actions', 'joelriou'] |
nobody |
5-85546 5 days ago |
5-85546 5 days ago |
6-4785 6 days |
30152 |
YaelDillies author:YaelDillies |
feat(Filter): a finite set is eventually a subset of any exhaustion |
This will be used to prove a sort of compactness result for finite minors of a graph.
From the ProofBench workshop
---
[](https://gitpod.io/from-referrer/)
|
t-order |
4/0 |
Mathlib/Order/Filter/Finite.lean |
1 |
2 |
['github-actions', 'kckennylau'] |
nobody |
5-84811 5 days ago |
6-8469 6 days ago |
6-8464 6 days |
30158 |
nicolaviolette author:nicolaviolette |
feat: combinatorics simplegraph basic |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
9/4 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
5-84295 5 days ago |
5-84303 5 days ago |
5-84338 5 days |
30121 |
idontgetoutmuch author:idontgetoutmuch |
Principal fiber bundle core |
A structure capturing what it means to be a principal fibre bundle.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-differential-geometry
|
227/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/PrincipalFiberBundle/PrincipalGBundle.lean |
2 |
5 |
['github-actions', 'grunweg'] |
nobody |
5-83243 5 days ago |
6-9817 6 days ago |
7-2770 7 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 |
160/8 |
Mathlib.lean,Mathlib/Probability/Kernel/Composition/Comp.lean,Mathlib/Probability/Kernel/Composition/CompMap.lean,Mathlib/Probability/Kernel/Irreducible.lean,docs/references.bib |
5 |
6 |
['RemyDegenne', 'bwangpj', 'github-actions'] |
RemyDegenne assignee:RemyDegenne |
5-78090 5 days ago |
15-67248 15 days ago |
22-19887 22 days |
30163 |
NotWearingPants author:NotWearingPants |
feat(Data/Set/Lattice): useful equivalences of `biUnion` and `biInter` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
25/0 |
Mathlib/Data/Set/Lattice.lean |
1 |
1 |
['github-actions'] |
nobody |
5-73409 5 days ago |
5-73409 5 days ago |
5-73460 5 days |
27400 |
dleijnse author:dleijnse |
feat: define geometrically reduced algebras |
Define geometrically reduced algebras, and prove that if all finitely generated subalgebras of an algebra `A` are geometrically reduced, then `A` is geometrically reduced.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
117/0 |
Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/RingTheory/Nilpotent/GeometricallyReduced.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
6 |
72 |
['dleijnse', 'github-actions', 'joelriou', 'kckennylau'] |
joelriou assignee:joelriou |
5-72514 5 days ago |
5-72551 5 days ago |
72-84364 72 days |
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/)
|
maintainer-merge
new-contributor
t-analysis
|
36/0 |
Mathlib.lean,Mathlib/Analysis/SpecificLimits/Fibonacci.lean |
2 |
7 |
['NotWearingPants', 'Ruben-VandeVelde', 'github-actions', 'kckennylau'] |
nobody |
5-69252 5 days ago |
5-69253 5 days ago |
13-38230 13 days |
30004 |
luigi-massacci author:luigi-massacci |
feat(MeasureTheory/Integral/TestAgainst): integrating BCFs against a finite measure or an L1Loc map as CLMs |
This PR merges #29511 and #29748. Create a new file `TestAgainst.lean` with definitions wrapping integration against a finite measure or a locally integrable map as continuous linear maps on bounded continuous functions.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
t-analysis
|
113/1 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/TestAgainst.lean |
3 |
38 |
['EtienneC30', 'github-actions', 'j-loreaux', 'luigi-massacci'] |
EtienneC30 assignee:EtienneC30 |
5-65688 5 days ago |
5-65869 5 days ago |
11-84220 11 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 |
5-64792 5 days ago |
49-69351 1 month ago |
96-54219 96 days |
30171 |
smmercuri author:smmercuri |
feat(DedekindDomain/AdicValuation): `le_one` lemmas for `HeightOneSpectrum.valuation` and specialisations to `Rat` |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
53/0 |
Mathlib/RingTheory/DedekindDomain/AdicValuation.lean |
1 |
1 |
['github-actions'] |
nobody |
5-62980 5 days ago |
5-63097 5 days ago |
5-63129 5 days |
29856 |
mans0954 author:mans0954 |
feat(Analysis/Normed/Ring/Basic): Add NonUnitalNonAssocSeminormedRing and NonUnitalNonAssocNormedRing |
Adds the classes `NonUnitalNonAssocSeminormedRing` and `NonUnitalNonAssocNormedRing` and relaxes the `NonUnitalSeminormedRing` section to `NonUnitalNonAssocSeminormedRing`.
Examples of non-unital non-associative normed rings include non-untial JB-algebras and non-unital JB*-algebras.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
110/11 |
Mathlib/Analysis/Normed/Ring/Basic.lean,MathlibTest/TCSynth.lean |
2 |
1 |
['github-actions'] |
ADedecker assignee:ADedecker |
5-62344 5 days ago |
17-72119 17 days ago |
17-72130 17 days |
30180 |
mcdoll author:mcdoll |
feat(Analysis/Calculus): add a version of bounding iterated derivatives of compositions with fewer assumptions on differentiability |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
17/3 |
Mathlib/Analysis/Calculus/ContDiff/Bounds.lean |
1 |
1 |
['github-actions'] |
nobody |
5-58187 5 days ago |
5-58193 5 days ago |
5-58232 5 days |
30137 |
vlad902 author:vlad902 |
feat(SimpleGraph): subsingleton/nontrivial helper lemmas |
Helper lemmas I found useful in mutliple PRs for dispatching trivial cases.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
22/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
5-51658 5 days ago |
6-49248 6 days ago |
6-49284 6 days |
30173 |
kckennylau author:kckennylau |
chore: generalise extensionality lemmas for localization |
This PR generalises some extensionality lemmas for morphisms from localization. The codomains are generalised from `CommMonoid` to `Monoid`, and from `CommSemiring` to `Semiring`. Then two new extensionality lemmas for algebra morphisms are added.
Currently `Submonoid.LocalizationMap.epic_of_localizationMap` says that if `M` and `P` are commutative monoids, and `f : M →* N` is a localization map for a submonoid `S`, then two monoid homs `j k : N →* P` are equal if they are equal after composing with `f`. This PR relaxes the assumption on `P` from `CommMonoid` to `Monoid`. Similar generalisations are made in other places, and then two new lemmas for `AlgHom` are added.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
37/18 |
Mathlib/Algebra/Category/Ring/Instances.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean |
5 |
1 |
['github-actions'] |
nobody |
5-51442 5 days ago |
5-60541 5 days ago |
5-60527 5 days |
29705 |
llllvvuu author:llllvvuu |
feat(LinearAlgebra/Matrix): formula for charpoly of an inverse matrix |
Co-authored-by: Aristotle Harmonic
---
- [x] depends on: #29709 to re-organized some imports
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
14/0 |
Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean |
1 |
7 |
['github-actions', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
Vierkantor assignee:Vierkantor |
5-50325 5 days ago |
13-64953 13 days ago |
13-74511 13 days |
29284 |
Jlh18 author:Jlh18 |
feat(CategoryTheory): naturality lemmas for Core construction |
Lemmas for PR #29283 to prove that `Core` is the right adjoint to the forgetful functor from `Cat` to `Grpd`.
These lemmas are more general than that setting, and need not be stated in the bundled format.
- [ ] depends on: #29250
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
62/0 |
Mathlib/CategoryTheory/Core.lean |
1 |
14 |
['Jlh18', 'adomani', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
5-45296 5 days ago |
5-45296 5 days ago |
19-59117 19 days |
29004 |
euprunin author:euprunin |
chore: change from `:= by rfl` to `:= rfl` |
For `@[simp]` lemmas this makes them usable by `dsimp`; others are stylistic cleanup (but they're now "`dsimp`-ready" if tagged later).
---
[](https://gitpod.io/from-referrer/)
|
|
138/242 |
Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Group/AddChar.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/GroupWithZero/ProdHom.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/Single.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Order/Hom/MonoidWithZero.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Derivation.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Algebra/Vertex/VertexOperator.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/Span.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean,Mathlib/CategoryTheory/Distributive/Monoidal.lean,Mathlib/CategoryTheory/Limits/Presheaf.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Cospan.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/CategoryTheory/Monoidal/Mod_.lean,Mathlib/CategoryTheory/Yoneda.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/PFunctor/Multivariate/Basic.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Subtype.lean,Mathlib/Geometry/Manifold/Bordism.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Pi.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/NumberTheory/FLT/Polynomial.lean,Mathlib/NumberTheory/FactorisationProperties.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Functoriality.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/Tactic/Module.lean,Mathlib/Tactic/NormNum/PowMod.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,Mathlib/Topology/Category/Profinite/Nobeling/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling/ZeroLimit.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/ContinuousMap/Units.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/PartitionOfUnity.lean,Mathlib/Topology/Sets/Closeds.lean |
95 |
21 |
['eric-wieser', 'euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
5-44561 5 days ago |
5-44584 5 days ago |
15-30851 15 days |
23181 |
YaelDillies author:YaelDillies |
refactor(Topology/UniformSpace): use `SetRel` |
What's left in `UniformSpace.Defs` is precisely the theory of the uniformity filter.
The motivation is that the theory of coverings and packings in both high dimensional probability and dynamics can be based on entourages, while they have little to do with the uniformity filter (indeed, entourages are in a sense a quantitative version of the uniformity filter).
---
- [x] depends on: #25587
- [x] depends on: #26988
[](https://gitpod.io/from-referrer/)
|
t-topology |
660/618 |
Mathlib/Data/Rel.lean,Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/Dynamics/TopologicalEntropy/Subset.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/MeasureTheory/Measure/RegularityCompacts.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/UniformSpace/Ascoli.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean,Mathlib/Topology/UniformSpace/Compact.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Completion.lean,Mathlib/Topology/UniformSpace/Defs.lean,Mathlib/Topology/UniformSpace/DiscreteUniformity.lean,Mathlib/Topology/UniformSpace/Equicontinuity.lean,Mathlib/Topology/UniformSpace/HeineCantor.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean,Mathlib/Topology/UniformSpace/OfFun.lean,Mathlib/Topology/UniformSpace/Separation.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean,Mathlib/Topology/UniformSpace/Ultra/Completion.lean,Mathlib/Topology/UniformSpace/Ultra/Constructions.lean,Mathlib/Topology/UniformSpace/UniformApproximation.lean,Mathlib/Topology/UniformSpace/UniformConvergence.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean |
30 |
35 |
['ADedecker', 'PatrickMassot', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
ADedecker assignee:ADedecker |
5-32169 5 days ago |
12-71950 12 days ago |
88-48469 88 days |
29356 |
Paul-Lez author:Paul-Lez |
feat(Mathlib/FieldTheory/RatFunc/Basic): add characteristic instances for `RatFunc` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
63/17 |
Mathlib.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/IsSimpleRing.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/FieldTheory/Differential/Liouville.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean |
11 |
8 |
['Paul-Lez', 'eric-wieser', 'github-actions'] |
kim-em assignee:kim-em |
5-32166 5 days ago |
34-42011 1 month ago |
34-42042 34 days |
29863 |
FernandoChu author:FernandoChu |
feat(CategoryTheory): Colimits in `Subobject X` |
Adds colimits to `Subobject X`. Together with https://github.com/leanprover-community/mathlib4/pull/29253, this will show existence of lubs in the poset of subobjects.
This is a prerequisite of the [MTT project](https://github.com/kyoDralliam/model-theory-topos), which aims to use the internal language of toposes to reason about e.g. sheaves. |
t-category-theory |
71/0 |
Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
riccardobrasca assignee:riccardobrasca |
5-32164 5 days ago |
13-7436 13 days ago |
17-61005 17 days |
29982 |
hrmacbeth author:hrmacbeth |
feat: new `isolate` tactic |
This PR adds a new tactic, `isolate`, which "solves for x" in an equation or relation. For example:
```lean
example (a b : ℝ) (f : ℝ → ℝ) : 5 * f a - 3 < b := by
isolate f a
-- new goal: `⊢ f a < (b + 3) / 5`
```
The `isolate` tactic may generate side goals, if these are necessary to justify the transformation. The tactic will attempt to justify such side goals using `positivity` (as in the above example), unification, or type class inference, but if unsuccessful will present them to the user. For example:
```lean
example (a b c : ℝ) (f : ℝ → ℝ) : c * f a - 3 < b := by
isolate f a
-- new goal: `⊢ f a < (b + 3) / c`
-- second (side) new goal: `⊢ 0 < c`
```
The `isolate` tactic is extensible. Coverage may be extended to new relations and new operations-to-be-undone by tagging appropriate lemmas with the new `@[isolate]` attribute.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-meta
|
863/3 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Isolate.lean,Mathlib/Tactic/Isolate/Core.lean,Mathlib/Tactic/Isolate/Tagging.lean,Mathlib/Tactic/Relation/Symm.lean,MathlibTest/Isolate/Heavyweight.lean,MathlibTest/Isolate/Lightweight.lean,scripts/noshake.json |
12 |
23 |
['JovanGerb', 'PatrickMassot', 'github-actions', 'hrmacbeth', 'kim-em'] |
JovanGerb assignee:JovanGerb |
5-32160 5 days ago |
12-44303 12 days ago |
12-44287 12 days |
29999 |
jeremypparker author:jeremypparker |
chore(Analysis/Fourier/AddCircle): remove stale comment |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
0/1 |
Mathlib/Analysis/Fourier/AddCircle.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions', 'jeremypparker'] |
sgouezel assignee:sgouezel |
5-32158 5 days ago |
13-906 13 days ago |
13-940 13 days |
29788 |
robertmaxton42 author:robertmaxton42 |
feat (Topology): adds bundled continuous maps for sum, sigma, subtype, mapsto, inclusion |
Adds a collection of bundled continuous maps and homeomorphisms, and helper lemmas for working with their compositions.
Bundling of existing continuity lemmas:
* `ContinuousMap.subtypeVal`
* `ContinuousMap.inl` and `.inr`; `ContinuousMap.sum` bundles `Continuous.sumElim`; `ContinuousMap.sumMap`, which is a quotient map when both components are quotient maps
* `ContinuousMap.sigmaMap`, which is a quotient map when given a family of quotient maps
* `ContinuousMap.mapsTo` bundles `ContinuousOn.restrict_mapsTo`
New functions:
* `ContinuousMap.preimageValIncl : C(s ↓∩ t, t)` and `.inclPreimageVal C(s, t ↓∩ s)`, and their unbundled functions in `Set`
* `Homeomorph.Set.preimageVal` witnesses that the two are opposite directions of a homeomorphism
* Descending from a coherent set of subspaces is a quotient map
The primary use for these bundled maps is easy composition and the ability to introduce them by rewriting right-to-left: it is much more convenient to write `subtypeVal.comp _` than to use either the anonymous constructor (which doesn't work in any position without an expected type) or `ContinuousMap.mk` (which will disappear as soon as it is coerced to a function, making it difficult to use in mixed-categorical contexts where many maps can only be reduced by introducing a composition with some other map.)
This PR is part of a family of PRs that ultimately construct transformations in both directions between the concrete `Topology.RelCWComplex` and abstract `TopCat.RelativeCWComplex`. `.mapsTo` in particular bundles together a couple of potentially nontrivial proofs in a way that makes them easy to refer to later; I use it and `.subtypeVal` particularly heavily later in a dependent PR to build the cell inclusion maps on both sides of the equivalence.
---
[](https://gitpod.io/from-referrer/)
|
large-import |
226/3 |
Mathlib/Data/Set/Subset.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Coherent.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/ContinuousMap/Basic.lean,scripts/noshake.json |
7 |
6 |
['adamtopaz', 'github-actions', 'robertmaxton42'] |
adamtopaz assignee:adamtopaz |
5-29641 5 days ago |
5-29661 5 days ago |
20-25742 20 days |
30187 |
CoolRmal author:CoolRmal |
chore(Topology/MeasureTheory/Probability): Rename the file for compactly supported continuous functions. |
Move two lemmas `essSup_uniformOn_eq_ciSup` and `essInf_cond_count_eq_ciInf` from Mathlib/MeasureTheory/Function/EssSup.lean to Mathlib/Probability/UniformOn.lean in order to avoid warnings for import in the PR [feat(MeasureTheory): Uniqueness of Measures in the Riesz–Markov–Kakutani Representation Theorem](https://github.com/leanprover-community/mathlib4/pull/28061#top).
Create a new folder named CompactlySupported and moved two related files into this folder.
---
[](https://gitpod.io/from-referrer/)
|
file-removed
new-contributor
|
17/15 |
Mathlib.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Basic.lean,Mathlib/Probability/Distributions/Fernique.lean,Mathlib/Probability/Moments/IntegrableExpMul.lean,Mathlib/Probability/UniformOn.lean,Mathlib/Topology/ContinuousMap/CompactlySupported/Basic.lean,Mathlib/Topology/ContinuousMap/CompactlySupported/Bounded.lean |
8 |
1 |
['github-actions'] |
nobody |
5-9080 5 days ago |
5-11047 5 days ago |
5-11093 5 days |
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
---
- [x] depends on: #30157
[](https://gitpod.io/from-referrer/)
|
toric
t-category-theory
|
71/9 |
Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean |
3 |
12 |
['YaelDillies', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
joelriou assignee:joelriou |
5-3790 5 days ago |
5-4197 5 days ago |
34-81003 34 days |
29719 |
kim-em author:kim-em |
feat(Topology/Algebra/Group/Units): add topological properties of units |
## Summary
Add lemmas about units in topological monoids:
- `Submonoid.units_isOpen`: units of open submonoids are open in the units topology
- `ContinuousMulEquiv.piUnits`: homeomorphism between units of a product and product of units
This content was prepared by Claude from the FLT project.
Source file: `/Users/kim/projects/lean/flt/FLT/Mathlib/Topology/Algebra/Group/Units.lean`
GitHub source: https://github.com/ImperialCollegeLondon/FLT/blob/main/FLT/Mathlib/Topology/Algebra/Group/Units.lean
🤖 Generated with [Claude Code](https://claude.ai/code) |
FLT
t-topology
|
53/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Group/Units.lean |
2 |
7 |
['Ruben-VandeVelde', 'github-actions', 'kim-em', 'plp127'] |
ADedecker assignee:ADedecker |
5-2323 5 days ago |
5-2323 5 days ago |
12-45492 12 days |
29376 |
vlad902 author:vlad902 |
feat(SimpleGraph): helper lemmas for `Walk.IsSubwalk` |
|
t-combinatorics |
29/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
awainverse assignee:awainverse |
5-1935 5 days ago |
33-9852 1 month ago |
33-9887 33 days |
25814 |
vlad902 author:vlad902 |
feat(SimpleGraph): weaker condition for paths in acyclic graphs |
`IsAcyclic.isPath_iff_chain'` defines a weaker condition for proving that a walk is a path, in particular it shows that rather than proving that all vertices in the support of a walk are distinct, one must only show that consecutive edges are distinct (e.g. every other vertex must be distinct.) This leads to a simple corollary that trails are also paths in acyclic graphs.
I had a need for this when formalizing Cayley graphs, since this condition maps cleanly onto words in free groups being reduced.
---
*This PR continues the work from #25630.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/25630* |
t-combinatorics |
38/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean |
2 |
2 |
['github-actions', 'vlad902'] |
kmill assignee:kmill |
5-931 5 days ago |
118-70744 3 months ago |
118-70719 118 days |
29164 |
vlad902 author:vlad902 |
feat(SimpleGraph): Hall's Marriage Theorem for bipartite graphs |
Derive the graph theoretic proof of Hall's marriage theorem from the combinatorial version.
Note that I specifically implement this for the more general case of infinite graphs that are locally finite (e.g. every vertex has only finite neighbors.) As a result, the theorem depends on some category theoretic infrastructure required for the infinite combinatorial formulation of Hall's Marriage Theorem and hence I've placed the theorems into their own file to avoid requiring it in `Matching.lean`
- [ ] depends on: #29162 |
t-combinatorics |
130/7 |
Mathlib.lean,Mathlib/Combinatorics/Hall/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,docs/1000.yaml |
5 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
b-mehta assignee:b-mehta |
4-78616 4 days ago |
25-21161 25 days ago |
25-24385 25 days |
30200 |
yonggyuchoimath author:yonggyuchoimath |
feat(CategoryTheory/Limits/Opposites) : add opposites of coforks and forks |
This PR adds missing definitions surrounding `op` and `unop` of coforks and forks.
In `CategoryTheory/Limits/Shapes/Equalizers.lean`:
- `CoforkOfπ.ext` : Adds an extensionality `def` corresponding to theexisting `ForkOfι.ext`
In `CategoryTheory/Limits/Opposites.lean`:
- `parallelPairOp`: the dual behavior for `parallelPair` (similar to `spanOp`, `cospanOp`)
- `pullbackIsoOpPushout`: the dual version of the existing `pullbackIsoUnopPushout`
- `Cofork.unop`, `Cofork.op`, `Fork.unop`, `Fork.op`: define `unop` and `op` of `Cofork` and `Fork`
- `isColimitEquivIsLimitOp`: A cofork in `C` is a colimit if and only if its opposite is limit in `Cᵒᵖ`
- `isColimitOfπEquivIsLimitOp`: `Cofork.ofπ π` is colimit in `C` if and only if `Fork.ofι π.op` is limit in `Cᵒᵖ`
Relevant dual statements have also been added.
Further notes:
- line 1187, 1215 : I was not able to remove the lengthy `simp only`
- The file length is now almost 1500. |
t-category-theory |
365/0 |
Mathlib/CategoryTheory/Limits/Opposites.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean |
2 |
1 |
['github-actions'] |
nobody |
4-61630 4 days ago |
4-61936 4 days ago |
4-61970 4 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 |
21 |
['YaelDillies', 'github-actions', 'staroperator', 'vihdzp'] |
YaelDillies assignee:YaelDillies |
4-56233 4 days ago |
4-56233 4 days ago |
33-49338 33 days |
30206 |
NotWearingPants author:NotWearingPants |
feat(Combinators/SimpleGraph/Hamiltonian): `p.support.length = Fintype.card α` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
easy
|
8/0 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
2 |
['NotWearingPants', 'github-actions'] |
nobody |
4-55999 4 days ago |
4-56010 4 days ago |
4-56052 4 days |
30209 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: some TwoSidedIdeal.span lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
FLT
|
16/0 |
Mathlib/RingTheory/TwoSidedIdeal/Operations.lean |
1 |
1 |
['github-actions'] |
nobody |
4-51047 4 days ago |
4-51139 4 days ago |
4-51175 4 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 |
324/0 |
Mathlib.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean |
4 |
39 |
['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'tb65536'] |
alreadydone assignee:alreadydone |
4-49614 4 days ago |
65-592 2 months ago |
87-30332 87 days |
30215 |
NotWearingPants author:NotWearingPants |
feat(Data/List/NodupEquivFin): add equiv with `count = 1` hypothesis |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
7/2 |
Mathlib/Data/List/NodupEquivFin.lean |
1 |
2 |
['NotWearingPants', 'github-actions'] |
nobody |
4-42820 4 days ago |
4-42820 4 days ago |
4-43205 4 days |
30214 |
NotWearingPants author:NotWearingPants |
feat(Data/List/Basic): add `Fin` variants of `*mem_iff_getElem` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
11/0 |
Mathlib/Data/List/Basic.lean |
1 |
2 |
['NotWearingPants', 'github-actions'] |
nobody |
4-42749 4 days ago |
4-42749 4 days ago |
4-43502 4 days |
30144 |
alreadydone author:alreadydone |
feat(Data/Nat): reducible binaryRec |
+ Redefine `Nat.binaryRec` to allow kernel reduction.
+ Move some lemmas from Data/Nat/Bitwise to Data/Nat/BinaryRec.
+ Use `nsmulBinRec` for nsmul/zsmul on elliptic curves.
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-algebra
label:t-algebra$ |
77/56 |
Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/Nat/BitIndices.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Size.lean |
8 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
4-40976 4 days ago |
4-70914 4 days ago |
5-32018 5 days |
30210 |
wwylele author:wwylele |
feat(RingTheory/PowerSeries): Multipliable (1 + f i) for when the order tends to infinity |
As `Summable f` and `Multipliable (1 + f ·)` are often related, this shares the same condition as `summable_of_tendsto_order_atTop_nhds_top`
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
26/0 |
Mathlib/RingTheory/PowerSeries/PiTopology.lean |
1 |
2 |
['b-mehta', 'github-actions'] |
nobody |
4-37704 4 days ago |
4-48606 4 days ago |
4-48641 4 days |
30217 |
NotWearingPants author:NotWearingPants |
feat(Data/List/GetD): `getD` is surjective iff every element is in the list |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
19/0 |
Mathlib/Data/List/GetD.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
4-37651 4 days ago |
4-42566 4 days ago |
4-42603 4 days |
30213 |
NotWearingPants author:NotWearingPants |
feat(Data/List/GetD): golf and add lemmas for `get` and `getElem?.get` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
18/16 |
Mathlib/Data/List/GetD.lean |
1 |
8 |
['NotWearingPants', 'github-actions', 'themathqueen'] |
nobody |
4-35887 4 days ago |
4-45028 4 days ago |
4-45226 4 days |
28893 |
joelriou author:joelriou |
refactor(AlgebraicTopology): redefine the topological simplex using the convexity API |
Before this PR, the n-dimensional topological simplex (in the `AlgebraicTopology` hierarchy) was defined as a subtype of `Fin (n + 1) → ℝ≥0`, which did not interact well with the convexity API which assumes the ambient type is a vector space. In this PR, we redefine the topological simplex functor (as a cosimplicial object in `TopCat`) using the already existing `stdSimplex` from `Analysis.Convex`.
---
- [x] depends on: #28891
- [x] depends on: #28869
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
t-convex-geometry
large-import
|
91/108 |
Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SingularSet.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Analysis/Convex/StdSimplex.lean |
4 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
robin-carlier assignee:robin-carlier |
4-32133 4 days ago |
39-63832 1 month ago* |
0-2609 43 minutes* |
29501 |
Vierkantor author:Vierkantor |
test(TacticAnalysis): ensure `classical`'s effects are picked up |
This test case used to fail, and needed a fix to the `classical` tactic in the standard library:
- [x] depends on: https://github.com/leanprover/lean4/pull/10332
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-meta
|
10/0 |
MathlibTest/TacticAnalysis.lean |
1 |
6 |
['Vierkantor', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
4-32131 4 days ago |
11-83949 11 days ago |
14-4443 14 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` stopped updating environment extensions since [lean4#6325](https://github.com/leanprover/lean4/pull/6325), and that is exactly what we use to store linter sets. At the time of writing, `importModules` might be a suitable replacement (but this is not very safe, and not documented to be stable). Instead, write a small elaborator returning the environment at the point of elaboration, and use that instead.
---
- [x] depends on: #29584
- [x] depends on: #29585
- [x] depends on: #29586
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-meta
|
28/12 |
scripts/lint-style.lean |
1 |
13 |
['Vierkantor', 'adomani', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot'] |
dwrensha assignee:dwrensha |
4-32130 4 days ago |
11-86121 11 days ago |
20-72522 20 days |
30038 |
JovanGerb author:JovanGerb |
feat(push): `@[push]` annotations for `fun` |
This PR adds the annotations for the tactics `push fun _ ↦ _` and `pull fun _ ↦ _` and the simprocs `pushFun` and `pullFun`.
---
[](https://gitpod.io/from-referrer/)
|
|
28/6 |
Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Data/Nat/Cast/Basic.lean,Mathlib/Order/Lattice.lean,MathlibTest/push.lean |
4 |
1 |
['github-actions'] |
j-loreaux assignee:j-loreaux |
4-32126 4 days ago |
11-36171 11 days ago |
11-36148 11 days |
30042 |
JovanGerb author:JovanGerb |
feat(push): `@[push]` attributes for `∈` in `Set`, `Finset` and `Multiset` |
This PR adds `@[push]` annotations for the membership relations, for `Set`, `Finset` and `Multiset`.
---
[](https://gitpod.io/from-referrer/)
|
|
169/104 |
Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/ListOfFn.lean,Mathlib/Algebra/Order/Group/Multiset.lean,Mathlib/Data/DFinsupp/Interval.lean,Mathlib/Data/Finmap.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Disjoint.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Finset/Pi.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Range.lean,Mathlib/Data/Finset/SDiff.lean,Mathlib/Data/Finset/Sigma.lean,Mathlib/Data/Finset/Sum.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Multiset/AddSub.lean,Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Dedup.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/FinsetOps.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Multiset/Pi.lean,Mathlib/Data/Multiset/Range.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Multiset/Sort.lean,Mathlib/Data/Multiset/Sum.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Interval/Multiset.lean,Mathlib/Order/Interval/Set/Defs.lean,Mathlib/Order/SetNotation.lean,MathlibTest/push.lean |
48 |
1 |
['github-actions'] |
EtienneC30 assignee:EtienneC30 |
4-32125 4 days ago |
11-33217 11 days ago |
11-33194 11 days |
30225 |
NotWearingPants author:NotWearingPants |
feat(Combinatorics/SimpleGraph/Walk): `p.getVert` and `p.support.get` have the same range |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
8/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
nobody |
4-31305 4 days ago |
4-31319 4 days ago |
4-31360 4 days |
30235 |
zcyemi author:zcyemi |
feat(Geometry/Euclidean/Sphere/Tangent) add isTangentAt with right-angle |
---
This PR mainly adds two theorems:
- `IsTangentAt.dist_eq_of_mem_of_mem` : Two tangent lines through same point yield equal distances
- `IsTangentAt_iff_angle_eq_pi_div_two`: Characterization of tangency via angle.
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
49/1 |
Mathlib/Geometry/Euclidean/Sphere/Tangent.lean |
1 |
1 |
['github-actions'] |
nobody |
4-11812 4 days ago |
4-11819 4 days ago |
4-11861 4 days |
30232 |
NotWearingPants author:NotWearingPants |
feat(Combinatorics/SimpleGraph/Connectivity/Subgraph): add `ConnectedComponent.toSubgraph` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
easy
|
17/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
1 |
2 |
['NotWearingPants', 'github-actions'] |
nobody |
4-10150 4 days ago |
4-23833 4 days ago |
4-23873 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$ |
261/10 |
Mathlib.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/Regular/RegularSequence.lean |
7 |
88 |
['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'kbuzzard', 'smorel394', 'themathqueen'] |
kbuzzard assignee:kbuzzard |
4-10039 4 days ago |
42-896 1 month ago |
136-53343 136 days |
26457 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(Mathlib/GroupTheory/Perm/MaximalSubgroups): maximal subgroups of the permutation group |
* `Equiv.Perm.isCoatom_stabilizer`: when `s : Set α` is not empty, nor its complementary subset, and if the cardinality of `s` is not half of that of `α`, then `MulAction.stabilizer (Equiv.Perm α) s` is a maximal subgroup of the symmetric group `Equiv.Perm α`.
This is the *intransitive case* of the O'Nan-Scott classification.
## TODO
* Appplication to primitivity of the action of `Equiv.Perm α` on finite combinations of `α`.
* Finish the classification
---
- [ ] depends on: #26282
- [x] depends on: #26281
- [x] depends on: #26280
- [x] depends on: #26279
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
525/2 |
Mathlib.lean,Mathlib/GroupTheory/GroupAction/Jordan.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/MaximalSubgroups.lean,docs/references.bib |
8 |
n/a |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
4-4190 4 days ago |
unknown |
unknown |
26374 |
joelriou author:joelriou |
feat(CategoryTheory): existence of right derived functors using derivability structures |
In this PR, we formalize an existence theorem for right derived functors which appeared in the article _Structures de dérivabilité_ by Bruno Kahn and Georges Maltsiniotis, Adv. Math. 218 (2008).
---
- [x] depends on: #26036
This PR continues the work from #22508.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22508 |
t-category-theory |
165/2 |
Mathlib.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/Basic.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/PointwiseRightDerived.lean |
5 |
4 |
['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
3-84041 3 days ago |
3-84041 3 days ago |
3-84068 3 days |
26720 |
vlad902 author:vlad902 |
feat(SimpleGraph): lemmas relating edges and darts to the support |
Useful lemmas to make it easier to pass between the support/edges/darts of a walk.
- [x] depends on: #25812
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
27/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
9 |
['b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] |
b-mehta assignee:b-mehta |
3-80264 3 days ago |
3-80264 3 days ago |
27-20380 27 days |
30085 |
riccardobrasca author:riccardobrasca |
feat: add Mathlib.RingTheory.RootsOfUnity.Units |
We abb basic results about cyclotomic units.
From `flt-regular`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
t-number-theory
label:t-algebra$ |
124/0 |
Mathlib.lean,Mathlib/RingTheory/RootsOfUnity/CyclotomicUnits.lean |
2 |
18 |
['faenuccio', 'github-actions', 'riccardobrasca'] |
faenuccio assignee:faenuccio |
3-77711 3 days ago |
3-78187 3 days ago |
4-69838 4 days |
30136 |
vlad902 author:vlad902 |
feat(SimpleGraph): lemmas characterizing graphs that are not complete/empty |
Two helper lemmas that I've found useful in several other PRs that characterize graphs that are neither complete nor empty.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
8/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
3-69715 3 days ago |
6-51472 6 days ago |
6-51509 6 days |
29833 |
vlad902 author:vlad902 |
feat(Set): helper lemmas about set cardinality |
A few lemmas I needed in formalizing Dilworth's theorem and vertex covers.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
19/0 |
Mathlib/Data/Set/Card.lean |
1 |
13 |
['Ruben-VandeVelde', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] |
nobody |
3-69713 3 days ago |
4-42625 4 days ago |
18-78955 18 days |
30245 |
vlad902 author:vlad902 |
feat(Set): finite cardinality iff `[Finite]` |
Add a lemma making it easy to derive `Finite α` from `ENat.card α < ⊤`. Note that immediately above, the following three lemmas are defined:
```lean
@[simp high]
theorem card_eq_top_of_infinite [Infinite α] : card α = ⊤ := by ...
@[simp] lemma card_eq_top : card α = ⊤ ↔ Infinite α := by ...
@[simp] theorem card_lt_top_of_finite [Finite α] : card α < ⊤ := by ...
```
`card_lt_top` is the analog of `card_eq_top`, so symmetry implies that `card_lt_top_of_finite` should be marked `@[simp high]` and `card_lt_top` should be marked `@[simp]`. I find this use of `@[simp]` a bit surprising so I wanted to highlight this to reviewers.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
3/1 |
Mathlib/SetTheory/Cardinal/Finite.lean |
1 |
1 |
['github-actions'] |
nobody |
3-68874 3 days ago |
3-68876 3 days ago |
3-68916 3 days |
30047 |
ooovi author:ooovi |
feat(Combinatorics/SimpleGraph): edge labellings |
Add edge labellings for `SimpleGraph` as well as some basic lemmata.
---
This is mostly a cleaned up part of @b-mehta's lean4 port of their [formalisation of an exponentially better upper bound on Ramsey numbers ](https://github.com/b-mehta/ExponentialRamsey/). I need these definitions for another project on Ramsey theory.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
234/3 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/EdgeLabelling.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean |
5 |
45 |
['YaelDillies', 'b-mehta', 'github-actions', 'ooovi', 'vlad902'] |
nobody |
3-66854 3 days ago |
3-66854 3 days ago |
8-77315 8 days |
26347 |
mans0954 author:mans0954 |
feat(Data/Finset/RangeDistance): abs_sub_lt_of_mem_finset_range |
This PR continues the work from #23161.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23161 |
t-data |
30/0 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean |
3 |
2 |
['github-actions', 'mans0954'] |
alreadydone assignee:alreadydone |
3-58902 3 days ago |
65-85534 2 months ago |
107-8539 107 days |
30248 |
dwrensha author:dwrensha |
chore: remove obsolete NormDigits namespace |
In Lean 3, `nat.digits m n` with concrete numbers `m` `n` could be normalized via `norm_num`. [The logic enabling that](https://github.com/leanprover-community/mathlib3/blob/65a1391a0106c9204fe45bc73a039f056558cb83/src/data/nat/digits.lean#L599-L678) was partially ported over to Lean 4 in the `NormDigits` namespace, but never was completed.
Independently, simprocs as introduced in Lean v4.6.0 made it so that `simp [Nat.digits, Nat.digitsAux]` could normalize `Nat.digits m n` without any need for the special `NormDigits` code. More recently, #25864 made it so that just plain `rfl` can normalize `Nat.digits m n` (but note that a revert PR has been proposed in #30246).
Therefore, the `NormDigits` namespace is no longer relevent and should be deleted.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
0/102 |
Mathlib/Data/Nat/Digits/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
3-56497 3 days ago |
3-56507 3 days ago |
3-56546 3 days |
30249 |
vihdzp author:vihdzp |
feat: `IsRoot.mul_div_eq` |
---
I found myself reaching for this the other day, figured I might as well add it.
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
3/1 |
Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/RingTheory/AdjoinRoot.lean |
2 |
1 |
['github-actions'] |
nobody |
3-55436 3 days ago |
3-55503 3 days ago |
3-55491 3 days |
30250 |
harahu author:harahu |
feat(Algebra): generalize subalgebra operations to semirings |
Relax Subalgebra operations to work over `CommSemiring` structures instead of demanding commutative rings.
---
Found by asking OpenAI Codex to search for low-hanging generalization opportunities. I don't have any usage in mind. Just wanted to explore what Codex would find.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
2/2 |
Mathlib/Algebra/Algebra/Subalgebra/Operations.lean |
1 |
1 |
['github-actions'] |
nobody |
3-52985 3 days ago |
3-52989 3 days ago |
3-53027 3 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
- [ ] depends on : #30135
|
t-algebra
t-topology
t-number-theory
label:t-algebra$ |
73/0 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
2 |
9 |
['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
alreadydone assignee:alreadydone |
3-49755 3 days ago |
42-52498 1 month ago |
92-37505 92 days |
30244 |
harahu author:harahu |
feat: misc. generalizations by LLM |
All found by asking Codex to search for low-hanging generalization opportunities.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
77/70 |
Mathlib/Algebra/Algebra/Operations.lean |
1 |
13 |
['github-actions', 'harahu', 'kckennylau', 'themathqueen'] |
nobody |
3-40124 3 days ago |
3-69624 3 days ago |
3-69663 3 days |
29758 |
NotWearingPants author:NotWearingPants |
feat(RingTheory/RootsOfUnity): exp(pi * i * q) is a root of unity for rational q |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
28/1 |
Mathlib/RingTheory/RootsOfUnity/Complex.lean |
1 |
5 |
['NotWearingPants', 'Ruben-VandeVelde', 'github-actions', 'kckennylau'] |
chrisflav assignee:chrisflav |
3-38662 3 days ago |
20-36967 20 days ago |
20-43968 20 days |
30252 |
harahu author:harahu |
feat(Algebra): generalize isSMulRegular_iff_torsionBy_eq_bot |
Relax an assumption.
---
Found by asking OpenAI Codex to search for low-hanging generalization opportunities. I don't have any usage in mind. Just wanted to explore what Codex would find.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
4/2 |
Mathlib/Algebra/Module/Torsion.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
3-37792 3 days ago |
3-52590 3 days ago |
3-52634 3 days |
30259 |
erdOne author:erdOne |
feat(Valuation): uniformizer of discrete valuation |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
31/0 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean |
1 |
2 |
['github-actions', 'pechersky'] |
nobody |
3-33482 3 days ago |
3-34843 3 days ago |
3-34882 3 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$ |
211/27 |
Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
3 |
33 |
['ADedecker', 'adamtopaz', 'erdOne', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
kbuzzard assignee:kbuzzard |
3-32330 3 days ago |
56-65047 1 month ago |
93-44363 93 days |
27290 |
themathqueen author:themathqueen |
feat: `Star`, `StarAddMonoid`, and `StarModule` instances for tensor products |
This pr defines the `Star`, `StarAddMonoid` and `StarModule` instances on tensor product spaces. And the `StarRing` instance.
---
- [x] depends on: #27288
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
55/0 |
Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/Star.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'themathqueen'] |
alreadydone assignee:alreadydone |
3-32159 3 days ago |
10-63168 10 days ago |
10-63983 10 days |
29589 |
grunweg author:grunweg |
feat: add mfderiv_prod and mfderiv_prodMap |
Part of my bordism theory project: these will be needed for https://github.com/leanprover-community/mathlib4/pull/22059.
Updated version of #22642.
---
- [x] depends on: #30049 for ease of reviewing
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
81/0 |
Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean |
3 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
hrmacbeth assignee:hrmacbeth |
3-32157 3 days ago |
10-77555 10 days ago |
10-77562 10 days |
30009 |
ADedecker author:ADedecker |
chore: rename `IsTopologicalGroup.toUniformSpace` to `IsTopologicalGroup.rightUniformSpace` |
I have plans to finally do left and right uniformities properly, but I'd like to do some of the remaining before the fact to ease review.
I also take this opportunity to remove a duplication of private lemmas `extend_Z_bilin_aux` and `extend_Z_bilin_key`.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
104/184 |
Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Operator/Compact.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Topology/Algebra/Group/Defs.lean,Mathlib/Topology/Algebra/InfiniteSum/Group.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean,Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/Module/Alternating/Topology.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/UniformFilterBasis.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/ContinuousMap/Algebra.lean |
23 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] |
PatrickMassot assignee:PatrickMassot |
3-32155 3 days ago |
10-54945 10 days ago |
11-68351 11 days |
30029 |
ADedecker author:ADedecker |
feat: define IsRightUniformGroup and IsLeftUniformGroup |
This mostly contains the definition and additional documentation. Future PRs will take care of expanding the theory, and proving in particular that `IsUniformGroup` is precisely the conjuction of these two typeclasses.
---
- [x] depends on: #30025
[](https://gitpod.io/from-referrer/)
|
t-topology |
199/36 |
Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean |
2 |
9 |
['ADedecker', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
PatrickMassot assignee:PatrickMassot |
3-32154 3 days ago |
10-54823 10 days ago |
10-66055 10 days |
30039 |
JovanGerb author:JovanGerb |
feat(push): `@[push]` annotations for `Real.log` |
This PR adds `push` annotations, and tests for `Real.log`.
It also updates the `#push` and `#pull` commands so that they can take a discharger, and can take any head.
---
[](https://gitpod.io/from-referrer/)
|
|
45/18 |
Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Tactic/Push.lean,MathlibTest/push.lean |
4 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
3-32153 3 days ago |
11-36108 11 days ago |
11-36085 11 days |
30246 |
dwrensha author:dwrensha |
make Nat.digits use well-founded recursion once again |
#25864 made `Nat.digits` structurally recursive, which has some benefits. In doing so, however, it added significant complexity. As brought up in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/structural.20recursion.20instead.20of.20well.20founded/near/543172385), on the balance that PR might not be considered an improvement.
The present PR reverts that change (but keeps a code golf that was bundled with it).
Note that recent improvements to core Lean mean that `simp` can handle the structurally recursive version without a problem:
```lean
example : digits 10 123456789 = [9,8,7,6,5,4,3,2,1] := by
simp [digits, digitsAux]
```
---
[](https://gitpod.io/from-referrer/)
|
t-data |
7/45 |
Mathlib/Data/Nat/Digits/Defs.lean |
1 |
7 |
['alreadydone', 'dwrensha', 'github-actions', 'plp127'] |
nobody |
3-31957 3 days ago |
3-60486 3 days ago |
3-60519 3 days |
30261 |
NotWearingPants author:NotWearingPants |
feat(Algebra/Ring/Basic): add `a / -b = -a / b` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
5/3 |
Mathlib/Algebra/Ring/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
3-31511 3 days ago |
3-31523 3 days ago |
3-31561 3 days |
28557 |
ShreckYe author:ShreckYe |
feat(Data/Nat/Factorization): some results on equality of powers of naturals proved from factorization |
I came across some math olympiad problems in number theory that could benefit from these theorems, expecially those on the prime power equality `p ^ m = a ^ n`. A specialized `eq_of_factorization_eq'` is added BTW to help with proof search. |
t-data |
100/0 |
Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Defs.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean |
3 |
13 |
['Ruben-VandeVelde', 'ShreckYe', 'github-actions'] |
pechersky assignee:pechersky |
3-20262 3 days ago |
3-21946 3 days ago |
50-16093 50 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
|
45/5 |
Mathlib/NumberTheory/ArithmeticFunction.lean |
1 |
13 |
['MichaelStollBayreuth', 'NotWearingPants', 'b-mehta', 'eric-wieser', 'github-actions', 'sun123zxy'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
2-80243 2 days ago |
50-19322 1 month ago |
50-20286 50 days |
30264 |
pechersky author:pechersky |
feat(RingTheory/RootsOfUnity): `rootsOfUnity_inf_rootsOfUnity` |
towards torsion subgroup as union of roots of unity of prime powers
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
easy
|
12/0 |
Mathlib/RingTheory/RootsOfUnity/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
2-74543 2 days ago |
3-28051 3 days ago |
3-28092 3 days |
30268 |
euprunin author:euprunin |
chore(Order/Interval/Set): golf entire `{Icc,Ici,Ico,Iic,Iio,Ioc,Ioi,Ioo}_coe` |
---
[](https://gitpod.io/from-referrer/)
|
t-order |
12/24 |
Mathlib/Order/Interval/Set/WithBotTop.lean |
1 |
1 |
['github-actions'] |
nobody |
2-73133 2 days ago |
2-73137 2 days ago |
2-73176 2 days |
30254 |
harahu author:harahu |
feat(algebra): generalize mul_mem_smul_iff to rings |
Generalize mul_mem_smul_iff to rings instead of just commutative rings.
---
Found by asking OpenAI Codex to search for low-hanging generalization opportunities. I don't have any usage in mind. Just wanted to explore what Codex would find.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
1/1 |
Mathlib/Algebra/Algebra/Operations.lean |
1 |
3 |
['github-actions', 'harahu', 'themathqueen'] |
nobody |
2-68720 2 days ago |
3-52296 3 days ago |
3-52329 3 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
easy
|
4/15 |
Mathlib/Topology/Category/CompHausLike/Limits.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean |
3 |
4 |
['fpvandoorn', 'github-actions', 'leanprover-bot'] |
ADedecker assignee:ADedecker |
2-67874 2 days ago |
14-3971 14 days ago |
52-59824 52 days |
30273 |
NotWearingPants author:NotWearingPants |
feat(NumberTheory/SumTwoSquares): it is decidable whether a number is the sum of two squares |
Add a `Decidable` instance for the already proven theorem of being the sum of two squares.
Try `#eval Finset.range 50 |>.filter (∃ x y, · = x ^ 2 + y ^ 2)`
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-number-theory
|
7/0 |
Mathlib/NumberTheory/SumTwoSquares.lean |
1 |
1 |
['github-actions'] |
nobody |
2-65562 2 days ago |
2-65574 2 days ago |
2-65616 2 days |
28484 |
euprunin author:euprunin |
chore(Data): deprecate `toReal_eq_toReal`, `count_eq_of_nodup` and `smul_mat_cons` |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
16/25 |
Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/FinRange.lean,Mathlib/Data/List/Nodup.lean,Mathlib/LinearAlgebra/Matrix/Notation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/Probability/Distributions/Exponential.lean,Mathlib/Probability/Independence/Integration.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean |
13 |
13 |
['b-mehta', 'bryangingechen', 'euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'pechersky', 'qawbecrdtey'] |
pechersky assignee:pechersky |
2-61336 2 days ago |
2-61336 2 days ago |
52-4806 52 days |
28950 |
Vierkantor author:Vierkantor |
fix(TacticAnalysis): remove syntax range check |
In #28802 we discovered the tactic analysis framework does not fire on declarations using `where` clauses. The reason is that `def foo where ...` gets turned into `def foo := { ... }`, and the `{ ... }` syntax is assigned a range outside of the `where ...` syntax; this causes the syntax range check to omit the whole declaration body. Moreover, [Verso involves pieces of syntax without any range at all](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Possible.20Verso.E2.80.93Mathlib.20conflict/with/543352839). So the range of a piece of syntax is essentially meaningless and we should not check it at all.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
18/11 |
Mathlib/Tactic/TacticAnalysis.lean,MathlibTest/TacticAnalysis.lean |
2 |
3 |
['Vierkantor', 'github-actions', 'thorimur'] |
robertylewis assignee:robertylewis |
2-60837 2 days ago |
44-210 1 month ago |
44-187 44 days |
30223 |
NotWearingPants author:NotWearingPants |
feat(Data/List/Nodup): `get` is bijective iff `count = 1` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
new-contributor
|
9/0 |
Mathlib/Data/List/Nodup.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
2-55392 2 days ago |
2-55392 2 days ago |
4-34251 4 days |
30212 |
tb65536 author:tb65536 |
feat(Algebra/Polynomial/Factors): Introduce predicate and basic API |
This PR introduces a predicate `Polynomial.Factors` that generalizes `Polynomial.Splits` beyond fields. This PR contains the definition of `Polynomial.Factors` along with most of API for `Polynomial.Splits`. The end goal is to either redefine `Polynomial.Splits` in terms of `Polynomial.Factors` or deprecate `Polynomial.Splits` entirely.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Generalizing.20.60Polynomial.2ESplits.60.20to.20rings
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
label:t-algebra$ |
293/1 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Factors.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Splits.lean |
4 |
26 |
['github-actions', 'kckennylau', 'tb65536'] |
nobody |
2-53565 2 days ago |
4-41622 4 days ago |
4-41601 4 days |
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/)
- [x] depends on: #29988
- [x] depends on: #29989
- [x] depends on: #29990
- [x] depends on: #29991 |
t-algebra label:t-algebra$ |
156/8 |
Mathlib.lean,Mathlib/RingTheory/RootsOfUnity/Basic.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/Torsion.lean |
4 |
10 |
['chrisflav', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
chrisflav assignee:chrisflav |
2-47637 2 days ago |
2-47658 2 days ago |
15-12478 15 days |
28389 |
euprunin author:euprunin |
chore(Algebra/Group/Subgroup): deprecate `sup_subgroupOf_eq` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
9/13 |
Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/GroupTheory/PGroup.lean |
2 |
4 |
['Ruben-VandeVelde', 'chrisflav', 'euprunin', 'github-actions'] |
chrisflav assignee:chrisflav |
2-47066 2 days ago |
2-47525 2 days ago |
25-84823 25 days |
28422 |
euprunin author:euprunin |
chore(Data/Fin): deprecate `Fin.mul_one'`, `Fin.one_mul'`, `Fin.mul_zero'` and `Fin.zero_mul'` |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
8/15 |
Mathlib/Data/Fin/Basic.lean,Mathlib/Data/ZMod/Defs.lean |
2 |
3 |
['eric-wieser', 'euprunin', 'github-actions'] |
nobody |
2-47007 2 days ago |
2-52315 2 days ago |
10-63092 10 days |
29342 |
mans0954 author:mans0954 |
refactor(Analysis/LocallyConvex/AbsConvex): Redefine AbsConvex to use a single ring of scalars |
Currently the definition of Absolutely Convex in Mathlib is a little unexpected:
```
def AbsConvex (s : Set E) : Prop := Balanced 𝕜 s ∧ Convex ℝ s
```
At the time this definition was formulated, Mathlib's definition of `Convex` required the scalars to be an `OrderedSemiring` whereas the definition of `Balanced` required the scalars to be a `SeminormedRing`. Mathlib didn't have a concept of a semi-normed ordered ring, so a set was defined as `AbsConvex` if it is balanced over a `SeminormedRing` `𝕜` and convex over `ℝ`.
Recently the requirements for the definition of `Convex` have been relaxed (#24392, #20595) so it is now possible to use a single scalar ring in common with the literature.
Previous discussion:
- https://github.com/leanprover-community/mathlib4/pull/17029#discussion_r1782249323
- https://github.com/leanprover-community/mathlib4/pull/26345#discussion_r2287535746
---
- [x] depends on: #29248
[](https://gitpod.io/from-referrer/)
|
t-analysis |
51/67 |
Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/AbsConvexOpen.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/Normed/Module/Dual.lean |
5 |
4 |
['github-actions', 'j-loreaux', 'mans0954', 'mathlib4-dependent-issues-bot'] |
j-loreaux assignee:j-loreaux |
2-46791 2 days ago |
6-52584 6 days ago |
6-52573 6 days |
30285 |
kckennylau author:kckennylau |
chore: document Spec(R) notation in docstring of Spec |
#30272 changed the `Spec(R)` notation to scoped, so I am including this new information in the docstring of `AlgebraicGeometry.Spec`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
13/0 |
Mathlib/AlgebraicGeometry/Scheme.lean |
1 |
1 |
['github-actions'] |
nobody |
2-39064 2 days ago |
2-40321 2 days ago |
2-40357 2 days |
29507 |
zhuyizheng author:zhuyizheng |
feat(MeasureTheory): derivative integrable functions |
Part of originally planned #29092. We prove that:
* If `f` is monotone on `a..b`, then `f'` is interval integrable on `a..b`.
* If `f` has bounded variation on `a..b`, then `f'` is interval integrable on `a..b`.
* If `f` is absolutely continuous on `a..b`, then `f'` exists a.e. on `a..b` and is interval
integrable on `a..b`.
---
- [x] depends on: #29504
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
172/1 |
Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/DerivIntegrable.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean |
5 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
2-35649 2 days ago |
2-72867 2 days ago |
2-73168 2 days |
26985 |
agjftucker author:agjftucker |
feat(Analysis/Calculus/Implicit): define implicitFunOfProdDomain |
This PR continues the work from #16743.
Original PR: https://github.com/leanprover-community/mathlib4/pull/16743
---
- [x] depends on: #28352
[](https://gitpod.io/from-referrer/) |
new-contributor
t-analysis
|
107/4 |
Mathlib/Analysis/Calculus/Implicit.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
hrmacbeth assignee:hrmacbeth |
2-32158 2 days ago |
10-6246 10 days ago |
10-7825 10 days |
27228 |
themathqueen author:themathqueen |
feat: defining the inner product on tensor products |
This defines the inner product on tensor product spaces. Also defines `OrthonormalBasis.tensorProduct`.
The implementation is based on [here](https://github.com/ocfnash/lean-shannon-lovasz/blob/e63e535599ffb3c2a7e995e1621847693dd68fab/src/to_mathlib/analysis/inner_product_space/tensor_product.lean#L404) (by @jjaassoonn), which defines the inner product on real tensor product spaces. The exact same implementation also applies for the general case.
Closes #6020
---
- [x] depends on: #27288
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
label:t-algebra$ |
281/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Basis.lean |
4 |
5 |
['eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'themathqueen'] |
YaelDillies assignee:YaelDillies |
2-32157 2 days ago |
10-58968 10 days ago |
10-60267 10 days |
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'] |
pechersky assignee:pechersky |
2-32155 2 days ago |
46-67921 1 month ago |
46-67954 46 days |
29309 |
LLaurance author:LLaurance |
feat(Combinatorics/SimpleGraph): Nontrivial connected graph contains a vertex that leaves the graph connected if removed |
This shows that any nontrivial connected graph contains a vertex that, when removed, leaves the graph connected.
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-combinatorics
|
156/10 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean |
5 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
YaelDillies assignee:YaelDillies |
2-32154 2 days ago |
9-80505 9 days ago |
30-85122 30 days |
29425 |
pechersky author:pechersky |
feat(NumberTheory/Padics/Torsion): `HasEnoughRootsOfUnity ℤ_[p] (p - 1)` |
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #29403
- [x] depends on: #29404
- [x] depends on: #29405
- [x] depends on: #29408
- [x] depends on: #29424
|
t-ring-theory |
179/0 |
Mathlib.lean,Mathlib/NumberTheory/Padics/Torsion.lean,Mathlib/RingTheory/ZMod/Torsion.lean |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
2-32153 2 days ago |
9-63423 9 days ago |
9-64057 9 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 |
58/68 |
Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean,Mathlib/RingTheory/LaurentSeries.lean |
5 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
mattrobball assignee:mattrobball |
2-32152 2 days ago |
9-71347 9 days ago |
17-81717 17 days |
29706 |
kim-em author:kim-em |
feat: add piCongrSigmaFiber and piCongrFiberwise equivalences |
## Summary
Add two new equivalence functions for working with fibers and sigma types:
- `Equiv.piCongrSigmaFiber`: transforms between functions on sigma fibers and regular pi types
- `Equiv.piCongrFiberwise`: lifts fiber-wise equivalences to product equivalences
These functions are from the FLT (Fermat's Last Theorem) project and are useful for manipulating dependent function types indexed by fibers of a function.
## Details
The new definitions allow for elegant transformations between:
1. Functions defined on sigma types representing fibers of a function
2. Regular dependent functions
These are particularly useful in algebraic contexts where one needs to work with products indexed by fibers.
## Context
This PR was prepared by Claude (Claude Code) based on the following prompt:
> "Please read FLT/Mathlib/Logic/Equiv/Basic.lean, and also the corresponding file in the Mathlib repository. Please prepare a PR to Mathlib containing this content, putting it at an appropriate point in the corresponding Mathlib file. Make sure the PR is label FLT, and write in the PR comment an explanation that the PR was prepared by Claude, including quoting the prompting."
The content is sourced from `/Users/kim/projects/lean/FLT/FLT/Mathlib/Logic/Equiv/Basic.lean` in the FLT project repository.
🤖 Generated with [Claude Code](https://claude.ai/code) |
FLT
t-logic
|
39/0 |
Mathlib/Logic/Equiv/Basic.lean |
1 |
5 |
['Ruben-VandeVelde', 'github-actions', 'kim-em'] |
fpvandoorn assignee:fpvandoorn |
2-32151 2 days ago |
22-73887 22 days ago |
23-3695 23 days |
29946 |
smmercuri author:smmercuri |
feat(InfinitePlace/Ramification): embeddings of unramified/ramified infinite places satisfy `IsUnmixed/IsMixed` |
---
- [x] depends on: #29945
[](https://gitpod.io/from-referrer/)
|
FLT
t-number-theory
|
52/1 |
Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
alexjbest assignee:alexjbest |
2-32150 2 days ago |
9-84069 9 days ago |
10-7749 10 days |
29969 |
smmercuri author:smmercuri |
refactor: use isometry extensions for completions at infinite places of number fields |
The API for `InfinitePlace.Completion` currently makes use of abstract results defined on absolute values, which all depend on the hypothesis of the form `∀ x, ‖f x‖ = v x`. This is equivalent to `f` being an isometry, and so many of these results can be bypassed and deprecated by using `Isometry.completion_extension`
---
[](https://gitpod.io/from-referrer/)
|
|
72/47 |
Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Completion.lean,Mathlib/Topology/MetricSpace/Completion.lean |
4 |
1 |
['github-actions'] |
TwoFX assignee:TwoFX |
2-32149 2 days ago |
13-63791 13 days ago |
13-63776 13 days |
30037 |
linesthatinterlace author:linesthatinterlace |
feat: Fin.find update |
We currently define `Fin.find` in a way that is redundant (in the sense that it is just equivalent to `Fin.find?` in batteries). This PR replaces it with a definition that works closer to `Nat.find`, and links the new definition of `Fin.find` to `Fin.find?` in the natural way.
---
- [ ] depends on: batteries#1431
[](https://gitpod.io/from-referrer/)
|
|
137/103 |
Mathlib/Data/Fin/Tuple/Basic.lean,lake-manifest.json |
2 |
6 |
['github-actions', 'linesthatinterlace', 'llllvvuu', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
2-32147 2 days ago |
9-59398 9 days ago |
11-28904 11 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 |
51/14 |
Mathlib/Combinatorics/SimpleGraph/Extremal/TuranDensity.lean |
1 |
12 |
['YaelDillies', 'github-actions', 'mitchell-horner'] |
YaelDillies assignee:YaelDillies |
2-27591 2 days ago |
3-17021 3 days ago |
29-35095 29 days |
27974 |
smmercuri author:smmercuri |
feat: `Field`, `FiniteDimensional` and `Algebra.IsSeparable` instances for `WithAbs` |
This PR continues the work from #24870.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24870 |
large-import
t-analysis
|
14/1 |
Mathlib/Analysis/Normed/Field/WithAbs.lean |
1 |
3 |
['github-actions', 'j-loreaux', 'smmercuri'] |
j-loreaux assignee:j-loreaux |
2-4577 2 days ago |
2-4577 2 days ago |
12-71118 12 days |
29556 |
joelriou author:joelriou |
feat(CategoryTheory): functors that are dense at an object |
Given a functor `F : C ⥤ D` and `Y : D`, we say that `F` is dense at `Y` if `Y` identifies to the colimit of all `F.obj X` for `X : C` and `f : F.obj X ⟶ Y`, i.e. the obvious natural transformation makes the identity functor of `D` a pointwise left Kan extension of `F` along `F` at `Y`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
129/1 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/DenseAt.lean,Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean |
3 |
4 |
['github-actions', 'joelriou', 'robin-carlier'] |
joneugster assignee:joneugster |
1-72760 1 day ago |
1-72760 1 day ago |
27-60703 27 days |
30238 |
kebekus author:kebekus |
feat: behavior of divisors when taking powers of meromorphic functions |
Establish the behavior of divisors when taking powers of meromorphic functions. For consistency, provide `_fun`-versions of several simple lemmas.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
119/3 |
Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Meromorphic/Order.lean |
3 |
14 |
['YaelDillies', 'github-actions', 'kebekus'] |
nobody |
1-71025 1 day ago |
2-85561 2 days ago |
3-76266 3 days |
30147 |
NotWearingPants author:NotWearingPants |
feat(NumberTheory/ArithmeticFunction): add some lemmas |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-number-theory
|
23/1 |
Mathlib/NumberTheory/ArithmeticFunction.lean |
1 |
3 |
['github-actions', 'kckennylau'] |
nobody |
1-69038 1 day ago |
6-28777 6 days ago |
6-28810 6 days |
30216 |
NotWearingPants author:NotWearingPants |
feat(Data/List/Basic): `get` is surjective iff every element is in the list |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
13/0 |
Mathlib/Data/List/Basic.lean |
1 |
6 |
['NotWearingPants', 'github-actions', 'themathqueen'] |
nobody |
1-68237 1 day ago |
4-42813 4 days ago |
4-42848 4 days |
30219 |
NotWearingPants author:NotWearingPants |
feat(Combinatorics/SimpleGraph/Paths): path iff `p.support.get` is injective |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
easy
|
4/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
3 |
['NotWearingPants', 'github-actions', 'themathqueen'] |
nobody |
1-67464 1 day ago |
4-39876 4 days ago |
4-39910 4 days |
30282 |
NotWearingPants author:NotWearingPants |
chore(Algebra/Order/Ring/Unbundled/Rat): golf |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
10/26 |
Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean |
1 |
7 |
['Ruben-VandeVelde', 'github-actions', 'kckennylau', 'themathqueen'] |
nobody |
1-66914 1 day ago |
2-43859 2 days ago |
2-43900 2 days |
30293 |
vlad902 author:vlad902 |
feat(SimpleGraph): there exists a maximal path/trail in a graph with finite edges |
Inspired by [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Help.20me.20learn.20good.20style.3A.20IsTree/near/543395218)
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
27/1 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
2 |
['github-actions', 'vlad902'] |
nobody |
1-66864 1 day ago |
2-1333 2 days ago |
2-1366 2 days |
30300 |
chrisflav author:chrisflav |
chore(RingTheory/AdjoinRoot): move `AdjoinRoot.algEquivOfEq` earlier |
Before this PR it was in `Mathlib.FieldTheory.IntermediateField.Adjoin.Basic` and required `Field K`. This PR moves it to `Mathlib.RingTheory.AdjoinRoot` and replaces the `Field` assumption by `CommRing`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
37/34 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/RingTheory/AdjoinRoot.lean |
2 |
1 |
['github-actions'] |
nobody |
1-63138 1 day ago |
1-63209 1 day ago |
1-63188 1 day |
30182 |
urkud author:urkud |
feat(Calculus): derivative of `ContinuousMultilinearMap.compContinuousLinearMap` |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
136/1 |
Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
1-62932 1 day ago |
5-44784 5 days ago |
5-44821 5 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 |
9 |
['ChrisHughes24', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'staroperator'] |
fpvandoorn assignee:fpvandoorn |
1-61358 1 day ago |
106-3023 3 months ago |
106-3274 106 days |
29352 |
fpvandoorn author:fpvandoorn |
refactor: simplify dictionary in fixAbbreviation |
* Improve capitalization algorithm: you now don't have to give entries twice in `fixAbbreviation` (now `abbreviationDict`).
* The new algorithm uses the fact that we can easily find the `lowerCamelCase` name from the `UpperCamelCase` name, namely by applying `String.decapitalizeSeq`. This means that both `nameDict` and `abbreviationDict` have as input `lowerCamelCase` and as output `UpperCamelCase`.
* This removes the need to especially fix `NSMul`/`ZSMul` and similar.
* `abbreviationDict` still needs two entries if both `snake_case` and either `camelCase` need to be translated.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
151/163 |
Mathlib/Tactic/ToAdditive/GuessName.lean,MathlibTest/toAdditive.lean |
2 |
22 |
['JovanGerb', 'fpvandoorn', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
bryangingechen assignee:bryangingechen |
1-60487 1 day ago |
2-68116 2 days ago |
14-65312 14 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$ |
65/3 |
Mathlib/LinearAlgebra/Projectivization/Subspace.lean |
1 |
9 |
['Vierkantor', 'eric-wieser', 'gasparattila', 'github-actions'] |
Vierkantor assignee:Vierkantor |
1-60113 1 day ago |
1-63083 1 day ago |
92-25804 92 days |
30280 |
NotWearingPants author:NotWearingPants |
chore(Algebra/Order/Monoid/Unbundled/MinMax): golf three lemmas using `grind` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
3/6 |
Mathlib/Algebra/Order/Monoid/Unbundled/MinMax.lean |
1 |
1 |
['euprunin', 'github-actions'] |
nobody |
1-59409 1 day ago |
2-46633 2 days ago |
2-46666 2 days |
29795 |
Jlh18 author:Jlh18 |
refactor: weaken HasPullbacks to HasPullback in Over.Pullback |
Add an abbreviation `HasPullbackAlong f` to mean that all maps into the codomain of `f` have pullbacks along `f`. As discussed in zulip [#mathlib4 > Hom.HasPullback](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Hom.2EHasPullback/with/541055666)
The `HasPullbacks` instance on a category `C` for defining the pullback functor along a map `f : X -> Y` between their over categories can be weakened to just a `HasPullbackAlong` condition on `f`.
Dually, for `HasPushout` and undercategories.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
35/18 |
Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/HasPullback.lean |
2 |
22 |
['Jlh18', 'chrisflav', 'github-actions', 'kckennylau', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac'] |
kim-em assignee:kim-em |
1-59048 1 day ago |
5-44765 5 days ago |
19-71872 19 days |
30302 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): generalise Proj to graded rings |
This PR generalises `AlgebraicGeometry.Proj` to take in a graded ring (with an arbitrary `AddSubgroupClass` in a `CommRing`). Currently it takes in a `GradedAlgebra`.
Zulip discussion: [#mathlib4 >Proj should take GradedRing](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Proj.20should.20take.20GradedRing/near/543071427)
---
Preamble to #26061.
[](https://gitpod.io/from-referrer/)
|
|
125/101 |
Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/FiniteType.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean |
8 |
6 |
['github-actions', 'kckennylau', 'leanprover-bot'] |
nobody |
1-55275 1 day ago |
1-62808 1 day ago |
1-62831 1 day |
30306 |
joelriou author:joelriou |
chore(CategoryTheory/Presentable/IsCardinalFiltered): fix name |
The wrong name `isFiltered_of_isCardinalDirected` is fixed: the correct name is `isFiltered_of_isCardinalFiltered`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
easy
|
13/10 |
Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ColimCoyoneda.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/Subobject.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Presentable/Limits.lean |
4 |
1 |
['github-actions'] |
nobody |
1-54248 1 day ago |
1-54248 1 day ago |
1-59206 1 day |
30108 |
EtienneC30 author:EtienneC30 |
refactor: generalize LinearMap.toMatrix₂ and Matrix.toLinearMap₂ to sesquilinear forms |
Generalize [LinearMap.toMatrix₂](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/Matrix/SesquilinearForm.html#LinearMap.toMatrix%E2%82%82) to take a sesquilinear map as input. Create `Matrix.toLinearMapₛₗ₂` to generalize [Matrix.toLinearMap₂](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/Matrix/SesquilinearForm.html#Matrix.toLinearMap%E2%82%82) to sesquilinear maps, while still keeping [Matrix.toLinearMap₂](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/Matrix/SesquilinearForm.html#Matrix.toLinearMap%E2%82%82) to avoid specifying `RingHom.id R` in the bilinear case. Only do so for maps which are semilinear in the first coordinate to avoid specifying `RingHom.id R` for the second homomorphism.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
56/13 |
Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean |
1 |
4 |
['EtienneC30', 'github-actions', 'themathqueen'] |
nobody |
1-51734 1 day ago |
2-60145 2 days ago |
8-924 8 days |
30263 |
NotWearingPants author:NotWearingPants |
feat(Algebra/Order/Ring/Unbundled/Rat): exact form for `|q|` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
12/1 |
Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean |
1 |
7 |
['NotWearingPants', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
1-51546 1 day ago |
3-28939 3 days ago |
3-28973 3 days |
30205 |
NotWearingPants author:NotWearingPants |
feat(Combinatorics/SimpleGraph/Walk): `p.getVert` is `p.support.get` |
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-combinatorics
easy
|
10/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
5 |
['NotWearingPants', 'Ruben-VandeVelde', 'github-actions', 'themathqueen'] |
nobody |
1-48883 1 day ago |
3-85201 3 days ago |
4-56350 4 days |
30220 |
NotWearingPants author:NotWearingPants |
chore(Data/List/Nodup): golf `nodup_iff_injective_get` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
2/5 |
Mathlib/Data/List/Nodup.lean |
1 |
4 |
['NotWearingPants', 'euprunin', 'github-actions'] |
nobody |
1-48229 1 day ago |
4-38274 4 days ago |
4-38311 4 days |
30275 |
staroperator author:staroperator |
feat(Order/WellFoundedSet): `partiallyWellOrderedOn_univ_iff` and `Pi.wellQuasiOrderedLE` |
Connect `Set.PartiallyWellOrderedOn` with `WellQuasiOrdered` and `Set.IsPWO` with `WellQuasiOrderedLE`. Add an instance `Pi.wellQuasiOrderedLE` for Dickson's lemma.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
30/0 |
Mathlib/Order/RelIso/Set.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Order/WellQuasiOrder.lean |
3 |
1 |
['github-actions'] |
nobody |
1-45754 1 day ago |
2-61766 2 days ago |
2-61800 2 days |
28488 |
euprunin author:euprunin |
chore(SetTheory): deprecate `mk_multiset_of_countable` and `iSup_succ`. remove `cast_succ`. |
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory
easy
|
3/13 |
Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Finsupp.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean |
4 |
13 |
['euprunin', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
nobody |
1-43866 1 day ago |
1-43866 1 day ago |
15-80604 15 days |
30313 |
chenson2018 author:chenson2018 |
feat(Data/List/Sigma): grind annotations, some missing API |
- `grind` annotations for `List.keys`, `List.NodupKeys`, and `List.lookup`, with some shortening of proofs
- upstream `keys_append`, `sublist_dlookup`, and `nodupKeys_middle` from https://github.com/leanprover/cslib/pull/68
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
57/62 |
Mathlib/Data/List/Sigma.lean |
1 |
5 |
['chenson2018', 'eric-wieser', 'github-actions'] |
nobody |
1-37686 1 day ago |
1-41014 1 day ago |
1-41054 1 day |
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
|
29/15 |
Counterexamples/AharoniKorman.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/Topology/Separation/Hausdorff.lean |
4 |
18 |
['NotWearingPants', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] |
pechersky assignee:pechersky |
1-32162 1 day ago |
26-55652 26 days ago |
44-70591 44 days |
30030 |
JonBannon author:JonBannon |
feat(MeasureTheory): add `MemLp.Const` class and instances to unify `p = ∞` and `μ.IsFiniteMeasure` cases |
Although it is possible to ensure that, for example, the `One` instances for `p=∞` and `μ.IsFiniteMeasure` are defeq, introducing an `MemLp.Const` typeclass removes the need to unfold extensively to check this definitional equality, improving performance. cf. https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Lp.20constant.20function.20issue/with/537563137
This PR introduces the requisite class and associated instances.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
85/55 |
Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean |
6 |
13 |
['JonBannon', 'github-actions', 'j-loreaux'] |
urkud assignee:urkud |
1-32158 1 day ago |
9-32482 9 days ago |
11-38938 11 days |
30315 |
NotWearingPants author:NotWearingPants |
feat(Topology/Connected/LocPathConnected): instance for `LocPathConnected` + `ConnectedSpace` → `PathConnectedSpace` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-bench
new-contributor
t-topology
|
4/2 |
Mathlib/Topology/Connected/LocPathConnected.lean |
1 |
7 |
['NotWearingPants', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
1-20152 1 day ago |
1-20152 1 day ago |
1-23770 1 day |
29361 |
FlAmmmmING author:FlAmmmmING |
feat: Catalan generating function as a formal power series |
We introduce the Catalan generating function as a formal power series over `ℕ`.
## Main Definitions
* `PowerSeries.catalanSeries`: The Catalan generating function as a power series.
## Main Results
* `PowerSeries.sum_coeff_X_catalanSeries`: When `n` is a natural number,
each term in the sum `coeff i X * catalan (n - i)` is 0 except for `i = 1`.
* `PowerSeries.coeff_X_mul_catalanSeries`: The coefficient of `X * catalanSeries` at `X^n` is
`catalan (n - 1)` when `n > 0`.
* `PowerSeries.catalanSeries_one_add_X_mul_self_sq`: The Catalan generating function satisfies the
equation `catalanSeries = 1 + X * catalanSeries ^ 2`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
71/0 |
Mathlib.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean |
2 |
4 |
['Ruben-VandeVelde', 'github-actions', 'wwylele'] |
kbuzzard assignee:kbuzzard |
1-8755 1 day ago |
34-4830 1 month ago |
34-4861 34 days |
28497 |
euprunin author:euprunin |
chore(RingTheory/LocalRing/ResidueField): deprecate`isLocalHom_residue` |
---
[](https://gitpod.io/from-referrer/)
|
easy |
3/8 |
Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean |
2 |
5 |
['Ruben-VandeVelde', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
1-8030 1 day ago |
1-43843 1 day ago |
4-62749 4 days |
30062 |
plp127 author:plp127 |
chore(Order/Defs/PartialOrder): golf non-instance |
Golf `decidableLTOfDecidableLE`
---
[](https://gitpod.io/from-referrer/)
|
t-order
easy
|
2/6 |
Mathlib/Order/Defs/PartialOrder.lean |
1 |
1 |
['Bergschaf', 'github-actions'] |
nobody |
1-6867 1 day ago |
10-40363 10 days ago |
10-40352 10 days |
30320 |
euprunin author:euprunin |
chore(Analysis/SpecialFunctions): golf entire `mulExpNegMulSq_eq_sqrt_mul_mulExpNegMulSq_one` using `grind` |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
1/9 |
Mathlib/Analysis/SpecialFunctions/MulExpNegMulSq.lean |
1 |
1 |
['github-actions'] |
nobody |
1-6453 1 day ago |
1-6467 1 day ago |
1-6507 1 day |
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 |
5 |
['chrisflav', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] |
erdOne assignee:erdOne |
1-6096 1 day ago |
48-73966 1 month ago |
48-75375 48 days |
29781 |
chrisflav author:chrisflav |
feat(RingTheory/Finiteness): a finite and finitely presented algebra is finitely presented |
We show that if `S` is finite as a module over `R` and finitely presented as an algebra over `R`, then it is finitely presented as a module over `R`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
136/0 |
Mathlib.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/RingTheory/Finiteness/ModuleFinitePresentation.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Polynomial/Basic.lean |
5 |
9 |
['chrisflav', 'erdOne', 'github-actions'] |
erdOne assignee:erdOne |
1-5571 1 day ago |
20-60801 20 days ago |
20-60780 20 days |
30000 |
themathqueen author:themathqueen |
refactor(Analysis/InnerProductSpace/Positive): generalize definition to use `IsSymmetric` instead of `IsSelfAdjoint` and `CompleteSpace` |
The definition remains the same in complete spaces, but this allows us to use positivity and the partial order without needing completeness.
To use the old definition (i.e., `IsSelfAdjoint` and ...), instead of unfolding, use `ContinuousLinearMap.isPositive_def`.
`isPositive_iff` is renamed to `isPositive_iff'`, and `isPositive_iff` points to the same thing but with `IsSymmetric` instead of `IsSelfAdjoint`.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
64/54 |
Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/StarOrder.lean |
2 |
3 |
['github-actions', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
1-4586 1 day ago |
12-81525 12 days ago |
13-873 13 days |
29237 |
harahu author:harahu |
doc: capitalize archimedean |
Adjectives derived from the name of a mathematician are ordinarily capitalized in English. The sole exception to this rule that I know of is "abelian".
Wikipedia follows this pattern for the [Archimedean property](https://en.wikipedia.org/wiki/Archimedean_property), and when searching Google Scholar for "archimedean" I also mostly get results with a capital A.
Consequently, I think it makes sense for mathlib to follow this convention as well.
---
[](https://gitpod.io/from-referrer/)
|
|
339/338 |
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/Module/HahnEmbedding.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/Fin/SuccPredOrder.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/LocalField/Basic.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/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 |
76 |
5 |
['euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] |
dwrensha assignee:dwrensha |
1-1931 1 day ago |
24-488 24 days ago |
35-1632 35 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
|
747/0 |
Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean |
2 |
80 |
['Sfgangloff', 'eric-wieser', 'github-actions', 'kckennylau', 'sgouezel'] |
sgouezel assignee:sgouezel |
1-1253 1 day ago |
1-1254 1 day ago |
38-20121 38 days |
30233 |
Komyyy author:Komyyy |
refactor(Topology/Sequences): generalize seq-compactness lemmas to metrizable space |
* [`IsSeqCompact.isCompact`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sequences.html#IsSeqCompact.isCompact)
* [`UniformSpace.isCompact_iff_isSeqCompact`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sequences.html#UniformSpace.isCompact_iff_isSeqCompact)
* [`UniformSpace.compactSpace_iff_seqCompactSpace`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sequences.html#UniformSpace.compactSpace_iff_seqCompactSpace)
These are lemmas on uniform spaces which has countable uniformity, so can be generalized to pseudo-metrizable space.
From [CLT](https://github.com/RemyDegenne/CLT)
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-topology
|
20/7 |
Mathlib/Topology/Sequences.lean,docs/overview.yaml,docs/undergrad.yaml |
3 |
1 |
['github-actions'] |
nobody |
1-199 1 day ago |
1-199 1 day ago |
1-675 1 day |
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$ |
88/5 |
Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/Kronecker.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean |
4 |
10 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
joneugster assignee:joneugster |
0-85695 23 hours ago |
0-85836 23 hours ago |
37-22783 37 days |
29861 |
themathqueen author:themathqueen |
feat(LinearAlgebra/Matrix/PosDef): `vecMulVec a (star a)` is positive semi-definite |
The matrices `vecMulVec a (star a)` and `vecMulVec (star a) a` are always positive semi-definite. And in a nontrivial commutative ring with nontrivial index, they are never positive definite.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
64/0 |
Mathlib/Data/Matrix/Mul.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean |
2 |
7 |
['eric-wieser', 'github-actions', 'themathqueen'] |
ocfnash assignee:ocfnash |
0-85313 23 hours ago |
16-76246 16 days ago |
17-64083 17 days |
30322 |
kckennylau author:kckennylau |
feat(RingTheory): base change of graded algebra |
In this file we show that if `𝒜` is a graded `R`-algebra, and `S` is any `R`-algebra, then `S ⊗[R] 𝒜` (which is actually `fun i ↦ (𝒜 i).baseChange S`) is a graded `S`-algebra with the same grading.
---
Split from #26061.
[](https://gitpod.io/from-referrer/)
|
|
269/48 |
Mathlib.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/DirectSum/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Decomposition.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/TensorProduct.lean |
12 |
1 |
['github-actions'] |
nobody |
0-78970 21 hours ago |
0-83838 23 hours ago |
0-83815 23 hours |
29257 |
harahu author:harahu |
doc: attach "pre", "pseudo", "semi" and "sub" as a prefixes where they are now free-standing |
These are all examples of [bound morphemes](https://en.wikipedia.org/wiki/Bound_and_free_morphemes) and should be attached, either in closed form or by hyphen, to some other construct.
Whether to write the resulting words in closed form or with a hyphen is a stylistic choice and I am open to discussing the specifics, should that be of interest. I've made choices based on existing literature and what I personally found natural, but other opinions are welcome.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
50/50 |
Mathlib/Algebra/Star/NonUnitalSubsemiring.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Group/BallSphere.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Lean/Meta/KAbstractPositions.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Initialize.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Gluing.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/MetricSpace/ThickenedIndicator.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/Uniformity.lean,scripts/autolabel.lean |
21 |
5 |
['euprunin', 'github-actions', 'harahu', 'mathlib4-merge-conflict-bot'] |
JovanGerb assignee:JovanGerb |
0-73328 20 hours ago |
1-7153 1 day ago |
36-368 36 days |
30332 |
euprunin author:euprunin |
feat: unregister `bound` for `hint` |
This helps mitigate the effects of issue #29831 and makes `hint` more useful.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
0/6 |
Mathlib/Tactic/Bound.lean |
1 |
1 |
['github-actions'] |
nobody |
0-71645 19 hours ago |
0-71654 19 hours ago |
0-71693 19 hours |
30050 |
themathqueen author:themathqueen |
chore(Analysis/Matrix/Order): `IsStrictlyPositive x` iff `x.PosDef` |
---
- [x] depends on: #29896
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/13 |
Mathlib/Analysis/Matrix/Order.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-71001 19 hours ago |
1-24831 1 day ago |
1-24820 1 day |
30287 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): define `IsCompleteBetween` |
`IsCompleteBetween` is the condition that two subsets of vertices are completely connected in a simple graph.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
20/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
2 |
['YaelDillies', 'github-actions', 'vlad902'] |
nobody |
0-69112 19 hours ago |
2-37750 2 days ago |
2-37751 2 days |
30319 |
euprunin author:euprunin |
chore (Topology/UniformSpace/Ultra): deprecate `IsTransitiveRel.mem_filter_prod_comm` |
---
[](https://gitpod.io/from-referrer/)
|
t-topology
easy
|
3/15 |
Mathlib/Topology/UniformSpace/Ultra/Basic.lean,Mathlib/Topology/UniformSpace/Ultra/Completion.lean |
2 |
1 |
['github-actions', 'plp127'] |
nobody |
0-64623 17 hours ago |
0-64623 17 hours ago |
1-8331 1 day |
30269 |
joelriou author:joelriou |
refactor(CategoryTheory/Generator): use ObjectProperty instead ot Set |
In certain applications (see #30247), it becomes unpractical to have certains notions like `IsSeparating` defined for `Set C`, while the API for the relatively new `ObjectProperty` is expanding. In this PR, we move the definition of `IsSeparating` to the `ObjectProperty` namespace.
---
- [x] depends on: #30294
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
448/305 |
Mathlib/Algebra/Category/ModuleCat/AB.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/Comma/StructuredArrow/Small.lean,Mathlib/CategoryTheory/Generator/Basic.lean,Mathlib/CategoryTheory/Generator/HomologicalComplex.lean,Mathlib/CategoryTheory/Generator/Indization.lean,Mathlib/CategoryTheory/Generator/Preadditive.lean,Mathlib/CategoryTheory/Generator/Presheaf.lean,Mathlib/CategoryTheory/Generator/Sheaf.lean |
12 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-64572 17 hours ago |
0-64572 17 hours ago |
0-64550 17 hours |
30336 |
kckennylau author:kckennylau |
feat(RingTheory): some lemmas about the irrelevant ideal |
This PR adds some lemmas about the irrelevant ideal of a graded ring, such as the fact that it is the iSup of each positively graded component.
---
Split from #26061.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
37/5 |
Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean |
1 |
1 |
['github-actions'] |
nobody |
0-64434 17 hours ago |
0-64438 17 hours ago |
0-64475 17 hours |
30335 |
joelriou author:joelriou |
feat(CategoryTheory/Adjunction): more mate compatibilities |
We obtain various lemmas about adjunctions between functors by computing `conjugateEquiv` in case of associators, unitors, and whiskerings. We deduce a way to obtain compatibilites with respect to composition of functors of left adjoints assuming that we have these compatibilites for right adjoints. In #30318, this shall be applied to the study of the compatibilities with respect to composition of the pullback functors for presheaves of modules.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
214/4 |
Mathlib.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/CategoryTheory/Adjunction/Mates.lean |
4 |
5 |
['github-actions', 'joelriou'] |
nobody |
0-63773 17 hours ago |
0-65762 18 hours ago |
0-65740 18 hours |
30176 |
mcdoll author:mcdoll |
feat(Analysis/Distribution): Multiplication of two functions of temperate growth is of temperate growth |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
57/1 |
Mathlib/Analysis/Distribution/SchwartzSpace.lean |
1 |
3 |
['ADedecker', 'github-actions', 'mcdoll'] |
nobody |
0-59864 16 hours ago |
5-58921 5 days ago |
5-58959 5 days |
30286 |
erdOne author:erdOne |
feat(AlgebraicGeometry): quasi-affine if covered by affine basic opens of global sections |
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
120/69 |
Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/Immersion.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/QuasiAffine.lean,Mathlib/Topology/Constructible.lean |
9 |
12 |
['chrisflav', 'erdOne', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] |
nobody |
0-58905 16 hours ago |
0-59656 16 hours ago |
1-50419 1 day |
30337 |
kckennylau author:kckennylau |
chore: delete wrong docstring for irrelevant ideal |
The expression given `{a | ∀ (i : ι), i ≤ 0 → aᵢ = 0}` does not define an ideal, because it is not closed under (external) multiplication. For example, if x has grade 1 and y has grade -2, then x will be in this "ideal", but xy will not.
Zulip discussion: [#mathlib4 > irrelevant ideal cannot be generalised](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/irrelevant.20ideal.20cannot.20be.20generalised/near/543800961)
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
0/5 |
Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean |
1 |
1 |
['github-actions'] |
nobody |
0-58814 16 hours ago |
0-58839 16 hours ago |
0-58876 16 hours |
29903 |
joelriou author:joelriou |
chore(CategoryTheory): split Limits.Presentation |
The part of the code involving "set theory" (via finitely presentable objects) is moved to `CategoryTheory.Presentable.Presentation`. As `ColimitPresentation` is going to be used more widely, this will reduce dependencies to set theory for some files.
- [x] depends on: #29851
- [x] depends on: #29849
- [x] depends on: #29843
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
154/133 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Presentation.lean,Mathlib/CategoryTheory/ObjectProperty/Ind.lean,Mathlib/CategoryTheory/Presentable/ColimitPresentation.lean |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-57864 16 hours ago |
3-64397 3 days ago |
3-64376 3 days |
30338 |
grunweg author:grunweg |
feat: local frames in a vector bundle |
We define a predicate `IsLocalFrameOn`, for a collection of sections of a vector bundle to be a local frame.
We provide some basic API, such as the coefficients of a section `t` w.r.t. a local frame, or proving smoothness of `t` via proving the smoothness of its local frame coefficients.
A future PR will construct actual local frames, and use these to define the local extension of a tangent vector to a vector field near a point.
From the path towards geodesics and the Levi-Civita connection.
Co-authored-by: Patrick Massot [patrickmassot@free.fr](mailto:patrickmassot@free.fr)
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
282/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean |
2 |
1 |
['github-actions'] |
nobody |
0-57142 15 hours ago |
0-57951 16 hours ago |
0-57989 16 hours |
30326 |
kebekus author:kebekus |
feat: commutativity of `mul` and `finprod` |
For (semi-)rings without zero divisors, show that multiplication commutes with `finprod`. Following a [brief discussion of Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.20inconstency.2C.20finsum.20and.20multiplication/with/543461589), unify naming between theorems about multiplication and theorems about scalar multiplication.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
74/4 |
Mathlib/Algebra/BigOperators/Finprod.lean |
1 |
3 |
['Vierkantor', 'github-actions', 'kebekus'] |
nobody |
0-56941 15 hours ago |
0-77036 21 hours ago |
0-77074 21 hours |
25971 |
joelriou author:joelriou |
feat(CategoryTheory): pseudofunctors to Cat |
This PR adds convenience lemmas for pseudofunctors to `Cat`, mostly using the `to_app` attribute. The simp set for the `to_app` attribute is extended in order to take into account that in `Cat`, associators and unitors induce identities.
---
- [x] depends on: #30134
This PR continues the work from #24384.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24384 |
t-category-theory |
175/24 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Functor/Cat.lean,Mathlib/CategoryTheory/Bicategory/Grothendieck.lean,Mathlib/CategoryTheory/Bicategory/Strict/Pseudofunctor.lean,Mathlib/Tactic/CategoryTheory/ToApp.lean,MathlibTest/CategoryTheory/ToApp.lean |
6 |
20 |
['callesonne', 'chrisflav', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'yuma-mizuno'] |
robin-carlier assignee:robin-carlier |
0-56133 15 hours ago |
0-56169 15 hours ago |
2-75899 2 days |
30340 |
themathqueen author:themathqueen |
chore(Analysis/SpecialFunctions/CFC/Rpow/Basic): extra TFAE conditions for nonnegativity |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
46/16 |
Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-55648 15 hours ago |
0-55713 15 hours ago |
0-55844 15 hours |
30179 |
EtienneC30 author:EtienneC30 |
feat: uncurrying the product measure gives the product measure |
---
- [x] depends on: #30161
- [x] depends on: #30178
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
51/0 |
Mathlib/Probability/ProductMeasure.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-54958 15 hours ago |
0-54961 15 hours ago |
0-54943 15 hours |
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 |
7 |
['MichaelStollBayreuth', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-merge-conflict-bot'] |
j-loreaux assignee:j-loreaux |
0-54030 15 hours ago |
12-66325 12 days ago |
24-49546 24 days |
29430 |
RemyDegenne author:RemyDegenne |
refactor(Probability): change stopping times to take values in `WithTop` |
This PR changes stopping times to have type `Ω → WithTop ι` instead of `Ω → ι`.
Previously, a stopping time for a filtration indexed by Nat had to have value in Nat. That's not representative of the way stopping times are used in probability. A typical stopping time is the first time at which we see a head in an infinite sequence of coin flips. That time could be infinite (although it is almost surely finite). We can't represent it with a `Ω → Nat` stopping time: if we choose an arbitrary value in Nat for the event that it is infinite, we destroy the stopping time property.
We faced that issue in the `BorelCantelli` file, in which we avoided such a possibly infinite stopping time by introducing a sequence of bounded stopping times. We had to prove additional lemmas about them since we could not directly use the API for stopped processes. With the new type, that file is greatly simplified as the API is directly usable, and we can write the proof as we would on paper.
The issue with the previous stopping time implementation was noted in [Ying and Degenne, A Formalization of Doob’s Martingale Convergence Theorems in mathlib, CPP 2023, https://dl.acm.org/doi/pdf/10.1145/3573105.3575675].
Other changes:
- the sigma-algebra generated by a stopping time is now a sub-sigma algebra by definition
- `measurableSet_eq_stopping_time` is generalized and the now useless `measurableSet_eq_stopping_time_of_countable` is removed
- `hitting` is renamed to `hittingBtwn`
- a new `hittingAfter` is introduced and used in the Borel-Cantelli proof. That proof is now much simpler since we can use a stopped process as intended instead of going around the limitations of the previous stopping time implementation.
---
- [ ] depends on: #29466
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
1124/555 |
Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/WithTop.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/OptionalSampling.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/Topology/Order/WithTop.lean |
10 |
11 |
['RemyDegenne', 'github-actions', 'kex-y', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-53912 14 hours ago |
0-53912 14 hours ago |
0-53890 14 hours |
30341 |
bwangpj author:bwangpj |
feat: Limits for ProfiniteAddGrp |
`to_additive` was not working in the construction of limits in the category of profinite groups; I believe the fix was to add `@[to_additive self]` to the `Profinite` declaration.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
12/8 |
Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Category/Profinite/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
0-52654 14 hours ago |
0-52654 14 hours ago |
0-52735 14 hours |
26588 |
faenuccio author:faenuccio |
feat(Algebra/GroupWithZero/WithZero): add the multiplicative embedding with zero from the range |
We extend the embedding of the range of a `MonoidWithZeroHom` to the codomain by enriching it with the structure of an ordered, multiplicative embedding. In passing, we extend some results about the embedding of `WithZero` of the units of a group with zero, to the group itself.
Co-authored by: María Inés de Frutos Fernández @mariainesdff
---
- [x] depends on: #29594
- [x] depends on: #29644
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
label:t-algebra$ |
110/3 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean |
4 |
90 |
['YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
YaelDillies assignee:YaelDillies |
0-52369 14 hours ago |
0-52369 14 hours ago |
31-78685 31 days |
27273 |
xroblot author:xroblot |
feat(IntermediateField/LinearDisjoint): Two fields are linearly disjoint iff they are disjoint in the Galois case |
---
- [x] depends on: #26841
|
t-algebra label:t-algebra$ |
73/1 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/LinearDisjoint.lean |
3 |
6 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] |
mattrobball assignee:mattrobball |
0-50922 14 hours ago |
13-467 13 days ago |
13-2078 13 days |
29980 |
mans0954 author:mans0954 |
refactor(RingTheory/Polynomial/Resultant/Quadratic): Re-implement QuadraticDiscriminant for R[X] |
Re-implement `Algebra/QuadraticDiscriminant` for polynomials.
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/discriminants.20of.20low.20degree.20polynomials/with/538010519)
---
- [ ] depends on: #29981
[](https://gitpod.io/from-referrer/)
|
|
208/0 |
Mathlib.lean,Mathlib/RingTheory/Polynomial/Resultant/Quadratic.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-50372 13 hours ago |
0-51830 14 hours ago |
0-55714 15 hours |
29921 |
mans0954 author:mans0954 |
refactor(RingTheory/Polynomial/SmallDegreeVieta) : Convert to {p : R[X]} (hp : p.natDegree = 2) |
Convert `RingTheory/Polynomial/SmallDegreeVieta` from `{a b c : R} (C a * X ^ 2 + C b * X + C c)` to `{p : R[X]} (hp : p.natDegree = 2)`
(see [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/discriminants.20of.20low.20degree.20polynomials/with/538010519))
---
- [x] depends on: #29981
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
75/60 |
Mathlib/RingTheory/Polynomial/SmallDegreeVieta.lean |
1 |
6 |
['JovanGerb', 'github-actions', 'kckennylau', 'mans0954', 'mathlib4-dependent-issues-bot', 'vihdzp'] |
nobody |
0-49464 13 hours ago |
0-51821 14 hours ago |
1-58830 1 day |
30324 |
EtienneC30 author:EtienneC30 |
feat: introduce covInnerBilin |
The `covInnerBilin` associated to a measure is the positive semidefinite continuous bilinear form which represents its covariance.
---
From BrownianMotion
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
171/1 |
Mathlib.lean,Mathlib/Probability/Moments/CovInnerBilin.lean,Mathlib/Probability/Moments/CovarianceBilin.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean |
4 |
1 |
['github-actions'] |
nobody |
0-49142 13 hours ago |
0-49142 13 hours ago |
0-80617 22 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.boundedEulerChar`: The Euler characteristic over a finite set
* `ChainComplex.eulerChar`: The Euler characteristic as an infinite sum
* `ChainComplex.homologyBoundedEulerChar`: The homological Euler characteristic over a finite set
* `ChainComplex.homologyEulerChar`: The homological Euler characteristic as an infinite sum
Both bounded and infinite definitions work with ℤ-indexed complexes over any ring R.
The file also includes theorems relating the formally infinite sums to finite sums when there is finite support:
* `ChainComplex.eulerChar_eq_boundedEulerChar`: The infinite Euler characteristic equals the bounded one when the chain complex vanishes outside a finite set
* `ChainComplex.homologyEulerChar_eq_homologyBoundedEulerChar`: The infinite homological Euler characteristic equals the bounded one when homology vanishes outside a finite set
### 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.
---
Related to: #29639, #29643, #29646 |
new-contributor
t-algebra
label:t-algebra$ |
444/0 |
Mathlib.lean,Mathlib/Algebra/Homology/EulerCharacteristic.lean,Mathlib/Algebra/Homology/EulerPoincare.lean |
3 |
19 |
['github-actions', 'jessealama', 'joelriou', 'kim-em'] |
dagurtomas assignee:dagurtomas |
0-46532 12 hours ago |
21-70950 21 days ago |
22-80800 22 days |
30314 |
j-loreaux author:j-loreaux |
feat: define `CFC.abs`, the absolute value in a C⋆-algebra |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
308/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Abs.lean |
2 |
16 |
['dupuisf', 'github-actions', 'j-loreaux', 'themathqueen'] |
dupuisf assignee:dupuisf |
0-46231 12 hours ago |
1-37582 1 day ago |
1-37615 1 day |
30316 |
NotWearingPants author:NotWearingPants |
feat(Topology/Connected): locally (path-)connected compact spaces have finitely many (path-)connected components |
feat(Topology/Connected): locally (path-)connected compact spaces have finitely many (path-)connected components
Locally (path-)connectedness implies all (path-)connected components are open, so they form an open cover. Compactness implies there's a finite subcover. Since the components are disjoint, the subcover must equal the cover.
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-topology
|
41/0 |
Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/LocallyConnected.lean,Mathlib/Topology/Connected/PathConnected.lean |
4 |
4 |
['NotWearingPants', 'github-actions', 'j-loreaux'] |
nobody |
0-45905 12 hours ago |
0-45931 12 hours ago |
0-56759 15 hours |
30317 |
NotWearingPants author:NotWearingPants |
feat(Combinatorics/SimpleGraph/Acyclic): homomorphisms into an acyclic graph implies acyclic |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
43/4 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean |
1 |
3 |
['NotWearingPants', 'github-actions', 'vlad902'] |
nobody |
0-45473 12 hours ago |
1-23427 1 day ago |
1-23460 1 day |
28819 |
ScottCarnahan author:ScottCarnahan |
feat (Data/Finsupp): define convolution smul for finsupps on formal functions |
This is a generalization of the multiplication action of the ring of Laurent polynomials on the space of formal power series with unbounded pole terms.
---
- [ ] depends on: #28876
[](https://gitpod.io/from-referrer/)
|
|
86/0 |
Mathlib.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-41957 11 hours ago |
0-41981 11 hours ago |
1-50233 1 day |
30321 |
chrisflav author:chrisflav |
feat(CategoryTheory/Sites): small `0`-hypercovers |
A `w`-`0`-hypercover `E` is `w'`-small if there exists an indexing type `ι` in `Type w'` and a
restriction map `ι → E.I₀` such that the restriction of `E` to `ι` is still covering.
This is weaker than `E.I₀` being `w'`-small. For example, every Zariski cover of `X : Scheme.{u}` is `u`-small,
because `X` itself suffices as indexing type.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
116/7 |
Mathlib/AlgebraicGeometry/Cover/MorphismProperty.lean,Mathlib/CategoryTheory/MorphismProperty/Local.lean,Mathlib/CategoryTheory/Sites/Hypercover/Zero.lean,Mathlib/CategoryTheory/Sites/MorphismProperty.lean |
4 |
5 |
['chrisflav', 'github-actions', 'joelriou'] |
nobody |
0-41197 11 hours ago |
0-41197 11 hours ago |
0-66097 18 hours |
30353 |
JovanGerb author:JovanGerb |
chore(Topology/ContinuousMap/CompactlySupported): golf `exists_add_nnrealPart_add_eq` |
This PR shortens the proof of `exists_add_nnrealPart_add_eq`, based on #29866
---
[](https://gitpod.io/from-referrer/)
|
t-topology
easy
|
3/38 |
Mathlib/Topology/ContinuousMap/CompactlySupported.lean |
1 |
1 |
['github-actions'] |
nobody |
0-38163 10 hours ago |
0-38164 10 hours ago |
0-38209 10 hours |
30344 |
Deep0Thinking author:Deep0Thinking |
feat(MeasureTheory/IntervalIntegral): first mean value theorem for integrals |
Add the First mean value theorem for (unordered) interval integrals on ℝ.
- `exists_eq_const_mul_interval_integral_of_continuous_on_of_ae_nonneg`
- `exists_eq_const_mul_interval_integral_of_continuous_on_of_nonneg`
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
226/0 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean |
2 |
4 |
['github-actions', 'plp127'] |
nobody |
0-36252 10 hours ago |
0-49511 13 hours ago |
0-49544 13 hours |
30354 |
NotWearingPants author:NotWearingPants |
feat(Combinatorics/SimpleGraph/Connectivity/WalkCounting): a spanning subgraph has the same or more connected components |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
8/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean |
2 |
1 |
['github-actions'] |
nobody |
0-35168 9 hours ago |
0-35181 9 hours ago |
0-35215 9 hours |
27673 |
b-reinke author:b-reinke |
feat(GroupTheory/FreeGroup): add cyclic reduction of words |
This PR adds the definition of `reduceCyclically`. This function produces a subword of a word `w` by cancelling the first and last letters of `w` as long as possible. If `w` is reduced, the resulting word will be cyclically reduced.
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.
- [x] depends on: #25966
- [x] depends on: #27672
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
76/0 |
Mathlib/GroupTheory/FreeGroup/CyclicallyReduced.lean |
1 |
6 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] |
tb65536 assignee:tb65536 |
0-32158 8 hours ago |
8-8820 8 days ago |
8-10132 8 days |
27971 |
smmercuri author:smmercuri |
feat: weak approximation theorems for infinite places of a number field |
Under the diagonal embedding into infinite places, a number field $K$ is dense inside both the product $\prod_{v \mid \infty} (K, v)$, where $(K, v)$ denotes $K$ equipped with $v$'s topology, and the infinite adele ring $\prod_v K_v$.
This PR continues the work from #22153.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22153
---
- [x] depends on: #27969 |
large-import
FLT
t-algebra
t-number-theory
label:t-algebra$ |
98/2 |
Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean |
3 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] |
Vierkantor assignee:Vierkantor |
0-32157 8 hours ago |
7-73244 7 days ago |
7-75894 7 days |
29960 |
yonggyuchoimath author:yonggyuchoimath |
feat(Algebra/Category/Ring): equalizers of pushout maps of tensor product inclusions |
This PR defines a ring map `S →ₗ[R] S ⊗[R] S : s ↦ (s ⊗ₜ[R] 1) - (1 ⊗ₜ[R] s)` for an `R`-algebra `S`, and show that its kernel is exactly (the image of) `R` if `S` is faithfully flat over `R`.
Changes:
* `TensorProduct.AlgebraTensorModule.distribBaseChange`: Origianlly takes `M` and `N`, where `M` is an `R`-module with an additional instance `IsScalarTower R A M`. This is unnecessary, so I changed the `M` and `N` into `N` and `Q`, now both of which are merely modules over `R`.
Main results :
* Add compatibility of `Algebra.TensorProduct.includeLeft` (or `Algebra.TensorProduct.includeRight`) with `TensorProduct.AlgebraTensorModule.distribBaseChange` and `LinearMap.lTensor`
* Define `Algebra.TensorProduct.includeLeftSubRight`, which is the `R`-linear map `S →ₗ[R] S ⊗[R] S` sending `s : S` to `(s ⊗ₜ[R] 1) - (1 ⊗ₜ[R] s)`.
* `Algebra.TensorProduct.exactIncludeLeftSubRight_of_faithfullyFlat`: the pair `algebraMap : R → S` and `includeLeftSubRight R S : S → S ⊗[R] S` is exact if `S` is a faithfully flat `R`-algebra. |
new-contributor |
229/1 |
Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/IncludeLeftSubRight.lean |
4 |
3 |
['erdOne', 'github-actions', 'yonggyuchoimath'] |
TwoFX assignee:TwoFX |
0-32154 8 hours ago |
8-52438 8 days ago |
11-508 11 days |
29996 |
vihdzp author:vihdzp |
chore(Order/Concept): `IsIntent` and `IsExtent` |
We define predicates for a set to be an intent/extent, and use them to define alternate constructors for a concept. Using these, we golf the complete lattice instances.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
161/95 |
Mathlib/Order/Concept.lean |
1 |
17 |
['github-actions', 'linesthatinterlace', 'plp127', 'vihdzp'] |
Vierkantor assignee:Vierkantor |
0-32153 8 hours ago |
13-6262 13 days ago |
13-6296 13 days |
30070 |
adomani author:adomani |
CI: remove deprecations automatically |
This workflow automates the removal of deprecated declarations. The action is currently configured to run once a week to automatically remove all deprecations older than 6 months.
This is managed by the `remove_deprecated_decls` action and depends on the two files `Mathlib/Tactic/Linter/CommandRanges.lean` and `Mathlib/Tactic/Linter/FindDeprecations.lean`.
The action can be manually triggered and there is the option of passing two dates in `YYYY-MM-DD` format or also the more human "3 months ago", as long as it is a valid input for `date -d`.
The lean files take care of identifying the declarations with the deprecated attribute whose `since` field is between the given ranges.
Those declarations then get automatically removed and, if there are no errors, the bot creates a PR with the changes.
These PRs then go, naturally, through CI, where issues related to having removed the deprecated declarations will be picked up. The bot also posts a comment on Zulip mentioning when the PR has been opened.
Co-authored-by: Bryan Gin-ge Chen
---
[](https://gitpod.io/from-referrer/)
|
CI |
595/0 |
.github/workflows/remove_deprecated_decls.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/CommandRanges.lean,Mathlib/Tactic/Linter/FindDeprecations.lean,MathlibTest/FindDeprecations.lean |
6 |
26 |
['Vierkantor', 'adomani', 'bryangingechen', 'github-actions'] |
robertylewis assignee:robertylewis |
0-32152 8 hours ago |
8-24870 8 days ago |
8-54227 8 days |
30071 |
Jlh18 author:Jlh18 |
feat: dualize Pseudofunctor.CoGrothendieck results to Pseudofunctor.Grothendieck |
Continuing from #29681, dualize all definitions and lemmas in the namespace `Pseudofunctor.CoGrothendieck` to results in the namespace `Pseudofunctor.Grothendieck`.
- [ ] depends on: #29681
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
121/9 |
Mathlib/CategoryTheory/Bicategory/Grothendieck.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
riccardobrasca assignee:riccardobrasca |
0-32151 8 hours ago |
7-51294 7 days ago |
7-61800 7 days |
30088 |
FernandoChu author:FernandoChu |
feat(CategoryTheory): `Exists` gives images |
We show that (the underlying arrow of) `(exists f.obj) x` is an image.
This is a prerequisite of the [MTT project](https://github.com/kyoDralliam/model-theory-topos), which aims to use the internal language of toposes to reason about e.g. sheaves. |
t-category-theory |
147/2 |
Mathlib/CategoryTheory/Limits/Shapes/Images.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/CategoryTheory/Subobject/Basic.lean |
3 |
6 |
['FernandoChu', 'github-actions', 'joelriou'] |
robin-carlier assignee:robin-carlier |
0-32150 8 hours ago |
8-2775 8 days ago |
8-17767 8 days |
30107 |
grunweg author:grunweg |
chore: track occurrences of 'nonrec' as technical debt |
Matches leanprover-community/leanprover-community.github.io#689: only merge when that is deemed a good idea.
--------
TODO: make the count more robust, for instance count all occurrences of "^nonrec " plus those of "^[private|protected] nonrec ".
---
[](https://gitpod.io/from-referrer/)
|
tech debt
CI
|
1/0 |
scripts/technical-debt-metrics.sh |
1 |
1 |
['github-actions'] |
robertylewis assignee:robertylewis |
0-32149 8 hours ago |
8-5037 8 days ago |
8-5016 8 days |
30116 |
FormulaRabbit81 author:FormulaRabbit81 |
feat(Measure): proof that a relatively compact set of measures is tight |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-measure-probability
|
196/2 |
Mathlib/MeasureTheory/Measure/Tight.lean |
1 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
0-32149 8 hours ago |
7-42405 7 days ago |
7-42439 7 days |
30355 |
kckennylau author:kckennylau |
feat(Logic): graded functions |
This PR defines a class of graded functions, called `GradedFunLike`. It is intended to be used in #30312 to characterise a class of graded ring homomorphisms, where it is invoked as `[GradedFunLike F 𝒜 ℬ] [RingHomClass F A B]`.
---
[](https://gitpod.io/from-referrer/)
|
t-data |
35/0 |
Mathlib.lean,Mathlib/Data/FunLike/GradedFunLike.lean |
2 |
1 |
['github-actions'] |
nobody |
0-31501 8 hours ago |
0-31965 8 hours ago |
0-32003 8 hours |
30231 |
NotWearingPants author:NotWearingPants |
feat(LinearAlgebra/Matrix/Charpoly): `trace_eq_neg_charpoly_coeff` using `nextCoeff` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
easy
label:t-algebra$ |
6/3 |
Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Eigs.lean |
2 |
3 |
['NotWearingPants', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
0-29687 8 hours ago |
0-29709 8 hours ago |
4-10546 4 days |
28793 |
grunweg author:grunweg |
feat: smooth immersions |
Define smooth immersions between manifolds.
We use a definition which allows for corners, infinite dimension and arbitrary fields.
Future PRs will
- prove that immersions are C^n (#28796),
- prove another characterisation of immersions: f is immersed at x iff the differential df_x splits,
i.e. is injective, has closed range and its image has a closed complement,
and in particular that a map between finite-dimensional manifolds over a complete field is an
immersion iff its differential is injective,
- use this to prove that the product (#28853) and composition of immersions is an immersion,
- use this theory to give more conceptual proofs of half of `Manifold/Instances/Icc.lean` (#29077)
- define smooth embeddings and immersed and embedded smooth submanifolds
---
- [x] depends on: #28701
Most of the above has been done at https://github.com/grunweg/mathlib4/tree/MR-define-immersions.
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
487/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,docs/references.bib |
4 |
98 |
['chrisflav', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'sgouezel'] |
sgouezel assignee:sgouezel |
0-24440 6 hours ago |
0-24451 6 hours ago |
11-48435 11 days |
30311 |
j-loreaux author:j-loreaux |
feat: the unitary group in a C⋆-algebra is locally path connected |
When `A` is a unital C⋆-algebra and `u : unitary A` is a unitary element whose distance to `1` is
less that `2`, the spectrum of `u` is contained in the slit plane, so the principal branch of the
logarithm is continuous on the spectrum of `u` (or equivalently, `Complex.arg` is continuous on the
spectrum). The continuous functional calculus can then be used to define a selfadjoint element `x`
such that `u = exp (I • x)`. Moreover, there is a relatively nice relationship between the norm of
`x` and the norm of `u - 1`, namely `‖u - 1‖ ^ 2 = 2 * (1 - cos ‖x‖)`. In fact, these maps `u ↦ x`
and `x ↦ u` establish a partial homeomorphism between `ball (1 : unitary A) 2` and
`ball (0 : selfAdjoint A) π`.
The map `t ↦ exp (t • (I • x))` constitutes a path from `1` to `u`, showing that unitary elements
sufficiently close (i.e., within a distance `2`) to `1 : unitary A` are path connected to `1`.
This property can be translated around the unitary group to show that if `u v : unitary A` are
unitary elements with `‖u - v‖ < 2`, then there is a path joining them. In fact, this path has the
property that it lies within `closedBall u ‖u - v‖`, and consequently any ball of radius `δ < 2` in
`unitary A` is path connected. Therefore, the unitary group is locally path connected.
Finally, we provide the standard characterization of the path component of `1 : unitary A` as finite
products of exponential unitaries.
---
- [ ] depends on #30301
- [ ] depends on #30305
[](https://gitpod.io/from-referrer/)
|
t-analysis |
350/0 |
Mathlib.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean |
3 |
4 |
['dupuisf', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
0-23959 6 hours ago |
0-64461 17 hours ago |
0-72390 20 hours |
30307 |
grunweg author:grunweg |
feat: support coercions in the differential geometry elaborators |
Generalise the `CMDiff`, `MDiff` and `mfderiv` elaborators (and its friends) to apply to any object which coerces to a function. We can such speak about the smoothness of a `PartialEquiv`, `OpenPartialHomeomorph` (or the future `ClosedPartialHomeomorph` and `PartialHomeomorph`), smooth section or bundled smooth map without the need for a coercion.
While at it, add more sections (and section headers) to the test file for the elaborators.
---
I have forward-ported this PR to #26221 and not noticed any issues yet.
- [x] depends on: #27021
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
t-meta
|
141/25 |
Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Lean/Meta/Basic.lean,MathlibTest/DifferentialGeometry/Notation.lean |
3 |
6 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'thorimur'] |
nobody |
0-19798 5 hours ago |
0-68903 19 hours ago |
0-69043 19 hours |
30308 |
j-loreaux author:j-loreaux |
feat: C⋆-algebras are spanned by their unitary elements |
---
- [ ] depends on: #30301
- [ ] depends on: #30305
[](https://gitpod.io/from-referrer/)
|
t-analysis |
107/0 |
Mathlib.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Span.lean |
2 |
5 |
['dupuisf', 'github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-19617 5 hours ago |
0-64536 17 hours ago |
0-67590 18 hours |
30197 |
luigi-massacci author:luigi-massacci |
feat: bundled C^n maps supported in a fixed compact set |
Add a type of n-times continuously differentiable maps supported in a fixed compact and related notation.
Co-authored by: @ADedecker
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
163/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean |
2 |
49 |
['ADedecker', 'github-actions', 'grunweg', 'luigi-massacci', 'mcdoll'] |
nobody |
0-9536 2 hours ago |
0-21370 5 hours ago |
3-65252 3 days |
29322 |
xroblot author:xroblot |
feat(RingTheory/Localization/AtPrime): bijection between prime ideals |
Let `R ⊆ S` be an extension of rings and `p` be a prime ideal of `R`. Denote by `Rₚ` the localization of `R` at the complement of `p` and by `Sₚ` the localization of `S` at the (image) of the complement of `p`.
In this PR, we study the extension `Rₚ ⊆ Sₚ` and the relation between the (nonzero) prime ideals of `Sₚ` and the prime ideals of `S` above `p`. In particular, we prove that (under suitable conditions) they are in bijection. In a following PR #27706, we prove that the residual degree and ramification index are preserved by this bijection.
Note. The new file `RingTheory.Localization.AtPrime.Extension` is imported in `RingTheory.Trace.Quotient` because one function from the latter was moved to the former, but the plan is eventually to move the isomorphisms proved in `RingTheory.Trace.Quotient` to `RingTheory.Localization.AtPrime.Basic` and `RingTheory.Localization.AtPrime.Extension` where they belong. This will be done in #27706.
---
|
t-ring-theory |
147/8 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean |
6 |
11 |
['chrisflav', 'github-actions', 'xroblot'] |
chrisflav assignee:chrisflav |
0-8557 2 hours ago |
0-8557 2 hours ago |
33-11528 33 days |
26104 |
xroblot author:xroblot |
feat(NumberField/IsCM): compute ratio of regulators |
This PR continues the work from #23696.
Compute the ratio between the regulator of `K` and the regulator of its maximal real subfield.
---
- [x] depends on: #23694
- [x] depends on: #26075
- [x] depends on: #26108 |
t-number-theory |
72/1 |
Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/TotallyRealComplex.lean |
2 |
11 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'tb65536', 'xroblot'] |
tb65536 assignee:tb65536 |
0-7816 2 hours ago |
0-7816 2 hours ago |
7-60852 7 days |
28604 |
alreadydone author:alreadydone |
chore(Algebra/Ring/Defs): add two classes (minimally invasive version) |
Add the missing `NonAssocComm(Semi)ring` classes and add some missing instances between existing classes. Contrary to #28532, the approach here doesn't add any new `extends`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
59/17 |
Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean |
3 |
20 |
['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
0-4130 1 hour ago |
7-36352 7 days ago |
8-8970 8 days |
30358 |
smmercuri author:smmercuri |
style: fix capitalisation `Valued.isOpen_closedball -> Valued.isOpen_closedBall` |
---
[](https://gitpod.io/from-referrer/)
|
t-topology
easy
|
4/4 |
Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean |
2 |
1 |
['github-actions'] |
nobody |
0-4116 1 hour ago |
0-4488 1 hour ago |
0-4530 1 hour |
29871 |
zach1502 author:zach1502 |
feat(Matrix/Transvection): Gauss pivot determinant identity and pivot preservation |
This PR adds two lemmas formalizing standard Gaussian pivot identities:
* `Matrix.Transvection.listTransvecCol_mul_mul_listTransvecRow_pivot`:
After applying the canonical left/right transvection products that clear the last column and row,
the pivot (bottom-right) entry of a matrix is unchanged.
Marked `@[simp]`.
* `Matrix.Transvection.det_eq_detTopLeft_mul_pivot`:
If the pivot entry is nonzero, then the determinant of the matrix factors as
the determinant of the top-left block times the pivot entry, after performing
the canonical transvections.
This is the usual Gauss–pivot determinant identity.
* Added simple usage tests in `MathlibTest/matrix.lean` to check that the new lemmas
are usable by `simp`/`simpa`.
---
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
94/0 |
Mathlib/LinearAlgebra/Matrix/Transvection.lean,MathlibTest/matrix.lean |
2 |
2 |
['github-actions', 'riccardobrasca', 'zach1502'] |
riccardobrasca assignee:riccardobrasca |
0-4019 1 hour ago |
16-48440 16 days ago |
17-27504 17 days |
30059 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(Mathlib/Algebra/QuadraticAlgebra): norm, star structure on quadratic alg. |
Define the norm and the star structure on a quadratic algebra.
Application to the units and the zero divisors.
The file `Mathlib.Algebra.QuadraticAlgebra.lean` has been renamed to `Mathlib.Algebra.QuadraticAlgebra/Defs.lean`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
416/1 |
Mathlib.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/QuadraticAlgebra.lean,Mathlib/Algebra/QuadraticAlgebra/Basic.lean |
4 |
30 |
['AntoineChambert-Loir', 'eric-wieser', 'github-actions', 'j-loreaux', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
0-3965 1 hour ago |
6-38708 6 days ago |
10-30468 10 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 |
214/0 |
Mathlib.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean,Mathlib/RingTheory/DividedPowers/Padic.lean |
3 |
25 |
['github-actions', 'loefflerd', 'mariainesdff', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
loefflerd and mattrobball assignee:loefflerd assignee:mattrobball |
0-3841 1 hour ago |
0-66279 18 hours ago |
78-79340 78 days |
30345 |
vlad902 author:vlad902 |
feat(Order): replace the implementation of `Set.chainHeight` |
`Set.chainHeight` is unused in Mathlib--it was a previous attempt to formalize heights for preorders before `Order.height` came into use. The current implementation `Set.chainHeight` is previously defined for Sets that had an `LT` order but it's behavior was unexpected for relations that were not strict orders, e.g. singleton sets with a reflexive relation would have infinite height.
LE is such a relation so this implementation is very limited in what it could be used for. I replace it with an implementation that:
- Is defined for arbitrary relations instead of using `[LT]`.
- Uses `IsChain` instead of `List.IsChain` for defining chains. This is equivalent for transitive relations, but behaves differently for non- transitive relations--it requires that all elements in the set are comparable instead of just comparability between neighboring elements in the List. This makes the definition better behaved for e.g. reflexive relations and better matches the definition of chain height typically used in the literature.
The API has been slimmed down but what remains largely matches the previous API.
Discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Definitions.20for.20chain.20height.2Fpartitions/near/542823244)
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-order
|
128/294 |
Mathlib/Order/Height.lean |
1 |
1 |
['github-actions'] |
nobody |
0-1358 22 minutes ago |
0-49213 13 hours ago |
0-49258 13 hours |
29868 |
themathqueen author:themathqueen |
feat(LinearAlgebra/Matrix/PosDef): add `posSemidef_sum` |
---
- [x] depends on: #29862
- [ ] depends on: #29864
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
84/53 |
Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/Group/Int/Sum.lean,Mathlib/Data/NNRat/BigOperators.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/Tactic/Positivity/Finset.lean |
6 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'themathqueen'] |
nobody |
0-1315 21 minutes ago |
0-1318 21 minutes ago |
0-1319 21 minutes |