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 |
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 |
77-42054 2 months ago |
77-42054 2 months ago |
126-10765 126 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 |
77-41948 2 months ago |
77-41948 2 months ago |
163-85397 163 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 |
75-73122 2 months ago |
108-84600 3 months ago |
108-84635 108 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 |
74-73121 2 months ago |
82-22770 2 months ago |
109-10605 109 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 |
74-36898 2 months ago |
86-20195 2 months ago |
86-20221 86 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 |
70-73138 2 months ago |
133-60448 4 months ago |
149-5974 149 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 |
70-73133 2 months ago |
102-25860 3 months ago |
102-25903 102 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 |
64-73113 2 months ago |
71-86349 2 months ago |
71-86386 71 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 |
63-73128 2 months ago |
74-8420 2 months ago |
74-69316 74 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 |
62-73136 2 months ago |
74-5205 2 months ago |
74-5241 74 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 |
62-73133 2 months ago |
72-18063 2 months ago |
72-18102 72 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 |
59-73142 1 month ago |
68-46078 2 months ago |
68-46116 68 days |
27245 |
rirarika author:rirarika |
feat: multivariate polynomial ring properties about irreducibility |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
88/0 |
Mathlib.lean,Mathlib/Algebra/MvPolynomial/Irreducible.lean |
2 |
5 |
['alreadydone', 'github-actions', 'mbkybky'] |
alreadydone assignee:alreadydone |
59-19530 1 month ago |
95-47976 3 months ago |
95-48010 95 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 |
58-73108 1 month ago |
65-83960 2 months ago |
65-83935 65 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 |
57-73113 1 month ago |
66-69461 2 months ago |
66-69436 66 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 |
57-73110 1 month ago |
69-55326 2 months ago |
69-58027 69 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 |
56-73139 1 month ago |
67-16939 2 months ago |
71-34628 71 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 |
55-35377 1 month ago |
147-78903 4 months ago |
147-78947 147 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 |
55-20093 1 month ago |
104-74200 3 months ago |
104-74236 104 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 |
55-14369 1 month ago |
163-11734 5 months ago |
210-63942 210 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 |
54-72899 1 month ago |
162-77514 5 months ago |
228-77486 228 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 |
53-44761 1 month ago |
115-65977 3 months ago |
115-70719 115 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 |
53-44517 1 month ago |
122-82080 4 months ago |
123-282 123 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 |
51-872 1 month ago |
51-5588 1 month ago |
120-32178 120 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 |
50-52760 1 month ago |
50-57806 1 month ago |
115-28285 115 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 |
48-47242 1 month ago |
93-24066 3 months ago |
93-24109 93 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 |
47-73140 1 month ago |
58-67184 1 month ago |
58-67217 58 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 |
46-49790 1 month ago |
77-42176 2 months ago |
120-84789 120 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 |
46-39186 1 month ago |
46-39186 1 month ago |
52-25368 52 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 |
46-17782 1 month ago |
53-41671 1 month ago |
55-12275 55 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 |
45-73142 1 month ago |
54-2972 1 month ago |
60-30255 60 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 |
45-73136 1 month ago |
54-80029 1 month ago |
54-80465 54 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 |
45-73133 1 month ago |
54-5385 1 month ago |
54-5415 54 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 |
44-37820 1 month ago |
66-44275 2 months ago |
66-44307 66 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 |
38-8032 1 month ago |
38-8057 1 month ago |
185-82170 185 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 |
38-299 1 month ago |
38-7446 1 month ago |
76-56727 76 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 |
37-73121 1 month ago |
45-39146 1 month ago |
46-45601 46 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 |
37-73119 1 month ago |
54-39351 1 month ago |
54-39367 54 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 |
37-41606 1 month ago |
188-39838 6 months ago |
244-547 244 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 |
36-73114 1 month ago |
44-41672 1 month ago |
71-19027 71 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 |
36-45527 1 month ago |
160-28564 5 months ago |
245-1587 245 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 |
36-20515 1 month ago |
36-20523 1 month ago |
100-34825 100 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 |
36-19665 1 month ago |
40-14096 1 month ago |
124-14137 124 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 |
36-15405 1 month ago |
43-71083 1 month ago |
43-71059 43 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 |
35-54502 1 month ago |
35-74100 1 month ago |
20-32669 20 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 |
34-10910 1 month ago |
48-6852 1 month ago |
48-6828 48 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 |
33-8792 1 month ago |
67-82583 2 months ago |
67-84037 67 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 |
32-81793 1 month ago |
32-81793 1 month ago |
33-46776 33 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 |
32-73128 1 month ago |
39-85667 1 month ago |
39-86022 39 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 |
32-73122 1 month ago |
40-12555 1 month ago |
40-13206 40 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 |
32-73117 1 month ago |
39-79436 1 month ago |
39-79554 39 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 |
32-59136 1 month ago |
42-63725 1 month ago |
90-30801 90 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 |
32-18682 1 month ago |
74-9068 2 months ago |
106-69979 106 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 |
31-84966 1 month ago |
44-34518 1 month ago |
44-34560 44 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 |
31-73139 1 month ago |
39-18876 1 month ago |
39-19225 39 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 |
31-73134 1 month ago |
40-17976 1 month ago |
40-18015 40 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 |
30-82868 1 month ago |
39-16282 1 month ago |
39-18567 39 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 |
29-4070 29 days ago |
29-4136 29 days ago |
209-3189 209 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 |
28-75458 28 days ago |
28-75458 28 days ago |
40-19258 40 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 |
28-73128 28 days ago |
36-1444 1 month ago |
36-1421 36 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 |
28-496 28 days ago |
36-11447 1 month ago |
36-11424 36 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 |
27-36250 27 days ago |
32-55722 1 month ago |
64-80827 64 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 |
27-16383 27 days ago |
58-6620 1 month ago |
58-6653 58 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 |
27-7697 27 days ago |
43-1869 1 month ago |
56-17780 56 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 |
26-73130 26 days ago |
78-13117 2 months ago |
93-24431 93 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 |
26-73126 26 days ago |
34-26683 1 month ago |
38-39604 38 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 |
26-37763 26 days ago |
33-13408 1 month ago |
91-79282 91 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 |
26-16437 26 days ago |
43-85765 1 month ago |
43-85757 43 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 |
26-16105 26 days ago |
40-71535 1 month ago |
40-71527 40 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 |
25-73127 25 days ago |
33-45101 1 month ago |
41-64647 41 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 |
25-73121 25 days ago |
33-20647 1 month ago |
33-37175 33 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 |
23-73116 23 days ago |
37-28826 1 month ago |
37-28810 37 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 |
23-73115 23 days ago |
31-69704 1 month ago |
32-6923 32 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 |
23-54652 23 days ago |
41-17087 1 month ago |
41-17062 41 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 |
23-43397 23 days ago |
23-46728 23 days ago |
50-65850 50 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 |
23-43373 23 days ago |
130-27485 4 months ago |
130-27460 130 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 |
22-73129 22 days ago |
46-12206 1 month ago |
46-12248 46 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 |
22-47667 22 days ago |
52-72794 1 month ago |
52-72826 52 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 |
22-29922 22 days ago |
34-57371 1 month ago |
34-57405 34 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 |
7 |
['Thmoas-Guan', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] |
dagurtomas assignee:dagurtomas |
12-35454 12 days ago |
29-18829 29 days ago |
29-18948 29 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 |
21-73113 21 days ago |
29-31977 29 days ago |
29-31955 29 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 |
21-73112 21 days ago |
28-85580 28 days ago |
29-16930 29 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 |
21-16311 21 days ago |
47-42379 1 month ago |
47-42354 47 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 |
20-73105 20 days ago |
28-24480 28 days ago |
28-24458 28 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 |
20-43362 20 days ago |
21-29084 21 days ago |
120-9494 120 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 |
20-38493 20 days ago |
44-50314 1 month ago |
48-11656 48 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 |
20-27626 20 days ago |
36-18711 1 month ago |
117-66897 117 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 |
20-23455 20 days ago |
20-23455 20 days ago |
100-24677 100 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 |
20-4330 20 days ago |
unknown |
unknown |
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 |
19-40639 19 days ago |
56-59482 1 month ago |
63-28949 63 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 |
18-73130 18 days ago |
26-45526 26 days ago |
26-45504 26 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 |
18-73129 18 days ago |
26-36731 26 days ago |
26-36767 26 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 |
18-32666 18 days ago |
28-21824 28 days ago |
34-60862 34 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 |
18-27090 18 days ago |
18-27127 18 days ago |
85-38938 85 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 |
18-19368 18 days ago |
62-23927 2 months ago |
109-8794 109 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 |
18-4901 18 days ago |
26-19529 26 days ago |
26-29086 26 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 |
17-73136 17 days ago |
24-85279 24 days ago |
24-85262 24 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 |
17-73134 17 days ago |
25-41882 25 days ago |
25-41915 25 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 |
17-42911 17 days ago |
45-50828 1 month ago |
45-50861 45 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 |
17-41907 17 days ago |
131-25320 4 months ago |
131-25294 131 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 |
17-33192 17 days ago |
37-62137 1 month ago |
37-65360 37 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 |
17-10809 17 days ago |
17-10809 17 days ago |
46-3912 46 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 |
17-4190 17 days ago |
77-41568 2 months ago |
99-71307 99 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 |
16-51015 16 days ago |
54-41872 1 month ago |
149-7918 149 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 |
16-34840 16 days ago |
16-34840 16 days ago |
39-61355 39 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 |
16-24289 16 days ago |
16-83601 16 days ago |
31-33530 31 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 |
16-23450 16 days ago |
16-23452 16 days ago |
16-23491 16 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 |
16-13478 16 days ago |
78-40110 2 months ago |
119-49514 119 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 |
16-4331 16 days ago |
55-7074 1 month ago |
104-78480 104 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 |
15-74458 15 days ago |
15-75819 15 days ago |
15-75857 15 days |
26827 |
pechersky author:pechersky |
feat(Analysis/Normed/ValuativeRel): helper instance for NormedField |
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #26713
- [x] depends on: #26826
|
t-algebra
t-analysis
t-number-theory
label:t-algebra$ |
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 |
15-73306 15 days ago |
69-19623 2 months ago |
105-85338 105 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 |
15-73131 15 days ago |
23-9521 23 days ago |
24-22926 24 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 |
15-72933 15 days ago |
16-15062 16 days ago |
16-15094 16 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 |
15-61238 15 days ago |
15-62922 15 days ago |
62-57068 62 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 |
15-15912 15 days ago |
15-15912 15 days ago |
64-45780 64 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 |
15-15413 15 days ago |
56-41186 1 month ago |
56-41162 56 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 |
15-1642 15 days ago |
15-2101 15 days ago |
38-39397 38 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 |
14-73134 14 days ago |
22-47222 22 days ago |
22-48800 22 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 |
14-73129 14 days ago |
22-17999 22 days ago |
22-18631 22 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 |
14-73128 14 days ago |
22-25923 22 days ago |
30-36292 30 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 |
14-21440 14 days ago |
14-42309 14 days ago |
14-42341 14 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 |
14-15934 14 days ago |
118-43999 3 months ago |
118-44248 118 days |
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 |
13-49731 13 days ago |
46-45806 1 month ago |
46-45835 46 days |
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 |
13-23688 13 days ago |
14-78726 14 days ago |
14-78726 14 days |
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 |
13-13390 13 days ago |
13-13415 13 days ago |
13-13451 13 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 |
12-73130 12 days ago |
21-7014 21 days ago |
23-41483 23 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 |
12-73127 12 days ago |
20-5870 20 days ago |
20-16375 20 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 |
12-73125 12 days ago |
19-83381 19 days ago |
19-83414 19 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 |
12-73125 12 days ago |
20-46013 20 days ago |
20-45991 20 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 |
12-49533 12 days ago |
12-49533 12 days ago |
45-52502 45 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 |
41/0 |
Mathlib.lean,Mathlib/Data/FunLike/Graded.lean |
2 |
1 |
['github-actions'] |
nobody |
12-32470 12 days ago |
12-72941 12 days ago |
12-72978 12 days |
30364 |
xroblot author:xroblot |
chore(FractionRing): generalize an instance |
The instance that deduce from a tower of domains `A ⊆ B ⊆ C` that there is a tower `Frac A ⊆ Frac B ⊆ Frac C` can be generalized to `A ⊆ B ⊆ K` implies `Frac A ⊆ Frac B ⊆ K` where `K` is a field (and exactly the same proof works!).
---
|
t-ring-theory |
4/4 |
Mathlib/RingTheory/Localization/FractionRing.lean |
1 |
7 |
['github-actions', 'grunweg', 'jcommelin', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'xroblot'] |
nobody |
12-15857 12 days ago |
12-15857 12 days ago |
12-28187 12 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 |
12-14154 12 days ago |
30-26695 1 month ago |
30-26705 30 days |
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 |
3 |
['github-actions', 'riccardobrasca', 'zach1502'] |
riccardobrasca assignee:riccardobrasca |
12-10586 12 days ago |
29-3016 29 days ago |
29-68479 29 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 |
12-4172 12 days ago |
26-6092 26 days ago |
26-6068 26 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
easy
|
2/6 |
Mathlib/Combinatorics/Quiver/Symmetric.lean |
1 |
1 |
['github-actions'] |
awainverse assignee:awainverse |
11-85093 11 days ago |
11-85093 11 days ago |
65-15044 65 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 |
4 |
['WangYiran01', 'github-actions', 'kckennylau'] |
b-mehta assignee:b-mehta |
11-84529 11 days ago |
102-43095 3 months ago |
102-43130 102 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 |
4 |
['github-actions', 'kckennylau', 'pechersky'] |
urkud assignee:urkud |
11-83395 11 days ago |
83-63144 2 months ago |
83-63129 83 days |
28906 |
gasparattila author:gasparattila |
feat(Topology/Algebra/Module): `prod` and `coprod` as `ContinuousLinearEquiv`s |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
40/4 |
Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean |
2 |
4 |
['github-actions', 'kckennylau'] |
jcommelin assignee:jcommelin |
11-83320 11 days ago |
57-13306 1 month ago |
57-13338 57 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', 'kckennylau'] |
fpvandoorn assignee:fpvandoorn |
11-82410 11 days ago |
82-21480 2 months ago |
82-21525 82 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'] |
dagurtomas assignee:dagurtomas |
11-73134 11 days ago |
19-20038 19 days ago |
19-22485 19 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'] |
b-mehta assignee:b-mehta |
11-73132 11 days ago |
34-35732 1 month ago |
34-35777 34 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'] |
dagurtomas assignee:dagurtomas |
11-73131 11 days ago |
19-37204 19 days ago |
19-37237 19 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'] |
alreadydone assignee:alreadydone |
11-73130 11 days ago |
19-36141 19 days ago |
19-36244 19 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'] |
dagurtomas assignee:dagurtomas |
11-73126 11 days ago |
18-85860 18 days ago |
18-85894 18 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'] |
dupuisf and kbuzzard assignee:dupuisf assignee:kbuzzard |
11-66213 11 days ago |
44-86049 1 month ago |
47-22602 47 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 |
52 |
['JovanGerb', 'Whysoserioushah', 'dupuisf', 'eric-wieser', 'github-actions', 'hrmacbeth'] |
robertylewis assignee:robertylewis |
11-30231 11 days ago |
96-10855 3 months ago |
96-15163 96 days |
29539 |
YaelDillies author:YaelDillies |
feat: monoid algebras are invariant under base change |
From Toric
Co-authored-by: Michał Mrugała
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
large-import
|
112/6 |
Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/RingTheory/TensorProduct/MonoidAlgebra.lean |
3 |
5 |
['YaelDillies', 'github-actions', 'plp127'] |
mattrobball assignee:mattrobball |
11-26747 11 days ago |
40-54180 1 month ago |
40-55582 40 days |
27047 |
YaelDillies author:YaelDillies |
feat: `MonoidHom.toAdditiveRight` as a `MulEquiv` |
From Toric
---
- [x] depends on: #29800
I haven't yet been very thorough with the new lemmas. I first want to hear thoughts about the names
[](https://gitpod.io/from-referrer/)
|
toric
t-algebra
label:t-algebra$ |
31/7 |
Mathlib/Algebra/Group/TypeTags/Hom.lean |
1 |
6 |
['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
adomani assignee:adomani |
11-25956 11 days ago |
11-26275 11 days ago |
79-63768 79 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 |
13 |
['YaelDillies', 'github-actions', 'mitchell-horner'] |
YaelDillies assignee:YaelDillies |
11-25521 11 days ago |
15-57997 15 days ago |
41-76069 41 days |
29582 |
YaelDillies author:YaelDillies |
chore: rename `_root_.prop` to `instFiniteProp` |
This was a surprising name!
---
[](https://gitpod.io/from-referrer/)
|
t-data |
1/1 |
Mathlib/Data/Fintype/EquivFin.lean |
1 |
12 |
['YaelDillies', 'bryangingechen', 'eric-wieser', 'github-actions', 'grunweg', 'plp127'] |
nobody |
11-24780 11 days ago |
11-24827 11 days ago |
14-26163 14 days |
30404 |
mariainesdff author:mariainesdff |
feat(RingTheory/DedekindDomain/AdicValuation): add eq_of_valuation_isEquiv_valuation |
Co-authored-by: @Louddy
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
12/1 |
Mathlib/RingTheory/DedekindDomain/AdicValuation.lean |
1 |
1 |
['github-actions'] |
nobody |
11-22886 11 days ago |
11-23404 11 days ago |
11-23450 11 days |
30408 |
kckennylau author:kckennylau |
feat(RingTheory): more algebra instances for HomogeneousLocalization and linear constructors |
This PR introduces the instance `Algebra R₀ (HomogeneousLocalization 𝒜 x)` as well as two linear constructors `mkₗ` and `Away.mkₗ` that fix the denominator.
Zulip discussion: [#mathlib4 > Some algebra instance for graded algebra and homog loc](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Some.20algebra.20instance.20for.20graded.20algebra.20and.20homog.20loc/with/544178649)
---
Split from #26061.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
65/20 |
Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean |
1 |
1 |
['github-actions'] |
nobody |
11-21168 11 days ago |
11-21168 11 days ago |
11-21237 11 days |
30126 |
YaelDillies author:YaelDillies |
feat: characterise when `Set.rangeFactorization` is injective |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
10/3 |
Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Operations.lean |
2 |
2 |
['github-actions', 'plp127'] |
nobody |
11-17426 11 days ago |
11-17490 11 days ago |
11-34880 11 days |
30391 |
rudynicolop author:rudynicolop |
feat(Data/List): list splitting definitions and lemmas |
This PR continues the work from #24395.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24395 |
t-data
new-contributor
|
151/2 |
Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/TakeDrop.lean |
2 |
4 |
['BoltonBailey', 'github-actions', 'rudynicolop'] |
nobody |
10-82558 10 days ago |
11-79699 11 days ago |
11-79736 11 days |
30420 |
erdOne author:erdOne |
feat(Topology): Units of nonnegative elements |
---
[](https://gitpod.io/from-referrer/)
|
t-order
t-algebra
label:t-algebra$ |
35/0 |
Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Topology/Algebra/Field.lean |
2 |
1 |
['github-actions'] |
nobody |
10-80611 10 days ago |
10-80611 10 days ago |
10-86014 10 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 |
3 |
['github-actions', 'mans0954', 'urkud'] |
kim-em assignee:kim-em |
10-73242 10 days ago |
128-32183 4 months ago |
128-32223 128 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'] |
awainverse assignee:awainverse |
10-73142 10 days ago |
27-16665 27 days ago |
27-16704 27 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'] |
hrmacbeth assignee:hrmacbeth |
10-73140 10 days ago |
18-50793 18 days ago |
19-43745 19 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'] |
chrisflav assignee:chrisflav |
10-73137 10 days ago |
18-64436 18 days ago |
18-64471 18 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'] |
hrmacbeth assignee:hrmacbeth |
10-73133 10 days ago |
18-12769 18 days ago |
18-12807 18 days |
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'] |
hrmacbeth assignee:hrmacbeth |
10-73132 10 days ago |
17-85760 17 days ago |
17-85796 17 days |
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 |
49/5 |
Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean |
1 |
1 |
['github-actions'] |
nobody |
10-47899 10 days ago |
13-19014 13 days ago |
13-19050 13 days |
30431 |
kckennylau author:kckennylau |
feat(RingTheory): a homogeneous submodule is the span of its homogeneous elements |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
22/0 |
Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean |
2 |
1 |
['github-actions'] |
nobody |
10-46640 10 days ago |
10-46640 10 days ago |
10-46681 10 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
maintainer-merge
|
91/108 |
Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SingularSet.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Analysis/Convex/StdSimplex.lean |
4 |
7 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
10-24039 10 days ago |
19-32078 19 days ago* |
0-2609 43 minutes* |
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 |
12 |
['ADedecker', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
PatrickMassot assignee:PatrickMassot |
10-20949 10 days ago |
23-9399 23 days ago |
23-20630 23 days |
29437 |
SnirBroshi author:SnirBroshi |
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
|
104/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 |
10-19492 10 days ago |
34-33941 1 month ago |
43-21429 43 days |
29758 |
SnirBroshi author:SnirBroshi |
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 |
['Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'kckennylau'] |
chrisflav assignee:chrisflav |
10-18868 10 days ago |
32-77943 1 month ago |
32-84943 32 days |
30163 |
SnirBroshi author:SnirBroshi |
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 |
10-7116 10 days ago |
18-27985 18 days ago |
18-28035 18 days |
30213 |
SnirBroshi author:SnirBroshi |
feat(Data/List/GetD): golf and add lemmas for `get` and `getElem?` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
18/16 |
Mathlib/Data/List/GetD.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'themathqueen'] |
nobody |
10-6462 10 days ago |
16-86004 16 days ago |
16-86201 16 days |
30214 |
SnirBroshi author:SnirBroshi |
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 |
['SnirBroshi', 'github-actions'] |
nobody |
10-6310 10 days ago |
16-83725 16 days ago |
16-84477 16 days |
30215 |
SnirBroshi author:SnirBroshi |
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 |
['SnirBroshi', 'github-actions'] |
nobody |
10-6139 10 days ago |
16-83796 16 days ago |
16-84180 16 days |
30216 |
SnirBroshi author:SnirBroshi |
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 |
['SnirBroshi', 'github-actions', 'themathqueen'] |
nobody |
10-5801 10 days ago |
16-83789 16 days ago |
16-83823 16 days |
30217 |
SnirBroshi author:SnirBroshi |
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 |
10-5636 10 days ago |
16-83542 16 days ago |
16-83578 16 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 |
10-1952 10 days ago |
12-65427 12 days ago |
24-3010 24 days |
30354 |
SnirBroshi author:SnirBroshi |
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 |
9-79449 9 days ago |
12-76157 12 days ago |
12-76190 12 days |
30429 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Connectivity): a graph is either connected or its complement is |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
17/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
1 |
1 |
['github-actions'] |
nobody |
9-79036 9 days ago |
10-59251 10 days ago |
10-59285 10 days |
30423 |
erdOne author:erdOne |
feat(RingTheory): API for valuative rel |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
164/28 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean |
2 |
2 |
['github-actions', 'pechersky'] |
nobody |
9-76471 9 days ago |
10-81040 10 days ago |
10-81072 10 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
---
- [x] depends on: #30454
- [x] depends on: #30455
- [x] depends on: #30456
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
|
112/53 |
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/Localization/Away/AdjoinRoot.lean |
7 |
28 |
['YaelDillies', 'chrisflav', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
9-17257 9 days ago |
9-20560 9 days ago |
50-76651 50 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.
- Use `TopologicalSpace.pseudoMetrizableSpaceUniformity` to endow a pseudometrizable space with a compatible uniformity,
and use `TopologicalSpace.pseudoMetrizableSpaceUniformity_countably_generated` to show that this is countably generated.
- `TopologicalSpace.pseudoMetrizableSpacePseudoMetric` and `TopologicalSpace.metrizableSpaceMetric` have been moved to `Mathlib/Topology/Metrizable/Uniformity.lean`.
See also #2032
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
128/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 |
11 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'urkud'] |
urkud assignee:urkud |
9-14851 9 days ago |
9-19844 9 days ago |
78-6866 78 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/)
|
maintainer-merge
t-measure-probability
|
262/1 |
Mathlib.lean,Mathlib/Probability/Decision/Risk/Basic.lean,Mathlib/Probability/Decision/Risk/Defs.lean |
3 |
16 |
['EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
EtienneC30 assignee:EtienneC30 |
9-6659 9 days ago |
9-6659 9 days ago |
22-51515 22 days |
30478 |
riccardobrasca author:riccardobrasca |
feat: remove separability assumption from Algebra.dvd_algebraMap_intNorm_self |
Continuing the work of #30323 and #30448 we remove the separability assumption from `Algebra.dvd_algebraMap_intNorm_self`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
27/19 |
Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean |
2 |
1 |
['github-actions'] |
nobody |
9-2103 9 days ago |
9-2165 9 days ago |
9-2165 9 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'] |
b-mehta assignee:b-mehta |
8-73116 8 days ago |
16-21430 16 days ago |
21-31890 21 days |
30486 |
vihdzp author:vihdzp |
feat: `f r = r` for `f : ℝ →+* ℝ` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-algebra
easy
label:t-algebra$ |
6/0 |
Mathlib/Data/Real/CompleteField.lean |
1 |
5 |
['github-actions', 'plp127', 'vihdzp'] |
nobody |
8-68683 8 days ago |
8-73008 8 days ago |
8-73048 8 days |
30489 |
vihdzp author:vihdzp |
feat: more lemmas on `AntisymmRel` |
---
Downstreamed from the CGT repo.
[](https://gitpod.io/from-referrer/)
|
t-order |
23/3 |
Mathlib/Order/Antisymmetrization.lean |
1 |
1 |
['github-actions'] |
nobody |
8-68038 8 days ago |
8-68337 8 days ago |
8-68370 8 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
---
- [x] 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 |
8-65997 8 days ago |
unknown |
unknown |
30416 |
SnirBroshi author:SnirBroshi |
feat(Logic/Relation): lemmas relating `Relation.Map` and `Function.onFun` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-logic
|
32/0 |
Mathlib/Logic/Relation.lean |
1 |
1 |
['github-actions'] |
nobody |
8-64818 8 days ago |
11-5518 11 days ago |
11-7746 11 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 |
8-61523 8 days ago |
unknown |
unknown |
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 |
8 |
['github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] |
nobody |
8-47971 8 days ago |
8-47990 8 days ago |
21-11194 21 days |
26259 |
Raph-DG author:Raph-DG |
feat(Topology): Connecting different notions of locally finite |
In this PR we connect the notions of local finiteness of an indexed family of sets (as in LocallyFinite) and of a set of sets (as in Function.locallyFinsuppWithin)
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
30/0 |
Mathlib/Topology/LocallyFinsupp.lean |
1 |
20 |
['Raph-DG', 'chrisflav', 'github-actions', 'jcommelin', 'kckennylau', 'urkud'] |
jcommelin assignee:jcommelin |
8-45966 8 days ago |
8-45967 8 days ago |
112-63823 112 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 |
55/0 |
Mathlib/RingTheory/DedekindDomain/AdicValuation.lean |
1 |
5 |
['erdOne', 'github-actions', 'smmercuri'] |
erdOne assignee:erdOne |
8-36892 8 days ago |
18-17673 18 days ago |
18-17704 18 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/)
|
maintainer-merge
t-analysis
|
135/4 |
Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Meromorphic/Order.lean |
4 |
51 |
['YaelDillies', 'bryangingechen', 'github-actions', 'kebekus'] |
nobody |
8-34700 8 days ago |
8-34700 8 days ago |
14-31079 14 days |
30499 |
harahu author:harahu |
doc(AkraBazzi): minor tweaks and additions |
Broken out of #29464 to simplify review.
---
[](https://gitpod.io/from-referrer/)
|
t-computability |
19/13 |
Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean |
2 |
7 |
['github-actions', 'grunweg', 'harahu'] |
nobody |
8-30398 8 days ago |
8-30398 8 days ago |
8-33446 8 days |
27433 |
YaelDillies author:YaelDillies |
refactor: make `⇑e⁻¹ = e.symm` simp |
From BrauerGroup and ClassFieldTheory
---
[](https://gitpod.io/from-referrer/)
|
|
217/255 |
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 |
5 |
['dwrensha', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] |
dwrensha assignee:dwrensha |
8-9103 8 days ago |
9-50185 9 days ago |
65-8872 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 |
4 |
['dwrensha', 'github-actions', 'mathlib4-dependent-issues-bot'] |
dwrensha assignee:dwrensha |
8-6683 8 days ago |
29-18816 29 days ago |
29-20096 29 days |
30481 |
vihdzp author:vihdzp |
feat: `CoeFun` for `Lex` and `Colex` |
If `F` is a function type, we should be able to treat `Lex F` as a function type too. This diminishes the visual clutter of going to and from `Lex`.
This design was already present for pi types, but wasn't accounted for with neither of `DFinsupp` or `Finsupp`.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
32/18 |
Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/Synonym.lean |
4 |
1 |
['github-actions'] |
nobody |
7-75795 7 days ago |
8-76745 8 days ago |
8-76730 8 days |
30261 |
SnirBroshi author:SnirBroshi |
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'] |
joelriou assignee:joelriou |
7-73130 7 days ago |
15-72499 15 days ago |
15-72536 15 days |
30280 |
SnirBroshi author:SnirBroshi |
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'] |
ocfnash assignee:ocfnash |
7-73128 7 days ago |
15-1209 15 days ago |
15-1241 15 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'] |
alexjbest assignee:alexjbest |
7-73126 7 days ago |
14-81297 14 days ago |
14-81332 14 days |
30143 |
Jlh18 author:Jlh18 |
feat(CategoryTheory/Adjunction/PartialAdjunction): add symm naturality lemmas for HomEquiv and lift functor |
Add two lemmas for `partialRightAdjointHomEquiv` to help work with `partialRightAdjointHomEquiv.symm`.
Add a definition `Functor.PartialRightAdjointSource.lift` to help with defining functors into the category `PartialRightAdjointSource`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
14/0 |
Mathlib/CategoryTheory/Adjunction/PartialAdjoint.lean |
1 |
4 |
['Jlh18', 'github-actions', 'joelriou'] |
TwoFX assignee:TwoFX |
7-66204 7 days ago |
7-66289 7 days ago |
18-33693 18 days |
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 |
7-44282 7 days ago |
48-75224 1 month ago |
82-50086 82 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 |
7-40944 7 days ago |
33-35604 1 month ago |
80-55624 80 days |
30324 |
EtienneC30 author:EtienneC30 |
feat: introduce covarianceBilin |
The `covarianceBilin` associated to a measure on a Hilbert space is the positive semidefinite continuous bilinear form which represents its covariance.
---
- [x] depends on: #30417
From BrownianMotion
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
171/2 |
Mathlib/Probability/Moments/CovarianceBilin.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean |
3 |
5 |
['RemyDegenne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
7-39827 7 days ago |
7-39851 7 days ago |
10-23199 10 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 |
2 |
['github-actions', 'themathqueen'] |
mattrobball assignee:mattrobball |
7-31829 7 days ago |
72-8309 2 months ago |
86-1137 86 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
|
112/1 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/TestAgainst.lean |
3 |
45 |
['EtienneC30', 'github-actions', 'j-loreaux', 'luigi-massacci'] |
EtienneC30 assignee:EtienneC30 |
7-30059 7 days ago |
7-30078 7 days ago |
24-38177 24 days |
29941 |
themathqueen author:themathqueen |
feat(Algebra/Star): define the intrinsic star on linear maps |
This pr defines the _intrinsic_ 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.
This is scoped to `IntrinsicStar` as to not conflict with the global instance on `E →ₗ[𝕜] E` on finite-dimensional Hilbert spaces, where `star` is defined as `LinearMap.adjoint`. These are mathematically distinct instances.
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 (#25183) and star is given by the intrinsic 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$ |
96/0 |
Mathlib.lean,Mathlib/Algebra/Star/LinearMap.lean |
2 |
3 |
['github-actions', 'ocfnash', 'themathqueen'] |
ocfnash assignee:ocfnash |
7-26839 7 days ago |
10-20667 10 days ago |
27-28200 27 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 |
4 |
['github-actions', 'kckennylau'] |
jcommelin assignee:jcommelin |
7-8772 7 days ago |
64-22209 2 months ago |
64-22245 64 days |
30560 |
dwrensha author:dwrensha |
fix(LinearAlgebra/Alternating/Basic): avoid deep recursion in MultilinearMap.alternatization |
Makes `MultilinearMap.alternatization` an `irreducible_def` to avoid errors
about deep recursion.
This is an update of #15045 according to the suggestions in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/kernel.20deep.20recursion.20detected/near/454301820).
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
36/9 |
Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,MathlibTest/DetOne.lean |
3 |
5 |
['dwrensha', 'eric-wieser', 'github-actions'] |
nobody |
6-81794 6 days ago |
7-930 7 days ago |
7-968 7 days |
30562 |
dwrensha author:dwrensha |
fix(Data/Fintype/Perm): make the main logic of Equiv.instFintype irreducible |
Adds a new `irreducible_def` for the main branch of `Equiv.instFintype` to avoid errors about deep recursion.
This is an update of #15045 and #30560 according to the discussion in those PRs and in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/kernel.20deep.20recursion.20detected/near/454301820).
---
[](https://gitpod.io/from-referrer/)
|
|
15/8 |
Mathlib/Combinatorics/Derangements/Finite.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean |
3 |
1 |
['github-actions'] |
nobody |
6-81748 6 days ago |
6-81820 6 days ago |
6-81796 6 days |
30526 |
SnirBroshi author:SnirBroshi |
chore(Logic/Relation): use `Subrelation` to state theorems |
chore(Logic/Relation): replace every `∀ x y, r x y → r' x y` with `Subrelation r r'`
---
[](https://gitpod.io/from-referrer/)
|
|
79/73 |
Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Interval/Finset/Basic.lean |
7 |
1 |
['github-actions', 'vihdzp'] |
nobody |
6-77500 6 days ago |
7-64096 7 days ago |
7-64072 7 days |
30564 |
vihdzp author:vihdzp |
chore(Combinatorics/SetFamily/KruskalKatona): remove outdated comment |
The referenced diamond was fixed in #29436.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
easy
documentation
|
0/5 |
Mathlib/Combinatorics/SetFamily/KruskalKatona.lean |
1 |
1 |
['github-actions'] |
nobody |
6-75444 6 days ago |
6-75642 6 days ago |
6-75629 6 days |
29186 |
winstonyin author:winstonyin |
feat: IsIntegralCurve for solutions to ODEs |
I define `IsIntegralCurve` etc. for solutions to ODEs on vector spaces. The translation and scaling lemmas are also included. This parallels `IsMIntegralCurve` etc. for manifolds.
Moved from #26534.
- [x] depends on: #26563
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics
t-analysis
t-differential-geometry
|
298/100 |
Mathlib.lean,Mathlib/Analysis/ODE/Basic.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean |
5 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
sgouezel assignee:sgouezel |
6-73130 6 days ago |
51-6573 1 month ago |
51-6709 51 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 |
2 |
['github-actions', 'vihdzp'] |
Vierkantor assignee:Vierkantor |
6-73129 6 days ago |
15-16342 15 days ago |
15-16375 15 days |
30302 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): generalise Proj and HomogeneousLocalization 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`. `HomogeneousLocalization` is also generalised to graded ring.
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'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
6-73127 6 days ago |
14-17384 14 days ago |
14-17406 14 days |
30557 |
SnirBroshi author:SnirBroshi |
feat(Logic/Relation): a relation is reflexive iff it subsumes the equality relation |
feat(Logic/Relation): a relation is reflexive iff it subsumes the equality relation, and irreflexive iff the inequality relation subsumes it
---
[](https://gitpod.io/from-referrer/)
|
t-logic |
6/0 |
Mathlib/Logic/Relation.lean |
1 |
2 |
['SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
6-69424 6 days ago |
7-3380 7 days ago |
7-3417 7 days |
30471 |
loefflerd author:loefflerd |
feat(Topology/Algebra/Order/Archimedean): subgroups cyclic iff discrete |
An add subgroup of the reals (or similar groups) is discrete iff it's cyclic, and related statements.
---
- [ ] depends on: #29743
[](https://gitpod.io/from-referrer/)
|
t-topology |
77/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Order/ArchimedeanDiscrete.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
6-55085 6 days ago |
6-79087 6 days ago |
6-79169 6 days |
30415 |
joelriou author:joelriou |
feat(Topology/Sheaves): the equivalence `Over U ≌ Opens U` for `U : Opens X` |
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
55/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/Over.lean |
2 |
4 |
['erdOne', 'github-actions', 'joelriou'] |
nobody |
6-47146 6 days ago |
6-47146 6 days ago |
10-57211 10 days |
30525 |
515801431 author:515801431 |
Polya_counting |
This PR introduces basic definitions and results about colorings under permutation group actions.
A coloring is defined as a function X → Y, and the permutation group Equiv.Perm X acts on colorings by precomposition:
(g • c) x = c (g⁻¹ • x)
This formalizes the natural action of relabeling the elements of X.
Main definitions
MulAction (Equiv.Perm X) (X → Y):
The action of the permutation group on colorings via precomposition.
coloringEquiv (c₁ c₂ : X → Y) : Prop:
Two colorings are equivalent if they lie in the same orbit under this action, i.e.
∃ f : Equiv.Perm X, f • c₁ = c₂.
Main results
smul_eq_iff_mem_stabilizer:
Characterizes when two group actions on the same coloring are equal, showing that
g • c = f • c ↔ f⁻¹ * g ∈ stabilizer c.
coloringEquiv_equivalence:
Proves that coloringEquiv defines an equivalence relation on X → Y.
orbit_size_eq_index:
Reformulates the orbit–stabilizer theorem in the context of colorings:
|orbit c| = |Perm X| / |stabilizer c|
Motivation
These results provide foundational infrastructure for studying Burnside’s lemma and Pólya’s enumeration theorem in Mathlib, where the enumeration of distinct colorings up to symmetry plays a central role. |
new-contributor
t-combinatorics
|
111/0 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean |
2 |
2 |
['IvanRenison', 'github-actions'] |
nobody |
6-44444 6 days ago |
7-67126 7 days ago |
7-67163 7 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
|
67/1 |
Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
1 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri', 'xroblot'] |
alexjbest assignee:alexjbest |
6-43594 6 days ago |
22-38645 22 days ago |
22-48724 22 days |
27290 |
themathqueen author:themathqueen |
feat: define `Star` on tensor products |
This pr defines the `Star`, `StarAddMonoid`, `StarModule`, `StarMul`, and `StarRing` instances on tensor product spaces.
---
- [x] depends on: #27288
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
55/0 |
Mathlib.lean,Mathlib/Algebra/Star/TensorProduct.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
3 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mcdoll', 'themathqueen'] |
alreadydone assignee:alreadydone |
6-39434 6 days ago |
23-17744 23 days ago |
23-18557 23 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 |
6-29033 6 days ago |
108-18535 3 months ago |
108-18572 108 days |
30582 |
RemyDegenne author:RemyDegenne |
feat: extension of a function to the closure of a submodule |
- define the closure of a set in a complete space as an `AbstractCompletion`
- add instances about submodules
- add a coercion from a submodule to its topological closure
- add induction lemmas on topological closures of submodules
- define the extension of a function on a submodule to the closure of a submodule
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
138/1 |
Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/UniformSpace/AbstractCompletion.lean |
2 |
1 |
['github-actions'] |
nobody |
6-26115 6 days ago |
6-26117 6 days ago |
6-26157 6 days |
30542 |
SnirBroshi author:SnirBroshi |
feat(Data/Sym/Sym2): `fromRel` is monotonic |
---
[](https://gitpod.io/from-referrer/)
|
t-data |
11/1 |
Mathlib/Data/Sym/Sym2.lean |
1 |
5 |
['SnirBroshi', 'b-mehta', 'github-actions', 'vihdzp'] |
nobody |
6-24135 6 days ago |
7-33704 7 days ago |
7-33736 7 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
|
751/0 |
Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/ToAdditive/GuessName.lean |
3 |
84 |
['Sfgangloff', 'eric-wieser', 'github-actions', 'kckennylau', 'sgouezel'] |
sgouezel assignee:sgouezel |
6-19854 6 days ago |
6-19854 6 days ago |
50-37384 50 days |
30534 |
joelriou author:joelriou |
chore(CategoryTheory/EssentiallySmall): adding an instance |
Before this PR, `example (C : Type w) [SmallCategory C] : EssentiallySmall.{w} C := inferInstance` would not work. We fix this by making `essentiallySmall_of_small_of_locallySmall` an instance.
Consequently, we need to make certain universes explicit in a few proofs. Some instances in `Sites.Equivalence` are transformed into lemmas because it seems they shadowed more basic instances.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
91/35 |
Mathlib.lean,Mathlib/Algebra/Category/Grp/Subobject.lean,Mathlib/AlgebraicGeometry/Modules/Presheaf.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Basic.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Generator/Abelian.lean,Mathlib/CategoryTheory/Limits/Filtered.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Preserves/Filtered.lean,Mathlib/CategoryTheory/Sites/Equivalence.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Sites/PreservesSheafification.lean,Mathlib/CategoryTheory/Sites/Whiskering.lean,Mathlib/Condensed/Discrete/Basic.lean,Mathlib/Condensed/Light/AB.lean,Mathlib/Condensed/Light/CartesianClosed.lean,Mathlib/Condensed/Light/Instances.lean,Mathlib/Condensed/Light/Module.lean,MathlibTest/CategoryTheory/Sites/ConcreteSheafification.lean |
22 |
5 |
['github-actions', 'joelriou', 'leanprover-bot'] |
nobody |
6-15049 6 days ago |
6-15049 6 days ago |
6-15736 6 days |
30594 |
j-loreaux author:j-loreaux |
feat: generalize continuity results for the continuous functional calculus |
Under suitable conditions `x ↦ cfc f (a x)` is continuous. Previously these conditions were that there was a single compact set on which `f` was continuous, and which contained the spectra of all `a x`. However, this is a bit too stringent for some purposes and so we generalize it here. In particular, it suffices that the spectra `a x` are covered by a family of compact sets `s x` (on each of which `f` is continuous) satisfying the property that each `s x₀` contains the spectra `a x` for `x` sufficiently close to `x₀`.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
94/81 |
Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean |
1 |
1 |
['github-actions'] |
nobody |
5-85953 5 days ago |
5-86017 5 days ago |
5-86007 5 days |
29033 |
faenuccio author:faenuccio |
feat(Analysis.LocallyConvex): a linear map is surjective iff its image contains a ball, or a closed ball, or a sphere |
Prove that a linear map is surjective if and only if its image contains either a ball or a sphere.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-analysis
|
135/15 |
Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/Normed/Operator/Basic.lean |
4 |
30 |
['ADedecker', 'eric-wieser', 'faenuccio', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] |
nobody |
5-83870 5 days ago |
6-801 6 days ago |
6-75910 6 days |
30535 |
kckennylau author:kckennylau |
feat(RingTheory): make FormallySmooth, FormallyEtale, and FormallyUnramified universe-polymorphic |
This PR makes `FormallySmooth`, `FormallyEtale`, and `FormallyUnramified` universe-polymorphic.
In particular, the constructor `FormallySmooth.comp_surjective'` now talks about rings in a fixed universe, and then the lemma `FormallySmooth.comp_surjective` (without the prime) talks about any arbitrary universe. The same happens for `FormallyEtale.comp_bijective(')`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
211/140 |
Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Etale/Pi.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/Smooth/Local.lean,Mathlib/RingTheory/Smooth/Locus.lean,Mathlib/RingTheory/Smooth/Pi.lean,Mathlib/RingTheory/Smooth/StandardSmoothCotangent.lean,Mathlib/RingTheory/Unramified/Basic.lean,Mathlib/RingTheory/Unramified/Field.lean,Mathlib/RingTheory/Unramified/Locus.lean,Mathlib/RingTheory/Unramified/Pi.lean |
15 |
9 |
['erdOne', 'github-actions', 'kckennylau', 'leanprover-bot'] |
nobody |
5-78881 5 days ago |
7-25864 7 days ago |
7-25851 7 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'] |
b-mehta assignee:b-mehta |
5-73123 5 days ago |
18-38879 18 days ago |
18-38913 18 days |
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'] |
RemyDegenne assignee:RemyDegenne |
5-73122 5 days ago |
13-9537 13 days ago |
13-9518 13 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'] |
grunweg assignee:grunweg |
5-73121 5 days ago |
13-41175 13 days ago |
13-41650 13 days |
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'] |
robin-carlier assignee:robin-carlier |
5-73116 5 days ago |
13-20338 13 days ago |
13-20315 13 days |
30598 |
jsm28 author:jsm28 |
feat(Analysis/SpecialFunctions/Trigonometric/Angle): equality from equality of twice angles |
Add lemmas that two angles less than `π / 2` are equal if and only if twice those angles are equal, along with a separate lemma
```lean
lemma toReal_neg_eq_neg_toReal_iff {θ : Angle} : (-θ).toReal = -(θ.toReal) ↔ θ ≠ π := by
```
which isn't directly connected but turns out to be useful in the same application (dealing with angles in right-angled triangles that are less then `π / 2`, when you have two such triangles that are oppositely-oriented).
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
33/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean |
1 |
1 |
['github-actions'] |
nobody |
5-72258 5 days ago |
5-72328 5 days ago |
5-72307 5 days |
30602 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Walk): `mapLe` preservation lemmas |
feat(Combinatorics/SimpleGraph/Walk): specialize `map` preservation lemmas from for `mapLe`
---
It's hard to use the existing `map` lemmas when dealing with `mapLe`, specifically the lemmas for `support`/`edges`/`edgeSet` contain a map in the `map` version but not in the `mapLe` version, since `mapLe` maps walks with `id`.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
21/1 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
nobody |
5-64119 5 days ago |
5-64119 5 days ago |
5-64180 5 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 |
22 |
['eric-wieser', 'euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
5-50919 5 days ago |
17-85560 17 days ago |
27-71826 27 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.
---
- [x] depends on: #29466
- [x] depends on: #30543
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
952/554 |
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 |
7 |
11 |
['RemyDegenne', 'github-actions', 'kex-y', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
5-42182 5 days ago |
5-43464 5 days ago |
11-18465 11 days |
29354 |
themathqueen author:themathqueen |
refactor(Algebra/Algebra/Equiv): allow for non-unital `AlgEquiv` |
This refactors `AlgEquiv` to allow for non-unital algebras. More specifically, we weaken the type class assumptions from:
```lean
structure AlgEquiv (R A B : Type*) [CommSemiring R] [Semiring A] [Semiring B]
[Algebra R A] [Algebra R B]
```
to
```lean
structure AlgEquiv (R A B : Type*) [Add A] [Add B] [Mul A] [Mul B] [SMul R A] [SMul R B]
```
Instead of a `commutes'` field, we now have a `map_smul'` field. We also include a definition `AlgEquiv.ofCommutes` which takes in a `RingEquiv` and a `commutes'` field to match before and for convenience.
`StarAlgEquiv` now extends `AlgEquiv`. We also generalize a few files to allow for non-unital.
I suspect there are a few more things to generalize, but will leave this for later.
Co-authored-by: Jireh Loreaux
---
Revives #8686.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
573/498 |
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/Notation.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,MathlibTest/GalNotation.lean |
98 |
27 |
['fpvandoorn', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
joelriou assignee:joelriou |
5-33781 5 days ago |
5-41459 5 days ago |
38-3906 38 days |
30609 |
FlAmmmmING author:FlAmmmmING |
feat(Combinatorics/Enumerative/Catalan.lean): Add definition of large and small Schroder. |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
77/1 |
Mathlib/Combinatorics/Enumerative/Catalan.lean |
1 |
1 |
['github-actions'] |
nobody |
5-25910 5 days ago |
5-27317 5 days ago |
5-27361 5 days |
28296 |
strihanje01 author:strihanje01 |
feat(Combinatorics/Additive/VerySmallDoubling): Hamidoune's Freiman-Kneser theorem for nonabelian groups |
Prove the noncommutative Freiman-Kneser theorem for doubling less than 2 - ε
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-combinatorics
|
289/3 |
Mathlib/Combinatorics/Additive/VerySmallDoubling.lean |
1 |
21 |
['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'strihanje01'] |
YaelDillies assignee:YaelDillies |
5-21952 5 days ago |
5-21952 5 days ago |
56-25102 56 days |
25758 |
YaelDillies author:YaelDillies |
chore: shortcut instance `CompleteLattice α → PartialOrder α` |
This avoids using the path `CompleteLattice α → CompletePartialOrder α → PartialOrder α` that goes through `Order.CompletePartialOrder` and makes it appear used to our automation, such as `shake` or `#min_imports`.
This is a followup to #25358.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
7/0 |
Mathlib/Order/CompleteLattice/Defs.lean |
1 |
10 |
['Ruben-VandeVelde', 'Vierkantor', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
Vierkantor assignee:Vierkantor |
5-18179 5 days ago |
5-18179 5 days ago |
131-45050 131 days |
30608 |
grunweg author:grunweg |
feat: another lemma about derivatives of parametric integrals |
On the path towards proving that integrating smooth functions is smooth.
From the sphere-eversion project; I am just upstreaming this.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
125/0 |
Mathlib/Analysis/Calculus/ParametricIntegral.lean |
1 |
3 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
5-16500 5 days ago |
5-18091 5 days ago |
5-18075 5 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 |
5-3113 5 days ago |
58-3466 1 month ago |
58-5213 58 days |
30137 |
vlad902 author:vlad902 |
feat(SimpleGraph): characterise when `SimpleGraph V` is a subsingleton/nontrivial |
Helper lemmas I found useful in mutliple PRs for dispatching trivial cases.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-combinatorics
|
14/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
5 |
['YaelDillies', 'github-actions', 'vlad902'] |
YaelDillies assignee:YaelDillies |
5-2069 5 days ago |
5-2069 5 days ago |
19-3859 19 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 |
23/2 |
Mathlib/Order/Antichain.lean,Mathlib/Order/Preorder/Chain.lean |
2 |
23 |
['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vlad902'] |
YaelDillies assignee:YaelDillies |
4-86394 4 days ago |
7-11422 7 days ago |
24-64812 24 days |
29956 |
SnirBroshi author:SnirBroshi |
feat(Algebra/Polynomial): small and useful lemmas |
feat(Algebra/Polynomial): added many small and useful lemmas about polynomials
---
[](https://gitpod.io/from-referrer/)
|
large-import
new-contributor
t-algebra
label:t-algebra$ |
294/90 |
Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/FieldTheory/NormalizedTrace.lean,Mathlib/RingTheory/SimpleRing/Basic.lean,Mathlib/RingTheory/Trace/Basic.lean |
16 |
64 |
['SnirBroshi', 'erdOne', 'github-actions', 'kckennylau', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] |
ocfnash assignee:ocfnash |
4-73122 4 days ago |
12-69958 12 days ago |
26-44887 26 days |
30363 |
smmercuri author:smmercuri |
feat: `PadicInt` is isomorphic to the integers of the uniform space completion `(Rat.padicValuation p).Completion` |
- Uniform isomorphism between `𝒪[(Rat.padicValuation p).Completion]` and `ℤ_[p]`
- A homeomorphism `e : X ≃ Y` gives a closed set `{ x : X | p x ↔ q (e x) }` for clopen subsets given by `p` and `q`
- Move `Padic.isUnit_den` to an earlier file to avoid having to import `Padics.RingHoms` unnecessarily
---
- [x] depends on: #30361
[](https://gitpod.io/from-referrer/)
|
|
67/21 |
Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
dwrensha assignee:dwrensha |
4-73121 4 days ago |
12-16867 12 days ago |
12-19401 12 days |
30378 |
mans0954 author:mans0954 |
refactor(Order/Hom/Lattice): Use default `initialize_simps_projections` configuration for `LatticeHom`. |
Use default `initialize_simps_projections` configuration for `LatticeHom`.
I'm not sure what was originally intended by the TODO, but this appears to work.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
4/7 |
Mathlib/Order/Hom/Lattice.lean,Mathlib/Order/Hom/WithTopBot.lean |
2 |
1 |
['github-actions'] |
bryangingechen assignee:bryangingechen |
4-73119 4 days ago |
12-17125 12 days ago |
12-17160 12 days |
30382 |
joelriou author:joelriou |
feat(CategoryTheory): Guitart exact squares and Kan extensions |
Given a Guitart exact square `w : T ⋙ R ⟶ L ⋙ B`, we show that pointwise left Kan extensions along `R` give, by composition, pointwise left Kan extensions along `L`.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
161/12 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean,Mathlib/CategoryTheory/GuitartExact/KanExtension.lean,Mathlib/CategoryTheory/Limits/Final.lean |
4 |
1 |
['github-actions'] |
adamtopaz assignee:adamtopaz |
4-73118 4 days ago |
12-13687 12 days ago |
12-13664 12 days |
30626 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Connectivity/Connected): {`Subsingleton`, `Unique`, `Nonempty`} instances for `ConnectedComponent` |
feat(Combinatorics/SimpleGraph/Connectivity/Connected): add {`Subsingleton`, `Unique`, `Nonempty`} instances for `ConnectedComponent`
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
4/4 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
1 |
1 |
['github-actions'] |
nobody |
4-73052 4 days ago |
4-73064 4 days ago |
4-73109 4 days |
30390 |
joelriou author:joelriou |
feat(CategoryTheory/GuitartExact): exact square involving Over categories |
Given `F : C ⥤ D` and `X : C`, we show that if the binary product of `X` and `Y` exists for any `Y`, and `F` commutes to it, then there is a Guitart exact square with `Over.post F : Over X ⥤ Over (F.obj X)` on the top, `F` on the bottom, and `Over.forget` on the left and right sides.
(In combination with #30382 and #30386, this can be used to show results about the functoriality of categories of (pre)sheaves.)
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
75/0 |
Mathlib.lean,Mathlib/CategoryTheory/GuitartExact/Over.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/BinaryProducts.lean |
3 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
4-51314 4 days ago |
11-82831 11 days ago |
11-82809 11 days |
29824 |
themathqueen author:themathqueen |
feat(Algebra/Order/Star): add `StarOrderedRing (Π i, A i)` |
---
- [x] depends on: #29823
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
38/0 |
Mathlib.lean,Mathlib/Algebra/Order/Star/Pi.lean |
2 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'themathqueen'] |
joneugster assignee:joneugster |
4-38968 4 days ago |
12-38506 12 days ago |
12-38905 12 days |
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.
---
- [x] 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'] |
tb65536 assignee:tb65536 |
4-38598 4 days ago |
12-82957 12 days ago |
14-4808 14 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 |
21 |
['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
4-19986 4 days ago |
19-77328 19 days ago |
20-49945 20 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.
---
[](https://gitpod.io/from-referrer/)
|
|
159/104 |
Mathlib/Data/Fin/Tuple/Basic.lean |
1 |
7 |
['github-actions', 'linesthatinterlace', 'llllvvuu', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
4-17133 4 days ago |
22-13974 22 days ago |
23-69879 23 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$ |
197/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 |
16 |
['Vierkantor', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
4-15148 4 days ago |
4-15176 4 days ago |
36-10698 36 days |
30633 |
joelriou author:joelriou |
feat(SetTheory): more API for HasCardinalLT |
We add stability lemmas for `HasCardinalLT X κ` for sigma types, binary products, etc when `κ` is regular (or at least infinite).
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
103/0 |
Mathlib/SetTheory/Cardinal/HasCardinalLT.lean,Mathlib/SetTheory/Cardinal/Regular.lean |
2 |
1 |
['github-actions'] |
nobody |
4-6744 4 days ago |
4-31057 4 days ago |
4-31035 4 days |
30518 |
euprunin author:euprunin |
chore(Cache): remove "No files to download" message. make `lake exe cache get` less verbose |
Fixes #27038.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
28/29 |
Cache/IO.lean,Cache/Requests.lean |
2 |
11 |
['YaelDillies', 'euprunin', 'github-actions'] |
nobody |
4-1524 4 days ago |
5-14139 5 days ago |
8-8209 8 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
|
5/11 |
Mathlib/RingTheory/Bialgebra/Hom.lean |
1 |
8 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
alreadydone assignee:alreadydone |
3-84217 3 days ago |
3-84217 3 days ago |
73-50231 73 days |
30559 |
SnirBroshi author:SnirBroshi |
feat(Data/Sym/Sym2): add `Sym2.diagSet` |
feat(Data/Sym/Sym2): add `Sym2.diagSet`, the set of elements on the diagonal
---
This should help state theorems in simple graphs more easily (e.g. see `SimpleGraph.edgeSet_fromEdgeSet`, `SimpleGraph.edgeSet_sdiff_sdiff_isDiag`, `SimpleGraph.edgeSet_subset_setOf_not_isDiag`) and more importantly work with such statements.
[](https://gitpod.io/from-referrer/)
|
t-data |
39/6 |
Mathlib/Data/Sym/Sym2.lean |
1 |
1 |
['github-actions'] |
nobody |
3-75719 3 days ago |
7-1581 7 days ago |
7-1620 7 days |
27606 |
CBirkbeck author:CBirkbeck |
Eisenstein q exp identity |
---
- [x] depends on: #26016
- [x] depends on: #27212
- [x] depends on: #27837
- [x] depends on: #27839
- [x] depends on: #27840
- [x] depends on: #28690
- [x] depends on: #27838
- [x] depends on: #27841
- [x] depends on: #27844
[](https://gitpod.io/from-referrer/)
|
large-import |
124/6 |
Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean |
1 |
11 |
['MichaelStollBayreuth', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
dagurtomas assignee:dagurtomas |
3-73147 3 days ago |
11-33740 11 days ago |
12-12403 12 days |
27953 |
CoolRmal author:CoolRmal |
feat(ProbabilityTheory): Conditional Jensen's Inequality |
This PR adds conditional Jensen's inequality.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
526/10 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean |
5 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
sgouezel assignee:sgouezel |
3-73146 3 days ago |
11-66128 11 days ago |
20-16162 20 days |
30396 |
urkud author:urkud |
feat(DivergenceTheorem): add 2 versions |
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
52/0 |
Mathlib/MeasureTheory/Integral/DivergenceTheorem.lean |
1 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
3-73139 3 days ago |
11-44958 11 days ago |
11-44989 11 days |
30410 |
ADedecker author:ADedecker |
feat: `isProperMap_fst_of_compactSpace`, `IsProperMap.restrictPreimage` |
---
This also moves `isClosedMap_snd_of_compactSpace` to prove it via properness, but I'm happy to revert this change if needed.
- [x] depends on: #30406
[](https://gitpod.io/from-referrer/)
|
t-topology |
45/18 |
Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/IsClosedRestrict.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/Maps/Proper/Basic.lean |
4 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
jcommelin assignee:jcommelin |
3-73136 3 days ago |
11-3475 11 days ago |
11-4279 11 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/292 |
Mathlib/Order/Height.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
3-53891 3 days ago |
3-53916 3 days ago |
12-33331 12 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/)
|
maintainer-merge
t-combinatorics
|
8/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
11 |
['YaelDillies', 'github-actions', 'vlad902'] |
YaelDillies assignee:YaelDillies |
3-40112 3 days ago |
3-40112 3 days ago |
16-25219 16 days |
30638 |
alreadydone author:alreadydone |
feat(Algebra): `SemimoduleCat`, category of modules over semiring |
+ Introduce SemimoduleCat, the category of semimodules (mathlib's Module) over a Semiring. The new file ModuleCat/Semi.lean is copied from ModuleCat/Basic.lean. The additive/linear instances would require #28826.
+ Construct the symmetric monoidal structure on SemimoduleCat, and transport it to the same structure on ModuleCat (in a way preserving pre-existing defeqs) using the equivalence `ModuleCat.equivalenceSemimoduleCat` between the categories. Just a few proofs in the Representation library need to be fixed (in a straightforward way). Public API for ModuleCat is duplicated to SemimoduleCat.
+ Rename `symmetricCategory/monoidalLinear/exactPairingOf(Fully)Faithful` to `SymmetricCategory.ofFaithful` etc. following [CategoryTheory.BraidedCategory.ofFaithful](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/Braided/Basic.html#CategoryTheory.BraidedCategory.ofFaithful).
+ Remove some `noncomputable section`s and make some noncomputable defs computable.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-category-theory
label:t-algebra$ |
789/102 |
Mathlib.lean,Mathlib/Algebra/Category/AlgCat/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/CategoryTheory/Action/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Transport.lean,Mathlib/CategoryTheory/Monoidal/Linear.lean,Mathlib/CategoryTheory/Monoidal/Rigid/OfEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Symmetric.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Basic.lean,Mathlib/RepresentationTheory/Induced.lean,Mathlib/RepresentationTheory/Rep.lean |
18 |
1 |
['github-actions'] |
nobody |
3-37774 3 days ago |
3-74118 3 days ago |
3-74103 3 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 |
3 |
['JovanGerb', 'github-actions', 'mathlib4-dependent-issues-bot'] |
JovanGerb assignee:JovanGerb |
3-34865 3 days ago |
13-6406 13 days ago |
13-10289 13 days |
30206 |
SnirBroshi author:SnirBroshi |
feat(Combinators/SimpleGraph/Hamiltonian): `p.support.length = Fintype.card α` |
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-combinatorics
easy
|
5/0 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
4 |
['SnirBroshi', 'YaelDillies', 'github-actions'] |
YaelDillies assignee:YaelDillies |
3-28689 3 days ago |
3-29913 3 days ago |
17-10627 17 days |
30650 |
JovanGerb author:JovanGerb |
perf(reassoc, to_app, elementwise): don't pass the same proof to the kernel again |
In `reassoc`, `to_app`, `elementwise`, the proof of the original lemma was being used to prove the modified lemma. This is silly, because the modified lemma can be proved using the original lemma directly. Hence, this PR modifies `addRelatedDecl` to include this optimization.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
12/12 |
Mathlib/Tactic/CategoryTheory/Elementwise.lean,Mathlib/Tactic/CategoryTheory/Reassoc.lean,Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Util/AddRelatedDecl.lean |
4 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
3-15458 3 days ago |
3-15458 3 days ago |
3-19191 3 days |
28375 |
euprunin author:euprunin |
chore(Analysis/SpecialFunctions/Pow): golf entire `rpow_lt_rpow_of_exponent_neg` and `rpow_le_rpow_of_exponent_nonpos` |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
easy
|
4/14 |
Mathlib/Analysis/SpecialFunctions/Pow/Real.lean |
1 |
4 |
['JonBannon', 'Ruben-VandeVelde', 'euprunin', 'github-actions', 'grunweg'] |
urkud assignee:urkud |
3-13041 3 days ago |
3-13041 3 days ago |
40-60886 40 days |
30515 |
euprunin author:euprunin |
chore(Data/Nat): golf `findGreatest_eq_iff` using `grind` |
---
Show trace profiling of findGreatest_eq_iff : 21 ms before, 39 ms after
### Trace profiling of `findGreatest_eq_iff` before PR 30515
```diff
diff --git a/Mathlib/Data/Nat/Find.lean b/Mathlib/Data/Nat/Find.lean
index 4ac5779f75..8e95d6e030 100644
--- a/Mathlib/Data/Nat/Find.lean
+++ b/Mathlib/Data/Nat/Find.lean
@@ -176,6 +176,7 @@ lemma findGreatest_succ (n : ℕ) :
lemma findGreatest_of_not (h : ¬ P (n + 1)) : findGreatest P (n + 1) = findGreatest P n := by
simp [Nat.findGreatest, h]
+set_option trace.profiler true in
lemma findGreatest_eq_iff :
Nat.findGreatest P k = m ↔ m ≤ k ∧ (m ≠ 0 → P m) ∧ ∀ ⦃n⦄, m < n → n ≤ k → ¬P n := by
induction k generalizing m with
```
```
ℹ [103/103] Built Mathlib.Data.Nat.Find (710ms)
info: Mathlib/Data/Nat/Find.lean:180:0: [Elab.async] [0.021505] elaborating proof of Nat.findGreatest_eq_iff
[Elab.definition.value] [0.020637] Nat.findGreatest_eq_iff
[Elab.step] [0.020109] induction k generalizing m with
| zero =>
rw [eq_comm, Iff.comm]
simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp]
rintro rfl
exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩
| succ k ihk =>
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
constructor
· rintro ⟨hle, hP, hm⟩
refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩
rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl
exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk]
· rintro ⟨hle, hP, hm⟩
refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩
rintro rfl
exact hk (hP k.succ_ne_zero)
[Elab.step] [0.020104] induction k generalizing m with
| zero =>
rw [eq_comm, Iff.comm]
simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp]
rintro rfl
exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩
| succ k ihk =>
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
constructor
· rintro ⟨hle, hP, hm⟩
refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩
rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl
exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk]
· rintro ⟨hle, hP, hm⟩
refine
⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩
rintro rfl
exact hk (hP k.succ_ne_zero)
[Elab.step] [0.020100] induction k generalizing m with
| zero =>
rw [eq_comm, Iff.comm]
simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp]
rintro rfl
exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩
| succ k ihk =>
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
constructor
· rintro ⟨hle, hP, hm⟩
refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩
rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl
exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk]
· rintro ⟨hle, hP, hm⟩
refine
⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩
rintro rfl
exact hk (hP k.succ_ne_zero)
[Elab.step] [0.014891]
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
constructor
· rintro ⟨hle, hP, hm⟩
refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩
rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl
exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk]
· rintro ⟨hle, hP, hm⟩
refine
⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩
rintro rfl
exact hk (hP k.succ_ne_zero)
[Elab.step] [0.014884]
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
constructor
· rintro ⟨hle, hP, hm⟩
refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩
rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl
exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk]
· rintro ⟨hle, hP, hm⟩
refine
⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩
rintro rfl
exact hk (hP k.succ_ne_zero)
Build completed successfully (103 jobs).
```
### Trace profiling of `findGreatest_eq_iff` after PR 30515
```diff
diff --git a/Mathlib/Data/Nat/Find.lean b/Mathlib/Data/Nat/Find.lean
index 4ac5779f75..091200bd46 100644
--- a/Mathlib/Data/Nat/Find.lean
+++ b/Mathlib/Data/Nat/Find.lean
@@ -176,6 +176,7 @@ lemma findGreatest_succ (n : ℕ) :
lemma findGreatest_of_not (h : ¬ P (n + 1)) : findGreatest P (n + 1) = findGreatest P n := by
simp [Nat.findGreatest, h]
+set_option trace.profiler true in
lemma findGreatest_eq_iff :
Nat.findGreatest P k = m ↔ m ≤ k ∧ (m ≠ 0 → P m) ∧ ∀ ⦃n⦄, m < n → n ≤ k → ¬P n := by
induction k generalizing m with
@@ -194,16 +195,7 @@ lemma findGreatest_eq_iff :
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
- constructor
- · rintro ⟨hle, hP, hm⟩
- refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩
- rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl
- exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk]
- · rintro ⟨hle, hP, hm⟩
- refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP,
- fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩
- rintro rfl
- exact hk (hP k.succ_ne_zero)
+ grind
lemma findGreatest_eq_zero_iff : Nat.findGreatest P k = 0 ↔ ∀ ⦃n⦄, 0 < n → n ≤ k → ¬P n := by
simp [findGreatest_eq_iff]
```
```
ℹ [103/103] Built Mathlib.Data.Nat.Find (704ms)
info: Mathlib/Data/Nat/Find.lean:180:0: [Elab.async] [0.040019] elaborating proof of Nat.findGreatest_eq_iff
[Elab.definition.value] [0.039235] Nat.findGreatest_eq_iff
[Elab.step] [0.038893] induction k generalizing m with
| zero =>
rw [eq_comm, Iff.comm]
simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp]
rintro rfl
exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩
| succ k ihk =>
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.038886] induction k generalizing m with
| zero =>
rw [eq_comm, Iff.comm]
simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp]
rintro rfl
exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩
| succ k ihk =>
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.038881] induction k generalizing m with
| zero =>
rw [eq_comm, Iff.comm]
simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp]
rintro rfl
exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩
| succ k ihk =>
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.033287]
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.033279]
by_cases hk : P (k + 1)
· rw [findGreatest_eq hk]
constructor
· rintro rfl
exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩
· rintro ⟨hle, h0, hm⟩
rcases Decidable.lt_or_eq_of_le hle with hlt | rfl
exacts [(hm hlt (le_refl _) hk).elim, rfl]
· rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.022776] ·
rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.022745]
rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.022740]
rw [findGreatest_of_not hk, ihk]
grind
[Elab.step] [0.021688] grind
Build completed successfully (103 jobs).
```
---
[](https://gitpod.io/from-referrer/)
|
t-data
easy
|
1/10 |
Mathlib/Data/Nat/Find.lean |
1 |
1 |
['github-actions', 'vihdzp'] |
nobody |
3-12988 3 days ago |
3-12988 3 days ago |
8-13439 8 days |
30520 |
euprunin author:euprunin |
chore: golf `nondegenerate_of_det_ne_zero`, `num_zero` and `sum_to_range` using `simp_all` |
---
Trace profiling -- `nondegenerate_of_det_ne_zero`: 196 ms before, 184 ms after 🎉
Trace profiling -- `eq_zero_of_num_eq_zero`: <10 ms before, <10 ms after 🎉
Trace profiling -- `sum_to_range`: 39 ms before, 16 ms after 🎉
---
[](https://gitpod.io/from-referrer/)
|
easy |
4/17 |
Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/RingTheory/Localization/NumDen.lean,Mathlib/Topology/Category/Profinite/Nobeling/Successor.lean |
3 |
9 |
['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
3-12966 3 days ago |
3-12966 3 days ago |
7-51215 7 days |
30436 |
wwylele author:wwylele |
feat(Topology/InfiniteSum): tprod_one_{add/sub}_ordered |
This extends the existing `Finset.prod_one_sub_ordered` to infinite sum/product, and also adds the more natural `add` version.
Together with some previous PRs about infinite sum/prod and powerseries, this is part of my effort of upstreaming useful stuff from https://github.com/wwylele/PentagonalNumberTheorem. It starts getting into niche lemma, so suggestions such that not wanting this in mathlib, or it should be stated in a different form, are all welcomed.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
44/0 |
Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Ring.lean |
2 |
1 |
['github-actions'] |
nobody |
3-11767 3 days ago |
3-11767 3 days ago |
10-31491 10 days |
30599 |
wwylele author:wwylele |
feat(RingTheory): geometric series of (Mv)PowerSeries |
Also abstracted the common part for both PowerSeries and normed rings into `Summable.tsum_pow_mul_one_sub` / `Summable.one_sub_mul_tsum_pow`.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
111/15 |
Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/MvPowerSeries/PiTopology.lean,Mathlib/RingTheory/PowerSeries/Order.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean,Mathlib/Topology/Algebra/InfiniteSum/Ring.lean |
6 |
1 |
['github-actions'] |
nobody |
3-11050 3 days ago |
3-11050 3 days ago |
5-72134 5 days |
30567 |
wwylele author:wwylele |
feat(Combinatorics): generating function for partitions |
This is the start of a series of PR aiming to prove two theorems related to partition:
- [Glaisher's theorem](https://en.wikipedia.org/wiki/Glaisher%27s_theorem), which is a generalization of the existing [Euler's Partition theorem](https://github.com/leanprover-community/mathlib4/blob/master/Archive/Wiedijk100Theorems/Partition.lean). The proof will use the infinite generating function, upgrading the current proof that uses finite ones, and resolving this [TODO](https://github.com/leanprover-community/mathlib4/blob/master/Archive/Wiedijk100Theorems/Partition.lean#L66)
- [Pentagonal number theorem](https://en.wikipedia.org/wiki/Pentagonal_number_theorem) and the recurrence relation on the partition function.
I created a new file `Mathlib/Combinatorics/Enumerative/Partition/GenFun.lean` to avoid importing PowerSeries stuff directly into the definition file, and along the way I moved the existing `Mathlib/Combinatorics/Enumerative/Partition.lean` to `Mathlib/Combinatorics/Enumerative/Partition/Basic.lean` . Not sure why github didn't recognize this as a file move, but there is no diff in that file and the total diff is much smaller
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
426/181 |
Archive/Wiedijk100Theorems/Partition.lean,Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Finsupp.lean,Mathlib/Combinatorics/Enumerative/Partition.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/GenFun.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean |
8 |
1 |
['github-actions'] |
nobody |
3-10059 3 days ago |
3-11759 3 days ago |
6-71250 6 days |
30232 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Connectivity/Subgraph): add `ConnectedComponent.toSubgraph` |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
easy
|
32/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
2 |
2 |
['SnirBroshi', 'github-actions'] |
nobody |
3-8764 3 days ago |
16-64809 16 days ago |
16-64848 16 days |
30637 |
strihanje01 author:strihanje01 |
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions |
add Lindstrom's theorem and its strengthening for equal intersections
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
210/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/Lindstrom.lean |
2 |
1 |
['github-actions'] |
nobody |
3-6653 3 days ago |
4-13983 4 days ago |
4-14029 4 days |
30655 |
joelriou author:joelriou |
feat(CategoryTheory/Final): improve assumptions for `final_fst` |
We show that the projection `C × D ⥤ C` is a final (or initial) functor when `D` is connected. (Before this PR, it was proven under the stronger assumption that `D` was (co)filtered.)
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
133/16 |
Mathlib.lean,Mathlib/CategoryTheory/Discrete/StructuredArrow.lean,Mathlib/CategoryTheory/Filtered/Final.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Final/Connected.lean |
5 |
1 |
['github-actions'] |
nobody |
3-6511 3 days ago |
3-6633 3 days ago |
3-6610 3 days |
30634 |
joelriou author:joelriou |
feat(CategoryTheory): κ-filtered categories are stable under products |
Binary products and general products of `κ`-filtered categories are `κ`-filtered.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
27/0 |
Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean |
1 |
1 |
['github-actions'] |
nobody |
3-6376 3 days ago |
3-6376 3 days ago |
4-26808 4 days |
22771 |
alreadydone author:alreadydone |
feat(Homotopy/Lifting): monodromy of covering maps and lifting criterion |
Define the monodromy of a covering map: given a path in the base space, lifting it through the covering map induces a bijection between the fibers at the two endpoints of the path. Definition 2.1 in https://ncatlab.org/nlab/show/monodromy.
---
- [ ] depends on: #28234
- [x] depends on: #22649
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
193/146 |
Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/CategoryTheory/Groupoid.lean,Mathlib/Topology/Covering.lean,Mathlib/Topology/Homotopy/HomotopyGroup.lean,Mathlib/Topology/Homotopy/Lifting.lean,Mathlib/Topology/Homotopy/Product.lean |
9 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
PatrickMassot assignee:PatrickMassot |
3-2786 3 days ago |
59-35447 1 month ago |
144-35711 144 days |
30315 |
SnirBroshi author:SnirBroshi |
feat(Topology/Connected/LocPathConnected): convenience lemma for `LocPathConnected` + `ConnectedSpace` → `PathConnectedSpace` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-bench
new-contributor
t-topology
|
5/3 |
Mathlib/Topology/Connected/LocPathConnected.lean |
1 |
11 |
['SnirBroshi', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
PatrickMassot assignee:PatrickMassot |
3-572 3 days ago |
3-70975 3 days ago |
13-33186 13 days |
30661 |
urkud author:urkud |
feat(Topology): infinite T2 spaces |
---
Cleaning up old branches.
[](https://gitpod.io/from-referrer/)
|
t-topology |
77/0 |
Mathlib.lean,Mathlib/Topology/NatEmbedding.lean |
2 |
2 |
['github-actions', 'urkud'] |
nobody |
2-83926 2 days ago |
2-83939 2 days ago |
2-83975 2 days |
30662 |
urkud author:urkud |
feat(LocallyFinite): add `of_comp_surjective` |
---
Cleaning up old branches. Feel free to reject.
[](https://gitpod.io/from-referrer/)
|
t-topology |
7/0 |
Mathlib/Topology/LocallyFinite.lean |
1 |
1 |
['github-actions'] |
nobody |
2-83687 2 days ago |
2-83704 2 days ago |
2-83739 2 days |
30645 |
tb65536 author:tb65536 |
feat(RingTheory/Localization/FractionRing): `R` is nontrivial iff `S` is nontrivial |
This PR shows that if `S` is the fraction ring of `R`, then `R` is nontrivial iff `S` is nontrivial.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
label:t-algebra$ |
16/8 |
Mathlib/RingTheory/Localization/FractionRing.lean |
1 |
6 |
['Ruben-VandeVelde', 'github-actions', 'tb65536'] |
nobody |
2-83005 2 days ago |
3-51793 3 days ago |
3-51771 3 days |
30226 |
erdOne author:erdOne |
feat(AlgebraicGeometry): global sections of inverse limits of schemes |
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
463/3 |
Mathlib.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/AffineTransitionLimit.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Connected.lean |
7 |
12 |
['chrisflav', 'erdOne', 'github-actions', 'joelriou'] |
joelriou assignee:joelriou |
2-73093 2 days ago |
10-30726 10 days ago |
13-25151 13 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'] |
dupuisf assignee:dupuisf |
2-73092 2 days ago |
13-38414 13 days ago |
13-38390 13 days |
30432 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): define the non-vanishing locus of a set in Proj |
Given a subset `s : Set A`, the non-vanishing locus of `s` is the set of points whose corresponding prime ideal does not fully contain `s`. In other words, where not all elements of `s` vanish.
I could not find a name for this in the literature.
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
66/0 |
Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean |
1 |
1 |
['github-actions'] |
alexjbest assignee:alexjbest |
2-73090 2 days ago |
10-45635 10 days ago |
10-45668 10 days |
30439 |
plp127 author:plp127 |
feat: `norm_num` extension for `IsSquare` on `Nat`, `Int`, `Rat` |
Write a `norm_num` extension to evaluate `IsSquare` for `Nat`, `Int`, `Rat`.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
152/1 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/IsSquare.lean,MathlibTest/norm_num_ext.lean |
4 |
3 |
['Rob23oba', 'github-actions', 'plp127'] |
dwrensha assignee:dwrensha |
2-73089 2 days ago |
10-23048 10 days ago |
10-23082 10 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_eq_iSup_lift` etc. to reflect their signatures in names.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory
maintainer-merge
|
64/31 |
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 |
10 |
['alreadydone', 'github-actions', 'staroperator', 'vihdzp'] |
alreadydone assignee:alreadydone |
2-69190 2 days ago |
3-36807 3 days ago |
47-11974 47 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 |
6 |
['Ruben-VandeVelde', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot', 'wwylele'] |
sgouezel assignee:sgouezel |
2-68545 2 days ago |
13-84819 13 days ago |
17-17323 17 days |
30224 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Hamiltonian): `p.support.get` is bijective |
---
- [x] depends on: #30223
[](https://gitpod.io/from-referrer/)
|
new-contributor |
7/0 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
kim-em assignee:kim-em |
2-55726 2 days ago |
9-80216 9 days ago |
9-81172 9 days |
30646 |
xroblot author:xroblot |
feat(RingTheory/Ideal): the inertia degree and ramification index are less than the rank |
Also prove that `primesOverFinset` is less than the rank. These are all easy consequences of [Ideal.sum_ramification_inertia](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.sum_ramification_inertia)
---
|
t-ring-theory |
50/9 |
Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean |
2 |
5 |
['erdOne', 'github-actions', 'xroblot'] |
nobody |
2-48981 2 days ago |
3-19444 3 days ago |
3-43424 3 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'] |
Vierkantor assignee:Vierkantor |
2-47158 2 days ago |
19-3431 19 days ago |
19-3757 19 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 |
13 |
['JasperMS', 'Ruben-VandeVelde', 'edegeltje', 'github-actions', 'pechersky'] |
pechersky assignee:pechersky |
2-46826 2 days ago |
74-25926 2 months ago |
74-26360 74 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 |
2-42979 2 days ago |
33-49686 1 month ago |
33-49719 33 days |
30665 |
alreadydone author:alreadydone |
feat(Algebra): congruence relation preserving SMul |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
197/19 |
Mathlib.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Module.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean |
6 |
6 |
['ADedecker', 'alreadydone', 'github-actions'] |
nobody |
2-27144 2 days ago |
2-80394 2 days ago |
2-80372 2 days |
30590 |
YaelDillies author:YaelDillies |
feat(Combinatorics/SimpleGraph): inducing a walk |
A walk which is fully contained within a set of vertices becomes a walk on the corresponding induced graph.
From the ProofBench workshop
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
27/0 |
Mathlib/Combinatorics/SimpleGraph/Walk.lean |
1 |
1 |
['github-actions'] |
nobody |
2-26698 2 days ago |
6-12119 6 days ago |
6-12163 6 days |
29652 |
fmortimore author:fmortimore |
feat(Order): the Bourbaki–Witt theorem |
We prove the Bourbaki-Witt theorem, one of Wiedijk's 1000+ theorems
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
244/0 |
Mathlib.lean,Mathlib/Order/BourbakiWitt.lean,docs/1000.yaml |
3 |
28 |
['Vierkantor', 'eric-wieser', 'fmortimore', 'github-actions', 'wwylele'] |
Vierkantor assignee:Vierkantor |
2-26164 2 days ago |
2-26164 2 days ago |
24-73105 24 days |
30677 |
themathqueen author:themathqueen |
doc(LinearAlgebra/Matrix/PosDef): module docstring |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
9/4 |
Mathlib/LinearAlgebra/Matrix/PosDef.lean |
1 |
1 |
['github-actions'] |
nobody |
2-24553 2 days ago |
2-24553 2 days ago |
2-25638 2 days |
30679 |
themathqueen author:themathqueen |
feat(LinearAlgebra/TensorProduct/Matrix): equivalence between `⊗ₜ` and `⊗ₖ` |
This adds the equivalence between the tensor product of matrices and the Kronecker product.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
42/1 |
Mathlib/LinearAlgebra/TensorProduct/Matrix.lean |
1 |
1 |
['github-actions'] |
nobody |
2-24362 2 days ago |
2-24665 2 days ago |
2-24788 2 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
|
77/8 |
Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean |
2 |
6 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'xroblot'] |
kbuzzard assignee:kbuzzard |
2-21184 2 days ago |
2-21208 2 days ago |
84-14214 84 days |
30647 |
JovanGerb author:JovanGerb |
chore(Tactic/Ring): use Qq more honestly |
This PR removes almost all uses of `(q(...) : Expr)` in the `ring` tactic implementation.
This includes switching from `Ring`/`DivisionSemiring` to `CommRing`/`Semifield`, because then we can rely on `assumeInstancesCommute` to make Qq happy. This should not affect the generality of the `ring` tactic, because a `Ring`/`DivisionSemiring` that is also commutative is also a `CommRing`/`Semifield`.
I wanted to do some other work on `ring`, but that stumbled on the fact that some `q(...)` proof terms weren't actually being type checked properly by Qq. This PR fixes this.
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
126/116 |
Mathlib/Tactic/Ring/Basic.lean |
1 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
2-18279 2 days ago |
3-34566 3 days ago |
3-34554 3 days |
30693 |
joelriou author:joelriou |
feat(Order/Category): partial orders with order embeddings as morphisms |
This category will be relevant in the study of accessible categories. I am making Johan Commelin a co-author as the new file `PartOrdEmb.lean` is essentially a copy-paste of `PartOrd.Lean`.
Co-authored-by: Johan Commelin
---
[](https://gitpod.io/from-referrer/)
|
t-order |
169/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrdEmb.lean |
2 |
2 |
['github-actions', 'joelriou'] |
nobody |
2-6133 2 days ago |
2-9888 2 days ago |
2-9866 2 days |
30701 |
vihdzp author:vihdzp |
feat: `Set.prod_image_left` |
---
Downstreamed from the CGT repo.
[](https://gitpod.io/from-referrer/)
|
t-data |
9/0 |
Mathlib/Data/Set/Operations.lean |
1 |
1 |
['github-actions'] |
nobody |
1-83568 1 day ago |
1-83580 1 day ago |
1-83621 1 day |
30702 |
jsm28 author:jsm28 |
feat(LinearAlgebra/AffineSpace/Independent): `inf_affineSpan_eq_affineSpan_inter` |
Add a lemma
```lean
lemma AffineIndependent.inf_affineSpan_eq_affineSpan_inter [Nontrivial k] {p : ι → P}
(ha : AffineIndependent k p) (s₁ s₂ : Set ι) :
affineSpan k (p '' s₁) ⊓ affineSpan k (p '' s₂) = affineSpan k (p '' (s₁ ∩ s₂)) := by
```
with a proof adapted from that of the existing weaker `exists_mem_inter_of_exists_mem_inter_affineSpan`, and change `exists_mem_inter_of_exists_mem_inter_affineSpan` to be proved using the new lemma.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
37/12 |
Mathlib/LinearAlgebra/AffineSpace/Independent.lean |
1 |
3 |
['eric-wieser', 'github-actions'] |
nobody |
1-80651 1 day ago |
1-83140 1 day ago |
1-83118 1 day |
30553 |
mcdoll author:mcdoll |
chore(Analysis/Distribution): split off functions and measures of temperate growth |
The Schwartz function file reached 1500 lines of code, so it really needs splitting.
The only other change is that I added namespaces and moved one lemma into the `MeasureTheory.Measure` namespace to allow for dot-notation.
---
I've added Anatole to the list of authors for the `BigO` additions, I don't know whether there is someone else that should be mentioned. @mans0954 did you contribute to the temperate growth functions?
I did not write any new doc-strings, so that this PR does not get hung up on that, but this should be done in a subsequent PR.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
241/220 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean |
3 |
4 |
['ADedecker', 'github-actions', 'mcdoll'] |
nobody |
1-78988 1 day ago |
7-11034 7 days ago |
7-11072 7 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 |
1-77895 1 day ago |
17-43299 17 days ago |
25-67 25 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 |
1-77884 1 day ago |
35-28463 1 month ago |
35-44670 35 days |
30627 |
kim-em author:kim-em |
chore: regression test for Set grind annotations |
This is apparently failing in Cslib's `nightly-testing`, so installing this as a regression test to try to pin down where it is/isn't working. |
|
3/0 |
MathlibTest/grind/set.lean |
1 |
1 |
['github-actions'] |
nobody |
1-77239 1 day ago |
4-66331 4 days ago |
4-66308 4 days |
30698 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Projection): characteristic property |
Add a lemma
```lean
lemma orthogonalProjection_eq_iff_mem {s : AffineSubspace ℝ P} [Nonempty s]
[s.direction.HasOrthogonalProjection] {p q : P} :
orthogonalProjection s p = q ↔ q ∈ s ∧ p -ᵥ q ∈ s.directionᗮ := by
```
that gives the characteristic property of the orthogonal projection in a more convenient form to use than the existing
`inter_eq_singleton_orthogonalProjection` (from which it is derived).
Deduce a lemma `orthogonalProjection_eq_orthogonalProjection_iff_vsub_mem` about equality of two projections onto the same subspace.
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
34/0 |
Mathlib/Geometry/Euclidean/Projection.lean |
1 |
12 |
['eric-wieser', 'github-actions', 'jsm28'] |
nobody |
1-76160 1 day ago |
1-85069 1 day ago |
1-85048 1 day |
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 |
7 |
['gaetanserre', 'github-actions', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
j-loreaux assignee:j-loreaux |
1-73116 1 day ago |
58-23371 1 month ago |
84-14366 84 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'] |
pechersky assignee:pechersky |
1-73115 1 day ago |
35-73142 1 month ago |
57-41239 57 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'] |
pechersky assignee:pechersky |
1-73114 1 day ago |
55-43229 1 month ago |
55-43268 55 days |
30041 |
josephmckinsey author:josephmckinsey |
feat(Algebra/Order/Floor): generalize mul_floor_div theorems to rings and semirings |
Generalize `mul_cast_floor_div_cancel` from `Field` and `Semifield` to `Ring` and `Semiring`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
43/31 |
Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Analysis/Real/OfDigits.lean |
4 |
10 |
['Ruben-VandeVelde', 'github-actions', 'josephmckinsey'] |
joneugster assignee:joneugster |
1-73113 1 day ago |
9-71209 9 days ago |
10-19810 10 days |
30424 |
maksym-radziwill author:maksym-radziwill |
feat(Analysis.Complex): Borel-Caratheodory theorem, part of PrimeNumberTheoremAnd+ upstreaming |
This PR adds a proof of the [Borel-Caratheodory theorem](https://en.wikipedia.org/wiki/Borel%E2%80%93Carath%C3%A9odory_theorem) following the [blueprint](https://alexkontorovich.github.io/PrimeNumberTheoremAnd/web/sect0004.html#a0000000021) of the [PrimeNumberTheoremAnd+](https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/) project. This is part of the ongoing effort to upstream the StrongPNT version of the PrimeNumberTheoremAnd+ project into mathlib4.
See also the [Zullip discussion](https://leanprover.zulipchat.com/#narrow/channel/423402-PrimeNumberTheorem.2B/topic/Merging.20with.20Morph/with/544246433)
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
424/0 |
Mathlib.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,docs/1000.yaml,docs/references.bib |
4 |
7 |
['Ruben-VandeVelde', 'github-actions', 'maksym-radziwill', 'wwylele'] |
grunweg assignee:grunweg |
1-73112 1 day ago |
9-62276 9 days ago |
10-80060 10 days |
30468 |
jeremypparker author:jeremypparker |
feat(Algebra/GroupWithZero): mul_left_cancel_iff₀ |
This is a version of mul_left_cancel_iff / mul_right_cancel_iff for GroupWithZero
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
easy
label:t-algebra$ |
6/0 |
Mathlib/Algebra/GroupWithZero/Defs.lean |
1 |
4 |
['github-actions', 'jeremypparker', 'wwylele'] |
joelriou assignee:joelriou |
1-73108 1 day ago |
9-19089 9 days ago |
9-19122 9 days |
30473 |
CoolRmal author:CoolRmal |
feat(ComplexAnalysis): Cauchy's Integral Formula for Higher Order Derivatives |
This PR adds the following `iteratedDeriv_eq_smul_circleIntegral` and `norm_iteratedDeriv_le_aux`. The first one expresses the `n`-th order derivative of a differentiable function as a circle integral. The second one proves an estimate for the `n`-th order derivative.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Cauchy's.20integral.20formula
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
|
124/6 |
Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/Complex/LocallyUniformLimit.lean |
3 |
16 |
['CoolRmal', 'github-actions', 'loefflerd', 'wwylele'] |
ADedecker assignee:ADedecker |
1-73106 1 day ago |
9-6232 9 days ago |
9-6263 9 days |
30451 |
kckennylau author:kckennylau |
feat(HomogeneousIdeal): generalize to homogeneous submodule |
Continuation of #30437 with permission from @jjaassoonn, which is a continuation of #9820 .
The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to homogeneous submodules.
Let `R` be a graded ring and `M` be a graded `R`-module. Say an `R`-submodule `N` of `M` is homogeneous if for every `x` in `N`, each projection of `x` to `M_i` is in `N`. None of this file's results depends on the grading on `R`, but we include the grading on `R` for technical reasons. We define the "homogeneous core" of a not necessarily homogeneous submodule N to be the biggest homogeneous submodule contained within N, and the "homogeneous hull" to be the smallest homogeneous submodule that contains N.
All definitions/constructions/theorems are then copied for ideals/homogeneous ideals.
The motivation of this generalization is graded quotient module. (#18716)
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
554/182 |
Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean |
7 |
1 |
['github-actions'] |
nobody |
1-72927 1 day ago |
1-72927 1 day ago |
10-2799 10 days |
30144 |
alreadydone author:alreadydone |
feat(Data/Nat): kernel 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 |
7 |
['alreadydone', 'astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
1-72218 1 day ago |
17-25490 17 days ago |
17-72993 17 days |
30671 |
astrainfinita author:astrainfinita |
chore: remove `MulAction ℚ α → MulAction ℚ≥0 α` instances |
This fixes the instances diamond in the `NNRat` action.
---
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60SMul.20NNRat.60.20diamond.3F/with/545816108)
[](https://gitpod.io/from-referrer/)
|
t-data
t-algebra
label:t-algebra$ |
25/54 |
Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Order/Module/Rat.lean,Mathlib/Data/NNRat/Lemmas.lean |
4 |
1 |
['github-actions'] |
nobody |
1-56794 1 day ago |
1-59500 1 day ago |
1-59491 1 day |
30587 |
kebekus author:kebekus |
feat: sums of meromorphic functions are meromorphic |
Establish that sums of meromorphic functions are meromorphic. Fix several docstrings.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
easy
|
89/53 |
Mathlib/Analysis/Meromorphic/Basic.lean |
1 |
31 |
['eric-wieser', 'github-actions', 'grunweg', 'kebekus'] |
grunweg assignee:grunweg |
1-56417 1 day ago |
5-34034 5 days ago |
5-70401 5 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 |
5 |
['Ruben-VandeVelde', 'github-actions', 'themathqueen'] |
joneugster assignee:joneugster |
1-49478 1 day ago |
35-20620 1 month ago |
35-20654 35 days |
27978 |
smmercuri author:smmercuri |
feat(InfinitePlace/Ramification): `LiesOver` class for absolute values and derived results on infinite places |
If `w` is an absolute value on `L/K` and `v` is an absolute value of `K` then `w.LiesOver v` is the class defining the property that `v` is the restriction of `w` to `K`.
This PR continues the work from #24881.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24881
---
- [x] depends on: #27977 |
large-import
FLT
t-number-theory
|
62/0 |
Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
2 |
11 |
['MichaelStollBayreuth', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
1-48925 1 day ago |
1-48925 1 day ago |
18-65980 18 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/)
|
|
73/48 |
Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Completion.lean,Mathlib/Topology/MetricSpace/Completion.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
1-48896 1 day ago |
1-49158 1 day ago |
24-72023 24 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 |
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 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] |
Vierkantor assignee:Vierkantor |
1-48686 1 day ago |
1-48694 1 day ago |
18-83243 18 days |
30680 |
YaelDillies author:YaelDillies |
feat(Algebra/Group/Torsion): characterise when `a ^ n = 1` |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/11 |
Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/GroupWithZero/Torsion.lean,Mathlib/Algebra/Ring/NonZeroDivisors.lean |
3 |
1 |
['github-actions'] |
nobody |
1-47604 1 day ago |
2-24437 2 days ago |
2-24472 2 days |
30684 |
YaelDillies author:YaelDillies |
chore: deprecate `monoidalOfHasFiniteProducts` |
Over the summer, this was replaced everywhere with `CartesianMonoidalCategory.ofHasFiniteProducts`, but hadn't been deprecated.
---
I would personally be very happy to also delete the finite coproduct stuff, but we don't yet have cocartesian-monoidal categories to replace them.
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
92/92 |
Mathlib/CategoryTheory/Monoidal/OfHasFiniteProducts.lean |
1 |
3 |
['YaelDillies', 'github-actions', 'joelriou'] |
nobody |
1-43603 1 day ago |
1-43656 1 day ago |
1-45676 1 day |
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 |
6 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
1-41594 1 day ago |
19-20152 19 days ago |
19-22719 19 days |
30713 |
YaelDillies author:YaelDillies |
chore(Algebra/Ring): shortcut `IsDomain` instances for `Nat` and `Int` |
These instances are currently inferred from the `IsStrictOrderedRing` ones (see code snippet), but in #30563 I need these instances earlier than the `IsStrictOrderedRing` ones.
```
import Mathlib
#synth IsDomain ℕ -- IsStrictOrderedRing.isDomain
#synth IsDomain ℤ -- IsStrictOrderedRing.isDomain
```
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
6/0 |
Mathlib/Algebra/Ring/Int/Defs.lean,Mathlib/Algebra/Ring/Nat.lean |
2 |
1 |
['github-actions'] |
nobody |
1-40850 1 day ago |
1-40857 1 day ago |
1-40900 1 day |
27270 |
EtienneC30 author:EtienneC30 |
chore: turn WithLp into a structure |
Turn `WithLp` into a one field structure, as was suggested many times on Zulip and discussed here: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithLp.60/near/526234806.
Here is what this PR does:
- The instances on `WithLp p α` which were defeq to those on `α` (algebraic instances, topology, uniformity, bornology) are now pulled back from `α` along `WithLp.equiv p α`. A few declarations are added to ease the process, such as versions of `WithLp.equiv` as a homeomorphism or a uniform isomorphism.
- The `MeasurableSpace` structure was pushed forward from `α`. We now make it pulled back because it is much more convenient to prove that this preserves the `BorelSpace` instance.
- It introduces some definitions to equip `α × β` with the Lp distance, and similarly for `Π i, α i`. This is then used to define relevant instances on type synonyms, such as for matrix norms.
- The PR fixes all the defeq abuses (which break obviously).
---
- [x] depends on: #28469
- [x] depends on: #28470
- [x] depends on: #28471
[](https://gitpod.io/from-referrer/)
|
large-import
t-analysis
|
636/417 |
Archive/Hairer.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/ProdL2.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Lp/MeasurableSpace.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Analysis/RCLike/Inner.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/CrossProduct.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/MeasureTheory/SpecificCodomains/WithLp.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/Ideal/Asymptotics.lean,Mathlib/Probability/Distributions/Fernique.lean |
34 |
64 |
['EtienneC30', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
j-loreaux assignee:j-loreaux |
1-40757 1 day ago |
1-40779 1 day ago |
67-41665 67 days |
30717 |
kim-em author:kim-em |
chore: cleanup rwMerge tactic analysis linter |
Previously this would find a sequence of `rw`, and see if they could all be merged into a single one. Now it just tries to merge an adjacent pair of `rw`s. (In the event that 3 or more rewrites could be merged, this will now suggest a more conservative merge, but presumably subsequently suggest the further merges.)
Also removes a spurious `set_option grind.warning false`. |
t-meta |
8/5 |
Mathlib/Tactic/TacticAnalysis/Declarations.lean |
1 |
1 |
['github-actions'] |
nobody |
1-38949 1 day ago |
1-38949 1 day ago |
1-38991 1 day |
30692 |
themathqueen author:themathqueen |
chore: rename **conjugate** to **star_left_conjugate** |
We change `_conjugate_` to `_star_left_conjugate_` and `_conjugate_'` to `_star_right_conjugate_` to avoid confusion since sometimes in some files it means `_ * _ * star _` and in others it means `star _ * _ * _`.
In particular,
`Algebra/Algebra/StrictPositivity`:
* `IsUnit.isStrictlyPositive_conjugate_iff` -> `IsUnit.isStrictlyPositive_star_right_conjugate_iff`
* `IsUnit.isStrictlyPositive_conjugate_iff'` -> `IsUnit.isStrictlyPositive_star_left_conjugate_iff`
`Algebra/Order/Star/Basic`:
* `conjugate_nonnneg` -> `star_left_conjugate_nonneg`
* `conjugate_nonneg'` -> `star_right_conjugate_nonneg`
* `conjugate_le_conjugate` -> `star_left_conjugate_le_conjugate`
* `conjugate_le_conjugate'` -> `star_right_conjugate_le_conjugate`
* `conjugate_lt_conjugate` -> `star_left_conjugate_lt_conjugate`
* `conjugate_lt_conjugate'` -> `star_right_conjugate_lt_conjugate`
* `conjugate_pos` -> `star_left_conjugate_pos`
* `conjugate_pos'` -> `star_right_conjugate_pos`
* `IsUnit.conjugate_nonneg_iff` -> `IsUnit.star_right_conjugate_nonneg_iff`
* `IsUnit.conjugate_nonneg_iff'` -> `IsUnit.star_left_conjugate_nonneg_iff`
`Analysis/CStarAlgebra/CFC/Order`:
* `CStarAlgebra.conjugate_le_norm_smul` -> `CStarAlgebra.star_left_conjugate_le_norm_smul`
* `CStarAlgebra.conjugate_le_norm_smul'` -> `CStarAlgebra.star_right_conjugate_le_norm_smul`
`LinearAlgebra/Matrix/PosDef`:
* `Matrix.IsUnit.posSemidef_conjugate_iff` -> `Matrix.IsUnit.posSemidef_star_right_conjugate_iff`
* `Matrix.IsUnit.posSemidef_conjugate_iff'` -> `Matrix.IsUnit.posSemidef_star_left_conjugate_iff`
* `Matrix.IsUnit.posDef_conjugate_iff` -> `Matrix.IsUnit.posDef_star_right_conjugate_iff`
* `Matrix.IsUnit.posDef_conjugate_iff'` -> `Matrix.IsUnit.posDef_star_left_conjugate_iff`
---
There are more to do, but will leave this for another PR.
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
label:t-algebra$ |
84/54 |
Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean |
7 |
4 |
['github-actions', 'j-loreaux', 'themathqueen'] |
nobody |
1-37332 1 day ago |
1-37332 1 day ago |
1-75652 1 day |
30675 |
erdOne author:erdOne |
feat(NumberTheory): order of inertia group = ramification index |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-number-theory
label:t-algebra$ |
71/1 |
Mathlib/NumberTheory/RamificationInertia/Galois.lean |
1 |
1 |
['github-actions'] |
nobody |
1-32108 1 day ago |
2-23679 2 days ago |
2-28562 2 days |
30697 |
themathqueen author:themathqueen |
chore(Algebra/Star/Unitary): rename `unitary.spectrum.unitary_conjugate` |
`unitary.spectrum.unitary_conjugate` and `unitary.spectrum.unitary_conjugate'` should be in the `_root_` namespace since they already have `unitary` in their name. We also rename them to `spectrum.unitary_star_conjugate_left` and `spectrum.unitary_star_conjugate_right` to match the renaming convention in #30692.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
easy
label:t-algebra$ |
11/6 |
Mathlib/Algebra/Star/Unitary.lean,Mathlib/LinearAlgebra/Matrix/HermitianFunctionalCalculus.lean |
2 |
5 |
['github-actions', 'themathqueen'] |
nobody |
1-30382 1 day ago |
2-4416 2 days ago |
2-4581 2 days |
30708 |
YaelDillies author:YaelDillies |
feat(Localization): `r / m` in the localisation is regular iff `r` is |
Also rename `IsLocalization.mk'_surjective` to `IsLocalization.exists_mk'_eq` because it takes the name of the lemma I need.
---
[](https://gitpod.io/from-referrer/)
|
|
87/69 |
Mathlib/Algebra/GCDMonoid/IntegrallyClosed.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicGeometry/SpreadingOut.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/RingTheory/Artinian/Ring.lean,Mathlib/RingTheory/ClassGroup.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Localization.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/LocalRing/LocalSubring.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Localization/AsSubring.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/Localization/Submodule.lean,Mathlib/RingTheory/RingHom/Finite.lean,Mathlib/RingTheory/RingHom/Surjective.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/SurjectiveOnStalks.lean,Mathlib/RingTheory/Trace/Quotient.lean |
33 |
1 |
['github-actions'] |
nobody |
1-27253 1 day ago |
1-46092 1 day ago |
1-46069 1 day |
30722 |
YaelDillies author:YaelDillies |
refactor: generalise `Set.eq_empty_of_isEmpty` |
We don't need to know that the full type is empty, but merely the set itself.
---
[](https://gitpod.io/from-referrer/)
|
|
10/12 |
Mathlib/Data/Set/Basic.lean,Mathlib/Topology/Category/Profinite/CofilteredLimit.lean |
2 |
2 |
['FormulaRabbit81', 'eric-wieser', 'github-actions'] |
nobody |
1-26919 1 day ago |
1-33697 1 day ago |
1-33674 1 day |
30632 |
YaelDillies author:YaelDillies |
chore: use `grw`, `gcongr` more, controversial version |
This is controversial because the style guide contains the "hypotheses left of colon" rule, but I claim this rule was written without pattern-matching in mind and should therefore be updated to include an exception.
Also delete a redundant instance.
---
[](https://gitpod.io/from-referrer/)
|
|
34/56 |
Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo2013Q5.lean,Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/RingTheory/PowerSeries/Order.lean,Mathlib/Topology/EMetricSpace/PairReduction.lean |
8 |
4 |
['JovanGerb', 'YaelDillies', 'github-actions'] |
nobody |
1-26263 1 day ago |
4-32635 4 days ago |
4-32612 4 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 |
12 |
['JovanGerb', 'fpvandoorn', 'github-actions'] |
JovanGerb assignee:JovanGerb |
1-25856 1 day ago |
19-16716 19 days ago |
19-16694 19 days |
30678 |
YaelDillies author:YaelDillies |
refactor(Algebra/Quaternion): intermediate `Module` instance |
This `Module` instance allows me to not ungeneralise the `NoZeroSMulDivisors R ℍ[R,c₁,c₂,c₃]` in #30563.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
45/29 |
Mathlib/Algebra/Quaternion.lean |
1 |
20 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
1-22638 1 day ago |
1-44060 1 day ago |
1-68800 1 day |
27645 |
bjornsolheim author:bjornsolheim |
feat(Geometry/Convex/Cone): add pointed cone tensor products |
Define the minimal and maximal tensor product of pointed cones.
Prove that the minimal tensor product is less than or equal to the maximal tensor product.
---
- [ ] depends on: #25292
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
new-contributor
|
123/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Cone/TensorProduct.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
1-22348 1 day ago |
1-22350 1 day ago |
1-24152 1 day |
30441 |
linesthatinterlace author:linesthatinterlace |
fix(Data/List/Sort): Deprecate and replace `List.Sorted` |
Deprecates `Sorted` and defines new special-case predicates to be used for preorders.
---
`List.Sorted` is essentially an irrelevant definition, as it is identical to List.Pairwise, and we have some results about Sorted which also always apply to Pairwise or do so under certain conditions (and vice versa). We also commonly use Sorted to talk specifically about `<` and `<=`, which can be somewhat unwieldy.
This PR deprecates `Sorted` (so that there should now be no non-deprecated definitions under that namespace), and adds in `SortedLE`, `SortedLT`, `SortedGE` and `SortedGT`, which are defined analogously to `List.Nodup` for Preorders (List.Nodup is a good example of somewhere where using a special case of Pairwise works well). The vision is that API for these can be created together and for many purposes will suffice.
`insertionSort` has now been moved to be independent of any of this, though theorems are provided showing that it does link to these predicates in a linear order.
[](https://gitpod.io/from-referrer/)
|
|
770/521 |
Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/Convex/BetweenList.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean,Mathlib/Data/Fin/Tuple/Sort.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/NodupEquivFin.lean,Mathlib/Data/List/OfFn.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/Multiset/Sort.lean,Mathlib/Data/Nat/BitIndices.lean,Mathlib/Data/Nat/Factors.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean,Mathlib/Logic/Equiv/Finset.lean,Mathlib/Logic/Equiv/Multiset.lean,Mathlib/NumberTheory/ADEInequality.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/Order/JordanHolder.lean,Mathlib/Order/Synonym.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/CantorNormalForm.lean,Mathlib/Tactic/Simproc/Factors.lean,Mathlib/Topology/Category/Profinite/Nobeling/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling/Span.lean |
25 |
49 |
['github-actions', 'linesthatinterlace', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
nobody |
1-20098 1 day ago |
1-43298 1 day ago |
7-35890 7 days |
28818 |
SnirBroshi author:SnirBroshi |
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.kerLift f` and adds a few more theorems about it.
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
new-contributor
|
34/16 |
Counterexamples/AharoniKorman.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/Topology/Separation/Hausdorff.lean |
4 |
32 |
['SnirBroshi', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky'] |
pechersky assignee:pechersky |
1-18477 1 day ago |
1-18477 1 day ago |
53-47766 53 days |
29881 |
joelriou author:joelriou |
refactor(CategoryTheory/ObjectProperty): IsClosedUnderLimitsOfShape |
This PR renames `ClosedUnderLimitsOfShape` as `ObjectProperty.IsClosedUnderLimitsOfShape`, and make it a typeclass.
The stability condition of a property `P` by (co)limits of shape `J` is now expressed as `P.colimitsOfShape J ≤ P`. This facilitates the connection with the relatively new API `ColimitPresentation` #29382 (and the related `ObjectProperty.ColimitOfShape`).
By using a typeclass for the stability condition, it will be possible to add instances `HasLimitsOfShape` instances for fullsubcategories.
This also makes the design more parallel to what we have for the stability under (co)limits of `MorphismProperty`.
---
- [x] depends on: #29903
- [x] depends on: #29851
- [x] depends on: #29843
- [x] depends on: #29849
[](https://gitpod.io/from-referrer/)
|
large-import
t-category-theory
|
254/167 |
Mathlib/CategoryTheory/Limits/FullSubcategory.lean,Mathlib/CategoryTheory/Limits/Indization/Category.lean,Mathlib/CategoryTheory/Limits/Indization/Equalizers.lean,Mathlib/CategoryTheory/Limits/MorphismProperty.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/ColimitsOfShape.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsOfShape.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean |
8 |
7 |
['github-actions', 'jcommelin', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
1-16608 1 day ago |
5-12793 5 days ago |
7-78142 7 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* |
t-category-theory |
242/0 |
Mathlib.lean,Mathlib/CategoryTheory/Localization/Bifunctor.lean,Mathlib/CategoryTheory/Localization/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Multifunctor.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean |
6 |
21 |
['dagurtomas', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
TwoFX assignee:TwoFX |
1-14398 1 day ago |
1-15104 1 day ago |
43-4652 43 days |
30730 |
JovanGerb author:JovanGerb |
feat: new `by_cases!` tactic |
This PR defines the `by_cases! h : p` tactic, which is a macro for `by_cases h : p` followed by a `try push_neg at h` in the second goal. We use `try push_neg` instead of `push_neg` to make the tactic also succeed when no negation is pushed. Should there maybe be an optional linter telling you to use `by_cases` instead if possible?
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
33/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ByCases.lean,scripts/noshake.json |
4 |
1 |
['github-actions'] |
nobody |
1-10235 1 day ago |
1-12799 1 day ago |
1-12840 1 day |
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 |
14 |
['JovanGerb', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] |
alexjbest assignee:alexjbest |
1-6292 1 day ago |
1-6328 1 day ago |
44-66071 44 days |
30733 |
harahu author:harahu |
doc(Combinatorics): spell cliquefree as clique-free |
This change was initially suggested to me by Codex, as part of #30621, but it made sense to do this as a free-standing PR, since this change requires some justification, and this PR provides just that.
The fact that Codex is encouraging this change does not mean much on its own, so I did my best to check the literature. Searching on Google Scholar yields a mere [four results](https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=%22cliquefree%22) for "cliquefree" and [423 results](https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=%22clique-free%22) for "clique-free". Based on these results, I think it is safe to say that "cliquefree" is quite idiosyncratic, and should be avoided.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
12/12 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean |
4 |
1 |
['github-actions'] |
nobody |
1-4459 1 day ago |
1-4460 1 day ago |
1-4504 1 day |
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 |
1-3857 1 day ago |
13-48129 13 days ago |
48-41343 48 days |
30595 |
winstonyin author:winstonyin |
feat: $C^n$ implicit function theorem |
I formalise a proof that the implicit function obtained from a $C^n$ implicit equation ($n \geq 1$) is $C^n$. Roughly speaking, given an equation $f : E \times F \to F$ that is smooth at $(a,b) : E\times F$ and whose derivative $f'$ is in some sense non-singular, then there exists a function $\phi : E \to F$ such that $\phi(a) = b$, $f(x, \phi(x)) = f(a,b)$ for all $x$ in a neighbourhood of $a$, and $\phi$ is $C^n$ at $a$.
The current implicit function theorem in Mathlib is quite general and not directly applicable to many familiar scenarios. The statements added by this PR correspond to, e.g., the way the theorem is described on Wikipedia, and will be directly useful for an upcoming formalisation of the smoothness theorem for flows of ODEs.
- [x] depends on: #30607
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-analysis
|
145/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean |
2 |
21 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'winstonyin'] |
grunweg assignee:grunweg |
1-2902 1 day ago |
1-2902 1 day ago |
3-78085 3 days |
24614 |
JovanGerb author:JovanGerb |
chore: rename field `inf` to `min` in `Lattice` |
As suggested by @eric-wieser, this PR renames the `sup` and `inf` fields in `Lattice` to `max` and `min`. This means that we now can extend `Lattice` and `LinearOrder` simultaneously without ending up with duplicate fields. This should be implemented in a future PR for existing classes like `CompleteLinearOrder`.
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60sup.60.2F.60inf.60.20or.20.60max.60.2F.60min.60.20for.20set.20interval.20lemmas.3F)
---
[](https://gitpod.io/from-referrer/)
|
t-order |
181/187 |
Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Ring/Idempotent.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/Convex/SimplicialComplex/Basic.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/NormedSpace/ENormedSpace.lean,Mathlib/Analysis/NormedSpace/MStructure.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/CategoryTheory/Subpresheaf/Basic.lean,Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/PEquiv.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Semiquot.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Sum/Lattice.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Order/BooleanSubalgebra.lean,Mathlib/Order/Booleanisation.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/Concept.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Copy.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Hom/Order.lean,Mathlib/Order/Ideal.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/Preorder/Finsupp.lean,Mathlib/Order/PropInstances.lean,Mathlib/Order/Sublattice.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Process/Filtration.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/RingTheory/UniqueFactorizationDomain/FactorSet.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Group/GroupTopology.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Category/TopCat/OpenNhds.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Basic.lean |
84 |
14 |
['JovanGerb', 'bryangingechen', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] |
nobody |
0-86177 23 hours ago |
1-5704 1 day ago |
3-4944 3 days |
26129 |
LessnessRandomness author:LessnessRandomness |
feat(Geometry/Euclidean/Angle/Unoriented): triangle inequality for angles |
This PR continues the work from #24206.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24206 |
new-contributor
t-euclidean-geometry
|
202/15 |
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 |
83 |
['JovanGerb', 'LessnessRandomness', 'Timeroot', 'github-actions', 'jsm28', 'mathlib4-merge-conflict-bot', 'themathqueen'] |
jsm28 assignee:jsm28 |
0-84261 23 hours ago |
1-15709 1 day ago |
121-84684 121 days |
30694 |
themathqueen author:themathqueen |
chore(Analysis/CStarAlgebra/CFC/Order): relate section to strict positivity |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
23/20 |
Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean |
2 |
1 |
['github-actions'] |
nobody |
0-84036 23 hours ago |
2-6828 2 days ago |
2-6870 2 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 |
2 |
['erdOne', 'github-actions'] |
erdOne assignee:erdOne |
0-81023 22 hours ago |
17-5715 17 days ago |
17-5750 17 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 |
122/94 |
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/Combinatorics/Extremal/RuzsaSzemeredi.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/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Tactic/GCongr/Core.lean,MathlibTest/GCongr/inequalities.lean |
22 |
7 |
['JovanGerb', 'Vierkantor', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
0-76704 21 hours ago |
11-29226 11 days ago |
68-72660 68 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$ |
297/1 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Factors.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Splits.lean |
4 |
43 |
['erdOne', 'github-actions', 'kckennylau', 'tb65536'] |
erdOne assignee:erdOne |
0-73539 20 hours ago |
16-82598 16 days ago |
16-82576 16 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'] |
pechersky assignee:pechersky |
0-73121 20 hours ago |
27-8177 27 days ago |
45-4373 45 days |
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'] |
erdOne assignee:erdOne |
0-73120 20 hours ago |
13-6397 13 days ago |
14-13405 14 days |
30485 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Incenter): touchpoints are not vertices |
Add lemmas that touchpoints of a simplex do not equal any of the vertices (in two or more dimensions, this isn't true for a 1-simplex).
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
27/0 |
Mathlib/Geometry/Euclidean/Incenter.lean |
1 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
0-73119 20 hours ago |
8-73625 8 days ago |
8-73602 8 days |
30490 |
urkud author:urkud |
feat: derivative along the Lie bracket of vector fields |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
55/1 |
Mathlib/Analysis/Calculus/VectorField.lean |
1 |
1 |
['github-actions'] |
j-loreaux assignee:j-loreaux |
0-73115 20 hours ago |
8-63764 8 days ago |
8-63802 8 days |
30494 |
kebekus author:kebekus |
feat: behaviour of Nevanlinna functions under multiplication |
Establish the behavior of Nevanlinna functions under multiplication.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. The formula established here is part of a larger package discussing the behavior of the Nenvanlinna height under algebraic manipulations of the functions.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
236/0 |
Mathlib/Analysis/Complex/ValueDistribution/CharacteristicFunction.lean,Mathlib/Analysis/Complex/ValueDistribution/CountingFunction.lean,Mathlib/Analysis/Complex/ValueDistribution/ProximityFunction.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/Topology/LocallyFinsupp.lean |
5 |
1 |
['github-actions'] |
j-loreaux assignee:j-loreaux |
0-73114 20 hours ago |
8-55484 8 days ago |
8-57127 8 days |
30506 |
urkud author:urkud |
feat(ZeroLEOne): add instances for (indexed) product types |
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
10/0 |
Mathlib/Algebra/Order/ZeroLEOne.lean |
1 |
4 |
['YaelDillies', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
joneugster assignee:joneugster |
0-73112 20 hours ago |
8-18027 8 days ago |
8-25561 8 days |
30511 |
gasparattila author:gasparattila |
refactor: use `fun_prop` in `measurability` |
This PR changes the `measurability` tactic to use `fun_prop` for solving `Measurable` and similar goals. For backward compatibility, the `measurability` attribute is also changed to apply the `fun_prop` attribute.
---
[](https://gitpod.io/from-referrer/)
|
|
103/60 |
Mathlib/MeasureTheory/Constructions/BorelSpace/ContinuousLinearMap.lean,Mathlib/MeasureTheory/Constructions/Cylinders.lean,Mathlib/MeasureTheory/Function/SpecialFunctions/Inner.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Group/Arithmetic.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/Tactic/Measurability.lean |
10 |
3 |
['gasparattila', 'github-actions'] |
dwrensha assignee:dwrensha |
0-73111 20 hours ago |
8-14231 8 days ago |
8-15222 8 days |
30514 |
gasparattila author:gasparattila |
fix(Tactic/FunProp): use correct trace class name |
---
[](https://gitpod.io/from-referrer/)
|
t-meta
easy
|
1/1 |
Mathlib/Tactic/FunProp/Decl.lean |
1 |
2 |
['gasparattila', 'github-actions', 'plp127'] |
robertylewis assignee:robertylewis |
0-73110 20 hours ago |
8-13504 8 days ago |
8-13536 8 days |
30522 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Angle): angles with orthogonal projections |
Add some lemmas that angles involving orthogonal projections are right angles. The unoriented versions abstract something used multiple times in `Mathlib.Geometry.Euclidean.Angle.Bisector` (which is thus refactored to use the new lemmas); I expect the oriented versions may be of use in future in further oriented angle bisection lemmas building on top of #30477.
---
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
110/15 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Projection.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Projection.lean |
4 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
0-73109 20 hours ago |
7-74636 7 days ago |
7-74613 7 days |
30344 |
Deep0Thinking author:Deep0Thinking |
feat(MeasureTheory/Integral): add versions of `exists_eq_interval_average` and 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
|
290/41 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalAverage.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean |
3 |
9 |
['Deep0Thinking', 'github-actions', 'plp127'] |
RemyDegenne assignee:RemyDegenne |
0-69062 19 hours ago |
13-4087 13 days ago |
13-4119 13 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
maintainer-merge
new-contributor
|
10/0 |
Mathlib/Data/Finset/Card.lean |
1 |
10 |
['ShreckYe', 'github-actions', 'pechersky', 'themathqueen'] |
pechersky assignee:pechersky |
0-67200 18 hours ago |
1-76332 1 day ago |
74-71175 74 days |
30735 |
JovanGerb author:JovanGerb |
chore(without_cdot): remove all uses of `without_cdot` |
This PR removes all 2 uses of `without_cdot`. It is not needed anymore, because Lean automatically avoids accidental cdot capture. `without_cdot` may be deprecated in a future PR.
---
[](https://gitpod.io/from-referrer/)
|
t-meta
easy
|
2/2 |
Mathlib/Tactic/CongrM.lean,Mathlib/Tactic/Use.lean |
2 |
1 |
['github-actions'] |
nobody |
0-62486 17 hours ago |
0-62486 17 hours ago |
0-81437 22 hours |
30729 |
kebekus author:kebekus |
feat: elementary lemmas aiding computations with `log⁺`, Mark II |
Add several elementary lemmas aiding computations with log⁺. Improve the docstrings a little.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
37/7 |
Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean |
1 |
7 |
['eric-wieser', 'github-actions', 'kebekus'] |
nobody |
0-60239 16 hours ago |
1-15966 1 day ago |
1-16004 1 day |
30400 |
Equilibris author:Equilibris |
feat(Data/PFunctor): make M.corec' universe generic |
Previously `corec'` required the generating type reside in the same universe as the constructed object.
This change corrects this by separating the universes.
As corec takes the parameter (g : β → P (α ::: β)), (where α is a TypeVec.{u} and β is a Type u) it is forced into the same universe by how the TypeVec construction works. This means corec cant be generalised by this construction.
---
A super simple change to make `corec'` univ generic.
```lean
-- was
def MvPFunctor.M.corec'.{u} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type u} (g₀ : β → P.A)
(g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _
-- becomes
def MvPFunctor.M.corec'.{u, v} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type v} (g₀ : β → P.A)
(g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _
```
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
easy
|
5/5 |
Mathlib/Data/PFunctor/Multivariate/M.lean |
1 |
6 |
['Equilibris', 'alexkeizer', 'github-actions', 'vihdzp'] |
nobody |
0-38959 10 hours ago |
11-26565 11 days ago |
11-26608 11 days |
30584 |
xroblot author:xroblot |
feat(RingTheory): add `NormalClosure` |
---
|
t-ring-theory |
133/0 |
Mathlib.lean,Mathlib/RingTheory/NormalClosure.lean |
2 |
8 |
['github-actions', 'riccardobrasca', 'xroblot'] |
nobody |
0-38794 10 hours ago |
5-35587 5 days ago |
5-35582 5 days |
30742 |
RemyDegenne author:RemyDegenne |
feat: Lipschitz function criterion for weak convergence of probability measures |
Weak convergence of probability measures is equivalent to the property that the integrals of every bounded Lipschitz function converge to the integral of the function against the limit measure.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
102/1 |
Mathlib/MeasureTheory/Measure/HasOuterApproxClosed.lean,Mathlib/MeasureTheory/Measure/Portmanteau.lean |
2 |
1 |
['github-actions'] |
nobody |
0-34016 9 hours ago |
0-48989 13 hours ago |
0-49032 13 hours |
30540 |
RemyDegenne author:RemyDegenne |
feat: convergence in distribution and continuous mapping theorem |
- Define convergence in distribution of random variables: this is the weak convergence of their laws.
- Prove the continuous mapping theorem for convergence in distribution and continuous functions.
---
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
97/0 |
Mathlib.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,docs/1000.yaml |
3 |
3 |
['github-actions', 'sgouezel'] |
nobody |
0-34008 9 hours ago |
0-49520 13 hours ago |
2-37120 2 days |
30749 |
harahu author:harahu |
doc(Algebra): a collection of nontrivial typo fixes |
This is a collection of typo fixes suggested to me by Codex. I decided to split these changes out of #30669, because I feel none of these are completely trivial to review, mostly because they require inspecting the context of the text as opposed to just the text itself.
I've manually reviewed all of them to the best of my abilities and I'm reasonably sure they are all correct, and that they represent an improvement over the status quo. However, I am not an expert in Algebra, so please review with care.
I suspect that there might still be quite a wide span in the difficulty of reviewing the changes in this PR, but I don't have a strong intuition for which changes herein might still be seen as relatively easy to review. I'm open to splitting this PR further should any reviewer think that is a good idea.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
14/13 |
Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomologicalFunctor.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Lie/CartanExists.lean |
10 |
1 |
['github-actions'] |
nobody |
0-33204 9 hours ago |
0-33225 9 hours ago |
0-34383 9 hours |
30666 |
erdOne author:erdOne |
feat(NumberTheory): every number field has a ramified prime |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-number-theory
label:t-algebra$ |
190/20 |
Mathlib.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean |
6 |
10 |
['erdOne', 'github-actions', 'xroblot'] |
nobody |
0-33024 9 hours ago |
2-23686 2 days ago |
2-65330 2 days |
27552 |
Equilibris author:Equilibris |
chore(Data/Typevec): Move variables into `variable` declaration in typevec |
This will be needed to allow `M.corec` to be generic across universes
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
new-contributor
easy
|
16/10 |
Mathlib/Data/TypeVec.lean |
1 |
16 |
['Equilibris', 'eric-wieser', 'github-actions', 'pechersky', 'plp127'] |
pechersky assignee:pechersky |
0-32046 8 hours ago |
0-32046 8 hours ago |
64-80376 64 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 |
24 |
['ADedecker', 'D-Thomine', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
ADedecker assignee:ADedecker |
0-31761 8 hours ago |
10-55405 10 days ago |
55-37410 55 days |
30737 |
JovanGerb author:JovanGerb |
chore(MeasureTheory/Function/SimpleFunc): deprecate `SimpleFunc.coe_le` |
This PR deprecates the duplicate `MeasureTheory.SimpleFunc.coe_le` of `coe_le_coe` that seems to have accidentally slipped in via #18707.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
t-measure-probability
easy
|
3/5 |
Mathlib/MeasureTheory/Function/SimpleFunc.lean |
1 |
2 |
['github-actions', 'grunweg'] |
nobody |
0-31522 8 hours ago |
0-31522 8 hours ago |
0-77907 21 hours |
30592 |
kebekus author:kebekus |
feat: upgrade the log-counting function of divisors to morphism of Z-modules |
Observe that the log-counting function of divisors is not just an additive map, but a morphism of Z-modules.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. The formula established here is part of a larger package discussing the behavior of the Nenvanlinna height under algebraic manipulations of the functions.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
easy
|
12/2 |
Mathlib/Analysis/Complex/ValueDistribution/CountingFunction.lean |
1 |
5 |
['github-actions', 'kebekus', 'loefflerd', 'wwylele'] |
nobody |
0-30977 8 hours ago |
6-9281 6 days ago |
6-10852 6 days |
30593 |
euprunin author:euprunin |
chore(Data/Finset): golf `powersetCard_succ_insert` using `grind` |
---
Show trace profiling of powersetCard_succ_insert : 27 ms before, 54 ms after
### Trace profiling of `powersetCard_succ_insert` before PR 30593
```diff
diff --git a/Mathlib/Data/Finset/Powerset.lean b/Mathlib/Data/Finset/Powerset.lean
index 360948612e..cdf67a5be6 100644
--- a/Mathlib/Data/Finset/Powerset.lean
+++ b/Mathlib/Data/Finset/Powerset.lean
@@ -218,6 +218,7 @@ theorem powersetCard_eq_filter {n} {s : Finset α} :
ext
simp [mem_powersetCard]
+set_option trace.profiler true in
theorem powersetCard_succ_insert [DecidableEq α] {x : α} {s : Finset α} (h : x ∉ s) (n : ℕ) :
powersetCard n.succ (insert x s) =
powersetCard n.succ s ∪ (powersetCard n s).image (insert x) := by
```
```
ℹ [670/670] Built Mathlib.Data.Finset.Powerset (1.2s)
info: Mathlib/Data/Finset/Powerset.lean:222:0: [Elab.async] [0.027673] elaborating proof of Finset.powersetCard_succ_insert
[Elab.definition.value] [0.026806] Finset.powersetCard_succ_insert
[Elab.step] [0.026396]
rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter]
congr
rw [powersetCard_eq_filter, filter_image]
congr 1
ext t
simp only [mem_powerset, mem_filter, and_congr_right_iff]
intro ht
have : x ∉ t := fun H => h (ht H)
simp [card_insert_of_notMem this]
[Elab.step] [0.026387]
rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter]
congr
rw [powersetCard_eq_filter, filter_image]
congr 1
ext t
simp only [mem_powerset, mem_filter, and_congr_right_iff]
intro ht
have : x ∉ t := fun H => h (ht H)
simp [card_insert_of_notMem this]
[Elab.step] [0.010184] congr
Build completed successfully (670 jobs).
```
### Trace profiling of `powersetCard_succ_insert` after PR 30593
```diff
diff --git a/Mathlib/Data/Finset/Powerset.lean b/Mathlib/Data/Finset/Powerset.lean
index 360948612e..a4c6b0e1f2 100644
--- a/Mathlib/Data/Finset/Powerset.lean
+++ b/Mathlib/Data/Finset/Powerset.lean
@@ -218,18 +218,12 @@ theorem powersetCard_eq_filter {n} {s : Finset α} :
ext
simp [mem_powersetCard]
+set_option trace.profiler true in
theorem powersetCard_succ_insert [DecidableEq α] {x : α} {s : Finset α} (h : x ∉ s) (n : ℕ) :
powersetCard n.succ (insert x s) =
powersetCard n.succ s ∪ (powersetCard n s).image (insert x) := by
rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter]
- congr
- rw [powersetCard_eq_filter, filter_image]
- congr 1
- ext t
- simp only [mem_powerset, mem_filter, and_congr_right_iff]
- intro ht
- have : x ∉ t := fun H => h (ht H)
- simp [card_insert_of_notMem this]
+ grind
@[simp]
lemma powersetCard_nonempty : (powersetCard n s).Nonempty ↔ n ≤ s.card := by
```
```
ℹ [670/670] Built Mathlib.Data.Finset.Powerset (1.1s)
info: Mathlib/Data/Finset/Powerset.lean:222:0: [Elab.async] [0.054375] elaborating proof of Finset.powersetCard_succ_insert
[Elab.definition.value] [0.053777] Finset.powersetCard_succ_insert
[Elab.step] [0.053567]
rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter]
grind
[Elab.step] [0.053561]
rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter]
grind
[Elab.step] [0.050257] grind
Build completed successfully (670 jobs).
```
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
|
1/8 |
Mathlib/Data/Finset/Powerset.lean |
1 |
5 |
['JovanGerb', 'github-actions', 'grunweg', 'pechersky'] |
nobody |
0-30821 8 hours ago |
5-44829 5 days ago |
6-3797 6 days |
30589 |
euprunin author:euprunin |
chore(Data/List/Perm): golf `Perm.bagInter_right` using `grind` |
---
Show trace profiling of Perm.bagInter_right : 43 ms before, 134 ms after
### Trace profiling of `Perm.bagInter_right` before PR 30589
```diff
diff --git a/Mathlib/Data/List/Perm/Lattice.lean b/Mathlib/Data/List/Perm/Lattice.lean
index 96c0389c29..b71bc44f7f 100644
--- a/Mathlib/Data/List/Perm/Lattice.lean
+++ b/Mathlib/Data/List/Perm/Lattice.lean
@@ -26,6 +26,7 @@ open Perm (swap)
variable [DecidableEq α]
+set_option trace.profiler true in
theorem Perm.bagInter_right {l₁ l₂ : List α} (t : List α) (h : l₁ ~ l₂) :
l₁.bagInter t ~ l₂.bagInter t := by
induction h generalizing t with
```
```
ℹ [454/454] Built Mathlib.Data.List.Perm.Lattice (769ms)
info: Mathlib/Data/List/Perm/Lattice.lean:30:0: [Elab.async] [0.044658] elaborating proof of List.Perm.bagInter_right
[Elab.definition.value] [0.043499] List.Perm.bagInter_right
[Elab.step] [0.042758] induction h generalizing t with
| nil => simp
| cons x => by_cases x ∈ t <;> simp [*]
| swap x y =>
by_cases h : x = y
· simp [h]
by_cases xt : x ∈ t <;> by_cases yt : y ∈ t
· simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt]
| trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _)
[Elab.step] [0.042746] induction h generalizing t with
| nil => simp
| cons x => by_cases x ∈ t <;> simp [*]
| swap x y =>
by_cases h : x = y
· simp [h]
by_cases xt : x ∈ t <;> by_cases yt : y ∈ t
· simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt]
| trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _)
[Elab.step] [0.042738] induction h generalizing t with
| nil => simp
| cons x => by_cases x ∈ t <;> simp [*]
| swap x y =>
by_cases h : x = y
· simp [h]
by_cases xt : x ∈ t <;> by_cases yt : y ∈ t
· simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt]
| trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _)
[Elab.step] [0.034137]
by_cases h : x = y
· simp [h]
by_cases xt : x ∈ t <;> by_cases yt : y ∈ t
· simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt]
[Elab.step] [0.034116]
by_cases h : x = y
· simp [h]
by_cases xt : x ∈ t <;> by_cases yt : y ∈ t
· simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt, mt mem_of_mem_erase]
· simp [xt, yt]
[Elab.step] [0.010183] · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
[Elab.step] [0.010173] simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
[Elab.step] [0.010168] simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
[Elab.step] [0.010161] simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm,
swap]
Build completed successfully (454 jobs).
```
### Trace profiling of `Perm.bagInter_right` after PR 30589
```diff
diff --git a/Mathlib/Data/List/Perm/Lattice.lean b/Mathlib/Data/List/Perm/Lattice.lean
index 96c0389c29..e2a27287d8 100644
--- a/Mathlib/Data/List/Perm/Lattice.lean
+++ b/Mathlib/Data/List/Perm/Lattice.lean
@@ -26,20 +26,10 @@ open Perm (swap)
variable [DecidableEq α]
+set_option trace.profiler true in
theorem Perm.bagInter_right {l₁ l₂ : List α} (t : List α) (h : l₁ ~ l₂) :
l₁.bagInter t ~ l₂.bagInter t := by
- induction h generalizing t with
- | nil => simp
- | cons x => by_cases x ∈ t <;> simp [*]
- | swap x y =>
- by_cases h : x = y
- · simp [h]
- by_cases xt : x ∈ t <;> by_cases yt : y ∈ t
- · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap]
- · simp [xt, yt, mt mem_of_mem_erase]
- · simp [xt, yt, mt mem_of_mem_erase]
- · simp [xt, yt]
- | trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _)
+ induction h generalizing t with grind
theorem Perm.bagInter_left (l : List α) {t₁ t₂ : List α} (p : t₁ ~ t₂) :
l.bagInter t₁ = l.bagInter t₂ := by
```
```
ℹ [454/454] Built Mathlib.Data.List.Perm.Lattice (848ms)
info: Mathlib/Data/List/Perm/Lattice.lean:30:0: [Elab.async] [0.134701] elaborating proof of List.Perm.bagInter_right
[Elab.definition.value] [0.133799] List.Perm.bagInter_right
[Elab.step] [0.133622] induction h generalizing t with grind
[Elab.step] [0.133610] induction h generalizing t with grind
[Elab.step] [0.133599] induction h generalizing t with grind
[Elab.step] [0.052692] grind
[Elab.step] [0.064967] grind
info: Mathlib/Data/List/Perm/Lattice.lean:32:34: [Elab.async] [0.017325] Lean.addDecl
[Kernel] [0.017314] ✅️ typechecking declarations [List.Perm.bagInter_right._proof_1_3]
Build completed successfully (454 jobs).
```
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
|
1/12 |
Mathlib/Data/List/Perm/Lattice.lean |
1 |
9 |
['JovanGerb', 'euprunin', 'github-actions', 'grunweg', 'pechersky'] |
grunweg assignee:grunweg |
0-30744 8 hours ago |
5-44963 5 days ago |
5-72433 5 days |
30721 |
YaelDillies author:YaelDillies |
feat(ENNReal): equality from comparing with nnreals |
And rename the existing lemma as it is ambiguous.
---
[](https://gitpod.io/from-referrer/)
|
|
23/5 |
Mathlib/Data/ENNReal/Inv.lean,Mathlib/Order/WithBot.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean |
3 |
1 |
['FormulaRabbit81', 'github-actions'] |
nobody |
0-28422 7 hours ago |
1-34113 1 day ago |
1-34090 1 day |
30276 |
EtienneC30 author:EtienneC30 |
feat: computations with the matrix associated to a sesquilinear form |
---
- [ ] depends on: #30108
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
23/14 |
Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean |
2 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
0-28370 7 hours ago |
0-28372 7 hours ago |
1-84647 1 day |
30714 |
harahu author:harahu |
doc(Analysis): fix typos |
Found with help from Codex, curated by me.
I've tried to limit the PR to changes that are easy to verify. Should you find it difficult to review any particular part of this PR, know that I have nothing against trimming this PR down in favor of smaller free-standing PRs for the difficult-to-review parts.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
15/15 |
Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Polynomial/Basic.lean,Mathlib/Analysis/Real/OfDigits.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Deriv.lean |
7 |
1 |
['github-actions'] |
nobody |
0-27017 7 hours ago |
1-38818 1 day ago |
1-40741 1 day |
30710 |
harahu author:harahu |
doc(RingTheory): fix typos |
Found with help from Codex, curated by me.
I've tried to limit the PR to changes that are easy to verify. Should you find it difficult to review any particular part of this PR, know that I have nothing against trimming this PR down in favor of smaller free-standing PRs for the difficult-to-review parts.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
13/13 |
Mathlib/RingTheory/DividedPowers/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/PowerSeries/Restricted.lean,Mathlib/RingTheory/Valuation/Minpoly.lean |
9 |
1 |
['github-actions'] |
nobody |
0-26990 7 hours ago |
1-42675 1 day ago |
1-42909 1 day |
30669 |
harahu author:harahu |
doc(Algebra): typo fixes |
Found with help from Codex, curated by me.
I've tried to limit the PR to changes that are easy to verify. Should you find it difficult to review any particular part of this PR, know that I have nothing against trimming this PR down in favor of smaller free-standing PRs for the difficult-to-review parts.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
48/48 |
Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/CharZero/AddMonoidHom.lean,Mathlib/Algebra/Field/Action/ConjAct.lean,Mathlib/Algebra/Field/Power.lean,Mathlib/Algebra/Field/ULift.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/Factorizations/Basic.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCone.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Algebra/Homology/HomotopyCofiber.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/InvariantForm.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Algebra/Polynomial/Lifts.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/SkewMonoidAlgebra/Single.lean,Mathlib/Algebra/SkewMonoidAlgebra/Support.lean |
32 |
1 |
['github-actions'] |
nobody |
0-26971 7 hours ago |
2-35213 2 days ago |
2-39861 2 days |
30398 |
joelriou author:joelriou |
feat(Algebra/Category/ModuleCat/Sheaf): `O_S ⟶ f_* O_X` and `f^* O_S ≅ O_X` |
---
- [x] depends on: #30403
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry
t-category-theory
|
193/4 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Products.lean |
5 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-24737 6 hours ago |
0-24757 6 hours ago |
0-24752 6 hours |
29517 |
pechersky author:pechersky |
feat(RingTheory/Torsion): torsion = union of roots of unity |
with additional API for Associates and rootsOfUnity sups
---
[](https://gitpod.io/from-referrer/)
- [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 |
11 |
['chrisflav', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
chrisflav assignee:chrisflav |
0-24209 6 hours ago |
0-24236 6 hours ago |
27-51856 27 days |
29072 |
yury-harmonic author:yury-harmonic |
feat({Nat,Int}/ModEq): add lemmas |
---
I'm not sure that I named these lemmas correctly. Suggestions about better names are welcome!
[](https://gitpod.io/from-referrer/)
|
t-data |
189/26 |
Mathlib/Data/Int/ModEq.lean,Mathlib/Data/Nat/ModEq.lean |
2 |
7 |
['eric-wieser', 'github-actions', 'urkud', 'yury-harmonic'] |
nobody |
0-22890 6 hours ago |
0-22951 6 hours ago |
0-78158 21 hours |
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 |
150/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/RingTheory/Finiteness/ModuleFinitePresentation.lean,Mathlib/RingTheory/Polynomial/Basic.lean |
5 |
16 |
['chrisflav', 'erdOne', 'github-actions'] |
erdOne assignee:erdOne |
0-19695 5 hours ago |
33-15377 1 month ago |
33-15355 33 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 |
0-19629 5 hours ago |
64-30291 2 months ago |
66-24316 66 days |
30389 |
euprunin author:euprunin |
fix: correctly apply `hint` priority (was always set to default 1000 due to a bug) |
Fixes #29831.
In addition to fixing the bug, this PR also adjusts the (now-working) tactic priorities to ensure that:
* `bound` is tested _after_ `aesop` (`bound` calls `aesop` and is therefore stronger)
* `group` is tested _after_ `ring` (`group` calls `ring` and is therefore stronger)
A bug in the parsing code below caused the priority value to be ignored, resulting in all hints using the default priority of 1000 regardless of the `register_hint` priority parameter:
```lean
elab (name := registerHintStx)
"register_hint" p:("(" "priority" ":=" num ")")? tac:tactic : command =>
liftTermElabM do
-- remove comments
let prio := match p with
| some stx =>
match stx.raw[3]?.bind Syntax.isNatLit? with
| some n => n
| none => 1000
| none => 1000
let tac : TSyntax `tactic := ⟨tac.raw.copyHeadTailInfoFrom .missing⟩
addHint prio tac
```
Fixed by simplifying the syntax to take a mandatory numeric priority argument and extracting it directly via `prio.raw.isNatLit?`, removing the index-based parsing and the silent fallback to 1000.
---
[](https://gitpod.io/from-referrer/)
|
t-meta
bug
|
81/46 |
Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/Field.lean,Mathlib/Tactic/FieldSimp.lean,Mathlib/Tactic/Finiteness.lean,Mathlib/Tactic/GCongr.lean,Mathlib/Tactic/Group.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linarith.lean,Mathlib/Tactic/NoncommRing.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Ring/RingNF.lean,MathlibTest/hint.lean |
16 |
5 |
['BoltonBailey', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
0-18539 5 hours ago |
0-18558 5 hours ago |
11-53593 11 days |
28241 |
alreadydone author:alreadydone |
chore(Data): `SetLike Finset` |
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
|
57/67 |
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/Additive/VerySmallDoubling.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 |
28 |
30 |
['Vierkantor', 'alreadydone', 'eric-wieser', 'fpvandoorn', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
pechersky assignee:pechersky |
0-16500 4 hours ago |
2-11226 2 days ago |
50-76477 50 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.
**Update 2**
Addressed reviewer feedback with the following improvements:
- Simplify `IrreducibleCloseds.map` to work with any continuous function
(no longer requires closed maps)
- Add coe_map lemma
- Rename lemmas from `mapOfEmbedding_*` to `map_*_of_isEmbedding` for
consistency with Mathlib naming conventions
- Use `inferInstance` for PartialOrder instance on IrreducibleCloseds
- Merge variable declarations in Sets/Closeds.lean
- Add necessary imports (Topology.Defs.Induced)
- Open Topology namespace for cleaner code
- Remove unnecessary wrappers in 'Sets/Closeds.lean'
**Update 3**
Addressed and integrated reviewer feedback:
- Use IsInducing instead of IsEmbedding in dimension theorems
- Rename map_*_of_isEmbedding to map_*_of_isInducing
- Simplify map_injective_of_isInducing proof using SetLike.coe_injective
- Simplify map_strictMono_of_isInducing using Monotone.strictMono_of_injective
- Add deprecation alias for IsClosedEmbedding.topologicalKrullDim_le
- Remove redundant PartialOrder instance (already inferred)
The main theorem `topologicalKrullDim_subspace_le` remains unchanged.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge
new-contributor
t-topology
|
63/30 |
Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sets/Closeds.lean |
2 |
45 |
['ADA-Projects', 'erdOne', 'fpvandoorn', 'github-actions', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
0-14235 3 hours ago |
0-80750 22 hours ago |
22-28463 22 days |
25780 |
emilyriehl author:emilyriehl |
feat: the homotopy category functor preserves products |
This proves that the homotopy category construction defines a lax monoidal functor from simplicial sets to categories. In particular, simplicially enriched categories have quotient categorically enriched categories, which might be thought of as "homotopy bicategories."
Co-authored-by: Dominic Verity , Bhavik Mehta , Thomas Murrills , and Andrew Yang .
---
- [x] depends on: #27576
*This PR continues the work from #25010.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/25010* |
t-algebraic-topology
infinity-cosmos
t-category-theory
|
193/16 |
Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nerve.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Category/ULift.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/Order/Hom/Basic.lean |
10 |
15 |
['emilyriehl', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
joelriou assignee:joelriou |
0-13729 3 hours ago |
6-10161 6 days ago |
60-67803 60 days |
30269 |
joelriou author:joelriou |
refactor(CategoryTheory/Generator): use ObjectProperty instead of 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 |
447/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 |
7 |
['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
0-11984 3 hours ago |
0-11984 3 hours ago |
12-74567 12 days |
30652 |
urkud author:urkud |
chore: generalize an instance to `ContinuousConstSMul` |
---
Cleaning up old branches. I have no specific applications in mind right now.
[](https://gitpod.io/from-referrer/)
|
t-topology |
4/3 |
Mathlib/Topology/Algebra/Module/FiniteDimension.lean |
1 |
11 |
['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'urkud'] |
nobody |
0-9627 2 hours ago |
2-83223 2 days ago |
3-9789 3 days |
30754 |
Jlh18 author:Jlh18 |
feat (CategoryTheory/Comma/Over/Pushforward): define pushforwards |
Define what it means to be a pushforward, what it means to have pushforwards, and the pullback/pushforward adjunction when all pushforwards exist.
This is related to PRs #30375 and PR #29810
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
RFC
|
99/2 |
Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Pushforward.lean |
3 |
2 |
['github-actions', 'joelriou'] |
nobody |
0-5890 1 hour ago |
0-5890 1 hour ago |
0-15336 4 hours |
30753 |
JovanGerb author:JovanGerb |
chore: remove more instance fields |
This PR is a follow up on #30734, doing some cases that weren't done in that PR.
---
[](https://gitpod.io/from-referrer/)
|
|
56/136 |
Mathlib/Algebra/Ring/ULift.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Geometry/Convex/Cone/Basic.lean,Mathlib/NumberTheory/ArithmeticFunction.lean |
6 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
0-5284 1 hour ago |
0-5284 1 hour ago |
0-20945 5 hours |
30615 |
yury-harmonic author:yury-harmonic |
feat: better `norm_num` for `rpow` |
- Use recently added `Nat.nthRoot` to make `(a : ℝ) ^ (b : ℝ)` work for rational `a ≥ 0` and `b`.
- Simplify the logic by using `.eqTrans`.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
122/39 |
Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,MathlibTest/norm_num_rpow.lean |
2 |
12 |
['eric-wieser', 'github-actions', 'pechersky', 'yury-harmonic'] |
nobody |
0-4903 1 hour ago |
5-3392 5 days ago |
5-3451 5 days |
28837 |
yury-harmonic author:yury-harmonic |
feat(ValMinAbs): add lemmas |
---
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
|
24/6 |
Mathlib/Data/ZMod/ValMinAbs.lean |
1 |
10 |
['github-actions', 'pechersky', 'yury-harmonic'] |
pechersky assignee:pechersky |
0-4719 1 hour ago |
0-9162 2 hours ago |
55-68948 55 days |
28001 |
daefigueroa author:daefigueroa |
feat(Dynamics): add results on topologically transitive monoid actions |
We define topological transitivity for monoid actions on topological spaces, prove basic facts about topologically transitive actions and give some characterizations of topological transitivity.
---
This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025.
- [ ] depends on: #28000
[](https://gitpod.io/from-referrer/) |
new-contributor
t-dynamics
|
108/0 |
Mathlib.lean,Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/Transitive.lean |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
0-3287 54 minutes ago |
3-43668 3 days ago |
3-48223 3 days |
30758 |
Timeroot author:Timeroot |
chore: tag abs_inv and abs_div with grind= |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
2/1 |
Mathlib/Algebra/Order/Field/Basic.lean |
1 |
n/a |
['github-actions'] |
nobody |
0-3048 50 minutes ago |
unknown |
unknown |
30690 |
grunweg author:grunweg |
style(Order): fix whitespace |
Extracted from #30658. Found by extending the commandStart linter to proof bodies.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
69/69 |
Mathlib/Order/Basic.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Filter/Cocardinal.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/KonigLemma.lean,Mathlib/Order/Max.lean,Mathlib/Order/Minimal.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/SetIsMax.lean,Mathlib/Order/SetNotation.lean,Mathlib/Order/WithBot.lean |
14 |
1 |
['github-actions'] |
nobody |
0-2166 36 minutes ago |
2-16654 2 days ago |
2-16690 2 days |
30380 |
CBirkbeck author:CBirkbeck |
Ixx summation filters |
We prove some results about sums over intervals of the form Ixx which are needed for defining the Eisenstein series E2 (see #26014). We also define these as summation filters.
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-topology
|
241/3 |
Mathlib.lean,Mathlib/Data/Int/Interval.lean,Mathlib/NumberTheory/IntervalSums.lean,Mathlib/Order/Filter/AtTopBot/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Algebra/Monoid/Defs.lean |
6 |
45 |
['CBirkbeck', 'github-actions', 'loefflerd'] |
nobody |
0-1861 31 minutes ago |
5-18109 5 days ago |
6-8913 6 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 |
0-1618 26 minutes ago |
17-70637 17 days ago |
32-66717 32 days |
30681 |
fbarroero author:fbarroero |
feat(Analysis/SpecialFunctions/Log): log_prod for Lists and Multisets |
We add
```
lemma log_list_prod {l : List ℝ} (h : ∀ x ∈ l, x ≠ 0) : log l.prod = (l.map (fun x ↦ log x)).sum
```
and
```
lemma log_multiset_prod {s : Multiset ℝ} (h : ∀ x ∈ s, x ≠ 0) : log s.prod = (s.map (fun x ↦ log x)).sum
```
---
[](https://gitpod.io/from-referrer/)
|
|
29/11 |
Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/Probability/Moments/Basic.lean |
5 |
3 |
['eric-wieser', 'github-actions', 'riccardobrasca'] |
nobody |
0-267 4 minutes ago |
2-23521 2 days ago |
2-23498 2 days |