The mathlib review queue

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

This dashboard was last updated on: February 18, 2026 at 02:30 UTC

Review queue

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
33372 kex-y
author:kex-y
feat(Probability): Countable infimum of stopping times is a stopping time --- - [x] depends on: #33371 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability brownian 83/0 Mathlib/Probability/Process/Stopping.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] RemyDegenne
assignee:RemyDegenne
41-5340
1 month ago
44-43501
44 days ago
44-43279
44 days
27599 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define `CompleteEquipartiteSubgraph` Define the complete equipartite subgraphs in `r` parts each of size `t` in `G` as the `r` subsets of vertices each of size `t` such that vertices in distinct subsets are adjacent. In this case `Nonempty (G.CompleteEquipartiteSubgraph r t)` is equivalent to `completeEquipartiteGraph r t ⊑ G`, that is, finding `r` subsets of vertices each of size `t` in `G` such that vertices in distinct subsets are adjacent is equivalent to finding an injective homomorphism from `completeEquipartiteGraph r t` to `G`. --- - [x] depends on: #27597 - [x] depends on: #30287 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 173/7 Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean 1 34 ['YaelDillies', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] YaelDillies
assignee:YaelDillies
40-56311
1 month ago
40-55438
40 days ago
112-24895
112 days
31891 jsm28
author:jsm28
feat(Geometry/Euclidean/Sphere/OrthRadius): lemmas for setting up and using polars Add further lemmas about `orthRadius` that are of use in setting up and using poles and polars. In particular, `ncard_inter_orthRadius_eq_two_of_dist_lt_radius` is the key part of showing that, in two dimensions, there are exactly two tangents to a circle from a point outside that circle (where the points of tangency lie on the polar of the point from which the two tangents are drawn). --- Feel free to golf the proof of `ncard_inter_orthRadius_eq_two_of_dist_lt_radius`, it could probably be rather shorter. --- - [ ] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 261/7 Mathlib/Geometry/Euclidean/Sphere/OrthRadius.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean 2 27 ['eric-wieser', 'github-actions', 'jsm28', 'mathlib4-dependent-issues-bot'] JovanGerb
assignee:JovanGerb
37-9540
1 month ago
37-8745
37 days ago
87-82578
87 days
30112 gaetanserre
author:gaetanserre
feat(Probability.Kernel): add representation of kernel as a map of a uniform measure Add results about isolation of kernels randomness. In particular, it shows that one can write a Markov kernel as the map by a deterministic of a uniform measure on `[0, 1]`. It corresponds to Lemma 4.22 in "[Foundations of Modern Probability](https://link.springer.com/book/10.1007/978-3-030-61871-1)" by Olav Kallenberg, 2021. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 189/0 Mathlib.lean,Mathlib/MeasureTheory/Constructions/UnitInterval.lean,Mathlib/Probability/Kernel/Representation.lean 3 10 ['DavidLedvinka', 'RemyDegenne', 'gaetanserre', 'github-actions', 'mathlib4-merge-conflict-bot'] RemyDegenne
assignee:RemyDegenne
34-44829
1 month ago
34-43118
34 days ago
71-37289
71 days
34298 CoolRmal
author:CoolRmal
feat(MeasureTheory): Integral over Ioi tends to zero This PR proves that if `f` is integrable on `Ioi a`, then `∫ x in Ioi (b i), f x ∂μ` tends to zero as `b i` tends to infinity. This is an easy corollary of `intervalIntegral_tendsto_integral_Ioi`. --- - [x] depends on #34197 - [x] depends on #34289 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 20/0 Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean 1 1 ['github-actions'] thorimur
assignee:thorimur
22-5319
22 days ago
22-18312
22 days ago
25-72575
25 days
33458 NoneMore
author:NoneMore
feat(ModelTheory): add lifting for embeddings to languages with constants Prepare for a generalized Tarski-Vaught test with a set as input instead of a substructure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic new-contributor 35/0 Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/LanguageMap.lean 2 3 ['Citronhat', 'github-actions'] fpvandoorn
assignee:fpvandoorn
20-63781
20 days ago
20-62920
20 days ago
46-55231
46 days
33963 gasparattila
author:gasparattila
feat(Topology/UniformSpace/Closeds): completeness of `(Nonempty)Compacts` This PR generalizes the completeness result of `NonemptyCompacts` from metric spaces to uniform spaces. --- - [x] depends on: #34036 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 71/8 Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/UniformSpace/Closeds.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
20-51533
20 days ago
20-50686
20 days ago
31-33726
31 days
34268 gasparattila
author:gasparattila
feat(Topology/Sets): continuity of operations on `(Nonempty)Compacts` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 144/17 Mathlib/Topology/Sets/Compacts.lean,Mathlib/Topology/Sets/VietorisTopology.lean,Mathlib/Topology/UniformSpace/Closeds.lean 3 2 ['github-actions', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
20-50874
20 days ago
20-49335
20 days ago
26-19190
26 days
34270 gasparattila
author:gasparattila
feat(Topology/UniformSpace/Closeds): `(Nonempty)Compacts.toCloseds` is a closed embedding --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 36/35 Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/UniformSpace/Closeds.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
20-50382
20 days ago
20-49528
20 days ago
26-19442
26 days
34192 bwangpj
author:bwangpj
feat(MeasureTheory): mulEquivHaarChar_eq_one_of_compactSpace From FLT. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 16/0 Mathlib/MeasureTheory/Measure/Haar/MulEquivHaarChar.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] RemyDegenne
assignee:RemyDegenne
20-15647
20 days ago
20-14973
20 days ago
25-42938
25 days
34123 staroperator
author:staroperator
feat(Data/Set/Finite): finite distributivity for complete distributive lattices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 52/0 Mathlib/Data/Set/Finite/Lattice.lean 1 11 ['github-actions', 'plp127', 'staroperator'] bryangingechen
assignee:bryangingechen
20-5297
20 days ago
29-24193
29 days ago
29-46812
29 days
34092 staroperator
author:staroperator
feat(SetTheory/ZFC): properties of `ZFSet.omega` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 77/10 Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean 3 25 ['Komyyy', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator', 'vihdzp'] alreadydone
assignee:alreadydone
19-27271
19 days ago
19-26349
19 days ago
30-58627
30 days
34138 pfaffelh
author:pfaffelh
feat(MeasureTheory): Introduce `MassFunction α` giving rise to a `Measure α ⊤` Define `MassFunction α := α → ℝ≥0∞` Define `toMeasure (w : MassFunction α) : @Measure α ⊤` as a sum of diracs Show properties of the resulting objects This PR intends to start a more userfriendly interaction with probability mass functions (`PMF`). There are two main differences between `MassFunction` and `PMF`: * `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `MassFunction`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.) * The `toMeasure` function of `MassFunction` directly defines the measure as a sum of diracs, which immediately makes computations possible. Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 224/0 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/MassFunction.lean 4 10 ['DavidLedvinka', 'github-actions', 'metakunt', 'pfaffelh'] EtienneC30
assignee:EtienneC30
19-23766
19 days ago
19-20688
19 days ago
29-12969
29 days
33817 FlAmmmmING
author:FlAmmmmING
fix(Combinatorics/Enumerative/Schroder.lean): Fix the definition and theorem of smallSchroder. In the previous definition, the small Schröder numbers were defined as ```LaTeX s_0 = 1, s_1 = 1, s_2 = 1, s_3 = 3... ``` , which does not match the sequence listed in OEIS A006318. Moreover, this definition makes it difficult to correctly write the generating function for the small Schröder numbers. This PR fixes this issue. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import 61/39 Mathlib/Combinatorics/Enumerative/Schroder.lean 1 19 ['FlAmmmmING', 'github-actions', 'vihdzp'] awainverse
assignee:awainverse
19-5313
19 days ago
27-70713
27 days ago
38-21297
38 days
34227 stepan2698-cpu
author:stepan2698-cpu
feat: If sum of densities is at least one, the sumset covers the naturals Proves an outstanding TODO item from Mathlib.Combinatorics.Schnirelmann : shows that if the sum of two densities is at least one, the sumset covers the positive naturals. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/1 Mathlib/Combinatorics/Schnirelmann.lean 1 3 ['github-actions', 'grunweg', 'kbuzzard'] awainverse
assignee:awainverse
19-5310
19 days ago
27-7289
27 days ago
27-22082
27 days
34029 lua-vr
author:lua-vr
feat(Order/PartialSups): add exists_partialSups_eq In a linear order, there exists an index `j ≤ i` for which `partialSups f i = f j`. --- Adapted from a proof generated by Aristotle. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 20/0 Mathlib/Order/PartialSups.lean 1 1 ['github-actions', 'plp127'] bryangingechen
assignee:bryangingechen
18-45688
18 days ago
32-81754
32 days ago
32-81532
32 days
34028 floor-licker
author:floor-licker
feat(SimpleGraph): add max-flow/min-cut weak duality This PR introduces a basic s–t flow setup for undirected SimpleGraphs and proves the standard weak-duality inequality: for any feasible flow f and any s–t cut S, value f ≤ cutCapacity S. This is a small, self-contained lemma I extracted while working on larger graph-theoretic formalizations, in particular, results that will ultimately rely on a full max-flow/min-cut theorem. The full MFMC equality/existence statement is not included here. This is the weak-duality direction (∀ f S, value f ≤ cutCapacity S). t-combinatorics new-contributor 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/MaxFlowMinCut.lean 2 13 ['SnirBroshi', 'floor-licker', 'github-actions'] kmill
assignee:kmill
18-5320
18 days ago
22-44078
22 days ago
31-19156
31 days
33143 wwylele
author:wwylele
feat(PowerSeries): pentagonal number theorem The proof is split in two files: `Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean` for the algebraic part, and `Mathlib/RingTheory/PowerSeries/Pentagonal.lean` for the summability part. In the near future, I also plan to prove the real/complex version that branches off from the algebraic part. --- - [ ] depends on: #30436 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
331/1 Mathlib.lean,Mathlib/RingTheory/PowerSeries/Pentagonal.lean,Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean,docs/1000.yaml 4 18 ['copilot-pull-request-reviewer', 'github-actions', 'jcommelin', 'mathlib4-dependent-issues-bot', 'vihdzp', 'wwylele'] kex-y
assignee:kex-y
17-17463
17 days ago
19-18963
19 days ago
52-72216
52 days
34364 YuvalFilmus
author:YuvalFilmus
feat(Chebyshev/RootsExtrema): bound iterated derivatives of Chebyshev T on [-1, 1] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 72/4 Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/RootsExtrema.lean,Mathlib/RingTheory/Polynomial/Chebyshev.lean 2 12 ['YuvalFilmus', 'eric-wieser', 'github-actions'] eric-wieser
assignee:eric-wieser
17-17134
17 days ago
20-60705
20 days ago
24-45588
24 days
33520 NoneMore
author:NoneMore
feat(ModelTheory/ElementarySubstructures): add a variant of Tarski-Vaught test taking sets as input There should exist an `ElementarySubstructure.copy` such that we can directly bundle the set itself instaed of its closure as an elementary substructure. The other direction depends on #33458. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic new-contributor 55/0 Mathlib/ModelTheory/ElementarySubstructures.lean 1 3 ['Citronhat', 'NoneMore', 'github-actions'] awainverse
assignee:awainverse
17-5271
17 days ago
20-68733
20 days ago
45-52794
45 days
34521 huaizhangchu
author:huaizhangchu
feat(MeasureTheory): add measurableEmbedding_natCast This PR adds a lemma stating that the coercion from `ℕ` to `ℝ` is a measurable embedding. ```lean lemma measurableEmbedding_natCast : MeasurableEmbedding (Nat.cast : ℕ → ℝ) := Nat.isClosedEmbedding_coe_real.measurableEmbedding ``` This is useful for proving properties about discrete probability distributions on `ℕ` by lifting them to `ℝ` and will be used in #34435. t-measure-probability new-contributor 3/0 Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean 1 1 ['github-actions'] kex-y
assignee:kex-y
17-5263
17 days ago
20-42942
20 days ago
20-46218
20 days
33791 PhoenixIra
author:PhoenixIra
feat: Generalization of FixedPointApproximants to CompletePartialOrder --- This PR provides a generalization of FixedPointApproximants to CompletePartialOrder. Not every theorem can be generalized, as sometimes we require additional conditions (namely `x ≤ f x`) in order to guarantee that the set is directed and thus the supremum is well-defined. This is not necessary in a CompleteLattice. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 223/100 Mathlib/Order/CompletePartialOrder.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean 2 20 ['PhoenixIra', 'github-actions', 'vihdzp'] PhoenixIra and vihdzp
assignee:PhoenixIra assignee:vihdzp
16-56094
16 days ago
28-30448
28 days ago
28-30226
28 days
33928 jsm28
author:jsm28
feat(Combinatorics/Tiling/TileSet): indexed families of tiles Define the type `TileSet` for indexed families of tiles (in a discrete context), and some associated definitions (including `symmetryGroup`) and API lemmas. `TileSet` can be used for tilings of the whole space; for tilings of part of the space; for patches of tiles (extracted from a tiling by considering tiles meeting some set of points, or considered on their own without extracting from a tiling); for multiple tilings (covering the space more than once). In particular, the fact that people study multiple tilings provides a clear justification for using indexed families rather than sets of tiles, and basic definitions and API lemmas generally work for all these different uses of `TileSet` (sometimes with weak constraints such as tiles being finite, nonempty and only having finitely many tiles meeting any point of the space). Definitions for saying e.g. "this `TileSet` is a tiling of the whole space" are to be included in subsequent files in subsequent PRs. From AperiodicMonotilesLean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 460/0 Mathlib.lean,Mathlib/Combinatorics/Tiling/TileSet.lean 2 22 ['b-mehta', 'eric-wieser', 'github-actions', 'jsm28', 'vihdzp'] kmill
assignee:kmill
16-34610
16 days ago
16-33859
16 days ago
35-10538
35 days
34230 smmercuri
author:smmercuri
refactor: use 1-field structure to define the `WithAbs` type synonym Following the Zulip threads [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithLp.60/near/526234806) and [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithAbs.60.2F.60WithVal.60/with/569663323) and using `WithLp` as a template, we refactor the `WithAbs` type synonym as a 1-field structure. The main benefit being that it prevents defeq abuse. --- - [x] depends on: #34313 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 314/114 Mathlib/Analysis/AbsoluteValue/Equivalence.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Completion.lean 5 7 ['github-actions', 'leanprover-radar', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] dupuisf
assignee:dupuisf
16-5297
16 days ago
19-39849
19 days ago
21-19292
21 days
34171 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Hasse): Define the Eulerian path of a path graph --- Such statements are left for a future PR, since they add imports so we probably want to split them into a separate file: ```lean theorem IsEulerian.ofPathGraph : ofPathGraph n |>.IsEulerian := by sorry theorem IsHamiltonian.ofPathGraph : ofPathGraph n |>.IsHamiltonian := by sorry theorem exists_path_iff_isContained_pathGraph : (∃ (u v : V) (w : G.Path u v), w.val.support.length = n) ↔ pathGraph n ⊑ G := by sorry ``` (the last statement also requires #33121, this PR gives the right-to-left implication and that PR gives the left-to-right) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 37/1 Mathlib/Combinatorics/SimpleGraph/Hasse.lean 1 9 ['SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] kmill
assignee:kmill
15-73169
15 days ago
27-10267
27 days ago
28-41255
28 days
34664 GrigorenkoPV
author:GrigorenkoPV
feat(SetTheory/Ordinal/Arithmetic): prove isSuccPrelimit_iff_omega0_dvd --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory new-contributor 36/15 Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/Notation.lean 3 8 ['GrigorenkoPV', 'github-actions', 'vihdzp'] vihdzp
assignee:vihdzp
14-40631
14 days ago
15-43995
15 days ago
17-519
17 days
34375 jvanwinden
author:jvanwinden
feat(MeasureTheory/Function/AEEqOfLIntegral): introduce lemmas for rewriting a.e. inequalities Introduce the following lemmas: - ae_le_const_iff_forall_gt_imp_ae_lt, - ae_const_le_iff_forall_lt_imp_ae_gt, - ae_le_const_iff_forall_gt_imp_ae_le, - ae_const_le_iff_forall_lt_imp_ae_ge, which can be used get an epsilon of room in a.e. inequalities, with the epsilon being outside the a.e. quantifier. The 'le/ge' variants require a dense ordering. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 24/0 Mathlib/MeasureTheory/Function/AEEqOfLIntegral.lean 1 4 ['github-actions', 'jvanwinden', 'urkud'] kex-y
assignee:kex-y
14-39112
14 days ago
24-40530
24 days ago
24-40308
24 days
34779 tb65536
author:tb65536
refactor(Computability/TMComputable): generalize from `FinEncoding` Much of `TMComputable.lean` is stated in terms of `FinEncoding` when only the `encode` function is used. This PR generalizes statements in `TMComputable.lean` to take in just the `encode` function, making them easier to use (since one does not have to additionally provide a `decode` function and a proof of `decode_encode`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability 39/38 Mathlib/Computability/TMComputable.lean 1 1 ['github-actions'] nobody
14-35466
14 days ago
14-35466
14 days ago
14-35244
14 days
32570 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph): bipartite subgraphs and vertex-disjoint graphs for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 22/0 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 2 19 ['SnirBroshi', 'github-actions', 'jcommelin', 'ksenono', 'vlad902'] kmill
assignee:kmill
14-15080
14 days ago
14-15080
14 days ago
66-45862
66 days
32555 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph/Matching): maximum and maximal matchings for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 127/0 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean 2 24 ['SnirBroshi', 'github-actions', 'jcommelin', 'ksenono'] awainverse
assignee:awainverse
14-13907
14 days ago
14-13907
14 days ago
66-69110
66 days
34636 CoolRmal
author:CoolRmal
feat(MeasureTheory/Analysis): the Fourier coefficients of a function can be computed by integrating over a box The main result proved in this PR is `integral_preimage`, which is the analogue of the one-dimensional result: [UnitAddCircle.integral_preimage](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Integral/IntervalIntegral/Periodic.html#UnitAddCircle.integral_preimage). This theorem allows us to compute an integral over UnitAddTorus as an integral over a box in the Euclidean space. As an application, I prove that the Fourier coefficients of a function can be computed by integrating over a box. The main motivation for this PR is the higher dimensional Poisson summation formula, which is needed in the [Sphere Packing project](https://github.com/thefundamentaltheor3m/Sphere-Packing-Lean). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 80/0 Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean 2 1 ['github-actions'] RemyDegenne
assignee:RemyDegenne
14-5296
14 days ago
17-26285
17 days ago
17-27348
17 days
31449 kim-em
author:kim-em
feat(SemilocallySimplyConnected): definition and alternative formulation Note: Proofs in this PR were developed with assistance from Claude. t-topology 266/0 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SemilocallySimplyConnected.lean,Mathlib/Topology/Path.lean 5 15 ['ADedecker', 'alreadydone', 'github-actions', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot'] jcommelin
assignee:jcommelin
13-82180
13 days ago
13-80695
13 days ago
64-46632
64 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 8 ['github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'yoh-tanimoto'] fpvandoorn
assignee:fpvandoorn
13-69616
13 days ago
13-68405
13 days ago
110-63747
110 days
34191 IlPreteRosso
author:IlPreteRosso
feat(Topology/Algebra/InfiniteSum): Discrete Convolution API 1st PR Defines the very basics of the discrete convolution API. In analogy with [MeasureTheory.Convolution](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Convolution.html#MeasureTheory.convolution). Main definitions include - `mulFiber`, `convolution`, `ConvolutionExists`, `ConvolutionExists.add_distrib`, `ConvolutionExistsAt.smul_convolution`, `mulFiber_swapEquiv`, `convolution_comm` RM: - The main docstring is *as is* - Next step is triple sum intrastrcutre + `assoc` theorems for convolution (long) Continues the work from #33411 and #33410 (splitting into shorter PRs, carries over the modifications from previous reviews) t-topology new-contributor 277/0 Mathlib.lean,Mathlib/Topology/Algebra/InfiniteSum/DiscreteConvolution.lean 2 18 ['IlPreteRosso', 'github-actions', 'j-loreaux'] PatrickMassot
assignee:PatrickMassot
13-34186
13 days ago
13-33564
13 days ago
22-34101
22 days
34402 loefflerd
author:loefflerd
feat(Analysis/Complex/UpperHalfPlane): invariant measure Add the invariant measure on the upper half-plane (& prove that it is indeed invariant). Also includes various minor improvements to upper half-plane & related code: * improve documentation of `GeneralLinearGroup/FinTwo.lean` * remove no-longer-needed coercion notation --- - [x] depends on: #34597 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-analysis 276/47 Mathlib.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Manifold.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Measure.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Topology.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/ModularForms/Basic.lean 7 6 ['github-actions', 'loefflerd', 'mathlib-dependent-issues', 'urkud'] ADedecker
assignee:ADedecker
13-21711
13 days ago
13-20840
13 days ago
18-18842
18 days
34557 kim-em
author:kim-em
feat(Topology/Homotopy): add Path.subpathOn for restricting paths to subintervals This PR adds `Path.subpathOn`, which extracts a subpath from a path γ on an interval [a, b] ⊆ [0, 1] by reparametrizing via the affine map t ↦ a + t(b - a). ### Main results - `Path.subpathOn`: definition of the restricted path - `Path.subpathOn_trans`: composing subpaths is homotopic to the combined subpath - `Path.subpathOn_self`: the trivial subpath [a,a] is homotopic to the constant path - `Path.subpathOn_zero_one`: the full subpath [0,1] is homotopic to the original path - Quotient-level versions of these theorems This material is split out from https://github.com/leanprover-community/mathlib4/pull/31576 to allow independent review. PR #31576 will depend on this PR once merged. 🤖 Prepared with Claude Code t-topology 216/0 Mathlib.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/UnitInterval.lean,Mathlib/Topology/UnitInterval/ConvexSpace.lean 4 3 ['github-actions', 'jcommelin'] jcommelin
assignee:jcommelin
13-253
13 days ago
16-72642
16 days ago
17-14770
17 days
34558 kim-em
author:kim-em
feat(Topology): add StrictMono finite partition lemmas and path partitioning This PR adds: **In `UnitInterval.lean`:** - `exists_strictMono_Icc_subset_open_cover_Icc`: finite partition with strictly monotone points indexed by `Fin (n + 1)` for general closed intervals - `exists_strictMono_Icc_subset_open_cover_unitInterval`: the unit interval version - `continuous_convexCombo`: continuity of convex combinations **In `Path.lean`:** - `Path.exists_partition_in_cover`: Lebesgue partition lemma for paths - any open cover of a path's range can be refined to a finite partition - `Path.exists_partition_with_property`: neighborhood version - if every point on a path has a neighborhood with property P, get a partition with each segment in such a neighborhood These are useful for path homotopy arguments where a finite, strict partition is needed. This is split out from https://github.com/leanprover-community/mathlib4/pull/31576 to allow independent review. 🤖 Prepared with Claude Code t-topology 174/0 Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean 2 12 ['botbaki-review', 'github-actions', 'kim-em'] jcommelin
assignee:jcommelin
13-252
13 days ago
17-60483
17 days ago
19-68383
19 days
34632 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): add `BipartiteDoubleCover` `bipartiteDoubleCover G` has two vertices `inl v` and `inr v` for each vertex `v` in `G` such that `inl v` (`inr v`) is adjacent to `inr w` (`inl w`) iff `v` is adjacent to `w` in `G`. --- This comes from splitting up #25841 into smaller PRs. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 87/0 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean 1 10 ['github-actions', 'mitchell-horner', 'vihdzp', 'vlad902'] kmill
assignee:kmill
13-250
13 days ago
16-83044
16 days ago
17-84381
17 days
34427 CoolRmal
author:CoolRmal
feat(MeasureTheory): Strong measurability is preserved under division in a group with zero I proved that if `f,g` are two strongly measurable functions taking values in a group with zero, then `f/g` is still strongly measurable. As mentioned over here [#Is there code for X? > StronglyMeaurable.div₀](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/StronglyMeaurable.2Ediv.E2.82.80/with/569988425), I probably should also change the name of [MeasureTheory.StronglyMeasurable.div](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.html#MeasureTheory.StronglyMeasurable.div) into `StronglyMeasurable.div'` according to the docstring of [ContinuousDiv](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Algebra/Group/Defs.html#ContinuousDiv). If I do this, then @to_additive will generate a theorem named `StronglyMeasurable.sub'`, which is a bit weird, so I am unsure whether I should change these names. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 37/8 Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/Probability/Process/Adapted.lean 3 3 ['CoolRmal', 'EtienneC30', 'github-actions'] kex-y
assignee:kex-y
12-62929
12 days ago
12-61935
12 days ago
21-17650
21 days
34709 dennj
author:dennj
feat(Analysis/ODE): add discrete Grönwall inequality ## Summary Add discrete Grönwall inequality to `Mathlib/Analysis/ODE/DiscreteGronwall.lean` Provides bounds for recurrence inequalities of the form `u(n+1) ≤ c(n) * u(n) + b(n)` ### Main results - `discrete_gronwall_prod_general`: Product form working over any linearly ordered commutative ring - `prod_one_add_Ico_mono`: Auxiliary lemma for product comparisons over subintervals - `discrete_gronwall`: Classical exponential bound `u(n) ≤ (u(n₀) + ∑ b(k)) * exp(∑ c(i))` (ℝ-specific) - `discrete_gronwall_Ico`: Uniform bound over a finite interval (ℝ-specific) ## Related work Complements the continuous Grönwall inequality in `Mathlib.Analysis.ODE.Gronwall` ## References * Grönwall, T. H. (1919). "Note on the derivatives with respect to a parameter of the solutions of a system of differential equations". *Annals of Mathematics*, 20(4), 292–296. t-analysis new-contributor 174/0 Mathlib.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean 2 1 ['github-actions'] ADedecker
assignee:ADedecker
12-5404
12 days ago
15-80339
15 days ago
15-80117
15 days
34729 vihdzp
author:vihdzp
chore: `no_expose` various `Ordinal` definitions These all have convoluted definitions that are better characterized by their API, or (in the case of `Ordinal.ToType`) are defined through choice and have no useful definitional equalities. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 13/11 Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean 2 3 ['github-actions', 'leanprover-radar', 'vihdzp'] b-mehta
assignee:b-mehta
12-5403
12 days ago
15-35189
15 days ago
15-34967
15 days
34821 kim-em
author:kim-em
chore: add GitHub Apps validation script and config This PR adds tooling to validate the GitHub Apps configuration after the recent bot account migration. **New files:** - `.github/github-apps.yml` - Documents all 8 GitHub Apps with their IDs, secrets, and workflow usage - `scripts/validate-github-apps.sh` - Validates apps exist, secrets are present, and workflows reference correct secrets - `.github/workflows/validate-github-apps.yml` - Weekly CI to run validation **Validation checks:** - App exists with expected ID via GitHub API - App is installed and not suspended - Required secrets exist in each repository - Workflow files reference the correct secrets - Warns about undocumented `MATHLIB_*` secrets **Issue found:** The validation script discovered that `MATHLIB_AUTO_MERGE_APP_ID` and `MATHLIB_AUTO_MERGE_PRIVATE_KEY` secrets are missing. These need to be added for the `mathlib-auto-merge` app (ID: 2784285). **Requirements:** `gh`, `yq`, and `jq` must be installed to run the script locally. 🤖 Prepared with Claude Code CI 642/0 .github/github-apps.yml,.github/workflows/validate-github-apps.yml,scripts/README.md,scripts/validate-github-apps.sh 4 2 ['bryangingechen', 'github-actions'] bryangingechen
assignee:bryangingechen
11-42288
11 days ago
13-78318
13 days ago
13-82972
13 days
34182 IlPreteRosso
author:IlPreteRosso
feat(Data/Finsupp/Single, Data/Finsupp/Indicator): Add set_indicator_singleton, indicator_singleton; golfed single_eq_set_indicator, single_eq_indicator [Mathlib.Data.Finsupp.Single](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Single.html#Finsupp.single) - Add `set_indicator_singleton`, golfed `single_eq_set_indicator` [Mathlib.Data.Finsupp.Indicator](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Indicator.html#Finsupp.indicator_apply) - Add `indicator_singleton`, golfed `single_eq_indicator` Continues the work from #34095 large-import t-data new-contributor 17/17 Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Single.lean 2 29 ['IlPreteRosso', 'eric-wieser', 'github-actions', 'mathlib-bors', 'urkud'] eric-wieser and urkud
assignee:urkud assignee:eric-wieser
11-35097
11 days ago
27-74001
27 days ago
27-80607
27 days
34151 gasparattila
author:gasparattila
feat(Topology/Sets): product of `Closeds` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 30/0 Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/Sets/Compacts.lean 3 1 ['github-actions'] PatrickMassot
assignee:PatrickMassot
11-29307
11 days ago
11-28159
11 days ago
29-22633
29 days
33252 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph/Coloring): use `IsIndepSet` instead of `IsAntichain` to spell "a color class is an independent set" --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 6/2 Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Partition.lean 2 1 ['github-actions'] nobody
11-9187
11 days ago
43-12689
43 days ago
12-38825
12 days
34099 mcdoll
author:mcdoll
feat(Analysis/Distribution): Fourier multiplier We define Fourier multiplier with temperate growth functions acting on Schwartz functions as well as tempered distributions. We prove that the directional derivative and the Laplacian can be represented as Fourier multiplier. --- - [x] depends on: #34100 - [x] depends on: #34285 - [x] depends on: #34294 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 217/0 Mathlib.lean,Mathlib/Analysis/Distribution/FourierMultiplier.lean 2 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] ADedecker
assignee:ADedecker
11-5398
11 days ago
14-69824
14 days ago
15-72378
15 days
34788 justus-springer
author:justus-springer
feat(Algebra/Polynomial/AlgebraMap): add Polynomial.aeval_eq_aeval_map This lemma is a special case of `Polynomial.map_aeval_eq_aeval_map` when `U = T` and `ψ` the identity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/0 Mathlib/Algebra/Polynomial/AlgebraMap.lean 1 2 ['github-actions'] eric-wieser
assignee:eric-wieser
11-5378
11 days ago
14-29872
14 days ago
14-29650
14 days
32245 erdOne
author:erdOne
feat(RingTheory): the `coassoc_simps` simp set From Toric Co-authored-by: Yaël Dillies --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric t-meta 815/0 Mathlib.lean,Mathlib/RingTheory/Coalgebra/CoassocSimps.lean,Mathlib/Tactic/Attr/Register.lean,MathlibTest/RingTheory/CoassocSimps.lean 4 3 ['erdOne', 'github-actions', 'riccardobrasca'] mattrobball
assignee:mattrobball
10-47669
10 days ago
16-59021
16 days ago
16-58799
16 days
34622 vihdzp
author:vihdzp
feat: Nat/Int casts on char two rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
49/7 Mathlib/Algebra/CharP/Two.lean,Mathlib/Data/Set/Insert.lean 2 10 ['erdOne', 'eric-wieser', 'github-actions', 'vihdzp'] erdOne
assignee:erdOne
10-33764
10 days ago
10-32366
10 days ago
17-69309
17 days
34954 brianrabern
author:brianrabern
feat(Combinatorics/SimpleGraph/Acyclic): add colorable and chromaticN… …umber bridges for acyclic and tree graphs Add thin bridge lemmas expressing that acyclic graphs (forests) and trees are 2-colorable, and that their chromatic number is at most 2, directly in terms of `Colorable` and `chromaticNumber`. The existing `IsAcyclic.isBipartite` already proves this via the definitional equality `IsBipartite = Colorable 2`, but these bridges improve discoverability for users who reason about `Colorable` or `chromaticNumber` without passing through `IsBipartite`. This is a first step toward building out the graph coloring API. New declarations: - `IsAcyclic.colorable_two` - `IsTree.colorable_two` - `IsAcyclic.chromaticNumber_le_two` - `IsTree.chromaticNumber_le_two` All are one-line proofs reusing existing results; no new imports needed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 16/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 1 ['github-actions'] nobody
10-29280
10 days ago
unknown
unknown
34054 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): OmegaCompletePartialOrder instance for `Sigma` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sigma` along with `ωScottContinuous` lemmas for basic operations (`mk`, `fst`, `snd`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sigma`s. --- - [x] depends on: #33941 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order please-merge-master 168/0 Mathlib/Data/Sigma/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
10-4908
10 days ago
13-78604
13 days ago
13-78382
13 days
33257 NickAdfor
author:NickAdfor
feat(Combinatorics/SimpleGraph/Bipartite): Odd Cycle Theorem (A Solution to TODO) Prove bipartite iff all cycles are even This PR formalizes the classical graph theory theorem: a graph is bipartite if and only if all its cycles have even length. Co-authored-by: Nick Adfor Co-authored-by: Yue Sun Co-authored-by: Aristotle AI --- ## Main results - `SimpleGraph.bipartite_iff_all_cycles_even` : the main equivalence theorem ## Key supporting lemmas - `SimpleGraph.even_length_iff_same_color` : parity lemma for 2-colorings - `SimpleGraph.even_length_iff_even_bypass_length` : bypass length parity - `SimpleGraph.even_cycle_length_of_path` : cycle construction lemma - `SimpleGraph.bypass_eq_nil_of_closed` : closed path properties ## Proof outline 1. For bipartite graphs: use the 2-coloring to show that in a 2-coloring, a walk has even length iff its endpoints have the same color. 2. For cycles (start = end), this forces even length. 3. For the converse: if all cycles are even, construct a 2-coloring using the `two_colorable_iff_forall_loop_even` characterization. 4. Show this coloring is valid using bypass operations and path properties. ## Technical notes - Uses `SimpleGraph.Walk` for path/cycle representation - Handles both `IsPath` and `IsCycle` predicates - Uses bypass operations (`takeUntil`, `dropUntil`, `bypass`) to analyze walks - Requires `DecidableEq V` for some lemmas - Uses classical logic for case analysis ## Reviewer notes - The proof uses induction on walks and case analysis on colorings - Some lemmas (like `even_length_iff_same_color`) could be extracted to more general locations - All theorems are in the `SimpleGraph` namespace - The `bipartite_iff_all_cycles_even` theorem provides the complete characterization t-combinatorics new-contributor 164/8 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 2 70 ['IvanRenison', 'NickAdfor', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'kmill', 'mitchell-horner', 'vihdzp', 'vlad902'] nobody
10-3483
10 days ago
10-3891
10 days ago
18-4468
18 days
33668 Citronhat
author:Citronhat
feat(PMF): add lintegral formulas for PMF This PR introduces two lemmas describing the `lintegral` of a function with respect to the measure induced by a probability mass function: - `PMF.lintegral_eq_tsum` - `PMF.lintegral_eq_sum` These are the `ℝ≥0∞` analogues of the existing Bochner `integral` formulas `integral_eq_tsum` and `integral_eq_sum`. They could be useful for reasoning about expectations and integrability. In addition, the proof of `integral_eq_sum` is simplified by deriving it directly from `integral_eq_tsum` using `tsum_fintype`. t-measure-probability new-contributor 14/5 Mathlib/Probability/ProbabilityMassFunction/Integrals.lean 1 2 ['DavidLedvinka', 'github-actions'] kex-y
assignee:kex-y
10-3371
10 days ago
42-9643
42 days ago
42-41099
42 days
33688 Citronhat
author:Citronhat
feat(PMF): add expectation lemmas for Poisson PMF This PR adds some basic results about the Poisson distribution, its `PMF`, and its expectation. **New lemmas:** * `poissonPMF_apply` — an unfolding lemma for `poissonPMF`. * `poissonPMFReal_mul_eq_succ_mul` — the standard recursion identity for the Poisson mass function. * `poissonPMFReal_hasSum_nmul` — shows that `fun n ↦ poissonPMFReal r n * n` has sum `r`. * `poissonPMF_tsum_nmul` — the corresponding identity at the level of the `PMF`. * `poissonPMF_coe_tsum_nmul` — the same result after coercion to `ℝ`. Both `ℝ`-valued and `ℝ≥0∞`-valued formulations are included so that these results can be used conveniently in both Lebesgue and Bochner integration contexts. new-contributor t-measure-probability 21/0 Mathlib/Probability/Distributions/Poisson.lean 1 6 ['Citronhat', 'DavidLedvinka', 'github-actions'] urkud
assignee:urkud
10-1615
10 days ago
41-15648
41 days ago
42-10915
42 days
34093 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `Option` with basic `ωScottContinuous` lemmas --- - [x] depends on: #33941 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 297/0 Mathlib.lean,Mathlib/Data/Option/Order.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean 4 5 ['YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] pechersky
assignee:pechersky
9-5390
9 days ago
13-73159
13 days ago
13-72937
13 days
34266 gasparattila
author:gasparattila
feat(Topology/Sets): basis of `(Nonempty)Compacts` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 147/0 Mathlib/Topology/Bases.lean,Mathlib/Topology/Sets/VietorisTopology.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
9-5388
9 days ago
20-49191
20 days ago
26-22434
26 days
34435 huaizhangchu
author:huaizhangchu
feat(Probability): convolution of Poisson distributions This PR proves that the convolution of two Poisson distributions is again a Poisson distribution: `Poisson(r₁) ∗ Poisson(r₂) = Poisson(r₁ + r₂)` ## Main results - `poissonMeasureReal_charFun`: characteristic function of Poisson distribution is `exp(r(exp(it) - 1))` - `poissonMeasureReal_conv_poissonMeasureReal`: convolution of Poisson distributions on ℝ - `poissonMeasure_conv_poissonMeasure`: convolution of Poisson distributions on ℕ - `poissonMeasure_add_poissonMeasure_of_indepFun`: sum of independent Poisson random variables ## Proof strategy Uses characteristic functions: `φ(t) = exp(r(eⁱᵗ - 1))`, then pulls back from ℝ to ℕ. t-measure-probability large-import new-contributor 110/1 Mathlib/Probability/Distributions/Poisson.lean 1 14 ['CoolRmal', 'DavidLedvinka', 'github-actions', 'huaizhangchu'] RemyDegenne
assignee:RemyDegenne
9-5385
9 days ago
12-55591
12 days ago
13-83624
13 days
34784 tb65536
author:tb65536
refactor(GroupTheory/Commutator/Basic): to_additivize commutators This PR makes some progress on to_additivizing more of the group theory library. I had to make the bracket instance scoped to avoid clashing with the Lie bracket. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
167/30 Mathlib/Algebra/Group/Commutator.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Solvable.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,MathlibTest/Group.lean,MathlibTest/toAdditiveIrredDef.lean 11 1 ['github-actions'] mattrobball
assignee:mattrobball
9-5380
9 days ago
14-20688
14 days ago
14-20466
14 days
34859 wwylele
author:wwylele
feat(MeasureTheory): WithLp 2 (U × V) → U × V is measure preserving Intermediate lemmas towards #34826, and analogue to three existing lemma in the same file: ``` theorem EuclideanSpace.volume_preserving_symm_measurableEquiv_toLp : MeasurePreserving (MeasurableEquiv.toLp 2 (ι → ℝ)).symm := by theorem PiLp.volume_preserving_ofLp : MeasurePreserving (@ofLp 2 (ι → ℝ)) := theorem PiLp.volume_preserving_toLp : MeasurePreserving (@toLp 2 (ι → ℝ)) := ``` --- I am not very good at working with measure theory directly, so this implementation just reduces the problem to known lemmas, but it is pretty cumbersome. Golfing is welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 58/0 Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean 1 6 ['b-mehta', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] RemyDegenne
assignee:RemyDegenne
9-5377
9 days ago
13-2748
13 days ago
13-2526
13 days
33662 Pjotr5
author:Pjotr5
feat(Algebra/Order/BigOperators/Expect): add lemmas and strict variants ### Summary - Combine `le_expect_nonempty_of_subadditive` and `le_expect_of_subadditive` into a single lemma `le_expect_of_subadditive`. The extra assumptions `(hs : s.Nonempty)` and `(h_zero : m 0 = 0)` are unnecessary (since `m 0 = 0` follows from `h_div`). This requires a small downstream update to `Mathlib/Analysis/RCLike/Basic.lean` (`norm_expect_le`). - Add strict-inequality variants: `expect_lt_expect`, `expect_lt`, `lt_expect`. - Add existence lemmas: `exists_le_of_expect_le_expect`, `exists_le_of_le_expect`, `exists_le_of_expect_le`, and `exists_lt_of_expect_lt_expect`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
46/16 Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Analysis/RCLike/Basic.lean 2 1 ['github-actions'] thorimur
assignee:thorimur
8-49671
8 days ago
8-48332
8 days ago
42-55561
42 days
26973 peabrainiac
author:peabrainiac
feat(Geometry/Diffeology): diffeologies generated from sets of plots Introduces diffeologies generated from sets of plots, shows that this defines a Galois insertion, and concludes that the diffeologies on a type form a complete lattice. --- This PR continues the work from #22724. - [x] depends on: #26484 t-differential-geometry 162/0 Mathlib/Geometry/Diffeology/Basic.lean 1 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'ocfnash', 'peabrainiac'] ocfnash
assignee:ocfnash
8-42724
8 days ago
12-29470
12 days ago
12-29248
12 days
34249 xyzw12345
author:xyzw12345
feat(GroupTheory/GroupAction/Hom): Add `MulDistribMulActionHom` corresponding to `DistribMulActionHom` In this PR, we defined `MulDistribMulActionHom` corresponding to `DistribMulActionHom`, which will be used in the multiplicative version of non-Abelian group cohomology. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
174/69 Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 2 2 ['github-actions', 'ocfnash'] ocfnash
assignee:ocfnash
8-42274
8 days ago
26-61750
26 days ago
26-61528
26 days
32367 BoltonBailey
author:BoltonBailey
feat(Computability): add FinEncodings for List Bool and pairs of types This PR contains `finEncoding`s relevant to developing complexity theory in downstream libraries. It is adapted from [this](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalise.20the.20proposition.20P.20.E2.89.A0NP/near/451765788)[#maths > Formalise the proposition P ≠NP @ 💬](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalise.20the.20proposition.20P.20.E2.89.A0NP/near/451765788) comment. Co-authored-by: Daniel Weber --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-computability 54/21 Mathlib/Computability/Encoding.lean,Mathlib/Data/List/Basic.lean 2 15 ['BoltonBailey', 'MichaelStollBayreuth', 'Vierkantor', 'YaelDillies', 'github-actions'] Vierkantor and YaelDillies
assignee:Vierkantor assignee:YaelDillies
8-30869
8 days ago
12-22634
12 days ago
75-77940
75 days
35041 b-mehta
author:b-mehta
feat(Combinatorics): prove the Rado selection lemma This PR should supercede #29030 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 132/0 Mathlib.lean,Mathlib/Combinatorics/Compactness.lean 2 3 ['b-mehta', 'github-actions'] nobody
8-28012
8 days ago
8-28420
8 days ago
8-28198
8 days
34551 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename defs to `set*Antidiagonal` and deprecate old names in namespace Finset Main file is [Prod.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Antidiag/Prod.html). Adds `Finset.HasMulAntidiagonal`, the multiplicative counterpart to `HasAntidiagonal`, linked via `@[to_additive existing]`. Split PR (current changes): This PR renames the set-based antidiagonal definitions to have a `set` prefix, distinguishing them from the typeclass-based API in `Prod.lean`. **Only definitions are renamed in this PR.** Theorem/lemma renames will follow in a subsequent PR. [MulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/MulAntidiagonal.lean) - `mulAntidiagonal` → `setMulAntidiagonal` - `addAntidiagonal` → `setAddAntidiagonal` (via `@[to_additive]`) [SMulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/SMulAntidiagonal.lean) - `SMulAntidiagonal` → `setSMulAntidiagonal` - `VAddAntidiagonal` → `setVAddAntidiagonal` (via `@[to_additive]`) Propagates to: - `Mathlib/RingTheory/HahnSeries/Multiplication.lean` - `Mathlib/RingTheory/HahnSeries/Summable.lean` --- Added deprecation aliases for the renamed definitions. [Finset/MulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/MulAntidiagonal.lean) ``` @[to_additive (attr := deprecated setAddAntidiagonal (since := "2026-01-31")), deprecated setMulAntidiagonal (since := "2026-01-31")] alias mulAntidiagonal := setMulAntidiagonal ``` [Finset/SMulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/SMulAntidiagonal.lean) ``` @[to_additive (attr := deprecated setVAddAntidiagonal (since := "2026-01-31")), deprecated setSMulAntidiagonal (since := "2026-01-31")] alias smulAntidiagonal := setSMulAntidiagonal ``` Propagates: [PointwiseSMul.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finsupp/PointwiseSMul.lean) - updated to use Set.vaddAntidiagonal (the original Set name) --- Full changes to be made: For a monoid `M`, `mulAntidiagonal n` returns the finset of pairs `(i, j)` such that `i * j = n`. [MulAntidiagonal.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/MulAntidiagonal.html) - `mulAntidiagonal` → `setMulAntidiagonal` - `addAntidiagonal` → `setAddAntidiagonal` (via `@[to_additive]`) - All related theorems renamed accordingly: - `mem_setMulAntidiagonal` - `setMulAntidiagonal_mono_left`/`setMulAntidiagonal_mono_right` - `swap_mem_setMulAntidiagonal` - `support_setMulAntidiagonal_subset_mul` - `isPWO_support_setMulAntidiagonal` - `setMulAntidiagonal_min_mul_min` [SMulAntidiagonal.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/SMulAntidiagonal.html) - `setSMulAntidiagonal` (lowercase `set` prefix) - `setVAddAntidiagonal` (via `@[to_additive setVAddAntidiagonal ...]`) - All related theorems use lowercase `set` prefix: - `mem_setSMulAntidiagonal` / `mem_setVAddAntidiagonal` - `setSMulAntidiagonal_mono_left`/`setSMulAntidiagonal_mono_right` / `setVAddAntidiagonal_mono_left`/`setVAddAntidiagonal_mono_right` - `support_setSMulAntidiagonal_subset_smul` / `support_setVAddAntidiagonal_subset_vadd` - `isPWO_support_setSMulAntidiagonal` / `isPWO_support_setVAddAntidiagonal` - `setSMulAntidiagonal_min_smul_min` / `setVAddAntidiagonal_min_vadd_min` [Prod.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Antidiag/Prod.html) - Added explicit `@[to_additive]` target names: - `@[to_additive antidiagonal_congr ...]` for `mulAntidiagonal_congr` - `@[to_additive (attr := ext) antidiagonal_subtype_ext ...]` for `mulAntidiagonal_subtype_ext` - `@[to_additive antidiagonal_congr' ...]` for `mulAntidiagonal_congr'` - `@[to_additive (attr := simps) sigmaAntidiagonalEquivProd ...]` for `sigmaMulAntidiagonalEquivProd` [Multiplication.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/Multiplication.html) - Updated all VAdd antidiagonal references to use lowercase `set` prefix: - `setVAddAntidiagonal` - `mem_setVAddAntidiagonal` - `setVAddAntidiagonal_mono_left`/`setVAddAntidiagonal_mono_right` - `isPWO_support_setVAddAntidiagonal` - `support_setVAddAntidiagonal_subset_vadd` - `setVAddAntidiagonal_min_vadd_min` - Updated all Add antidiagonal references: - `mem_setAddAntidiagonal` - `swap_mem_setAddAntidiagonal` [Summable.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/Summable.html) - `setVAddAntidiagonal` references updated - `mem_setAddAntidiagonal` references updated [PowerSeries.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/PowerSeries.html) - `mem_addAntidiagonal` → `mem_setAddAntidiagonal` t-algebra new-contributor
label:t-algebra$
67/47 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Set/MulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 6 ['IlPreteRosso', 'Ruben-VandeVelde', 'github-actions', 'kim-em', 'mathlib-merge-conflicts'] jcommelin
assignee:jcommelin
8-18401
8 days ago
8-16117
8 days ago
18-66858
18 days
34026 SnkXyx
author:SnkXyx
feat(Algebra/MvPolynomial): add mainVariable Add `mainVariable` of `MvPolynomial`, the largest variable index appearing in the polynomial. Main Theorems: * `mainVariable_eq_bot_iff_eq_C` * `mainVariable_sum_le` * `mainVariable_prod_le` * `degreeOf_eq_zero_of_mainVariable_lt` The PR is upstreamized from [github.com/WuProver/lean_characteristic_set](https://github.com/WuProver/lean_characteristic_set) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
147/0 Mathlib.lean,Mathlib/Algebra/MvPolynomial/MainVariable.lean 2 1 ['github-actions'] mattrobball
assignee:mattrobball
8-5129
8 days ago
32-76611
32 days ago
32-76389
32 days
34756 Hagb
author:Hagb
feat(Algebra/Order/Monoid/Unbundled/WithTop): `AddEquiv` between `WithBot` It is like `Equiv.withBotCongr` but preserving also addition (`AddEquiv`). --- It is like [`Equiv.withBotCongr`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=Equiv.withBotCongr#doc) but preserving also addition ([`AddEquiv`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=AddEquiv#doc)). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
39/0 Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean 1 3 ['Hagb', 'github-actions', 'plp127'] mattrobball
assignee:mattrobball
8-5123
8 days ago
12-2786
12 days ago
14-32512
14 days
34808 YaelDillies
author:YaelDillies
feat(Combinatorics/SimpleGraph): isolated vertices RFC for now. Do you think this is a reasonable definition to have? What should its API be? From ProofBench --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) RFC t-combinatorics 3/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 1 ['github-actions'] kmill
assignee:kmill
8-5118
8 days ago
14-18339
14 days ago
14-18117
14 days
34854 GrigorenkoPV
author:GrigorenkoPV
chore(Combinatorics/Enumerative/Catalan): split into `Basic` & `Tree` --- Split off from #34853 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 227/194 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean 6 2 ['SnirBroshi', 'github-actions'] thorimur
assignee:thorimur
8-5117
8 days ago
11-51100
11 days ago
13-13207
13 days
26985 agjftucker
author:agjftucker
feat(Analysis/Calculus/ImplicitFunction): define implicitFunctionOfProdDomain This PR continues the work from #16743. Original PR: https://github.com/leanprover-community/mathlib4/pull/16743 --- - [x] depends on: #28352 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 269/157 Mathlib.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean,Mathlib/Analysis/Calculus/ImplicitFunction/ProdDomain.lean 4 27 ['agjftucker', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'winstonyin'] hrmacbeth
assignee:hrmacbeth
7-67249
7 days ago
7-66362
7 days ago
70-28512
70 days
32744 NoneMore
author:NoneMore
feat(ModelTheory/Definablity): add `DefinableFun` definition and lemmas This PR adds two basic shapes of definable sets and `DefinableFun` definition with relevant lemmas. The main result is `Set.Definable.preimage_of_map` asserting that the preimage of a definable set under a definable map is definable. There are also some tool lemmas derived by the preimage lemma. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 147/0 Mathlib/ModelTheory/Definability.lean 1 59 ['NoneMore', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator'] awainverse
assignee:awainverse
7-61285
7 days ago
39-69460
39 days ago
60-12533
60 days
35011 whocares-abt
author:whocares-abt
feat(Combinatorics/SimpleGraph/Copy): add degree of copy less than original add two theorems relating degree of a graph and it's copy t-combinatorics new-contributor 17/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 2 ['github-actions', 'themathqueen'] nobody
7-61006
7 days ago
7-60337
7 days ago
8-63976
8 days
33543 JovanGerb
author:JovanGerb
feat: use `to_dual` for `HeytingAlgebra` This PR adds `to_dual` for `HeytingAlgebra`, `BiheytingAlgebra`, `GeneralizedHeytingAlgebra`. I am a bit worried about the fact that the complement operation is self-dual in a `BooleanAlgebra`, because that means that, depending on the context, `compl` needs to be translated to `hnot` or `compl`. So if we want to dualize lemmas about `BooleanAlgebra` and `compl`, we will not be able to. But I hope that the number of such lemmas is small and that they aren't often used in places that can get a `to_dual` tag (e.g. when specialized to sets, they don't need a `to_dual` tag). Aligning the `Heyting` and `Coheyting` API is kind of awkward, because they are unfortunately quite different. One reason is that the arguments of `sup`/`inf` are often swapped in the dual version, which is not compatible with `to_dual`. I've worked around this with extensive use of `to_dual none`. There are quite some lemmas that in my eyes seem unnecessary, such as `le_sup_sdiff_sup_sdiff`, but I haven't removed any in this PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
195/373 Mathlib/Combinatorics/SetFamily/Kleitman.lean,Mathlib/Order/Basic.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Notation.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Tactic/Translate/ToDual.lean 8 12 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] bryangingechen and mattrobball
assignee:bryangingechen assignee:mattrobball
7-43886
7 days ago
11-77680
11 days ago
13-65972
13 days
26479 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis sphere-packing 205/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 5 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'wwylele'] urkud
assignee:urkud
7-10477
7 days ago
27-26502
27 days ago
27-26280
27 days
33397 themathqueen
author:themathqueen
feat(Topology/Algebra/Star/LinearMap): intrinsic star for continuous linear maps --- - [x] depends on: #34945 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-topology
label:t-algebra$
105/0 Mathlib.lean,Mathlib/Topology/Algebra/Star/LinearMap.lean 2 19 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'ocfnash', 'themathqueen'] ocfnash
assignee:ocfnash
7-7117
7 days ago
7-6179
7 days ago
37-69155
37 days
33631 xgenereux
author:xgenereux
feat(ValuationSubring): simp lemmas for idealOfLE/ofPrime in relation to top/bot simp lemmas for `idealOfLE`/`ofPrime` in the trivial cases of `⊥`, `⊤` . This is my second try at this PR (after I bailed on #33618), sorry about this! --- - [ ] depends on: #33612 - [ ] depends on: #33609 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
19/0 Mathlib/RingTheory/Valuation/ValuationSubring.lean 1 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] alreadydone
assignee:alreadydone
7-5237
7 days ago
10-65004
10 days ago
10-64782
10 days
34481 DAE123456
author:DAE123456
feat: Ore's Theorem Ore Theorem : Let G be a graph of order n ≥ 3 that satisfies the Ore property. Then G has a Hamilton cycle. t-combinatorics new-contributor 3372/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Ore.lean 2 25 ['DAE123456', 'LLaurance', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'kim-em', 'tb65536', 'vlad902'] b-mehta
assignee:b-mehta
7-5236
7 days ago
15-59296
15 days ago
19-20452
19 days
34722 GrigorenkoPV
author:GrigorenkoPV
feat(Data/Finset/RangeDistance): add --- Rebase of https://github.com/leanprover-community/mathlib4/pull/26347 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data 34/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 4 ['GrigorenkoPV', 'github-actions', 'joneugster', 'plp127'] TwoFX
assignee:TwoFX
7-5232
7 days ago
15-45069
15 days ago
15-44847
15 days
34805 DavidLedvinka
author:DavidLedvinka
feat(Tactic): generalize ofScientific NormNum extension to `DivisionSemiring` Co-authored-by: @hrmacbeth t-meta 65/14 Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/OfScientific.lean,MathlibTest/norm_num.lean 3 1 ['github-actions'] JovanGerb
assignee:JovanGerb
7-5229
7 days ago
14-14787
14 days ago
14-14565
14 days
34809 YaelDillies
author:YaelDillies
feat: induced subgraphs of complete multipartite graphs are complete multipartite From ProofBench --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 4/2 Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean 1 1 ['github-actions'] b-mehta
assignee:b-mehta
7-5228
7 days ago
14-18256
14 days ago
14-18034
14 days
34871 zhuyizheng
author:zhuyizheng
feat(Calculus): Taylor with integral remainder This PR proves Taylor's theorem with the integral remainder. It provides two versions: 1. based on $f^{(n)}$ is absolutely continuous 2. based on $f \in C^{(n+1)}$ It also weakens the hypotheses `(hx : x₀ < x)` to `(hx : x₀ ≠ x)` in the following theorems: - `taylor_mean_remainder` - `taylor_mean_remainder_lagrange` - `taylor_mean_remainder_lagrange_iteratedDeriv` - `taylor_mean_remainder_cauchy` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-analysis 214/71 Mathlib/Analysis/Calculus/ContDiff/Deriv.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/Probability/Moments/MGFAnalytic.lean,Mathlib/Topology/Algebra/InfiniteSum/TsumUniformlyOn.lean,docs/undergrad.yaml 7 5 ['Komyyy', 'b-mehta', 'github-actions', 'joneugster', 'zhuyizheng'] sgouezel
assignee:sgouezel
7-5222
7 days ago
12-3791
12 days ago
12-42380
12 days
34875 banrovegrie
author:banrovegrie
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap. - Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}` - Add `Matrix.inv_sub_vecMulVec`: subtraction variant - Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses ## Test plan - [x] `lake build` passes - [x] Lines within 100 char limit - [x] All declarations have docstrings t-algebra new-contributor
label:t-algebra$
135/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean 2 10 ['Xxxjdjdid', 'banrovegrie', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions'] kim-em
assignee:kim-em
7-5221
7 days ago
10-69819
10 days ago
12-35651
12 days
34838 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 2/4) --- Required for https://github.com/leanprover-community/mathlib4/pull/33050 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 13/0 Mathlib/Analysis/Analytic/Order.lean 1 1 ['github-actions'] sgouezel
assignee:sgouezel
6-46648
6 days ago
6-45828
6 days ago
13-44165
13 days
35122 Marygold-Dusk
author:Marygold-Dusk
feat: define C^n submersions This PR defines submersions between C^n manifolds. In the infinite-dimensional setting, submersions are defined via local normal forms rather than surjectivity of the mfderiv. A map f is a submersion at x if, in suitable charts around x and f x, it has the form (u, v) ↦ u after identifying the model space with a product. We prove a few basic properties: - being a submersion is a local property, - products of submersions are submersions, - the set of submersed points is open Future PRs will prove that submersions are C^n and deduce equivalence with the standard definition in finite dimensions. From the path towards the regular value theorem. This file was developed under the supervision of Michael Rothgang. Co-authored-by: Michael Rothgang --- Most of the design is analogues to submersions. t-differential-geometry new-contributor 596/0 Mathlib.lean,Mathlib/Geometry/Manifold/Submersion.lean 2 2 ['github-actions'] grunweg
assignee:grunweg
6-41652
6 days ago
6-41029
6 days ago
6-41799
6 days
34315 LessnessRandomness
author:LessnessRandomness
feat(Combinatorics/SimpleGraph/Bipartite): Prove upper bound of edge set cardinality of bipartite graph Two ways to express upper bound of the edge set of bipartite graph: 1) If the cardinalities of both parts/sets, that make bipartite graph, are known, then the upper bound is equal to product of the cardinalities of both parts; 2) Four times of the cardinality of the edge set is less or equal to squared cardinality of vertex set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 54/0 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Data/Sym/Sym2.lean 2 50 ['LessnessRandomness', 'SnirBroshi', 'b-mehta', 'github-actions', 'vlad902'] awainverse
assignee:awainverse
6-24765
6 days ago
21-49696
21 days ago
23-42134
23 days
33795 alreadydone
author:alreadydone
feat(Topology/Sheaves): LocalPredicate prerequisite for étalé spaces --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 418/143 Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean 6 11 ['adamtopaz', 'alreadydone', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] adamtopaz
assignee:adamtopaz
6-17408
6 days ago
6-17408
6 days ago
33-81516
33 days
34922 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): Multiseries definition and structural lemmas Define `Multiseries` and `MultiseriesExpansion` and restate some `Seq` API for `Multiseries`. --- This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-meta 399/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Defs.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
6-6655
6 days ago
6-6018
6 days ago
11-24639
11 days
34783 Jun2M
author:Jun2M
feat(Combinatorics/Graph): add Compatible definition and API Preliminary PR for #26770 (subgraph). Adds the `Compatible` predicate and basic API to `Mathlib.Combinatorics.Graph.Basic`. - **Compatible**: two graphs are compatible if they agree on incidence for every edge in the intersection of their edge sets. - Includes `Compatible.isLink_iff`, reflexivity/symmetry instances, `IsLink.of_compatible`, `Compatible.of_disjoint_edgeSet`, and the `Inc`/`IsLoopAt`/`IsNonloopAt` variants. - **copy** API for copying a graph with new vertex/edge sets and `IsLink`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 101/1 Mathlib/Combinatorics/Graph/Basic.lean 1 10 ['Jun2M', 'YaelDillies', 'eric-wieser', 'github-actions'] kmill
assignee:kmill
6-5397
6 days ago
14-22167
14 days ago
14-26007
14 days
34888 stepan2698-cpu
author:stepan2698-cpu
feat: definition of equivalence of representations Defines equivalence of representations, and defines an equivalence between $$\mathrm{Hom}(V, W)$$ and $$V^* \otimes W$$ as representations. This is a missing piece to respell all of the results in Character.lean without using category-theoretic notions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
60/0 Mathlib/RepresentationTheory/Intertwining.lean 1 2 ['github-actions', 'plp127'] ocfnash
assignee:ocfnash
6-5396
6 days ago
10-5814
10 days ago
12-12767
12 days
34963 Parcly-Taxel
author:Parcly-Taxel
feat(Archive): proof of the Robbins conjecture Cf. [#mathlib4 > Alternative axiomatization of boolean algebras @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Alternative.20axiomatization.20of.20boolean.20algebras/near/558900960) and #31924. 610/0 Archive.lean,Archive/Robbins.lean 2 1 ['github-actions'] dwrensha
assignee:dwrensha
6-5391
6 days ago
9-41575
9 days ago
9-83028
9 days
34990 bwangpj
author:bwangpj
feat: `ContinuousSMul (∀ i, N i) (∀ i, γ i)` FLT --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 7/0 Mathlib/Topology/Algebra/MulAction.lean 1 4 ['bwangpj', 'github-actions', 'themathqueen'] PatrickMassot
assignee:PatrickMassot
6-5387
6 days ago
9-24731
9 days ago
9-27504
9 days
34994 bwangpj
author:bwangpj
feat: Countable.of_module_finite --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import FLT
label:t-algebra$
7/0 Mathlib/LinearAlgebra/Countable.lean 1 3 ['bwangpj', 'eric-wieser', 'github-actions'] eric-wieser
assignee:eric-wieser
5-85031
5 days ago
5-84329
5 days ago
9-21708
9 days
33895 jessealama
author:jessealama
feat(Computability/Primrec): add list_take, list_drop, list_modify, and list_set This PR shows that several list operations from Lean core are primitive recursive: - `list_drop`: [`List.drop`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/TakeDrop.lean), via iterating `List.tail` using `nat_iterate` - `list_take`: [`List.take`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/TakeDrop.lean), via `list_drop` on the reversed list - `list_modifyHead'`: [`List.modifyHead`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/Nat/Modify.lean) with external data - `list_modify'`: [`List.modify`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/Nat/Modify.lean) with external data - `list_modify`: [`List.modify`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/Nat/Modify.lean) - `list_set`: [`List.set`](https://github.com/leanprover/lean4/blob/master/src/Init/Prelude.lean) The primed versions (`list_modify'`, `list_modifyHead'`) take a function `g : β → α → α` that depends on external data of type `β`. This generalization enables deriving the other operations: - `list_modify` specializes `list_modify'` with `β = Unit` - `list_set` uses `list_modify'` via `List.set_eq_modify` Also moves `list_length` earlier in the file (before `list_drop` and `list_take`, which depend on it). new-contributor t-computability 48/4 Mathlib/Computability/Primrec/List.lean 1 1 ['github-actions'] nobody
5-57282
5 days ago
5-56557
5 days ago
33-56657
33 days
30463 grunweg
author:grunweg
feat: support products and disjoint unions in the differential geometry elaborators Add support for inferring a model with corners on - products of manifolds - disjoint unions of manifolds - an open subset of a manifold Note that these can be nested (e.g., a product with multiple factors, a disjoint union of four manifolds or combinations of these). For binary products of normed spaces, we intentionally refuse to infer a model with corners, as there are two different possible options which are propositionally, but not definitionally equal. For now, we emit a warning to this effect instead. A future PR may remove it (and infer one of these variants): see [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Differential.20geometry.20elaborators.20experiment/near/544942546). This PR completes an important milestone: models with corners are now inferred for *all* instances mathlib knows about! Update the module doc-string accordingly. A future PR will golf mathlib using these elaborators. --- - [x] depends on: #30744 - [x] depends on: #30879 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-meta 513/76 Mathlib/Geometry/Manifold/Notation.lean,MathlibTest/DifferentialGeometry/Notation.lean,MathlibTest/DifferentialGeometry/NotationAdvanced.lean,MathlibTest/DifferentialGeometry/NotationSphere.lean 4 18 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'thorimur'] thorimur
assignee:thorimur
5-55647
5 days ago
unknown
unknown
26588 faenuccio
author:faenuccio
feat(Algebra/GroupWithZero/WithZero): add the multiplicative embedding with zero from the range We extend the embedding of the range of a `MonoidWithZeroHom` to the codomain by enriching it with the structure of an ordered, multiplicative embedding. In passing, we extend some results about the embedding of `WithZero` of the units of a group with zero, to the group itself. This will be used in the theory on valuation on rings. In particular, it is needed for correcting the definition of `Valuation.IsRankOne` in Mathlib (see #26872). Co-authored-by: María Inés de Frutos Fernández @mariainesdff --- - [x] depends on: #29594 - [x] depends on: #29644 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
129/2 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean 3 121 ['YaelDillies', 'erdOne', 'eric-wieser', 'faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'mariainesdff', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] YaelDillies
assignee:YaelDillies
5-46123
5 days ago
7-42835
7 days ago
47-24161
47 days
34940 michaellee94
author:michaellee94
feat: the graph of a continuous function on a $C^n$ manifold is a $C^n$ manifold --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 227/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Graph.lean 2 56 ['botbaki-review', 'github-actions', 'grunweg', 'michaellee94'] ocfnash
assignee:ocfnash
5-43316
5 days ago
5-42594
5 days ago
10-36269
10 days
34193 bwangpj
author:bwangpj
feat(Topology/Algebra/Ring): ContinuousAddEquiv.mulLeft, mulRight The additive homeomorphism from a topological ring to itself, induced by left/right multiplication by a unit. From FLT. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology FLT maintainer-merge 25/0 Mathlib/Topology/Algebra/Ring/Basic.lean 1 9 ['bwangpj', 'dagurtomas', 'eric-wieser', 'github-actions'] dagurtomas
assignee:dagurtomas
5-31973
5 days ago
27-60218
27 days ago
27-62353
27 days
34674 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): replace ENNReal lemmas with WithTop versions * Add `WithTop` versions of basic multiplicative order lemmas. * Use the new `WithTop` lemmas to replace `ENNReal` proofs and address six TODOs. * Fix a typo in the `pos_of_ne_zero` alias name. new-contributor t-algebra
label:t-algebra$
46/15 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/ENNReal/Operations.lean 3 4 ['Citronhat', 'Ruben-VandeVelde', 'github-actions'] Ruben-VandeVelde
assignee:Ruben-VandeVelde
5-29102
5 days ago
14-63321
14 days ago
16-48891
16 days
34455 vihdzp
author:vihdzp
chore(NumberTheory/MahlerMeasure): turn `BoxPoly` notation into a def --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 22/24 Mathlib/NumberTheory/MahlerMeasure.lean 1 10 ['MichaelStollBayreuth', 'fbarroero', 'github-actions', 'jcommelin', 'vihdzp'] MichaelStollBayreuth and jcommelin
assignee:jcommelin assignee:MichaelStollBayreuth
5-26611
5 days ago
15-42161
15 days ago
22-13724
22 days
28246 Sebi-Kumar
author:Sebi-Kumar
feat(AlgebraicTopology/FundamentalGroupoid): the n-sphere is simply connected for n > 1 Prove that the `n`-dimensional sphere (i.e., the unit sphere centered at the origin in `(n + 1)`-dimensional real Euclidean space) is a simply connected space for `n > 1`. This proof follows Hatcher's "Algebraic Topology"; we first prove a general lemma about decomposing loops and then exploit the fact that non-surjective loops in the sphere are homotopically trivial. Note: To get this file to build, I edited `Mathlib/Tactic/Linter/DirectoryDependency.lean` to remove the restrictions on AlgebraicTopology files importing Geometry, NumberTheory, and FieldTheory files. Thank you to those who shared their expertise [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Warning.20that.20AlgebraicTopology.20can't.20import.20SetTheory/with/533833638). As I understand it, this is just a short-term solution, so I would appreciate feedback on what to do about this situation. Note: I am unsure where exactly the file `SimplyConnectedSphere.lean` should go or whether that is an appropriate name for the file, so feedback there would be appreciated. --- To provide additional context, this code was written 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. - [x] depends on: #28208 - [x] depends on: #28198 - [x] depends on: #28185 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor 343/3 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnectedSphere.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 5 ['dagurtomas', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] robin-carlier
assignee:robin-carlier
5-14337
5 days ago
11-34201
11 days ago
11-33979
11 days
34969 kim-em
author:kim-em
feat(RingTheory/HopfAlgebra): prove antipode is antihomomorphism This PR proves that the antipode of a Hopf algebra is an antihomomorphism: `antipode (a * b) = antipode b * antipode a`. The proof uses the convolution algebra structure on `(A ⊗ A) →ₗ[R] A` and shows that `S ∘ μ` and `μ ∘ (S ⊗ S) ∘ comm` are both convolution inverses of `μ`, hence they must be equal by uniqueness of inverses. This resolves a TODO listed in the file header. 🤖 Prepared with Claude Code t-ring-theory 88/2 Mathlib/RingTheory/HopfAlgebra/Basic.lean 1 1 ['github-actions'] erdOne
assignee:erdOne
5-5370
5 days ago
8-81907
8 days ago
8-81685
8 days
34998 bwangpj
author:bwangpj
feat(LinearAlgebra/BilinearForm): remove `BilinForm.IsRefl` hypothesis in some theorems Strengthen some theorems in `LinearAlgebra.BilinearForm.Orthogonal` by removing their `BilinForm.IsRefl` hypothesis; they are true verbatim without it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
24/21 Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean 1 1 ['github-actions'] joelriou
assignee:joelriou
5-5369
5 days ago
8-79538
8 days ago
9-10002
9 days
35013 CoolRmal
author:CoolRmal
feat(Topology/Bornology): a locally bounded function maps a compact set to a bounded set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 10/0 Mathlib/Topology/Compactness/Compact.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
5-5368
5 days ago
8-56339
8 days ago
8-56117
8 days
35014 RemyDegenne
author:RemyDegenne
feat: Radon-Nikodym derivative of a composition-product For finite measures and kernels, under an absolute continuity condition: ``` (μ ⊗ₘ κ).rnDeriv (ν ⊗ₘ η) =ᵐ[ν ⊗ₘ η] (fun p ↦ μ.rnDeriv ν p.1 * (μ ⊗ₘ κ).rnDeriv (μ ⊗ₘ η) p) ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 126/0 Mathlib.lean,Mathlib/Probability/Kernel/Composition/MeasureCompProd.lean,Mathlib/Probability/Kernel/Composition/RadonNikodym.lean 3 1 ['github-actions'] EtienneC30
assignee:EtienneC30
5-5367
5 days ago
8-56102
8 days ago
8-55880
8 days
35015 RemyDegenne
author:RemyDegenne
feat: `rnDeriv` as ratio of densities wrt a dominating measure For a dominating measure `ξ` of two sigma-finite measures `μ` and `ν`, ``` μ.rnDeriv ν =ᵐ[ν] fun x ↦ μ.rnDeriv ξ x / ν.rnDeriv ξ x ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 74/0 Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean 1 1 ['github-actions'] EtienneC30
assignee:EtienneC30
5-5366
5 days ago
8-55612
8 days ago
8-55390
8 days
35019 JovanGerb
author:JovanGerb
feat(Algebra/Homology/ComplexShape): use `to_dual` This PR uses `to_dual` to dualize `ComplexShape` to itself, swapping `next` to `prev` and `up` to `down`. If we wait for #34863 to be merged first, the we can get rid of one `to_dual existing`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 29/50 Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Tactic/Translate/ToDual.lean 2 1 ['github-actions'] robin-carlier
assignee:robin-carlier
5-5365
5 days ago
8-32699
8 days ago
8-32477
8 days
35039 wwylele
author:wwylele
feat(LinearAlgebra/AffineSpace): small lemmas about lineMap and homothety Three lemmas about their interaction with AffineSubspace, and AffineCombination. Building towards #34826 `AffineMap.homothety_mem` is mostly just restating `AffineMap.lineMap_mem`, but since they are affine map with different names, putting it here can give better discovery --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
25/0 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/Combination.lean 2 5 ['copilot-pull-request-reviewer', 'github-actions'] joelriou
assignee:joelriou
5-5363
5 days ago
8-26146
8 days ago
8-25924
8 days
34915 smmercuri
author:smmercuri
feat(Topology/Algebra/RestrictedProduct): the units of a restricted product are isomorphic to the restricted product of the units --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology FLT maintainer-merge 94/0 Mathlib.lean,Mathlib/Topology/Algebra/RestrictedProduct/Units.lean 2 5 ['dagurtomas', 'github-actions', 'smmercuri'] dagurtomas
assignee:dagurtomas
4-56838
4 days ago
4-56013
4 days ago
11-38410
11 days
34440 grunweg
author:grunweg
feat: linter for name components in uppercase Per the naming convention, these are errors (unless they are an abbreviation). Mathlib has *many* violations at the moment: for this reason, we add this as an environment linter and automatically add all current exceptions. Once these have been fixed, converting to a syntax linter is desirable. Until then, track the number of such exceptions as technical debt. --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/naming.20convention.20linter/with/570617527) Note to self: wait for CI, then do a final nolints update. and try to implement the follow-up soon [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import maintainer-merge 1018/9 Mathlib/Tactic/Linter/Style.lean,MathlibTest/DoubleUnderscore.lean,MathlibTest/HashLint.lean,MathlibTest/Lint.lean,MathlibTest/LintStyle.lean,scripts/nolints.json,scripts/technical-debt-metrics.sh 7 21 ['github-actions', 'grunweg', 'joneugster'] joneugster
assignee:joneugster
4-54376
4 days ago
11-37628
11 days ago
13-39835
13 days
32807 WilliamCoram
author:WilliamCoram
feat: Define the Gauss norm for MvPowerSeries We adjust the current definition for Gauss norm on power series to work for multivariate power series. If this seems acceptable I can refactor the single variable case. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 124/0 Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 2 25 ['WilliamCoram', 'erdOne', 'fbarroero', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] alreadydone
assignee:alreadydone
4-45670
4 days ago
4-45025
4 days ago
17-45997
17 days
34423 euprunin
author:euprunin
chore: golf using `grind` The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `LucasLehmer.norm_num_ext.sModNat_eq_sMod`: 950 ms before, 758 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 1/8 Mathlib/NumberTheory/LucasLehmer.lean 1 10 ['eric-wieser', 'euprunin', 'github-actions', 'leanprover-radar'] eric-wieser
assignee:eric-wieser
4-41765
4 days ago
5-26534
5 days ago
23-10403
23 days
34154 euprunin
author:euprunin
chore: golf using `grind` and add `grind` annotations The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `SimplicialObject.Splitting.IndexSet.eqId_iff_len_eq`: <10 ms before, 41 ms after * `Orientation.nonneg_inner_and_areaForm_eq_zero_iff_sameRay`: 311 ms before, 284 ms after 🎉 * `UV.compression_self`: 29 ms before, 19 ms after 🎉 * `AkraBazziRecurrence.GrowsPolynomially.eventually_atTop_nonneg_or_nonpos`: 2828 ms before, 1399 ms after 🎉 * `Cycle.chain_iff_pairwise`: <10 ms before, 149 ms after * `List.dlookup_kunion_left`: 21 ms before, 104 ms after * `Polynomial.isRoot_of_isRoot_iff_dvd_derivative_mul`: 106 ms before, 183 ms after * `IsSepClosed.exists_root_C_mul_X_pow_add_C_mul_X_add_C`: 405 ms before, 291 ms after 🎉 * `InnerProductGeometry.norm_add_eq_add_norm_iff_angle_eq_zero`: 425 ms before, 309 ms after 🎉 * `Monoid.CoprodI.Word.mem_equivPair_tail_iff`: 161 ms before, 263 ms after * `pathComponent_congr`: <10 ms before, 31 ms after * `preCantorSet_antitone`: 2147 ms before, 683 ms after 🎉 * `tendstoLocallyUniformlyOn_iff_filter`: 11 ms before, 71 ms after This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 21/100 Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/AlgebraicTopology/SimplicialObject/Split.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Combinatorics/SetFamily/Compression/UV.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/Opposite.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/UniformSpace/LocallyUniformConvergence.lean 15 8 ['Parcly-Taxel', 'euprunin', 'github-actions', 'leanprover-radar', 'mathlib4-merge-conflict-bot', 'tb65536'] kim-em
assignee:kim-em
4-41688
4 days ago
21-70243
21 days ago
22-30747
22 days
34112 euprunin
author:euprunin
chore: golf using `grind` (and add one supporting `grind` annotation) The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `Quandle.conj_swap`: 63 ms before, 35 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 2/3 Mathlib/Algebra/Quandle.lean 1 5 ['euprunin', 'github-actions', 'leanprover-radar'] robin-carlier
assignee:robin-carlier
4-41682
4 days ago
5-30156
5 days ago
30-24946
30 days
33082 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(GroupTheory/SpecificGroups/Alternating/Simple): the alternating group on at least 5 letters is simple. This is the conclusion of the story of the proof of simplicity of the alternating group using the Iwasawa criterion. * `Equiv.Perm.iwasawaStructure_two`: the natural `IwasawaStructure` of `Equiv.Perm α` acting on `Nat.Combination α 2` Its commutative subgroups consist of the permutations with support in a given element of `Nat.Combination α 2`. They are cyclic of order 2. * `alternatingGroup_of_le_of_normal`: If `α` has at least 5 elements, then a nontrivial normal subgroup of `Equiv.Perm α` contains the alternating group. * `alternatingGroup.iwasawaStructure_three`: the natural `IwasawaStructure` of `alternatingGroup α` acting on `Nat.Combination α 3` Its commutative subgroups consist of the permutations with support in a given element of `Nat.Combination α 2`. They are cyclic of order 3. * `alternatingGroup.iwasawaStructure_three`: the natural `IwasawaStructure` of `alternatingGroup α` acting on `Nat.Combination α 4` Its commutative subgroups consist of the permutations of cycleType (2, 2) with support in a given element of `Nat.Combination α 2`. They have order 4 and exponent 2 (`IsKleinFour`). * `alternatingGroup.normal_subgroup_eq_bot_or_eq_top`: If `α` has at least 5 elements, then a nontrivial normal subgroup of `alternatingGroup` is `⊤`. * `alternatingGroup.isSimpleGroup`: If `α` has at least 5 elements, then `alternatingGroup α` is a simple group. --- - [x] depends on: #34307 - [x] depends on: #34308 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 459/5 Mathlib.lean,Mathlib/GroupTheory/Perm/ConjAct.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/MaximalSubgroups.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Simple.lean,Mathlib/GroupTheory/SpecificGroups/KleinFour.lean 8 54 ['AntoineChambert-Loir', 'Ruben-VandeVelde', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] mattrobball
assignee:mattrobball
4-39015
4 days ago
4-37461
4 days ago
15-63145
15 days
34872 Hagb
author:Hagb
feat(Data/Finsupp/Basic): add `comapDomain_embDomain` and generalize `comapDomain_surjective` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 9/7 Mathlib/Data/Finsupp/Basic.lean 1 3 ['Hagb', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
4-31958
4 days ago
4-29675
4 days ago
12-20877
12 days
33672 euprunin
author:euprunin
chore: golf using `grind`. add `grind` annotations. The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `Orientation.nonneg_inner_and_areaForm_eq_zero_iff_sameRay`: 287 ms before, 336 ms after * `PFunctor.liftr_iff`: 49 ms before, 93 ms after * `IsAdjoinRootMonic.coeff_root_pow`: 119 ms before, 267 ms after This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 9/33 Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Data/PFunctor/Univariate/Basic.lean,Mathlib/RingTheory/IsAdjoinRoot.lean 3 4 ['euprunin', 'github-actions', 'jcommelin', 'leanprover-radar'] dwrensha
assignee:dwrensha
4-29469
4 days ago
4-29469
4 days ago
38-85709
38 days
34690 SnirBroshi
author:SnirBroshi
chore(Data/Set/Inclusion): small golf Also added `inclusion_eq_subtype_map` for `inclusion h = Subtype.map id h` which is true by definition. --- ~~I also respelled the def of `Set.inclusion` using `Subtype.map` so that we can use existing `Subtype.map` API with it. The new spelling is defeq to the previous, but it still surfaced a few defeq abuses that I had to fix. (If the respelling is controversial I'll revert it, but ideally we wouldn't even `@[expose]` the definition)~~ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 14/16 Mathlib/Data/Set/Inclusion.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
4-20398
4 days ago
4-20743
4 days ago
13-68712
13 days
35084 edegeltje
author:edegeltje
feat(Combinatorics/SimpleGraph): The Cayley graph for structures with `Mul`/`Add` This pr: - adds the definition `SimpleGraph.mulCayley`, defining the simple graph induced by a `Mul` instance, - proves various lemmas about the above, - adds/proves the additive versions of all of the above, - redefines `SimpleGraph.circulantGraph` to use `addCayley`, - reproves lemmas about `circulantGraph` to use the new `addCayley` lemmas. some related zulip conversation: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Cayley.20and.20circulant.20graph/with/572839048 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 106/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Cayley.lean 2 22 ['SnirBroshi', 'edegeltje', 'github-actions', 'vihdzp', 'vlad902'] nobody
4-20371
4 days ago
4-19652
4 days ago
7-37767
7 days
31560 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Topology/Sion): the minimax theorem of von Neumann - Sion Prove `Sion.exists_isSaddlePointOn` : Let X and Y be convex subsets of topological vector spaces E and F, X being moreover compact, and let f : X × Y → ℝ be a function such that - for all x, f(x, ⬝) is upper semicontinuous and quasiconcave - for all y, f(⬝, y) is lower semicontinuous and quasiconvex Then inf_x sup_y f(x,y) = sup_y inf_x f(x,y). The classical case of the theorem assumes that f is continuous, f(x, ⬝) is concave, f(⬝, y) is convex. As a particular case, one get the von Neumann theorem where f is bilinear and E, F are finite dimensional. We follow the proof of Komiya (1988). ## Remark on implementation * The essential part of the proof holds for a function `f : X → Y → β`, where `β` is a complete dense linear order. * We have written part of it for just a dense linear order, * On the other hand, if the theorem holds for such `β`, it must hold for any linear order, for the reason that any linear order embeds into a complete dense linear order. However, this result does not seem to be known to Mathlib. * When `β` is `ℝ`, one can use `Real.toEReal` and one gets a proof for `ℝ`. ## TODO Give particular important cases (eg, bilinear maps in finite dimension). Co-authored with @ADedecker --- - [x] depends on: #31548 - [x] depends on: #31547 - [x] depends on: #31558 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 733/0 Mathlib.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Topology/Semicontinuity/Basic.lean,Mathlib/Topology/Sion.lean,docs/references.bib 5 10 ['AntoineChambert-Loir', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'riccardobrasca', 'thorimur'] dwrensha and kmill
assignee:kmill assignee:dwrensha
4-18265
4 days ago
4-18265
4 days ago
65-51763
65 days
33348 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection): characterization of transvections among dilatransvections WIP. * `LinearEquiv.fixedReduce`. Pass a linear equivalence to the quotient by a fixed subspace. * Characterize transvections among dilatransvections by the fact that their reduction is the identity. --- - [x] depends on: #33347 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
273/3 Mathlib/LinearAlgebra/Transvection.lean 1 15 ['AntoineChambert-Loir', 'dagurtomas', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
4-18239
4 days ago
4-17504
4 days ago
12-34826
12 days
34978 harahu
author:harahu
doc(CategoryTheory/Bicategory/Functor): clean up docstrings Fix doc-only inconsistencies across bicategory functor files. --- The issues were found and fixed with help from Codex. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 45/41 Mathlib/CategoryTheory/Bicategory/Functor/Cat/ObjectProperty.lean,Mathlib/CategoryTheory/Bicategory/Functor/Lax.lean,Mathlib/CategoryTheory/Bicategory/Functor/LocallyDiscrete.lean,Mathlib/CategoryTheory/Bicategory/Functor/Oplax.lean,Mathlib/CategoryTheory/Bicategory/Functor/Prelax.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/Functor/StrictPseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/Functor/StrictlyUnitary.lean 8 8 ['dagurtomas', 'github-actions', 'harahu', 'joelriou'] erdOne
assignee:erdOne
4-17980
4 days ago
4-28107
4 days ago
8-42437
8 days
33944 artie2000
author:artie2000
feat(Algebra/Ring): formally real rings * Define formally real rings * Prove basic inductive facts about them Co-authored-by: Violeta Hernández Palacios --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
160/0 Mathlib.lean,Mathlib/Algebra/Ring/IsFormallyReal.lean 2 24 ['artie2000', 'github-actions', 'vihdzp'] mariainesdff
assignee:mariainesdff
4-12398
4 days ago
4-11362
4 days ago
14-79271
14 days
34069 artie2000
author:artie2000
feat(Algebra/Order/Algebra): algebra is ordered iff inclusion map is monotone * Prove that an extension of ordered semirings forms an ordered algebra iff the inclusion map is injective * Reorganise section variables for clarity The typeclass `PartialOrder α` in `IsOrderedModule.of_algebraMap_mono` can be generalised to `Preorder α`. This has no mathematical application and all the other lemmas are proved over a partially ordered type, so this generalisation was not made. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
18/7 Mathlib/Algebra/Order/Algebra.lean 1 1 ['github-actions'] pechersky
assignee:pechersky
4-12381
4 days ago
4-10669
4 days ago
30-8833
30 days
35021 SnirBroshi
author:SnirBroshi
chore(Data/Bool/Count): golf using grind --- The goal was to get rid of the flexible-linter exception, but I ended up golfing more. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 6/23 Mathlib/Data/Bool/Count.lean 1 6 ['SnirBroshi', 'github-actions', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
4-6267
4 days ago
4-32599
4 days ago
8-40827
8 days
25992 Multramate
author:Multramate
feat(RingTheory/Ideal/Span): add pair lemmas This PR continues the work from #25323. Original PR: https://github.com/leanprover-community/mathlib4/pull/25323 t-ring-theory 128/32 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Span.lean 3 41 ['Multramate', 'Ruben-VandeVelde', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
4-5408
4 days ago
7-41618
7 days ago
7-41399
7 days
26292 RemyDegenne
author:RemyDegenne
feat(MeasureTheory): tightness of the range of a sequence * `isTightMeasureSet_range_iff_tendsto_limsup_measure_norm_gt`: in a proper normed group, the range of a sequence of measures `μ : ℕ → Measure E` is tight if and only if the function `r : ℝ ↦ limsup (fun n ↦ μ n {x | r < ‖x‖}) atTop` tends to `0` at infinity. * `isTightMeasureSet_range_iff_tendsto_limsup_inner`: in a finite-dimensional inner product space, the range of a sequence of measures `μ : ℕ → Measure E` is tight if and only if the function `r : ℝ ↦ limsup (fun n ↦ μ n {x | r < ‖⟪y, x⟫_𝕜‖}) atTop` tends to `0` at infinity for all `y`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24838.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24838* t-measure-probability 186/2 Mathlib/MeasureTheory/Measure/TightNormed.lean 1 5 ['Komyyy', 'RemyDegenne', 'github-actions', 'mathlib4-merge-conflict-bot'] urkud
assignee:urkud
4-5407
4 days ago
7-43810
7 days ago
8-62300
8 days
30982 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle/Incenter): angle bisection and the incenter Add lemmas relating the incenter and excenters of a simplex to angle bisection, both generally for a simplex and more specifically with oriented angles for a triangle. More specific lemmas for a simplex (identifying exactly which excenter corresponds to which bisectors) will require various additional API for bisectors of angles betweeen oriented affine subspaces (but for the most common applications to typical plane geometry problems, I expect the triangle lemmas with oriented angles to be more useful). --- - [ ] depends on: #30474 - [ ] depends on: #30477 - [ ] depends on: #30600 - [ ] depends on: #30703 - [ ] depends on: #30938 - [ ] depends on: #30981 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 278/0 Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Incenter.lean 2 4 ['github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'wwylele'] JovanGerb
assignee:JovanGerb
4-5406
4 days ago
7-45416
7 days ago
7-45194
7 days
33650 vihdzp
author:vihdzp
refactor: deprecate bespoke `Hyperreal` machinery Currently, these six definitions are in the `Hyperreal` namespace: - `IsSt x r`: a predicate for `r` being a standard part of `x` - `st x`: the standard part of `x` - `Infinitesimal x`: predicate for infinitesimal elements - `InfinitePos x`: predicate for infinite and positive elements - `InfiniteNeg x`: predicate for infinite and negative elements - `Infinite x`: predicate for infinite (positive or negative) elements. We deprecate all six of these and all of their API, in favor of reasoning with [`ArchimedeanClass`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Archimedean/Class.html#ArchimedeanClass) and [`ArchimedeanClass.stdPart`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/StandardPart.html#ArchimedeanClass.stdPart). The replacements are as follows: - `IsSt x r`: `0 ≤ ArchimedeanClass.mk x ∧ stdPart x = r` - `st x`: `stdPart x` - `Infinitesimal x`: `0 < ArchimedeanClass.mk x` - `InfinitePos x`: `0 < x ∧ ArchimedeanClass.mk x < 0` - `InfiniteNeg x`: `x < 0 ∧ ArchimedeanClass.mk x < 0` - `Infinite x`: `ArchimedeanClass.mk x < 0` All of these equivalences are proved within the PR, though these new theorems have also been insta-deprecated. Most of the existing API on these predicates was largely uninteresting boilerplate, and has been deprecated without replacement. For the few results of mathematical interest (those whose proofs are longer than a few lines), I've golfed their proofs as a stress test to ensure that this new API is capable of easily proving them. I've kept everything in the same file to minimize the diff. A future PR will move the obsolete material to `Deprecated.Hyperreal`. --- - [x] depends on: #33644 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
384/96 Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Analysis/Real/Hyperreal.lean 2 12 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'ocfnash', 'vihdzp', 'wwylele'] dagurtomas
assignee:dagurtomas
4-5405
4 days ago
7-10882
7 days ago
12-74933
12 days
34702 pfaffelh
author:pfaffelh
feat(Data/FinsetPowerset): The set `{v : List.Vector Bool n | v.val.count = k}` has cardinality `n.choose k` Show that `{v : List.Vector Bool n | v.val.count = k}` has cardinality `n.choose k`. The proof builds on `powersetCard k s` (the subsets of `s : Finset _` with cardinality `k`), and an equivalence to the above set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data 52/1 Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Fintype/Pi.lean,Mathlib/Logic/Equiv/Fintype.lean 3 25 ['DavidLedvinka', 'b-mehta', 'eric-wieser', 'github-actions', 'joneugster', 'pfaffelh'] pechersky
assignee:pechersky
4-5404
4 days ago
10-8345
10 days ago
15-405
15 days
34820 staroperator
author:staroperator
feat(Order/Ideal): more results on order ideals Some iffs, closure of finite supremum, and that every proper ideal is contained in a maximal ideal. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order large-import 79/5 Mathlib/Order/Ideal.lean 1 5 ['bryangingechen', 'github-actions', 'leanprover-radar', 'staroperator'] pechersky
assignee:pechersky
4-5403
4 days ago
7-9986
7 days ago
13-54553
13 days
34966 Deep0Thinking
author:Deep0Thinking
feat(MeasureTheory): add `IntegrableOn. tendsto_primitive_` over `Ioi/Iio` and `IntegrableOn.continuousOn_primitive_` over `Ioi/Iio/Ici/Iic` This PR mainly proves: - `IntegrableOn.tendsto_primitive_` over `Ioi/Iio` - `IntegrableOn.continuousWithinAt_primitive_` over `Ioi/Iio` - `IntegrableOn.continuousOn_primitive_` over `Ioi/Iio/Ici/Iic` - `IntegrableOn.tendsto_integral_` over `Ioi/Iio/Ici/Iic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 204/1 Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/Order/Interval/Set/LinearOrder.lean 3 6 ['CoolRmal', 'Deep0Thinking', 'github-actions'] RemyDegenne
assignee:RemyDegenne
4-5400
4 days ago
8-59750
8 days ago
9-53234
9 days
35067 bustercopley
author:bustercopley
style(RingTheory/PowerSeries/Derivative): prove derivative_pow from Derivation.leibniz_pow --- Firstly prove `derivative_pow` from the more general `Derivation.leibniz_pow` (because I think this is more illuminating), and secondly generalize `derivative_pow` to `CommSemiring`. The two are independent, in that the texts of the original and modified proofs both work fine, with either hypothesis. t-ring-theory easy 4/10 Mathlib/RingTheory/PowerSeries/Derivative.lean 1 3 ['bustercopley', 'github-actions'] erdOne
assignee:erdOne
4-5399
4 days ago
8-1294
8 days ago
8-1720
8 days
35081 tb65536
author:tb65536
feat(Topology/Algebra/Group/Extension): define short exact sequence of topological groups This PR defines a short exact sequence of topological groups to be a closed embedding followed by an open quotient map (extracted from #32672). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 57/0 Mathlib.lean,Mathlib/Topology/Algebra/Group/Extension.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
4-5398
4 days ago
7-27228
7 days ago
7-49226
7 days
35100 stepan2698-cpu
author:stepan2698-cpu
feat: definition of a character of a representation This PR begins to transfer definitions and theorems about characters from `FDRep` to `Representation`. Once #34888 is merged, the theorems involving isomorphisms of representations will be appropriately restated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
57/0 Mathlib/RepresentationTheory/Character.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
4-5396
4 days ago
7-20118
7 days ago
7-19896
7 days
34757 Hagb
author:Hagb
feat(Algebra/MvPolynomial/Rename): some lemmas about `rename` and `killCompl` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
64/1 Mathlib/Algebra/MvPolynomial/Rename.lean 1 3 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
3-83123
3 days ago
3-81552
3 days ago
13-71740
13 days
34758 Hagb
author:Hagb
feat(RingTheory/MvPolynomial/MonomialOrder): misc lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 51/1 Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 1 5 ['Hagb', 'erdOne', 'github-actions'] mattrobball
assignee:mattrobball
3-82751
3 days ago
3-82053
3 days ago
8-7773
8 days
24065 kim-em
author:kim-em
chore: script to give topological sort of modules This script is not useful by itself: it just gives a topological sort of Mathlib's import graph. But I've several times found it useful when I want to modify many files systematically with minimal rebuilding: just work backwards through the list. 102/0 scripts/README.md,scripts/topological_sort.py 2 14 ['SnirBroshi', 'github-actions', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot'] jcommelin
assignee:jcommelin
3-73132
3 days ago
5-74320
5 days ago
5-74098
5 days
33188 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): introduce rename This file establishes the `rename` operation on multivariate power series under a map with finite fibers, which modifies the set of variables. This file is patterned after `MvPolynomials/Rename.lean` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory large-import 426/1 Mathlib.lean,Mathlib/Data/Finsupp/Antidiagonal.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean 7 26 ['BryceT233', 'Komyyy', 'erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] erdOne and riccardobrasca
assignee:riccardobrasca assignee:erdOne
3-72814
3 days ago
3-71116
3 days ago
32-39947
32 days
35250 vlad902
author:vlad902
feat(SimpleGraph): redefine `cycleGraph` independent of `circulantGraph` Right now the `cycleGraph` definition relies on `circulantGraph` which requires importing Group definitions from the algebra hierarchy. This causes large-imports for me in later PRs where I try to make more widespread use of cycleGraphs, so here I redefine it to be its own independent object, and leave moving it from `Circulant.lean` to another PR (this is parallel to #35084.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 10/10 Mathlib/Combinatorics/SimpleGraph/Circulant.lean 1 4 ['SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] nobody
3-66723
3 days ago
3-65983
3 days ago
4-45153
4 days
34870 JovanGerb
author:JovanGerb
refactor(gcongr): split `MVarId.gcongr` into multiple functions This PR splits `MVarId.gcongr` into multiple functions. Previously, `MVarId.gcongr` was a bit too large of a function for readability/maintainability. We also add a new monad `GCongrM` in order to keep track of the state more conveniently. This change will make future improvements in `gcongr` easier. This PR doesn't change any behaviour, but does add two TODO comments. Implementation notes: - `MVarId.gcongrCore` will now always throw an exception when it doesn't succeed, and it is wrapped in a try-catch block to catch these if that is desired. - I replaced `saveState` with `getMCtx`, because the former didn't work in the `GCongrM` monad, and the only thing we are interested in saving/reverting is the metavariable context anyways. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 135/98 Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRewrite/Core.lean 2 2 ['github-actions', 'joneugster'] dwrensha and joneugster
assignee:dwrensha assignee:joneugster
3-66648
3 days ago
3-63244
3 days ago
10-20304
10 days
35292 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): taking twice from a walk equals taking the minimum this is an analogue to `List.take_take`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 5/0 Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
3-42161
3 days ago
3-41419
3 days ago
3-54166
3 days
35307 samueloettl
author:samueloettl
fix(Dynamics/BirkhoffSum): birkhoffAverage_of_comp_eq only needs AddCommMonoid --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor easy 8/8 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 4 ['github-actions', 'samueloettl'] nobody
3-38481
3 days ago
3-38593
3 days ago
3-38371
3 days
33249 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): `take` is path if original walk is path Proves that taking or dropping the first `n` consecution darts from a path gives another path. --- - [x] depends on: #26614 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 16/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 7 ['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
3-37557
3 days ago
3-40888
3 days ago
10-27162
10 days
35308 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Add coercion from submodule to cone Add coercion from submodule to cone and support lemmas. The main feature is * `PointedCone.ofSubmodule` coercing a submodule to a pointed cone and the corresponding `Coe` instance. There are further lemmas coercing membership and lattice operations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 55/4 Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/Geometry/Convex/Cone/README.md 2 1 ['github-actions'] nobody
3-37063
3 days ago
3-36045
3 days ago
3-35823
3 days
33129 Paul-Lez
author:Paul-Lez
feat(Tactic/Simproc/VecPerm): add simproc for permuting entries of a vector --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 165/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/VecPerm.lean,MathlibTest/Simproc/VecPerm.lean 4 73 ['JovanGerb', 'Paul-Lez', 'b-mehta', 'eric-wieser', 'github-actions', 'ocfnash'] JovanGerb
assignee:JovanGerb
3-34929
3 days ago
3-34243
3 days ago
43-27947
43 days
34697 wwylele
author:wwylele
feat(Geometry/Euclidean): the Euclidean volume measure This PR starts a series to set up volume measure for Euclidean geometry, so it can be used in formalizing problems involving area and volume. This PR only introduce the basic definition and properties. Some future PR will also include - Integral along an affine subspace to calculate the volume of an object - Define volume of a simplex using the base * height / n formula (not assuming measurability) - Show that the defined volume matches the measure of the interior (see the draft #34826 for the target lemma) - More specialized formula for the area of triangles. --- Zulip thread: [#Is there code for X? > Measure on affine space](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Measure.20on.20affine.20space/with/570193872) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry t-measure-probability 165/0 Mathlib.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean 2 11 ['copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] jsm28
assignee:jsm28
3-34794
3 days ago
13-19578
13 days ago
16-9584
16 days
32440 thorimur
author:thorimur
feat: make the `unusedInstancesInType` linters fire when instances are not used outside of proofs in the type This PR adjusts the `unusedDecidableInType` to prevent false negatives on declarations that only use `Decidable*` hypotheses in proofs that appear in the type. That is, the linter now fires when the `Decidable*` linter is unused outside of proofs. This PR also changes the warning message to be more direct, and indicates when the instance appears only in a proof (vs. not appearing at all). We exempt some deprecated lemmas in `Mathlib.Analysis.Order.Matrix` which the linter now fires on. (Presumably, most prior violations had been cleaned up by #10235, which also detected such lemmas.) Note that this took some tinkering to achieve sufficient performance. We use the following novel(?) "dolorous telescope" strategy (so named due to introducing `sorry`s) to avoid traversing the whole type: - when encountering an instance binder of concern, telescope to create an fvar. - when encountering any other binder, instantiate it with `sorry`. - as we proceed, collect the free variables from these expressions which do not appear in proofs. Since the instances of concern are the only free variables, free variable collection avoids traversing many subexpressions by checking for `hasFVar`, which is a computed field accessible in constant time. Perhaps surprisingly, this is (on net) more performant than using `eraseProofs` and then detecting dependence via bvars. We also implement an `Expr`-level early exit for most types by checking if they bind any instance of concern first. (This adds a very small overhead to types which *do* have an instance of concern, but the check is very fast.) This also adds a profiler category to this linter. Note: we still have yet to optimize (pre)-infotree traversal performance, and have yet to avoid proofs that appear in the value of definitions. However, this PR sets us up to do so. --- - [x] depends on: #35102 --- ## Notes on performance You might be wondering if this *is* actually a faster strategy, seeing as the bench is quite noisy. To determine this, I made a copy of the linter which I could vary without rebuilding mathlib, and profiled the relevant component locally on all imported declarations in Mathlib by linting the `eoi` token: ```lean module public meta import Lean public import Mathlib.Tactic.Linter.UnusedInstancesInTypeCopy import all Mathlib.Tactic.Linter.UnusedInstancesInTypeCopy open Lean Meta Elab Term Command Mathlib.Linter.UnusedInstancesInType meta section local instance : Insert Name NameSet where insert := fun n s => s.insert n def runCopy : Linter where run stx := do if stx.isOfKind ``Parser.Command.eoi then let opts := (← getOptions).setBool `profiler true let consts := (← getEnv).constants.map₁ -- The following expose private decls in their types, so break `MetaM` methods: let badRecs : NameSet := {`IO.Promise.casesOn, `IO.Promise.recOn, `IO.Promise.rec} profileitM Exception "control" opts do for (n,_) in consts do liftTermElabM do unless n.isInternalDetail || badRecs.contains n do pure () profileitM Exception "bench" opts do for (n,cinfo) in consts do unless n.isInternalDetail || badRecs.contains n do cinfo.toConstantVal.onUnusedInstancesInTypeWhere isDecidableVariant fun _ _ => pure () initialize addLinter runCopy ``` (This could have been done in a `run_cmd`, but I wanted to replicate the circumstances of linting as closely as possible, just in case it introduced mysterious async effects.) Then, in a separate file, I imported `Mathlib` and the above linter, and cycled through reading out the result and editing the underlying component then rebuilding. The control was reliably ~1.07-1.12s. The different strategies came out as follows (the following values are not averaged, but are representative): | | without early exit | with early exit | | ---: | :---: | :---: | | `eraseProofs` | 97.4s | 6.82s | | dolorous telescope | 20.3s | 3.99s | As you can see, the early exit cuts the absolute value (and therefore the absolute difference) down dramatically. But seeing as this lays the groundwork for linting defs and will be used for more linters (with wider scopes, and less early exit opportunities), I think we should opt for the more performant version even though there's some extra complexity. :) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter maintainer-merge 233/62 Mathlib/Analysis/Matrix/Order.lean,Mathlib/Lean/Expr/Basic.lean,Mathlib/Tactic/Linter/UnusedInstancesInType.lean,MathlibTest/UnusedInstancesInType/Basic.lean,MathlibTest/UnusedInstancesInType/Decidable.lean,MathlibTest/UnusedInstancesInType/Fintype.lean,MathlibTest/UnusedInstancesInType/FintypeNeedingImport.lean,MathlibTest/UnusedInstancesInType/SetOption.lean 8 39 ['github-actions', 'grunweg', 'joneugster', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'thorimur'] joneugster
assignee:joneugster
3-28983
3 days ago
3-25940
3 days ago
38-86309
38 days
34598 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): nondegeneracy conditions and interconversion with Affine.Triangle This PR implements suggestions provided in [this comment](https://github.com/leanprover-community/mathlib4/pull/34393#issuecomment-3810047384) by @jsm28: interconversion between `Polygon P 3` and `Affine.Triangle` as well as the nondegeneracy conditions `NondegenerateVertices` and `NondegenerateEdges`. I tried to keep typeclass restrictions as minimal as possible. --- new-contributor t-euclidean-geometry maintainer-merge 117/5 Mathlib/Geometry/Polygon/Basic.lean 1 18 ['A-M-Berns', 'eric-wieser', 'github-actions', 'jcommelin', 'jsm28'] jsm28
assignee:jsm28
3-24204
3 days ago
4-27307
4 days ago
17-32207
17 days
35266 j-loreaux
author:j-loreaux
refactor: make `OrderIso.ofHomInv` take actual `OrderHom`s instead of using classes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 9/22 Mathlib/Order/Hom/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean 2 1 ['github-actions'] nobody
3-23736
3 days ago
3-22871
3 days ago
3-22649
3 days
35289 sgouezel
author:sgouezel
chore: remove buggy instances For a given `F`, there should be at most one instance `OrderHomClass F α β` (by uniqueness of instances, and since alpha and beta are outparams). The PR removes two instances that violate this uniqueness principle. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 0/10 Mathlib/Order/Hom/Basic.lean 1 3 ['github-actions', 'grunweg', 'leanprover-radar'] nobody
3-23305
3 days ago
3-59268
3 days ago
3-59046
3 days
35261 j-loreaux
author:j-loreaux
feat: `push` lemmas for `Filter.NeBot` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 6/5 Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Defs.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Algebra/InfiniteSum/SummationFilter.lean 4 1 ['github-actions'] nobody
3-22584
3 days ago
3-21007
3 days ago
3-20785
3 days
34705 mpenciak
author:mpenciak
feat(AlgebraicGeometry): Grassmannian functor This PR shows that the association `A → A ⊗[R] M` for an `R`-module `M`, and `R`-algebra `A` forms a functor. (Disclosure: This PR was partially prepared by Claude) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 109/2 Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/Grassmannian.lean 2 6 ['github-actions', 'mpenciak', 'robin-carlier'] mariainesdff
assignee:mariainesdff
3-21644
3 days ago
3-20919
3 days ago
7-69932
7 days
34914 jvanwinden
author:jvanwinden
feat(Analysis/Normed/Module/FiniteDimension): add lemmas on IsTheta and summability IsTheta.summable_iff is a natural generalization of IsEquivalent.summable_iff. Some adjacent lemmas now become direct consequences. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 26/7 Mathlib/Analysis/Normed/Module/FiniteDimension.lean 1 13 ['github-actions', 'jvanwinden', 'themathqueen', 'vihdzp', 'wwylele'] urkud
assignee:urkud
3-20047
3 days ago
3-18969
3 days ago
11-40037
11 days
35329 BryceT233
author:BryceT233
feat(Data/Finsupp): add computational lemmas for cons and single This PR introduces `cons_eq_single_zero_iff` and `cons_eq_single_succ_iff`, which are helper lemmas designed to facilitate calculations (or simplification) of equalities involving `Finsupp.cons` and `Finsupp.single`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib/Data/Finsupp/Fin.lean 1 2 ['github-actions'] nobody
3-7699
3 days ago
3-5931
3 days ago
3-5709
3 days
34997 themathqueen
author:themathqueen
feat(LinearAlgebra/Matrix): convolutive intrinsic star ring on matrices Now that we have the type synonym `WithConv`, we can define a star ring structure on `WithConv (Matrix m n R)` given by the Hadamard product and the intrinsic star (intrinsic star here means `x.map star`). `WithConv (Matrix m n R)` is star-algebraically equivalent to `WithConv ((n → R) →ₗ[R] (m → R))` (will be done in a later PR). --- - [x] depends on: #34945 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
97/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/WithConv.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'themathqueen'] nobody
3-7243
3 days ago
7-10925
7 days ago
7-10703
7 days
30900 vihdzp
author:vihdzp
feat: run-length encoding --- - [x] depends on: #30898 Moved from #17105. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 167/0 Mathlib.lean,Mathlib/Data/List/RunLength.lean,Mathlib/Data/List/SplitBy.lean 3 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'plp127'] TwoFX
assignee:TwoFX
3-5397
3 days ago
7-8019
7 days ago
7-7797
7 days
33757 fpvandoorn
author:fpvandoorn
feat: classical "decidability" instances on sets and ideals * Add decidable equality instances for `Set X`, `Submodule R M` (which also gives it for `Ideal R`) and `Associates (Ideal R)`. * This allows one to remove such decidability arguments from lemmas. * There was one place where we used an explicit decidability argument to compute an explicit fintype-instance to construct the unique element of some type. This is now replaced by giving the element explicitly. --- This was motivated by seeing some code from @mariainesdff's repos with such decidability arguments. @mariainesdff, do you think this PR would make your code a bit nicer? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-data 69/33 Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Data/Set/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Card.lean,Mathlib/Logic/Basic.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/PartialSups.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Basic.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Lasker.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean 16 13 ['erdOne', 'fpvandoorn', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] erdOne
assignee:erdOne
3-5397
3 days ago
6-59046
6 days ago
15-48155
15 days
35058 GrigorenkoPV
author:GrigorenkoPV
chore: move tendsto_{floor,ceil}_at{Top,Bot} Moves: - Topology.Algebra.Order.Floor.tendsto_floor_atTop -> Order.Filter.AtTopBot.Floor.tendsto_floor_atTop - Topology.Algebra.Order.Floor.tendsto_floor_atBot -> Order.Filter.AtTopBot.Floor.tendsto_floor_atBot - Topology.Algebra.Order.Floor.tendsto_ceil_atTop -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atTop - Topology.Algebra.Order.Floor.tendsto_ceil_atBot -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atBot --- Tracked in #7987 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import 22/25 Mathlib/Order/Filter/AtTopBot/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
3-5395
3 days ago
6-59725
6 days ago
6-59503
6 days
35106 tb65536
author:tb65536
feat(AlgebraicGeometry/IdealSheaf/IrreducibleComponent): subscheme structure on an irreducible component This PR defines the subscheme structure on an irreducible component of a Noetherian scheme. See the module docstring for more details on this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 87/0 Mathlib.lean,Mathlib/AlgebraicGeometry/IdealSheaf/IrreducibleComponent.lean 2 3 ['erdOne', 'github-actions', 'tb65536'] dagurtomas
assignee:dagurtomas
3-5393
3 days ago
6-46166
6 days ago
7-2938
7 days
35111 kim-em
author:kim-em
chore(Order/Hom/Basic): remove unused OrderDual instances This PR removes `OrderHomClass.toOrderHomClassOrderDual` and `OrderIsoClass.toOrderIsoClassOrderDual`. These instances are unused throughout mathlib. These instances also require hacky local instances to work under https://github.com/leanprover/lean4/pull/12286. If they are both unused and unwanted, it is simpler to delete them on master rather than working around the issue. 🤖 Prepared with Claude Code t-order 0/10 Mathlib/Order/Hom/Basic.lean 1 1 ['github-actions'] Vierkantor
assignee:Vierkantor
3-5393
3 days ago
6-83633
6 days ago
6-83411
6 days
35132 justus-springer
author:justus-springer
feat(Algebra/Polynomial/Lifts): Add `mem_lifts_and_support_eq` `mem_lifts_and_degree_eq` was already proving the more general statement, so I extracted the proof. I need this for #34877. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
22/13 Mathlib/Algebra/Polynomial/Lifts.lean,Mathlib/RingTheory/Polynomial/Resultant/Basic.lean 2 5 ['github-actions', 'justus-springer', 'tb65536'] jcommelin
assignee:jcommelin
3-5392
3 days ago
6-37419
6 days ago
6-42253
6 days
35331 SnirBroshi
author:SnirBroshi
feat(SimpleGraph/Subgraph): small things about `spanningCoe` and a small golf --- Three unrelated things in the same file, each too small to be its own PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 13/4 Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 1 1 ['github-actions'] nobody
3-3446
3 days ago
3-2709
3 days ago
3-2487
3 days
35216 kim-em
author:kim-em
doc(Tactic/Translate/ToDual): add deployment guide for @[to_dual] This PR expands the documentation for `@[to_dual]` with practical advice for deploying it to existing code. **Module docstring** (`Mathlib/Tactic/Translate/ToDual.lean`): adds a "Deploying `@[to_dual]` to existing code" section covering name agreement, attribute propagation, docstring syntax ordering, declaration order dependencies, and known structural mismatches (conjunct reordering, type class gaps, interval argument swapping). **Attribute docstring**: adds a note that `@[simp]` is not auto-copied (must use `(attr := simp)`), and shows the correct ordering when combining `(attr := ...)` with docstrings. **Agent skill** (`.claude/skills/to_dual/SKILL.md`): detailed step-by-step instructions for an AI agent deploying `@[to_dual]`, including how to identify candidates, common patterns, and debugging. 🤖 Prepared with Claude Code 241/3 .claude/skills/to_dual/SKILL.md,Mathlib/Tactic/Translate/ToDual.lean 2 27 ['JovanGerb', 'github-actions', 'kim-em', 'vihdzp'] nobody
2-85385
2 days ago
2-82048
2 days ago
4-85356
4 days
35297 astrainfinita
author:astrainfinita
chore: clean up `sSup` and `sInf` usage --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy 10/12 Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/CategoryTheory/Category/Pairwise.lean,Mathlib/CategoryTheory/Limits/Lattice.lean,Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Order/Atoms.lean,Mathlib/Topology/Order/HullKernel.lean 6 1 ['github-actions', 'vihdzp'] nobody
2-75058
2 days ago
3-7170
3 days ago
3-40390
3 days
35312 Komyyy
author:Komyyy
feat(Order/Filter/Pointwise): `((∀ᶠ|∃ᶠ) x in op f, p x) ↔ ((∀ᶠ|∃ᶠ) x in f, p (op x))` This lemma is required when I prove that $z \mapsto \sin^{-1} z^{-1}$ is not meromorphic at $0$: ```lean4 @[simp] lemma Filter.frequently_inv {α : Type*} [Inv α] {f : Filter α} {p : α → Prop} : (∃ᶠ a in f⁻¹, p a) ↔ (∃ᶠ a in f, p a⁻¹) := frequently_map example : ¬(∀ᶠ z in 𝓝[≠] (0 : ℂ), sin⁻¹ z⁻¹ = 0) ↔ (∃ᶠ z in cobounded ℂ, sin z ≠ 0) := by simp [← inv_cobounded₀] ``` So I added the simp lemmas of `(∀ᶠ|∃ᶠ) x in op f, p x` for unary operations `op` (`-f`, `f⁻¹` & `a • f`). While I was at it, I also added the simp lemmas of `∃ᶠ x in pure a, p x` & `∃ᶠ x in (0|1), p x`, which previously existed only for the `∀ᶠ` versions. Binary operation versions will be added if necessary.
Appendix: Full proof of that $z \mapsto \sin^{-1} z^{-1}$ is not meromorphic at $0$ ```lean4 module import Mathlib.Analysis.Meromorphic.Basic import Mathlib.Analysis.SpecialFunctions.Trigonometric.Complex import Mathlib.Analysis.SpecialFunctions.Trigonometric.Deriv import Mathlib.Analysis.SpecificLimits.RCLike open Complex Filter Bornology open scoped Real Topology Pointwise @[simp] lemma Filter.frequently_inv {α : Type*} [Inv α] {f : Filter α} {p : α → Prop} : (∃ᶠ a in f⁻¹, p a) ↔ (∃ᶠ a in f, p a⁻¹) := frequently_map example : ¬MeromorphicAt (fun z => sin⁻¹ z⁻¹) 0 := by apply mt MeromorphicAt.eventually_eq_zero_or_eventually_ne_zero conv => equals (∃ᶠ z in cobounded ℂ, sin z ≠ 0) ∧ (∃ᶠ z in cobounded ℂ, sin z = 0) => simp [← inv_cobounded₀] constructor case left => have ht : Tendsto (fun x : ℝ ↦ ↑x * I) (cobounded ℝ) (cobounded ℂ) := by have ht₁ : Tendsto ((↑) : ℝ → ℂ) (cobounded ℝ) (cobounded ℂ) := RCLike.tendsto_ofReal_cobounded_cobounded ℂ have ht₂ : Tendsto (fun z : ℂ ↦ z * I) (cobounded ℂ) (cobounded ℂ) := tendsto_mul_right_cobounded (by simp) exact ht₂.comp ht₁ refine ht.frequently_map _ (fun x ↦ mt ?_) (eventually_ne_cobounded 0).frequently rw [sin_eq_zero_iff] rintro ⟨n, hn⟩ simpa using congr_arg im hn case right => suffices ht : Tendsto (fun n : ℤ ↦ (↑n * ↑π : ℂ)) atTop (cobounded ℂ) by apply ht.frequently; simp [sin_int_mul_pi, atTop_neBot] have ht₁ : Tendsto ((↑) : ℤ → ℝ) atTop (cobounded ℝ) := tendsto_intCast_atTop_cobounded have ht₂ : Tendsto ((↑) : ℝ → ℂ) (cobounded ℝ) (cobounded ℂ) := RCLike.tendsto_ofReal_cobounded_cobounded ℂ have ht₃ : Tendsto (fun z : ℂ ↦ z * ↑π) (cobounded ℂ) (cobounded ℂ) := tendsto_mul_right_cobounded (by simp) exact ht₃.comp <| ht₂.comp ht₁ ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-order 24/0 Mathlib/Order/Filter/Map.lean,Mathlib/Order/Filter/Pointwise.lean 2 1 ['github-actions'] nobody
2-74134
2 days ago
3-34186
3 days ago
3-33964
3 days
35325 SnirBroshi
author:SnirBroshi
feat(SimpleGraph/Acyclic): `ENat.card V ≤ 2 → G.IsAcyclic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 10/3 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 2 ['Rida-Hamadani', 'github-actions'] nobody
2-69440
2 days ago
3-9097
3 days ago
3-8875
3 days
35244 euprunin
author:euprunin
chore: golf proofs The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `LocallyBoundedVariationOn.ae_differentiableWithinAt_of_mem`: 199 ms before, 162 ms after 🎉 * `tendsto_natCast_div_add_atTop`: 247 ms before, 136 ms after 🎉 * `tendsto_div_of_monotone_of_exists_subseq_tendsto_div`: 2757 ms before, 2376 ms after 🎉 * `CategoryTheory.Presieve.isSheaf_iff_preservesFiniteProducts`: 219 ms before, 198 ms after 🎉 * `CategoryTheory.Pretriangulated.Triangle.mor₁_eq_zero_iff_epi₃`: 15 ms before, 13 ms after 🎉 * `CategoryTheory.Pretriangulated.Triangle.mor₃_eq_zero_iff_mono₁`: 23 ms before, 15 ms after 🎉 * `List.IsChain.cons_of_le`: 22 ms before, 17 ms after 🎉 * `List.Perm.inter_append`: 194 ms before, 19 ms after 🎉 * `Equivalence.quot_mk_eq_iff`: <10 ms before, <10 ms after 🎉 * `Stream'.Seq.destruct_eq_none`: <10 ms before, <10 ms after 🎉 * `MulAction.IsBlock.subsingleton_of_ssubset_of_stabilizer_le`: 169 ms before, 105 ms after 🎉 * `IsSimpleGroup.prime_card`: 60 ms before, 48 ms after 🎉 * `RootPairing.coxeterWeightIn_le_four`: 1236 ms before, 1126 ms after 🎉 * `MeasureTheory.Measure.haveLebesgueDecomposition_of_finiteMeasure`: 659 ms before, 584 ms after 🎉 * `IsFundamentalDomain.QuotientMeasureEqMeasurePreimage_smulHaarMeasure`: 85 ms before, 80 ms after 🎉 * `MeasureTheory.Measure.isMulLeftInvariant_eq_smul_of_regular`: 58 ms before, 50 ms after 🎉 * `MeasureTheory.SignedMeasure.exists_subset_restrict_nonpos`: 413 ms before, 325 ms after 🎉 * `FirstOrder.Language.Embedding.coe_injective`: <10 ms before, <10 ms after 🎉 * `ProbabilityTheory.setLIntegral_stieltjesOfMeasurableRat`: 343 ms before, 310 ms after 🎉 * `ProbabilityTheory.IsRatCondKernelCDFAux.tendsto_atBot_zero`: 116 ms before, 75 ms after 🎉 * `ProbabilityTheory.lintegral_toKernel_mem`: 173 ms before, 172 ms after 🎉 * `MeasureTheory.Measure.tendsto_IicSnd_atBot`: 70 ms before, 63 ms after 🎉 * `ProbabilityTheory.eq_condKernel_of_measure_eq_compProd'`: 46 ms before, 30 ms after 🎉 * `MeasureTheory.StronglyMeasurable.integral_kernel_prod_right`: 1298 ms before, 1142 ms after 🎉 * `ProbabilityTheory.Kernel.isSFiniteKernel_withDensity_of_isFiniteKernel`: 433 ms before, 429 ms after 🎉 * `MeasureTheory.progMeasurable_of_tendsto'`: 20 ms before, <10 ms after 🎉 * `MeasureTheory.Measure.infinitePi_map_piCurry_symm`: 1319 ms before, 1291 ms after 🎉 * `HahnModule.add_smul`: 111 ms before, 75 ms after 🎉 * `Module.associatedPrimes.mem_associatedPrimes_of_comap_mem_associatedPrimes_of_isLocalizedModule`: 215 ms before, 198 ms after 🎉 * `Ideal.comap_eq_of_scalar_tower_quotient`: 97 ms before, 56 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 38/155 Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/CategoryTheory/Sites/Coherent/ExtensiveSheaves.lean,Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/GroupTheory/Perm/MaximalSubgroups.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Lemmas.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Hahn.lean,Mathlib/ModelTheory/Basic.lean,Mathlib/NumberTheory/Padics/Complex.lean,Mathlib/Probability/Kernel/Disintegration/CDFToKernel.lean,Mathlib/Probability/Kernel/Disintegration/CondCDF.lean,Mathlib/Probability/Kernel/Disintegration/Unique.lean,Mathlib/Probability/Kernel/MeasurableIntegral.lean,Mathlib/Probability/Kernel/WithDensity.lean,Mathlib/Probability/Process/Adapted.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Localization.lean,Mathlib/RingTheory/Ideal/Over.lean 27 4 ['euprunin', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-64637
2 days ago
2-62991
2 days ago
4-17957
4 days
35189 euprunin
author:euprunin
chore: golf proofs The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `Complex.orderClosedTopology`: 227 ms before, <10 ms after 🎉 * `CategoryTheory.Functor.map_shiftFunctorComm`: 73 ms before, <10 ms after 🎉 * `CategoryTheory.extensiveTopology.presheafIsLocallySurjective_iff`: 154 ms before, 65 ms after 🎉 * `CategoryTheory.Presieve.functorPushforward_overForget`: 13 ms before, <10 ms after 🎉 * `Equiv.Perm.IsCycle.isCycle_pow_pos_of_lt_prime_order`: 15 ms before, <10 ms after 🎉 * `Equiv.Perm.IsCycle.isConj_iff`: <10 ms before, <10 ms after 🎉 * `Equiv.Perm.zpow_eq_ofSubtype_subtypePerm_iff`: 31 ms before, 32 ms after * `StieltjesFunction.measure_Ici`: 242 ms before, 102 ms after 🎉 * `le_iff_eq_sup_sdiff`: 54 ms before, 19 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 12/55 Mathlib/Analysis/Complex/Basic.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Sites/Coherent/LocallySurjective.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/Order/BooleanAlgebra/Basic.lean 7 5 ['euprunin', 'github-actions', 'leanprover-radar'] nobody
2-64415
2 days ago
2-63471
2 days ago
5-29726
5 days
35338 WenrongZou
author:WenrongZou
chore(RingTheory/MvPowerSeries): modify docs in expand Modify a documentation in `MvPowerSeries.expand`. Easy. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory easy 4/3 Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/PowerSeries/Expand.lean 2 2 ['WenrongZou', 'github-actions'] nobody
2-58460
2 days ago
2-58790
2 days ago
2-58568
2 days
35150 JovanGerb
author:JovanGerb
chore(Order/OrderDual): move material on `OrderDual` This PR moves material about `OrderDual` from `Mathlib.Order.Synonym` to `Mathlib.Order.OrderDual`, so that these two files become independent. This way, `Mathlib.Order.Synonym` will not be on the long pole. Note: it seems that the file `Mathlib.Order.Synonym` used to define `OrderDual`. Maybe that file should now be renamed to `Order.Lex`? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order 75/76 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Nat/Cast/Synonym.lean,Mathlib/Data/PSigma/Order.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Sigma/Order.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Order/Compare.lean,Mathlib/Order/Max.lean,Mathlib/Order/Monotone/Defs.lean,Mathlib/Order/OrderDual.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/Synonym.lean 14 2 ['MichaelStollBayreuth', 'github-actions'] nobody
2-58329
2 days ago
6-11603
6 days ago
6-11381
6 days
35284 grunweg
author:grunweg
feat: add (m)differentiableAt_of_(m)fderiv_injective and versions for `(m)fderivWithin` versions. This generalises the existing lemmas `(m)differentiableAt_of_isInvertible_(m)fderiv` and friends. Extracted from #35078; from the path to immersions, embeddings and submanifolds. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-analysis 42/20 Mathlib/Analysis/Calculus/FDeriv/Const.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean 2 2 ['github-actions', 'grunweg'] nobody
2-56982
2 days ago
2-55921
2 days ago
4-6408
4 days
34806 YaelDillies
author:YaelDillies
feat(Data/Nat/SuccPred): `m ⋖ n ↔ m + 1 = n` This is a special case of a general lemma which can't be simp. Also turn `Fin.coe_covBy_iff` around to preserve confluence. From ProofBench --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 12/11 Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Data/Nat/SuccPred.lean 3 4 ['YaelDillies', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
2-52719
2 days ago
2-50394
2 days ago
2-50172
2 days
35187 bilichboris
author:bilichboris
feat(GroupTheory): establish that every finite left cancellative monoid is a group This PR closes a todo in the GroupTheory module. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor maintainer-merge 8/1 Mathlib/GroupTheory/OrderOfElement.lean 1 8 ['bilichboris', 'github-actions', 'riccardobrasca', 'robin-carlier'] nobody
2-46277
2 days ago
4-44245
4 days ago
5-29057
5 days
35141 joelriou
author:joelriou
feat(CategoryTheory/Sites): conservative families of points --- - [x] depends on: #35139 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 138/2 Mathlib.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Jointly.lean,Mathlib/CategoryTheory/Sites/Point/Basic.lean,Mathlib/CategoryTheory/Sites/Point/Conservative.lean 4 6 ['chrisflav', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-42859
2 days ago
2-42129
2 days ago
4-32767
4 days
35286 urkud
author:urkud
chore: reduce defeq abuse Cherry-picked from #35182, improved --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 20/14 Mathlib/Algebra/Module/SnakeLemma.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean 5 4 ['github-actions', 'kim-em', 'urkud'] nobody
2-41753
2 days ago
2-40436
2 days ago
3-42253
3 days
35351 urkud
author:urkud
refactor(Algebra/*): generalize `of_ringEquiv` lemmas Some lemmas assumed that two modules over different rings admit a semilinear equivalence with respect to a `RingEquiv`. While this is mathematically equivalent to the definition we use everywhere else (a pair of `RingHom`s with `RingHomInvPair` assumptions), it does not directly apply neither to the linear case, nor to the `starRingEnd` case. This PR drops `of_ringEquiv` theorems and generalizes `of_equiv` theorems to semilinear equivalences instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 63/41 Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/Ring/CompTypeclasses.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean 5 1 ['github-actions'] nobody
2-41740
2 days ago
2-39252
2 days ago
2-39030
2 days
35323 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Add lemmas for PointedCone.dual Add several useful lemmas for `PointedCone.dual` in preparation for duality theory for FG cones. Some other changes are: * renamed `dual_le_dual` to `dual_anti` and added partner lemma `dual_antitone` * removed TODO comment since the stated lemma is not sufficient to prove the claim, an also this has now been proven and will become a PR in the near future. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 29/6 Mathlib/Geometry/Convex/Cone/Dual.lean 1 1 ['github-actions'] nobody
2-41669
2 days ago
2-41669
2 days ago
2-41447
2 days
33449 yuanyi-350
author:yuanyi-350
feat(ProbabilityTheory): Add Poisson limit theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 129/2 Mathlib.lean,Mathlib/Probability/Distributions/Poisson.lean,Mathlib/Probability/Distributions/PoissonLimitThm.lean,Mathlib/Probability/ProbabilityMassFunction/Binomial.lean,docs/1000.yaml 5 12 ['EtienneC30', 'github-actions', 'vihdzp'] EtienneC30
assignee:EtienneC30
2-40912
2 days ago
2-40202
2 days ago
47-47654
47 days
34976 joelriou
author:joelriou
feat(CategoryTheory/Sites): Equivalence of categories of sheaves with a dense subsite that is 1-hypercover dense Let `F : C₀ ⥤ C` be a functor equipped with Grothendieck topologies `J₀` and `J`. Assume that `F` is a dense subsite that is `1`-hypercover dense relatively to a universe `w`. Assume that the coefficient category `A` has limits of size `w`, we show that the restriction functor `sheafPushforwardContinuous F A J₀ J : Sheaf J A ⥤ Sheaf J₀ A` is an equivalence of categories, which allows to transport `HasWeakSheafify` and `HasSheafify` assumptions for the site `(C₀, J₀)` to the site `(C, J)`. --- - [x] depends on: #35012 - [x] depends on: #35022 - [x] depends on: #35091 - [x] depends on: #35094 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 289/4 Mathlib/CategoryTheory/Sites/DenseSubsite/OneHypercoverDense.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-40873
2 days ago
4-46515
4 days ago
4-46293
4 days
35360 vlad902
author:vlad902
feat(SimpleGraph): rename `cycleGraph_EulerianCircuit` to `cycleGraph.cycle` Per [this](https://github.com/leanprover-community/mathlib4/pull/34797#discussion_r2807963752) review feedback, this definition is inappropriately named with an underscore and should be renamed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 21/17 Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 2 2 ['github-actions', 'vlad902'] nobody
2-38401
2 days ago
2-37703
2 days ago
2-37481
2 days
35320 harahu
author:harahu
doc(AlgebraicGeometry/Morphisms/Basic): tidy docstrings Misc. documentation updates and fixes. --- These issues were found and fixed by Codex. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 15/15 Mathlib/AlgebraicGeometry/Morphisms/Basic.lean 1 1 ['github-actions'] nobody
2-36145
2 days ago
2-35336
2 days ago
3-19403
3 days
35274 harahu
author:harahu
doc(CategoryTheory/Bicategory/NaturalTransformation): tidy docstrings --- Issues were found and fixed by Codex. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 30/30 Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Oplax.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Pseudo.lean 3 1 ['github-actions'] nobody
2-35557
2 days ago
2-34571
2 days ago
4-15132
4 days
35365 wwylele
author:wwylele
feat(LinearAlgebra/Simplex): closedInterior = interior + face.closedInterior Intermediate lemma towards #34826. This will be used to show the measure on `interior` and `closedInterior` are equal, as the difference is a zero-measure set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
50/0 Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 1 4 ['copilot-pull-request-reviewer', 'github-actions'] nobody
2-34833
2 days ago
2-34026
2 days ago
2-33910
2 days
35373 joelriou
author:joelriou
feat(Order/Fin): lemmas about Fin.clamp --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 30/0 Mathlib.lean,Mathlib/Order/Fin/Clamp.lean 2 1 ['github-actions'] nobody
2-32312
2 days ago
2-31386
2 days ago
2-31164
2 days
26160 oliver-butterley
author:oliver-butterley
feat(MeasureTheory.VectorMeasure): add several lemmas which characterize variation Add the following lemmas concerning variation of a VectorMeasure: * `norm_measure_le_variation`: `‖μ E‖ₑ ≤ variation μ E`. * `variation_neg`: `(-μ).variation = μ.variation`. * `variation_zero`: `(0 : VectorMeasure X V).variation = 0`. * `absolutelyContinuous` Co-authored-by: @yoh-tanimoto - [x] depends on: #26156 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 238/4 Mathlib.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/Order/Partition/Finpartition.lean 8 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
2-31259
2 days ago
4-72017
4 days ago
20-60192
20 days
35377 euprunin
author:euprunin
chore: golf proofs The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <20 ms considered measurement noise): * `DiscreteTiling.PlacedTile.ext_iff_of_exists`: <20 ms before, 68 ms after * `ProbabilityTheory.Fernique.lintegral_exp_mul_sq_norm_le_mul`: 1876 ms before, 1629 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 3/11 Mathlib/Combinatorics/Tiling/Tile.lean,Mathlib/Probability/Distributions/Fernique.lean 2 1 ['github-actions'] nobody
2-31169
2 days ago
2-30402
2 days ago
2-30180
2 days
35156 euprunin
author:euprunin
chore: golf using `simp` (and non-squeeze terminal `simp`:s) The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `Module.FinitePresentation.exists_lift_of_isLocalizedModule`: 940 ms before, 787 ms after 🎉 * `CategoryTheory.Comon.tensorObj_comul`: 38 ms before, <10 ms after 🎉 * `SimpleGraph.Walk.darts_getElem_eq_getVert`: 376 ms before, <10 ms after 🎉 * `ZNum.cmp_to_int`: 108 ms before, 79 ms after 🎉 * `TensorProduct.finsuppLeft_smul'`: 134 ms before, 31 ms after 🎉 * `TensorProduct.finsuppScalarRight_smul`: 138 ms before, 26 ms after 🎉 * `NumberField.InfinitePlace.nat_card_stabilizer_eq_one_or_two`: 115 ms before, 112 ms after 🎉 * `Algebra.adjoin_restrictScalars`: 34 ms before, 26 ms after 🎉 * `AddCircle.card_torsion_le_of_isSMulRegular_int`: 460 ms before, 238 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 8/31 Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/Data/Num/ZNum.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/Matrix/Kronecker.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean,Mathlib/RingTheory/Adjoin/Tower.lean 7 4 ['euprunin', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-31025
2 days ago
2-29153
2 days ago
6-1716
6 days
35357 joelriou
author:joelriou
feat(Algebra/Homology): definition of spectral objects in abelian categories --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
236/0 Mathlib.lean,Mathlib/Algebra/Homology/SpectralObject/Basic.lean 2 1 ['github-actions'] nobody
2-25250
2 days ago
2-25250
2 days ago
2-25028
2 days
35355 joelriou
author:joelriou
feat(Algebra/Homology/SpectralSequence): complex shapes for pages of spectral sequences --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
55/0 Mathlib.lean,Mathlib/Algebra/Homology/SpectralSequence/ComplexShape.lean 2 2 ['github-actions', 'joelriou'] nobody
2-25080
2 days ago
2-24374
2 days ago
2-24221
2 days
34848 bjornsolheim
author:bjornsolheim
feat(Analysis/Convex/Cone): min and max tensor products are equal when one factor is simplicial and generating Prove that min and max tensor products are equal when one factor is simplicial and generating. Add theorems: minTensorProduct_eq_max_of_simplicial_generating_left minTensorProduct_eq_max_of_simplicial_generating_right --- - [ ] depends on: #32355 [new file simplicial.lean] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 166/0 Mathlib.lean,Mathlib/Analysis/Convex/Cone/TensorProduct.lean 2 4 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-24373
2 days ago
2-23661
2 days ago
2-40432
2 days
35381 joelriou
author:joelriou
feat(CategoryTheory): constructor for abelian categories We assume that the category `C` is preadditive, has finite products, and that any morphism `f : X ⟶ Y` has a kernel `i : K ⟶ X`, a cokernel `p : Y ⟶ Q` such that `f` factors as `f = π ≫ ι` where `π : X ⟶ I` is a cokernel of `i` and `ι : I ⟶ Y` is a kernel of `p`. This will be used in order to show that the heart of a t-structure is an abelian category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 43/0 Mathlib/CategoryTheory/Abelian/Basic.lean 1 1 ['github-actions'] nobody
2-20631
2 days ago
unknown
unknown
34267 Brian-Nugent
author:Brian-Nugent
feat(Topology/Algebra): Add API for Sheaves of abelian groups in preparation for proving results on sheaf cohomology. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 89/1 Mathlib.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Sheaf.lean,Mathlib/Topology/Sheaves/AddCommGrpCat.lean 4 24 ['Brian-Nugent', 'dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
2-19011
2 days ago
2-18306
2 days ago
19-20262
19 days
34189 bwangpj
author:bwangpj
feat(MeasureTheory/Measure): haarScalarFactor_map From FLT. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability FLT 38/16 Mathlib/MeasureTheory/Measure/Haar/Unique.lean 1 7 ['ADedecker', 'bwangpj', 'github-actions', 'mathlib-merge-conflicts'] RemyDegenne
assignee:RemyDegenne
2-18131
2 days ago
2-17205
2 days ago
25-50146
25 days
34932 erdOne
author:erdOne
feat(AlgebraicGeometry): formally etale morphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 163/12 Mathlib.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Morphisms/FormallyEtale.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/RingTheory/RingHom/Etale.lean 5 11 ['chrisflav', 'erdOne', 'github-actions', 'joneugster'] nobody
2-16617
2 days ago
2-16617
2 days ago
4-46629
4 days
35386 Brian-Nugent
author:Brian-Nugent
feat: CategoryTheory.toSheafify induces an isomorphism on stalks The main result `TopCat.Presheaf.stalkFunctor_map_unit_toSheafify_isIso` says that for a presheaf on a topological space, the induced map on stalks of `CategoryTheory.toSheafify` is an isomorphism. This is similar to `TopCat.Presheaf.sheafifyStalkIso` defined in the same file except that the latter is only for sheaves of Types. The proof involved the abstract nonsense `CategoryTheory.Adjunction.isIso_map_unit_of_isLeftAdjoint_comp` which should probably go in a different file but feels too specific to go into any of the files in `CategoryTheory.Adjunction`. Suggestions are very welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-topology t-category-theory new-contributor 53/1 Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Skyscraper.lean 2 2 ['github-actions'] nobody
2-15224
2 days ago
2-14530
2 days ago
2-14308
2 days
25984 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve/Affine/Point): add equivalences between points and explicit WithZero types This PR continues the work from #14627. Original PR: https://github.com/leanprover-community/mathlib4/pull/14627 t-algebraic-geometry 130/15 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean 1 4 ['Multramate', 'copilot-pull-request-reviewer', 'github-actions'] dagurtomas
assignee:dagurtomas
2-5398
2 days ago
5-41872
5 days ago
5-41650
5 days
34442 JohnnyTeutonic
author:JohnnyTeutonic
feat(Algebra/Lie/Classical): add basis for sl(n) relative to chosen diagonal index Adds a standard basis for sl n R parametrized by a chosen diagonal index i₀: Off-diagonal matrix units E_ij for i ≠ j Diagonal differences E_ii - E_{i₀i₀} for i ≠ i₀ The entry at i₀ is determined by trace-zero. Implements the approach suggested by @ocfnash in [#33818 (comment)](https://github.com/leanprover-community/mathlib4/pull/33818#issuecomment-3784786673). See also [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/lie.20algebra/near/516170116). Closes the request from #33818. Note: Developed with the assistance of Claude - the LinearEquiv machinery was beyond my current Lean expertise. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
507/0 Mathlib/Algebra/Lie/Classical.lean 1 9 ['JohnnyTeutonic', 'eric-wieser', 'github-actions'] riccardobrasca
assignee:riccardobrasca
2-5395
2 days ago
5-70119
5 days ago
6-36535
6 days
34944 jessealama
author:jessealama
feat(Algebra/Ring/NegOnePow): add negOnePow ↔ natAbs bridge lemmas Adds `Int.cast_negOnePow_eq_neg_one_pow_natAbs` (for any `Ring R`) and its `ℤ` specialization `Int.coe_negOnePow_eq_neg_one_pow_natAbs`, relating `negOnePow n` to `(-1) ^ n.natAbs`. The file already has [`cast_negOnePow_natCast`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Ring/NegOnePow.html#Int.cast_negOnePow_natCast) for `n : ℕ` but nothing for general integers via `natAbs`. t-algebra
label:t-algebra$
14/2 Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Analysis/Analytic/Binomial.lean 2 1 ['github-actions'] Vierkantor
assignee:Vierkantor
2-5393
2 days ago
5-50178
5 days ago
8-47372
8 days
35152 j-loreaux
author:j-loreaux
feat: add missing API for `lp E p` The API for `lp` is significantly underdeveloped. This PR attempts to rectify some of the shortcomings. In particular, we provide: + some missing tools for `Memℓp`, notably `memℓp_norm_iff` and `Memℓp.mono`. + some improved docstrings and more uniform notation for the non-dependent case; note that we also *remove* the notation `ℓ^∞(ι)` for `lp (fun _ : ι ↦ ℝ) ∞` on the basis that there are other choices besides `ℝ` which would make at least as much sense here, including `ℂ`. + bundled version of maps (evaluation, inclusion as a linear map, summation in `ℓ¹`) as well as cleaning-up a few other odds and ends. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 189/26 Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Topology/MetricSpace/Kuratowski.lean 3 1 ['github-actions'] sgouezel
assignee:sgouezel
2-5389
2 days ago
5-21935
5 days ago
5-21713
5 days
35157 Multramate
author:Multramate
feat(RingTheory/AdjoinRoot): add IsFractionRing for AdjoinRoot Co-authored-by: Sriram Chinthalagiri Venkata @sriram3301 This contribution was created as part of the Heidelberg Lean workshop "Formalising algebraic geometry" in November 2025. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
36/0 Mathlib/RingTheory/AdjoinRoot.lean 1 4 ['copilot-pull-request-reviewer', 'github-actions'] mattrobball
assignee:mattrobball
2-5388
2 days ago
5-46351
5 days ago
6-5467
6 days
35163 CoolRmal
author:CoolRmal
feat(Topology): comparison of two Hausdorff topologies The main theorem proved in this PR is `CompactSpace.eq_of_le_compact_t2`, which says that if we have two Hausdorff topologies `s, t` on `X`, and if `t` is finer than `s` and `X` is compact under `t`, then `s = t`. I also proved some variant of this lemma. The motivations I have in mind are some applications to the theory of topological vector spaces, where we often have to compare two Hausdorff topologies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 24/0 Mathlib/Topology/Homeomorph/Lemmas.lean 1 6 ['CoolRmal', 'github-actions', 'j-loreaux', 'plp127'] dagurtomas
assignee:dagurtomas
2-5387
2 days ago
5-12527
5 days ago
5-55948
5 days
35172 Parcly-Taxel
author:Parcly-Taxel
feat(Archive): minimal axioms for Boolean algebra 305/0 Archive.lean,Archive/MinimalSheffer.lean,docs/references.bib 3 1 ['github-actions'] ocfnash
assignee:ocfnash
2-5386
2 days ago
5-58068
5 days ago
5-57846
5 days
35174 nielsvoss
author:nielsvoss
feat(Analysis/InnerProductSpace): a linear map composed with its adjoint is symmetric Add theorems about `LinearMap.IsSymmetric` that match some theorems for `LinearMap.IsPositive`. Mathlib contains stronger versions of some of these, like `LinearMap.IsPositive.self_comp_adjoint`, but having a dedicated version for `LinearMap.IsSymmetric` is advantageous, especially when used with `LinearMap.IsSymmetric.eigenvalues`. --- One thing that I am uncertain about is if I should add similar lemmas for `ContinuousLinearMap` to even better match the `IsPositive` API, and if so, whether these theorems should be stated in terms of `IsSymmetric` or `IsSelfAdjoint`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 22/1 Mathlib/Analysis/InnerProductSpace/Adjoint.lean 1 3 ['github-actions', 'themathqueen'] sgouezel
assignee:sgouezel
2-5385
2 days ago
5-32286
5 days ago
5-55542
5 days
35176 grunweg
author:grunweg
fix: check for a space of continuous linear maps over not-the-identity Improves an error message, and fixes a TODO in the code. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-meta 83/16 Mathlib/Geometry/Manifold/Notation.lean,MathlibTest/DifferentialGeometry/NotationAdvanced.lean 2 1 ['github-actions'] kim-em
assignee:kim-em
2-5384
2 days ago
5-55782
5 days ago
5-55560
5 days
35183 tb65536
author:tb65536
feat(Analysis/InnerProductSpace/Rayleigh): basic API for Rayleigh quotients This PR adds basic API lemmas for Rayleigh quotients of zeros and negatives. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 16/0 Mathlib/Analysis/InnerProductSpace/Rayleigh.lean 1 1 ['github-actions'] urkud
assignee:urkud
2-5381
2 days ago
5-42726
5 days ago
5-42504
5 days
35184 tb65536
author:tb65536
feat(Algebra/Algebra/Spectrum/Basic): resolvent set of negative element This PR adds a basic API lemma `resolventSet_neg` stating that `resolventSet R (-a) = -resolventSet R a`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
5/2 Mathlib/Algebra/Algebra/Spectrum/Basic.lean 1 1 ['github-actions'] joelriou
assignee:joelriou
2-5380
2 days ago
5-41570
5 days ago
5-41348
5 days
35193 Brian-Nugent
author:Brian-Nugent
feat(Topology/Closeds): implement category of closed sets in topologi… …cal spaces I copied over the nice API for working with `TopologicalSpace.Opens` as a category over for `TopologicalSpace.Closeds`. The only thing that did not immediately transfer was `Topology.IsInducing.functorObj` so I omitted it. Based on work of @kim-em --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 385/0 Mathlib.lean,Mathlib/Topology/Category/TopCat/Closeds.lean 2 2 ['github-actions'] dagurtomas
assignee:dagurtomas
2-5378
2 days ago
5-24604
5 days ago
5-24382
5 days
35199 Komyyy
author:Komyyy
doc: `PFun.fix_induction` to `PFun.fixInduction` This is typo of [`PFun.fixInduction`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/PFun.html#PFun.fixInduction) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-data mathlib-port easy 1/1 Mathlib/Data/PFun.lean 1 1 ['github-actions'] TwoFX
assignee:TwoFX
2-5377
2 days ago
5-21658
5 days ago
5-21436
5 days
35205 j-loreaux
author:j-loreaux
feat: `Subobject.topologicalClosure_mono` This was missing for most subobjects. We add it for all of them and tag it with `gcongr`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 52/0 Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Monoid.lean,Mathlib/Topology/Algebra/NonUnitalAlgebra.lean,Mathlib/Topology/Algebra/NonUnitalStarAlgebra.lean,Mathlib/Topology/Algebra/Ring/Basic.lean,Mathlib/Topology/Algebra/StarSubalgebra.lean 8 1 ['github-actions'] dagurtomas
assignee:dagurtomas
2-5374
2 days ago
5-16410
5 days ago
5-16188
5 days
34920 Parcly-Taxel
author:Parcly-Taxel
feat: asymptotic lemmas on the `cobounded` filter Actually includes one `cofinite` lemma too. As shown in the second commit, this allows proving what I initially proved with the help of Harmonic in #34845 in a much shorter, AI-free form. `Asymptotics.isLittleO_pow_pow_cobounded_of_lt` was generalised with the help of @sgouezel – see [#PR reviews > #34868 – more general polynomial asymptotics @ 💬](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2334868.20.E2.80.93.20more.20general.20polynomial.20asymptotics/near/572197174). t-analysis 98/0 Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Polynomial/Basic.lean 3 4 ['Parcly-Taxel', 'github-actions', 'sgouezel'] nobody
1-86277
1 day ago
1-84993
1 day ago
8-17926
8 days
34209 mike1729
author:mike1729
feat(Analysis/Normed): Schauder basis definition and characterization via projections A Schauder basis is a fundamental concept in functional analysis, providing a way to represent every element of a Banach space as a unique convergent series. This PR adds the core structures, some theorems necessary to work with these bases and a characterization of a Schauder basis using projections. This PR is based on Chapter 1. from Albiac, F., & Kalton, N. J. (2016). Topics in Banach Space Theory. This is a first PR in a series of three aiming for Eberlein-Smulyan Theorem. The next one will contain theory of basic sequences and the final one will contain a proof of Eberlein-Smulyan Theorem using basic sequences. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 549/0 Mathlib.lean,Mathlib/Analysis/Normed/Module/Bases.lean,docs/references.bib 3 124 ['Ruben-VandeVelde', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'mike1729', 'sgouezel', 'themathqueen'] sgouezel
assignee:sgouezel
1-78750
1 day ago
1-78762
1 day ago
16-38674
16 days
35392 joelriou
author:joelriou
feat(CategoryTheory/Triangulated): the heart of a t-structure --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 133/0 Mathlib.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Basic.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Heart.lean 3 1 ['github-actions'] nobody
1-67608
1 day ago
1-66918
1 day ago
1-66696
1 day
35371 xroblot
author:xroblot
feat(MulAction): add a SMulDistribClass instance for subgroups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
4/0 Mathlib/Algebra/Group/Submonoid/MulAction.lean 1 5 ['github-actions', 'leanprover-radar', 'xroblot'] nobody
1-58470
1 day ago
1-55980
1 day ago
2-25938
2 days
34780 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(NumberTheory/Height/Projectivization): new file This adds a new file "Mathlib.NumberTheory.Height.Projectivization", which (for now) contains the definition of the multiplicative and logarithmic heights of points in projective space and basic properties of these. The PR also contains extensions for the `positivity` tactic so that it knows that multiplicative heights are positive and logarithmic heights are nonnegative. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory t-meta 103/4 Mathlib.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/Projectivization.lean 3 17 ['AntoineChambert-Loir', 'MichaelStollBayreuth', 'Vierkantor', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'plp127'] jcommelin
assignee:jcommelin
1-57188
1 day ago
4-23453
4 days ago
14-26649
14 days
34559 sgouezel
author:sgouezel
feat: bounded variation functions have left and right limits, and limits at infinity Needed for #34055. --- Everything in the PR is on the same topic, which is why I have kept it as a single PR. I can split it into two parts if it's too long, though, just tell me! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 464/15 Mathlib/Topology/EMetricSpace/BoundedVariation.lean 1 18 ['AntoineChambert-Loir', 'botbaki-review', 'github-actions', 'jsm28', 'sgouezel', 'urkud'] urkud
assignee:urkud
1-54072
1 day ago
1-53371
1 day ago
19-60040
19 days
35398 vlad902
author:vlad902
feat(SimpleGraph): `bypass` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 17/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 1 ['github-actions'] nobody
1-50881
1 day ago
1-50129
1 day ago
1-49907
1 day
35402 samueloettl
author:samueloettl
feat(Dynamics/BirkhoffSum): birkhoffAverage const --- I think this might be useful. My feeling tells me that one of these should be a simp lemma. I'm not really sure if I got the naming of the theorems correct. Also I think it is somewhat debatable if these theorems should be generalized to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 26/3 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 2 ['github-actions'] nobody
1-48533
1 day ago
1-47863
1 day ago
1-47641
1 day
35258 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(Data/Finsupp/Order): add lemma Finsupp.single_le_sum This adds an API lemma for `Finsupp` that turned out to be useful in [Heights](github.com/MichaelStollBayreuth/Heights). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 17/0 Mathlib/Data/Finsupp/Order.lean 1 4 ['AntoineChambert-Loir', 'MichaelStollBayreuth', 'Ruben-VandeVelde', 'faenuccio', 'github-actions'] nobody
1-47173
1 day ago
1-45121
1 day ago
4-30984
4 days
35000 plp127
author:plp127
feat(Algebra/Polynomial/PartialFractions): generalize to powers Generalize polynomial partial fractions to work with the denominator being a product of powers of coprime monic polynomials. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
221/79 Mathlib/Algebra/Polynomial/PartialFractions.lean 1 16 ['github-actions', 'plp127', 'riccardobrasca', 'vihdzp'] riccardobrasca
assignee:riccardobrasca
1-46734
1 day ago
5-10642
5 days ago
5-10420
5 days
35403 tb65536
author:tb65536
feat(Topology/Algebra/Ring/Ideal): the connected component of zero is an ideal This PR defines the connected component of zero as an ideal. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-ring-theory t-topology
label:t-algebra$
14/0 Mathlib/Topology/Algebra/Ring/Ideal.lean 1 1 ['github-actions'] nobody
1-45134
1 day ago
1-45134
1 day ago
1-44912
1 day
28248 YaelDillies
author:YaelDillies
feat: binomial random variables Define the binomial distribution and compute the expectation, variance, conditional variance of a binomial random variable. From MiscYD --- - [x] depends on: #31908 - [x] depends on: #31910 - [x] depends on: #31942 - [x] depends on: #31947 - [x] depends on: #34367 - [x] depends on: #34370 - [x] depends on: #34374 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 232/0 Mathlib.lean,Mathlib/MeasureTheory/Integral/Bochner/Set.lean,Mathlib/Probability/Distributions/Binomial.lean 3 62 ['DavidLedvinka', 'RemyDegenne', 'YaelDillies', 'eric-wieser', 'github-actions', 'kex-y', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'pfaffelh', 'themathqueen'] kex-y
assignee:kex-y
1-44595
1 day ago
1-43576
1 day ago
37-45842
37 days
35143 SnirBroshi
author:SnirBroshi
fix: restore `#min_imports` and other commands Make these commands available across Mathlib: - `#help` - `#min_imports` - `#min_imports in` - `#find_home` - `proof_wanted` Add tests that verify commands work when importing basic files, to prevent regressions. --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.23lint.20is.20broken/near/573303540) I also think we should have `#check` (the tactic, not the Core command) and `#simp` and `#find_syntax`, but they import `Mathlib.Init` so it can't import them currently. I'm not sure which of the above were available everywhere before the shake tool was run, let me know if I should add/remove commands. ~~Also there seems to be a bug in `#help` and the module system where it can't find the names of syntaxes, which affects the `#guard_msgs` in the test file, but it should be fixed independently of this PR.~~ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import file-removed t-meta 182/23 Mathlib/Init.lean,Mathlib/Tactic/Common.lean,MathlibTest/BasicFiles/Init.lean,MathlibTest/BasicFiles/Tactic.lean,MathlibTest/BasicFiles/TacticBasic.lean,MathlibTest/BasicFiles/TacticCommon.lean,MathlibTest/HashLint.lean,MathlibTest/UnusedInstancesInType/Fintype.lean 8 16 ['JovanGerb', 'SnirBroshi', 'github-actions', 'grunweg', 'joneugster', 'thorimur'] nobody
1-41500
1 day ago
1-37889
1 day ago
5-46723
5 days
35408 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(NumberTheory/Height/Basic): add {mul|log}Height_comp_le, {mul|log}Height_fun_mul_eq This adds * two missing `logHeight` lemmas (their `mulHeight` versions are already there) * `{mul|log}Height_comp_le`: the height of `x ∘ f` is bounded by the height of `x` * `{mul|log}Height_fun_mul_eq`: the height of the "multiplication table" `fun (i, j) ↦ x i * y j` is the {product|sum} of the heights of `x` and of `y` * `{mul|log}Height_fun_prod_eq`: the analogous result for products with arbitrarily many factors * plus some API lemmas needed for these. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 164/0 Mathlib/Data/Real/Archimedean.lean,Mathlib/NumberTheory/Height/Basic.lean 2 1 ['github-actions'] nobody
1-41177
1 day ago
1-39040
1 day ago
1-38818
1 day
35260 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(Data/Fintype/Order): add API for ciSup with finite indexing type This PR adds API for indexed suprema/infima on `ConditionallyCompleteLattice`s when the indexing type is finite. It also moves `Finite.le_ciSup`/`Finite.ciInf_le` to Mathlib.Data.Fintype.Order and golfs it. We use the new lemmas to golf a few proofs in Mathlib. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 68/32 Mathlib/Analysis/Normed/Unbundled/InvariantExtension.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/PartialSups.lean,Mathlib/RingTheory/Finiteness/Nilpotent.lean 7 1 ['github-actions'] nobody
1-40820
1 day ago
1-37908
1 day ago
4-22520
4 days
35409 JovanGerb
author:JovanGerb
chore(Translate): use `Term.applyAttributes` This PR uses the function `Term.applyAttributes` in `to_additive`/`to_dual` for applying attributes. Previously, the code that was there was a copy-paste of `Term.applyAttributes` (and this was outdated due to changes from the module system). One advantage of the original implementation was the fact that it only calls `pushInfoLeaf` once, and in the new implementation this will typically be done twice for the same syntax. However, I think that this is not a good enough reason for duplicating so much code. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 6/23 Mathlib/Tactic/Translate/Core.lean 1 1 ['github-actions'] nobody
1-39886
1 day ago
1-36404
1 day ago
1-36182
1 day
35155 DavidLedvinka
author:DavidLedvinka
feat(Tactic): `linarith` for NNReal t-meta file-removed 193/3 Mathlib.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linarith/NNRealPreprocessor.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Rify.lean,MathlibTest/Linarith/NNReal.lean,MathlibTest/Linarith/linarith.lean,MathlibTest/Rify.lean 9 18 ['DavidLedvinka', 'github-actions', 'grunweg', 'hrmacbeth'] nobody
1-39245
1 day ago
1-38453
1 day ago
4-82371
4 days
35300 Ljon4ik4
author:Ljon4ik4
feat: Semi-direct sum of Lie algebras In this PR a construction of the [semi-direct sum of two Lie algebras](https://en.wikipedia.org/wiki/Lie_algebra_extension#By_semidirect_sum) is added. It is shown that the resulting object $H\rtimes G$ is a Lie algebra and that it fits into an exact sequence $H \to H\rtimes G \to G$. I was not sure about multiple things and would be very grateful for feedback: - Currently the semidirect product is created via a def as a type synonym of $H\times G$ so one can define a new bracket on it, which need not coincide with the standard 'direct sum' bracket. This is analogous to e.g. `PointedContMDiffMap` in `Mathlib.Geometry.Manifold.DerivationBundle`. An alternative way would creating a structure with $H$ and $G$ as fields. This seems to be the way chosen in `Mathlib.GroupTheory.SemidirectProduct.lean`. - Currently it is created as a separate file, but it could also be added to the `Mathlib.Algebra.Lie.Extension` file. - I am not fully happy with some of the proofs, especially the `leibniz_lie` in the `LieRing` instance, but did not manage to get it more elegant. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
139/0 Mathlib.lean,Mathlib/Algebra/Lie/SemiDirect.lean 2 2 ['github-actions'] ocfnash
assignee:ocfnash
1-39186
1 day ago
3-42156
3 days ago
3-41934
3 days
35405 xroblot
author:xroblot
feat(RamificationInertia): add `ramificationIdx_le_ramificationIdx` and `inertiaDeg_le_inertiaDeg` Assume that `Q` is over `P` that is over `p`. We prove that: - `Ideal.ramificationIdx P Q ≤ Ideal.ramificationIdx p Q` - `Ideal.inertiaDeg P Q ≤ Ideal.inertiaDeg p Q` These results follow from [Ideal.ramificationIdx_algebra_tower](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.ramificationIdx_algebra_tower) and [Ideal.inertiaDeg_algebra_tower](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.inertiaDeg_algebra_tower) but they are proved here in a more general situation. Also, remove unnecessary hypothesis in [Ideal.inertiaDeg_algebraMap](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.inertiaDeg_algebraMap) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 38/6 Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean 2 1 ['github-actions'] nobody
1-39073
1 day ago
1-38349
1 day ago
1-38127
1 day
35412 joneugster
author:joneugster
feat(Tactic/Linter): add unicode linter for unicode variant-selectors This PR continues the work from #17129. Original PR: https://github.com/leanprover-community/mathlib4/pull/17129 t-linter 288/56 Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,MathlibTest/LintStyle.lean,MathlibTest/hint.lean,MathlibTest/hintAll.lean 11 3 ['github-actions', 'joneugster'] grunweg
assignee:grunweg
1-34191
1 day ago
1-33726
1 day ago
1-33504
1 day
35414 joneugster
author:joneugster
feat(Cache): Allow arguments of the form `Mathlib.Data.+` which correspond to a folder but not a file This PR continues the work from #21838. Original PR: https://github.com/leanprover-community/mathlib4/pull/21838 CI t-meta 74/31 Cache/IO.lean,Cache/Main.lean 2 2 ['github-actions', 'joneugster'] eric-wieser
assignee:eric-wieser
1-34161
1 day ago
unknown
unknown
33972 YuvalFilmus
author:YuvalFilmus
feat(Analysis/Polynomial/Order): polynomial has fixed sign beyond largest root We prove that a polynomial has fixed sign beyond its largest root. One could also prove similar results about the smallest root, but they will be more awkward since they will depend on the parity of the (natural) degree; suggestions welcome (perhaps for a future PR). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 120/0 Mathlib.lean,Mathlib/Analysis/Polynomial/Order.lean 2 11 ['YuvalFilmus', 'artie2000', 'github-actions', 'mathlib-merge-conflicts', 'urkud', 'vihdzp'] ADedecker and urkud
assignee:urkud assignee:ADedecker
1-34005
1 day ago
1-33305
1 day ago
33-33118
33 days
35413 joneugster
author:joneugster
fix(Util/CountHeartbeats): move elaboration in #count_heartbeats inside a namespace This PR continues the work from #21182. Original PR: https://github.com/leanprover-community/mathlib4/pull/21182 t-meta 73/6 Mathlib/Util/CountHeartbeats.lean,MathlibTest/CountHeartbeats.lean 2 3 ['github-actions', 'joneugster', 'mathlib-bors'] adomani
assignee:adomani
1-33243
1 day ago
unknown
unknown
34676 joneugster
author:joneugster
chore(Algebra/CharP/MixedCharZero): update file to make use of the module system - mark all declarations in the file as `private` or `public` - remove `@[exposed] public section` - reduce `public` imports - fix some wording and drop a random `example` which shouldn't be there --- I've used this file to better understand the module system and its future implications for mathlib. The file is IMO ideal since it's an old toy example of mine which is a leaf that isn't imported in mathlib anywhere else (yet). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
32/28 Mathlib/Algebra/CharP/MixedCharZero.lean 1 4 ['github-actions', 'joneugster', 'vihdzp'] eric-wieser
assignee:eric-wieser
1-33205
1 day ago
3-4955
3 days ago
16-55513
16 days
33406 dupuisf
author:dupuisf
feat: add basics of majorization This PR defines [majorization](https://en.wikipedia.org/wiki/Majorization). This is needed to develop the theory of unitarily invariant norms on `ℂ^n`, in particular Schatten norms. --- - [ ] depends on: #33394 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 725/13 Mathlib.lean,Mathlib/Analysis/Convex/Majorization/Basic.lean,Mathlib/Analysis/Convex/Majorization/Defs.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Order/Interval/Finset/Fin.lean,docs/references.bib 9 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-32972
1 day ago
1-32972
1 day ago
1-52880
1 day
34867 urkud
author:urkud
feat(FDeriv/Comp): migrate to TVS --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #34832 t-analysis 125/125 Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean 3 18 ['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'urkud'] j-loreaux
assignee:j-loreaux
1-31013
1 day ago
1-31013
1 day ago
12-63556
12 days
25989 Multramate
author:Multramate
feat(NumberTheory/EllipticDivisibilitySequence): add elliptic nets This PR continues the work from #25030. Original PR: https://github.com/leanprover-community/mathlib4/pull/25030 t-number-theory large-import 254/39 Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 1 27 ['MichaelStollBayreuth', 'Multramate', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib4-merge-conflict-bot', 'tb65536'] tb65536
assignee:tb65536
1-29689
1 day ago
1-29672
1 day ago
8-13846
8 days
34624 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): surjection between types induces surjection between free groups feat(GroupTheory/FreeGroup/Basic): adds the theorem that if `α` and `β` are arbitrary types and there is a surjection between them, then the induced FreeGroup.map is also surjective. This is a dependency of a larger PR to formalize finitely presented groups https://github.com/leanprover-community/mathlib4/pull/34236. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor 14/3 Mathlib/GroupTheory/FreeGroup/Basic.lean 1 23 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-merge-conflicts', 'tb65536', 'vlad902'] nobody
1-29535
1 day ago
1-27624
1 day ago
11-70014
11 days
35035 joelriou
author:joelriou
feat(CategoryTheory/Limits/FormalCoproducts): an extradegeneracy for the Cech object We show that the Cech object of `U : FormalCoproduct C` has an extra degeneracy when there is a map `T ⟶ U.obj i₀` for some `i₀` where `T` is a terminal object. (In a future PR, we shall deduce that the Cech cohomology relative to a cover is trivial when the cover contains a terminal object.) --- - [x] depends on: #35026 - [x] depends on: #35038 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 147/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/Cech.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/ExtraDegeneracy.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-28506
1 day ago
1-28581
1 day ago
1-28360
1 day
34987 urkud
author:urkud
feat: define `Matrix.ProjGenLinGroup` --- - [x] depends on: #34986 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
110/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Projective.lean 2 9 ['github-actions', 'loefflerd', 'mathlib-dependent-issues', 'urkud'] nobody
1-28097
1 day ago
1-27438
1 day ago
1-56371
1 day
35050 j-loreaux
author:j-loreaux
feat: generalize some results for `SupConvergenceClass` to `ConditionallyCompletePartialOrder{Sup,Inf}` --- - [ ] depends on: #35047 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-order easy 7/4 Mathlib/Topology/Order/MonotoneConvergence.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-27476
1 day ago
1-26220
1 day ago
1-25998
1 day
35044 b-mehta
author:b-mehta
feat(RingTheory/Radical): positivity extension for radical of natural A follow-up from #25335 which I forgot to make at the time. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory maintainer-merge 20/0 Mathlib/RingTheory/Radical.lean 1 4 ['b-mehta', 'chrisflav', 'github-actions'] chrisflav
assignee:chrisflav
1-26883
1 day ago
8-25058
8 days ago
8-24836
8 days
34909 SnirBroshi
author:SnirBroshi
feat(Data/Sym/Sym2): `fromRel` equivalence with `Sigma` over a `Quotient` Add a non-dependent recursor on members of a `fromRel` set, and the following `Equiv`s: - The `fromRel` set of a symmetric relation `r` is equivalent to summing that set restricted to fibers of `f`. - For a relation homomorphism `r →r r'` where `r` is symmetric, the `fromRel` set of `r` is equivalent to summing that set restricted to equivalence classes of `r'` using a `Subtype`. --- I find this recursor pretty useful when dealing with `fromRel`, the idea came from a suggestion by @kmill [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Eq.2Erec.20with.20a.20constant.20does.20nothing.3A.20h.20.E2.96.B8.20c.20.3D.20c/near/565176948) for another `Sym2` conundrum. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 43/0 Mathlib/Data/Sym/Sym2.lean 1 7 ['SnirBroshi', 'eric-wieser', 'github-actions'] pechersky
assignee:pechersky
1-25206
1 day ago
1-23685
1 day ago
11-45320
11 days
35010 parabamoghv
author:parabamoghv
style(CategoryTheory/Monoidal): add notation for whiskerLeftIso and whiskerRightIso The PR adds the notation " ◁ᵢ " and " ▷ᵢ " for whiskerLeftIso and whiskerRightIso, respectively. Motivation: 1. There is a notation " ⊗ᵢ " for tensorIso; this is consistent. 2. In my other PR, I had to use whiskerLeftIso. I thought the notation would be neat. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor 13/1 Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean 2 8 ['github-actions', 'parabamoghv', 'robin-carlier'] robin-carlier
assignee:robin-carlier
1-24587
1 day ago
1-24626
1 day ago
2-19760
2 days
33275 YuvalFilmus
author:YuvalFilmus
feat(Trigonometric/Chebyshev/Extremal): Chebyshev polynomials maximize iterated derivatives We prove that Chebyshev polynomials maximized iterated derivatives at points x≥1. --- - [x] depends on: #33259 - [x] depends on: #33274 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 74/1 Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean 1 6 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] dupuisf
assignee:dupuisf
1-24516
1 day ago
25-10995
25 days ago
25-51101
25 days
33850 YuvalFilmus
author:YuvalFilmus
feat(Chebyshev/ChebyshevGauss): Chebyshev–Gauss formula We prove the Chebyshev–Gauss quadrature formula, which reduces an integral with respect to the Chebyshev weight function to a finite sum. --- - [ ] depends on: #33676 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 167/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/ChebyshevGauss.lean 2 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] ADedecker
assignee:ADedecker
1-24449
1 day ago
20-65244
20 days ago
20-65022
20 days
34601 themathqueen
author:themathqueen
feat(Combinatorics/SimpleGraph/AdjMatrix): adjacency matrix API --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import 117/19 Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean 1 21 ['b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] kmill
assignee:kmill
1-22604
1 day ago
1-21948
1 day ago
18-48050
18 days
35352 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra): the norm of a positive linear functional `f` on a unital C*-algebra is `f 1` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 24/0 Mathlib/Analysis/CStarAlgebra/GelfandNaimarkSegal.lean,Mathlib/Analysis/CStarAlgebra/PositiveLinearMap.lean 2 3 ['github-actions', 'themathqueen'] nobody
1-20184
1 day ago
1-19492
1 day ago
2-37150
2 days
34621 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): `FreeGroup Empty ≃* Unit`, `FreeGroup Empty ≃* PUnit` and `FreeGroup Unit ≃* Multiplicative ℤ` feat(GroupTheory/FreeGroup/Basic): defines the free group on one element as isomorphic multiplicatively to ℤ. This is a dependency of a larger PR to formalize finitely presented groups https://github.com/leanprover-community/mathlib4/pull/34236. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor 45/6 Mathlib/GroupTheory/FreeGroup/Basic.lean 1 35 ['b-mehta', 'copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'tb65536'] nobody
1-19271
1 day ago
1-27155
1 day ago
8-30059
8 days
35017 robo7179
author:robo7179
feat(Combinatorics/SimpleGraph/Acyclic): add every nontrivial tree has atleast two leaves Added two theorems to prove that every non trivial tree has atleast two leaves (one in Finite the other in Acyclic). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 94/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean 2 24 ['IvanRenison', 'SnirBroshi', 'github-actions', 'robo7179'] nobody
1-19250
1 day ago
1-20694
1 day ago
7-24471
7 days
35391 peabrainiac
author:peabrainiac
feat(Geometry/Manifold): API for extended coordinate changes Introduce a definition `I.extendCoordChange e e'` for what previously appeared in lemmas as `(e.extend I).symm ≫ e'.extend I`, and provide some more API lemmas. Split out from #33189. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 131/51 Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,scripts/nolints_prime_decls.txt 3 3 ['github-actions', 'grunweg'] nobody
1-12980
1 day ago
1-69292
1 day ago
1-69070
1 day
35327 SnirBroshi
author:SnirBroshi
feat(SimpleGraph/Acyclic): the union of two trees that share exactly one vertex is a tree --- A surprisingly painful proof for something that seems trivial when using a proof by drawing on the board. To avoid any doubts: no AI was involved whatsoever. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 95/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean 2 3 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
1-7764
1 day ago
3-2979
3 days ago
3-6738
3 days
34015 erdOne
author:erdOne
feat(AlgebraicGeometry): category of schemes affine over a base --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 466/11 Mathlib.lean,Mathlib/AlgebraicGeometry/AffineOver.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Connected.lean 7 19 ['dagurtomas', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] alexjbest
assignee:alexjbest
1-5407
1 day ago
4-73049
4 days ago
16-43508
16 days
34221 tb65536
author:tb65536
refactor(RingTheory/Ideal/AssociatedPrime/Basic): redefine associated primes to include a radical This PR redefines associated primes from `I.IsPrime ∧ ∃ x : M, I = colon ⊥ {x}` to `I.IsPrime ∧ ∃ x : M, I = (colon ⊥ {x}).radical`. This new definition is slightly nonstandard but is the correct definition in the non-Noetherian setting because these are exactly the prime ideals of any minimal primary decomposition. I.e., one can prove the following theorem (see #34699): ``` lemma IsMinimalPrimaryDecomposition.image_radical_eq_associated_primes {R M : Type*} [CommSemiring R] [AddCommMonoid M] [Module R M] [DecidableEq (Submodule R M)] {I : Submodule R M} {t : Finset (Submodule R M)} (ht : I.IsMinimalPrimaryDecomposition t) : (fun J ↦ (J.colon Set.univ).radical) '' t = I.associatedPrimes := ``` I also added a new definition `N.IsAssociatedPrime := I.IsPrime ∧ ∃ x : M, I = (colon N {x}).radical` for submodules because that's actually the definition needed for the above theorem (you can't write `associatedPrimes R (M ⧸ N)` when `M` is only an `AddCommMonoid`). And also the proof that the radical doesn't matter when the ring is Noetherian generalizes to this case. --- - [x] depends on: #34226 - [x] depends on: #34255 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra large-import
label:t-algebra$
136/66 Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Finiteness.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Localization.lean,Mathlib/RingTheory/Regular/Depth.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] chrisflav
assignee:chrisflav
1-5406
1 day ago
4-31862
4 days ago
4-31640
4 days
34295 Yu-Misaka
author:Yu-Misaka
chore: drop `PartialOrder` in `IsOrderedMonoid` instances This PR attempts to remove `PartialOrder` assumption in `IsOrderedMonoid`. The main objective is to make [Finsupp.sum_le_sum](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Order.html#Finsupp.sum_le_sum) available for preorder. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra t-order
label:t-algebra$
149/123 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Subgroup/Order.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Associated.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/Submonoid.lean,Mathlib/Algebra/Order/Monoid/TypeTags.lean,Mathlib/Algebra/Order/Monovary.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/UpperLower.lean,Mathlib/Analysis/Normed/Order/UpperLower.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/Order/Filter/AtTopBot/Monoid.lean,Mathlib/Order/Filter/Germ/OrderedMonoid.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Algebra/Order/UpperLower.lean 32 16 ['Citronhat', 'MichaelStollBayreuth', 'Yu-Misaka', 'copilot-pull-request-reviewer', 'github-actions', 'leanprover-radar'] Vierkantor
assignee:Vierkantor
1-5405
1 day ago
6-54160
6 days ago
25-29114
25 days
34493 loefflerd
author:loefflerd
feat(LinearAlgebra/QuadraticForm): radical of a quadratic form Define the radical of a quadratic form, and show that its dimension is invariant under equivalences. --- This is a step on the way to Sylvester's law of inertia (#34204). - [x] depends on: #34110 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
248/4 Mathlib.lean,Mathlib/LinearAlgebra/Basis/Basic.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/QuadraticForm/IsometryEquiv.lean,Mathlib/LinearAlgebra/QuadraticForm/Radical.lean,Mathlib/LinearAlgebra/StdBasis.lean,docs/references.bib 9 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] riccardobrasca
assignee:riccardobrasca
1-5404
1 day ago
4-65658
4 days ago
20-25534
20 days
34543 j-loreaux
author:j-loreaux
refactor: improve API connecting `ℝ`- and `𝕜`-linear functionals This PR concerns the extension of `ℝ`-linear (continuous or not) functionals to `𝕜`-linear functionals. This does several things, but I felt it was better to do it all at once, rather than having repeated churn in the same files because the current setup is a mess for numerous reasons. Unfortunately, that means the diff is a bit of a mess; I think the easiest way to review this PR is read the following discussion and then only look at the *new* code (and check that the deprecations exist). I will begin by highlighting the current problems: 1. Naming: the primary declarations `LinearMap.extendTo𝕜'` and `ContinuousLinearMap.extendTo𝕜'` are in the wrong namespaces (`Module.Dual` and `StrongDual`), and contain a variable name `𝕜`. 2. These declarations are primed, and their unprimed counterparts operate directly on `RestrictScalars`. This is nominally (according to the module documentation) for convenience, but it leads to defeq abuse (see #34530) and so should be avoided anyway. That PR removes the only occurrence of the use of the unprimed declarations in Mathlib. 3. The declaration `ContinuousLinearMap.extendTo𝕜'` has type class assumptions (normed ones) that are too strong, thereby making it unusable for non-normed spaces (e.g., when one wants to consider continuous linear functionals on the weak dual of a Banach space). 4. Point (3) led to the creation of `RCLike.extendTo𝕜'ₗ` which is just `ContinuousLinearMap.extendTo𝕜'` except reproven with weaker type class assumptions and bundled into a linear map. 5. There are missing `simp` lemmas, namely, ones concerning the imaginary part of the extension applied to a vector. 6. We're missing appropriately bundled versions, with `RCLike.extendTo𝕜'ₗ` being the only bundling currently. In this PR: we fix the above by doing the following: 1. Renaming `LinearMap.extendTo𝕜'` → `Module.Dual.extendRCLike` and `ContinuousLinearMap.extendTo𝕜'` → `StrongDual.extendRCLike`. 2. Removing the unprimed counterparts that operate on `RestrictScalars` 3. Weakening the type class assumptions on the newly renamed `StrongDual.extendRCLike` 4. Move `RCLike.extendTo𝕜'ₗ` out of its current location (`Analysis/LocallyConvex/Separation`) and next to `StrongDual.extendRCLike`; use the newly generalized `StrongDual.extendRCLike` to define it; rename it to `StrongDual.extendRCLikeₗ`; upgrade it from a linear map to a linear equivalence. 5. Add the missing simp lemmas for imaginary parts. 6. Add other appropriate bundlings, namely `Module.Dual.extendRCLikeₗ : Dual E ℝ ≃ₗ[ℝ] Dual E 𝕜`, and, in the context of normed spaces `StrongDual.extendRCLikeₗᵢ : StrongDual E ℝ ≃ₗᵢ[ℝ] StrongDual E 𝕜`. --- In a follow-up PR, I will add the bundling: `WeakDual.extendRCLikeL : WeakDual E ℝ ≃L[ℝ] WeakDual E 𝕜`. - [ ] depends on: #34530 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 125/114 Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Normed/Module/RCLike/Extend.lean,Mathlib/Analysis/RCLike/Extend.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] urkud
assignee:urkud
1-5403
1 day ago
16-43263
16 days ago
16-43047
16 days
34640 vihdzp
author:vihdzp
chore(Order/UpperLower/Basic): use `to_dual` --- - [x] depends on: #33964 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 29/78 Mathlib/Order/Interval/Set/LinearOrder.lean,Mathlib/Order/Interval/Set/OrderEmbedding.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Order/WellFounded.lean 4 13 ['JovanGerb', 'Komyyy', 'github-actions', 'mathlib-dependent-issues', 'vihdzp'] Vierkantor
assignee:Vierkantor
1-5402
1 day ago
4-70984
4 days ago
10-41508
10 days
34643 joelriou
author:joelriou
feat(AlgebraicTopology): various localized equivalences Given a model category `C`, we show that a few localizer morphisms are localized weak equivalences, which can be understood by saying that we obtain the same localized category (up to equivalence) by inverting weak equivalences in `C`, `CofibrantObject C`, `FibrantObject C` or `BifibrantObject C`. --- - [x] depends on: #34641 - [x] depends on: #34642 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology t-category-theory 126/1 Mathlib.lean,Mathlib/AlgebraicTopology/ModelCategory/BifibrantObjectHomotopy.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean,Mathlib/CategoryTheory/Quotient/LocallySmall.lean 4 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
1-5402
1 day ago
4-17241
4 days ago
4-17019
4 days
35024 SnirBroshi
author:SnirBroshi
chore(RingTheory/DedekindDomain/PID): remove non-terminal simp And remove obsolete explicit params since the `FunLike` refactor. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 14/33 Mathlib/RingTheory/DedekindDomain/PID.lean 1 4 ['Komyyy', 'SnirBroshi', 'github-actions'] mattrobball
assignee:mattrobball
1-5401
1 day ago
4-42782
4 days ago
8-40716
8 days
35072 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): non-primitive corecursion for `Seq`: `FriendlyOperation` API This is a continuation of #34311. This PR adds more API about friendly operations: * `FriendlyOperation.destruct`: a "coinductive destructor" for `FriendlyOperation` * `FriendlyOperation.coind`: a coinductive principle for proving that operation is friendly * `FriendlyOperationClass.eq_of_bisim`: a generalisation of `Seq.eq_of_bisim'` for proving two sequences are equal. --- This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-meta 296/0 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean 1 1 ['github-actions'] joneugster
assignee:joneugster
1-5400
1 day ago
7-57021
7 days ago
7-60503
7 days
35080 rwst
author:rwst
doc(RingTheory/PowerSeries/Derivative): main def/stmts, docstrings Added main definitions, main statements, added and fixed docstrings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 35/6 Mathlib/RingTheory/PowerSeries/Derivative.lean 1 2 ['github-actions'] chrisflav
assignee:chrisflav
1-5399
1 day ago
7-43429
7 days ago
7-43207
7 days
35097 pevogam
author:pevogam
feat: add a LE version Rat.lt_one_iff_num_le_denom theorem The following is more useful due to the partial order application of LE in comparison to LT. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
2/0 Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean 1 6 ['github-actions', 'pevogam', 'wwylele'] kim-em
assignee:kim-em
1-5399
1 day ago
4-54222
4 days ago
7-13724
7 days
35162 JovanGerb
author:JovanGerb
feat(Order/Interval/Set/Basic): use `to_dual` This PR tags basic theorems about `Ioo`, `Ioc`, `Ico` and `Icc` with `to_dual`. This is the other half of #33964. Notes: - I decided to add the theorems `Ico_subset_Ioo` and `Icc_subset_Ioc`, because they were missing. - For some proofs, the cast insertion heuristic failed, and I had to modify the proof slightly in order to make it work with `to_dual`. The two kinds of fixes were replacing `fun ⟨hx₁, hx₁⟩ ↦` with `fun hx ↦` and then using `hx.1` and `hx.2`, and inserting an explicit rewrite using `mem_Ioo` in order to eliminate the defEq abuse. I should investigate how to fix this, but that shouldn't block this PR. - There were some theorems that hold by `rfl`, but their dual does not. This confused the `@[defEq]` attribute, because we were erroneously setting it for these dual theorems. I've modified it so that it will first check if the attribute is applicable. - `left_notMem_Ioc` and `left_notMem_Ioo` used to have explicit arguments. I made these implicit which lines up with their dual version, and their `Finset` counterparts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 186/353 Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Tactic/Translate/Core.lean 2 3 ['github-actions', 'vihdzp'] Vierkantor
assignee:Vierkantor
1-5395
1 day ago
4-54184
4 days ago
5-47323
5 days
35206 j-loreaux
author:j-loreaux
feat: `Cauchy.map` for functions uniformly continuous on a set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 13/2 Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
1-5393
1 day ago
4-33221
4 days ago
5-13440
5 days
35217 kim-em
author:kim-em
feat: auxiliary lemmas for Artin and braid groups This PR adds small lemmas to existing files, in preparation for the Artin groups and braid groups PRs. - `Commute.mul_pow_eq_one`: for commuting elements with `a ^ m = 1` and `b ^ m = 1` - `Equiv.Perm.swap_conjugate`: braid relation for adjacent transpositions - `Equiv.Perm.swap_mul_swap_comm_of_disjoint`: disjoint transpositions commute - `@[grind =]` attributes on `Perm.mul_apply`, `Perm.one_apply`; new `Perm.pow_add_one_apply` - `Subgroup.normalClosure_singleton_one` - `FreeGroup.ofList` and associated lemmas - `FreeGroup.freeGroupUnitMulEquivInt` - `PresentedGroup.instUniqueOfIsEmpty` - `CoxeterMatrix.Aₙ_adjacent`, `CoxeterMatrix.Aₙ_far` 🤖 Prepared with Claude Code 86/0 Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/PresentedGroup.lean 6 7 ['eric-wieser', 'github-actions', 'themathqueen'] thorimur
assignee:thorimur
1-5392
1 day ago
unknown
unknown
35224 b-mehta
author:b-mehta
feat(Module/RCLike): convenience lemma to prove antilipschitz over RCLike Use the fact that we can rescale by norms in RCLike to get a convenience constructor for Antilipschitz --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 16/0 Mathlib/Analysis/Normed/Module/RCLike/Basic.lean 1 1 ['github-actions'] ADedecker
assignee:ADedecker
1-5390
1 day ago
5-375
5 days ago
5-153
5 days
35243 ScottCarnahan
author:ScottCarnahan
chore(Algebra/MonoidAlgebra/PointwiseSMul): switch action from Finsupp to (Add)MonoidAlgebra and multiplicativize This PR moves the API for convolution action on functions from `Finsupp` to `MonoidAlgebra`, adding a `Semiring` hypothesis. We do this move, because the convolution action of finsupps on formal functions is more naturally expressed as an action by the monoid algebra with its convolutional multiplication. This PR also multiplicativizes, preserving the original material with `to_additive`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
109/52 Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean 3 1 ['github-actions'] eric-wieser
assignee:eric-wieser
1-5388
1 day ago
4-53020
4 days ago
4-52798
4 days
35268 tb65536
author:tb65536
feat(Topology/Algebra/Module/LinearMap): units in `M →L[R] M` are homeomorphisms This PR proves that a units in `M →L[R] M` are homeomorphisms. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra
label:t-algebra$
9/1 Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
1-5386
1 day ago
4-29664
4 days ago
4-29442
4 days
35269 tb65536
author:tb65536
refactor(Topology/Algebra/Module/LinearMap): adjust statement of `coe_mul` and `coe_pow` In `Topology/Algebra/Module/LinearMap`, it seems to be the pattern to have `coe_zero`/`coe_id`/`coe_add`/`coe_neg`/`coe_sub` for the coercions from `ContinuousLinearMap` to `LinearMap` and primed versions `coe_zero'`/`coe_id'`/`coe_add'`/`coe_neg'`/`coe_sub'` for the coercions from `ContinuousLinearMap` to `Function`. This PR adjusts the statements of `coe_mul` and `coe_pow` to fit this pattern, as well as adding `coe_one`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra
label:t-algebra$
20/12 Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
1-5385
1 day ago
4-25381
4 days ago
4-25159
4 days
34882 vihdzp
author:vihdzp
chore(Order/SuccPred/Archimedean): use `to_dual` --- - [x] depends on: #34880 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 42/92 Mathlib/Order/MinMax.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/SuccPred/Basic.lean 3 10 ['JovanGerb', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
1-3850
1 day ago
4-18515
4 days ago
4-18293
4 days
33985 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): `OmegaCompletePartialOrder` instance for `Sum` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sum`, along with `ωScottContinuous` lemmas for basic operations (`inl`, `inr`, `elim`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sum`s (e.g. see the proof of `Sum.ωScottContinuous_map`). --- - [x] depends on: #33941 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-order 191/1 Mathlib/Data/Sum/Basic.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean 4 20 ['Vierkantor', 'YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] Vierkantor
assignee:Vierkantor
1-396
1 day ago
0-84453
23 hours ago
13-61757
13 days
34578 dennj
author:dennj
feat: define Boolean circuits over abstract gate families This PR introduces a foundation for Boolean circuits parameterized by abstract gate families. ## Main definitions - `GateEval`: typeclass for gate families with Boolean semantics - `GateHom`: arity-preserving maps between gate families - `Circuit`: inductive type representing circuit syntax trees - `AC0Gate`, `ACC0Gate`, `TC0Gate`: standard complexity-theoretic gate bases ## Design notes The key design choice is to keep **syntax** (gate labels `G : Nat → Type`) separate from **semantics** (`GateEval.eval`), allowing users to define custom gate families (e.g., MAJ, XOR, arbitrary threshold gates) without modifying core definitions. ### Tree vs DAG representation We evaluated two approaches for circuit representation: 1. **Tree-based** (this PR): Circuits as inductive syntax trees 2. **DAG-based**: Circuits as lists of gates with index-based references We chose tree-based circuits because: - **Compositionality**: Easy to build circuits via `gate g (fun i => subcircuit i)` - **Type safety**: Arity-indexed gates (`G : Nat → Type`) catch errors at compile time - **Manipulation**: Natural support for `mapGate`, `subst`, `mapInputs` - **Mathlib philosophy**: Aligns with structural/compositional reasoning patterns For use cases requiring explicit sharing (complexity analysis, evaluation efficiency), a separate `DAG` type can be added later with proven equivalence via `Circuit.toDAG`. The current representation serves as a minimal foundation for size/depth measures, circuit families, and complexity classes (AC0, ACC0, TC0). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-computability 919/0 Mathlib.lean,Mathlib/Computability/Circuit/Basic.lean,Mathlib/Computability/Formula/Basic.lean,Mathlib/Computability/Gate.lean 4 18 ['LLaurance', 'YuvalFilmus', 'dennj', 'github-actions'] nobody
0-85254
23 hours ago
0-85254
23 hours ago
8-28708
8 days
34713 dennj
author:dennj
feat(Probability/Markov): stationary distributions for stochastic matrices This PR proves that every row-stochastic matrix on a finite nonempty state space has a stationary distribution in the standard simplex. Main additions to `Mathlib/Probability/Markov/Stationary.lean`: - `IsStationary`: A distribution μ is stationary for matrix P if μ ᵥ* P = μ - `cesaroAverage`: Cesàro average of iterates of a vector under a matrix - `Matrix.rowStochastic.exists_stationary_distribution`: existence theorem The proof uses Cesàro averaging: start with uniform distribution, form averages, extract convergent subsequence by compactness, show limit is stationary via L¹ non-expansiveness. Also adds `vecMul_mem_stdSimplex` to `Stochastic.lean`: multiplying a probability vector by a row-stochastic matrix preserves simplex membership. t-algebra new-contributor
label:t-algebra$
231/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean,Mathlib/Probability/Markov/Stationary.lean 3 6 ['dennj', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
0-85222
23 hours ago
0-85222
23 hours ago
1-28423
1 day
27953 CoolRmal
author:CoolRmal
feat(ProbabilityTheory): Conditional Jensen's Inequality This PR adds conditional Jensen's inequality. I made some changes to Mathlib/Analysis/Convex/Approximation.lean because I need the sequence of affine functions to be bouneded above at each point. --- - [x] depends on: #31411 - [x] depends on: #31399 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 130/20 Mathlib.lean,Mathlib/Analysis/Convex/Approximation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean 4 8 ['CoolRmal', 'EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] sgouezel
assignee:sgouezel
0-83631
23 hours ago
0-82963
22 hours ago
20-36950
20 days
35048 b-mehta
author:b-mehta
feat(Analysis/Normed/Operator): prove the Fredholm alternative This PR proves the Fredholm alternative for compact operators on a Banach space over a nontrivially normed field - [x] depends on: #35001 - [x] depends on: #35052 - [x] depends on: #35226 t-analysis 244/0 Mathlib.lean,Mathlib/Analysis/Normed/Operator/Banach.lean,Mathlib/Analysis/Normed/Operator/FredholmAlternative.lean 3 10 ['b-mehta', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'tb65536'] nobody
0-79983
22 hours ago
1-59070
1 day ago
4-44114
4 days
35207 j-loreaux
author:j-loreaux
feat: neighborhood basis in a metric space consisting of closed balls of radius `1 / (n + 1)` --- I wanted this for convenience downstream and it didn't exist. We have similar things, but not this one. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology easy 19/0 Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 1 3 ['Komyyy', 'github-actions'] nobody
0-76142
21 hours ago
1-36496
1 day ago
5-12877
5 days
35211 kim-em
author:kim-em
chore: use @[to_dual] in Bounds/Image This PR adds `@[to_dual]` annotations to primal theorems in `Mathlib.Order.Bounds.Image`, auto-generating their dual counterparts and deleting the hand-written versions. Covers `MonotoneOn`, `AntitoneOn`, `Monotone`, `Antitone`, `image2`, `IsCofinalFor`, `Prod`, and `Pi` sections. [Diff relative to #35208](https://github.com/kim-em/mathlib4/compare/kim/to-dual-bounds-basic...kim/to-dual-bounds-image) - [x] depends on: #35208 🤖 Prepared with Claude Code 56/193 Mathlib/Order/Bounds/Image.lean 1 14 ['JovanGerb', 'github-actions', 'kim-em', 'mathlib-dependent-issues', 'vihdzp'] nobody
0-74757
20 hours ago
0-71600
19 hours ago
4-62677
4 days
35429 CoolRmal
author:CoolRmal
feat: a convex, lower-semicontinuous, and positively homogeneous function is the supremum of a family of linear functions This PR adds more results related to the #31411. The motivation of this PR is explained over here: #35431. The main theorems proved in this PR are - `convexCone_sSup_linear_eq`: A function `φ : E → ℝ` that is convex, lower-semicontinuous, and positively homogeneous on a closed, convex, and pointed cone `c` is the supremum of a family of functions that are the restrictions to `s` of continuous linear forms in `E`. I actually prove this theorem under the assumption `∀ x ∈ c, ∀ᶠ μ in atTop, φ (μ • x) = μ * φ x`, which is weaker than positive homogeneity. - We then apply the theorem above to prove `univ_sSup_linear_eq`, which says that a function that is convex, lower-semicontinuous, and positively homogeneous on the entire space is the supremum of a family of continuous linear forms in `E`. - Similar to what I have done in #31411, I also proved the countable/sequential version of these theorems, under the assumption that the underlying space `E` is hereditarily Lindelof. --- - [ ] depends on #27953 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 351/24 Mathlib.lean,Mathlib/Analysis/Convex/Approximation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean 4 1 ['github-actions'] nobody
0-74700
20 hours ago
unknown
unknown
35209 kim-em
author:kim-em
chore: use @[to_dual] extensively in CompleteLattice This PR adds `@[to_dual]` and `@[to_dual existing]` annotations extensively in `CompleteLattice/Defs.lean` and `CompleteLattice/Basic.lean`, auto-generating many dual theorems and deleting the hand-written versions. [Diff relative to previous PR](https://github.com/kim-em/mathlib4/compare/kim/to-dual-bounds-basic...kim/to-dual-complete-lattice) - [x] depends on: #35208 🤖 Prepared with Claude Code 180/485 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean 3 20 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
0-67704
18 hours ago
0-64543
17 hours ago
3-47567
3 days
33746 ster-oc
author:ster-oc
feat(Algebra/Module/ZLattice): align `ZSpan.floor` to `Int.floor` API This PR adds some of the existent lemmas about `Int.floor`, `Int.ceil` and `Int.fract` to the `ZSpan` namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
353/145 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Topology/Algebra/Order/Floor.lean 3 7 ['github-actions', 'joelriou', 'mathlib-merge-conflicts', 'ster-oc'] joelriou
assignee:joelriou
0-65763
18 hours ago
0-65975
18 hours ago
25-3912
25 days
35418 vlad902
author:vlad902
feat(SimpleGraph): `IsAcyclic` iff not 2-edge-reachable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 46/5 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean 3 3 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
0-63753
17 hours ago
0-63048
17 hours ago
1-16988
1 day
35259 MichaelStollBayreuth
author:MichaelStollBayreuth
feat: add a definition and API lemmas for Polynomial.homogenize and MvPolynomial This PR adds two API lemmas for multivariate polynomials: the support of `1` is `{0}` and all terms of a homoegenous polynomial of degree `n` have degree `n`. It also adds an API lemma for `Polynomial.homogenize` (a polynomial is zero if its homogenization of sufficiently large degree is zero), plus a definition ```lean /-- Given a polynomial `p : R[X]`, this is the family `![p₀, p₁]` of homogeneous bivariate polynomials of degree `p.natDegree` such that `p(x) = p₀(x,1)/p₁(x,1)` and `p₁` is a monomial. -/ noncomputable def toTupleMvPolynomial (p : R[X]) : Fin 2 → MvPolynomial (Fin 2) R := ![p.homogenize p.natDegree, (MvPolynomial.X 1) ^ p.natDegree] ``` and some API for it. This is useful for developing the theory of heights (in arithmetic geometry); see [Heights](https://github.com/MichaelStollBayreuth/Heights). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
88/0 Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Homogenize.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean 3 10 ['AntoineChambert-Loir', 'MichaelStollBayreuth', 'github-actions'] nobody
0-63246
17 hours ago
1-44950
1 day ago
4-33384
4 days
34699 tb65536
author:tb65536
feat(RingTheory/Lasker): prove first uniqueness theorem for primary decomposition This PR proves the first uniqueness theorem for primary decomposition: In any minimal primary decomposition `I = ⨅ i, q_i`, the ideals `√(q_i : M)` are exactly the associated primes of `I`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra maintainer-merge
label:t-algebra$
38/6 Mathlib/RingTheory/IsPrimary.lean,Mathlib/RingTheory/Lasker.lean 2 10 ['erdOne', 'github-actions', 'mariainesdff', 'tb65536'] mariainesdff
assignee:mariainesdff
0-59756
16 hours ago
0-59001
16 hours ago
16-11523
16 days
34400 euprunin
author:euprunin
chore: golf using `grind` (and add one supporting `grind` annotation) The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `SubMulAction.ofStabilizer.isMultiplyPretransitive`: 207 ms before, 232 ms after This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory maintainer-merge 4/14 Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean 2 8 ['euprunin', 'github-actions', 'leanprover-radar', 'mattrobball', 'tb65536', 'vihdzp'] mattrobball
assignee:mattrobball
0-58398
16 hours ago
6-21342
6 days ago
20-30453
20 days
29550 Raph-DG
author:Raph-DG
feat(RingTheory): Order of vanishing in a discrete valuation ring In this PR we develop some API for working with the order of vanishing in a discrete valuation ring. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-ring-theory 442/3 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Action/Basic.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Properties.lean 5 18 ['Raph-DG', 'erdOne', 'github-actions', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
0-57831
16 hours ago
0-57096
15 hours ago
33-38012
33 days
35146 harahu
author:harahu
doc(CategoryTheory/Bicategory/Kan): clarify Kan adjunction docstrings * The two IsAbsKan.adjunction docstrings in Kan/Adjunction were corrected to match the actual definitions: they now describe deriving adjunctions from absolute left Kan (co)universal data, not from an input adjunction. * Grammar and phrasing were cleaned up in the IsKan.adjunction docs (commutes with f/u). * In Kan/HasKan and Kan/IsKan, stale/non-API names were replaced by the current identifiers (lan, lanLift, HasLeftKanExtension) and Kan capitalization was normalized. --- The issues were identified and fixed by Codex. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 16/14 Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/CategoryTheory/Bicategory/Kan/HasKan.lean,Mathlib/CategoryTheory/Bicategory/Kan/IsKan.lean 3 9 ['dagurtomas', 'github-actions', 'harahu', 'joelriou'] joelriou
assignee:joelriou
0-57737
16 hours ago
0-57293
15 hours ago
5-48366
5 days
35436 daniel-carranza
author:daniel-carranza
feat(CategoryTheory/Monoidal/Closed): Prove the isomorphism of internal hom objects C(x \otimes y, z) and C(y, C(x, z)) Prove the currying-uncurrying isomorphism `C(x \otimes y, z) \iso C(y, C(x, z))` between internal hom objects of a closed monoidal category `C`. --- This result is connected to the infinity-cosmos project, and is used to prove that a closed monoidal category enriched in itself admits all cotensors. Line 81 currently contains a one-line proof in tactics mode `exact rfl`. When trying to use `rfl` outside of tactics mode, an error is thrown. Any help with this (or any other aspect of the formalization) is greatly appreciated! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory infinity-cosmos 84/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Closed/InternalCurrying.lean 2 4 ['github-actions', 'robin-carlier'] nobody
0-57714
16 hours ago
0-61024
16 hours ago
0-60802
16 hours
26735 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): The codimension of a point of a scheme is equal to the krull dimension of the stalk In this PR we show that the codimension of a point in a scheme is equal to the krull dimension of the local ring at that point, as in stacks 02IZ. --- The proof of the main result `stalk_dim_eq_coheight` is currently a bit long for my (and I suspect the broader community's) tastes. That said, I'm not quite sure the best way to break it into pieces, any comments would be very much appreciated! - [x] depends on: #26204 [For the notion of codimension, here we are using the coheight in the specialization order. ] - [x] depends on: #26225 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry large-import 209/0 Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/Sober.lean 5 44 ['Raph-DG', 'chrisflav', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
0-56524
15 hours ago
0-55256
15 hours ago
29-26762
29 days
35437 harahu
author:harahu
chore(Topology): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 25/25 Mathlib/Topology/Algebra/AsymptoticCone.lean,Mathlib/Topology/Algebra/ConstMulAction.lean,Mathlib/Topology/Algebra/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/Module/PointwiseConvergence.lean,Mathlib/Topology/Algebra/RestrictedProduct/TopologicalSpace.lean,Mathlib/Topology/Convenient/GeneratedBy.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/QuasiSeparated.lean,Mathlib/Topology/Sheaves/Over.lean 9 3 ['github-actions', 'harahu', 'mathlib-bors'] nobody
0-55895
15 hours ago
0-54891
15 hours ago
0-54669
15 hours
35435 WenrongZou
author:WenrongZou
feat(RingTheory/MvPowerSeries): toMvPowerSeries and rename --- Some APIs about `rename` and `toMvPowerSeries`. This follows the inspiration in `Polynomial.toMvPolynomial` and `MvPolynomial.rename`. I will add more theorems related to these in the next PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 325/4 Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 4 4 ['BryceT233', 'WenrongZou', 'github-actions'] nobody
0-55124
15 hours ago
0-66072
18 hours ago
0-65850
18 hours
35215 kim-em
author:kim-em
chore: use @[to_dual] in FixedPoints This PR adds `@[to_dual]` annotations to 14 theorems about `lfp` in `Order/FixedPoints.lean`, auto-generating their `gfp` duals and deleting the hand-written versions. Also registers `OrderHom.lfp` as the dual of `OrderHom.gfp` via `attribute [to_dual existing]`. Auto-generated duals include: `le_gfp`, `gfp_le_fixed`, `gfp_le`, `gfp_le_map`, `map_gfp`, `isFixedPt_gfp`, `map_le_gfp`, `isGreatest_gfp_le`, `isGreatest_gfp`, `gfp_induction`, `map_gfp_comp`, `gfp_gfp`, `map_inf_fixedPoints_le`, `map_sInf_subset_fixedPoints_le`. [Diff relative to #35208](https://github.com/kim-em/mathlib4/compare/kim/to-dual-bounds-basic...kim/to-dual-fixed-points) - [x] depends on: #35208 🤖 Prepared with Claude Code 325/759 Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Interval/Set/Disjoint.lean,Mathlib/Topology/Order.lean 9 7 ['JovanGerb', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
0-54071
15 hours ago
0-51933
14 hours ago
4-243
4 days
35439 harahu
author:harahu
chore(RingTheory): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 93/88 Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DividedPowers/Basic.lean,Mathlib/RingTheory/DividedPowers/DPMorphism.lean,Mathlib/RingTheory/DividedPowers/RatAlgebra.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Flat/EquationalCriterion.lean,Mathlib/RingTheory/Ideal/Quotient/PowTransition.lean,Mathlib/RingTheory/IdealFilter/Topology.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Jacobson/Artinian.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/NormalClosure.lean,Mathlib/RingTheory/Perfectoid/BDeRham.lean,Mathlib/RingTheory/Perfectoid/FontaineTheta.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean,Mathlib/RingTheory/ReesAlgebra.lean,Mathlib/RingTheory/RingHom/FiniteType.lean,Mathlib/RingTheory/UniqueFactorizationDomain/ClassGroup.lean,Mathlib/RingTheory/WittVector/TeichmullerSeries.lean,Mathlib/RingTheory/ZMod/UnitsCyclic.lean 26 2 ['github-actions', 'harahu'] nobody
0-51330
14 hours ago
0-50489
13 hours ago
0-50267
13 hours
35440 harahu
author:harahu
chore(Order): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 11/11 Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/GameAdd.lean,Mathlib/Order/Interval/Finset/Gaps.lean,Mathlib/Order/PrimeSeparator.lean 4 1 ['github-actions'] nobody
0-50875
14 hours ago
0-50161
13 hours ago
0-49939
13 hours
35438 harahu
author:harahu
chore(Tactic): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 14/13 Mathlib/Tactic/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basis.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/Linter/OldObtain.lean,Mathlib/Tactic/Simps/Basic.lean 6 1 ['github-actions'] nobody
0-50171
13 hours ago
0-46792
12 hours ago
0-46570
12 hours
35441 harahu
author:harahu
chore(NumberTheory): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 16/16 Mathlib/NumberTheory/ClassNumber/FunctionField.lean,Mathlib/NumberTheory/ModularForms/DedekindEta.lean,Mathlib/NumberTheory/NumberField/ClassNumber.lean,Mathlib/NumberTheory/NumberField/FractionalIdeal.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/NumberTheory/SiegelsLemma.lean 7 1 ['github-actions'] nobody
0-48619
13 hours ago
0-47940
13 hours ago
0-47718
13 hours
33736 fbarroero
author:fbarroero
feat(RingTheory/Polynomial/GaussNorm): The `gaussNorm` is an absolute value if `v` is a nonarchimedean absolute value We prove ``` Polynomial.gaussNorm_isAbsoluteValue {c : ℝ} {R : Type*} [Ring R] {v : AbsoluteValue R ℝ} (hna : IsNonarchimedean v) (hc : 0 < c) : IsAbsoluteValue (gaussNorm v c) ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 189/7 Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Ring/IsNonarchimedean.lean,Mathlib/RingTheory/Polynomial/GaussNorm.lean 3 11 ['copilot-pull-request-reviewer', 'erdOne', 'fbarroero', 'github-actions'] ADedecker
assignee:ADedecker
0-44625
12 hours ago
0-42241
11 hours ago
36-11827
36 days
27100 staroperator
author:staroperator
feat(ModelTheory): Presburger definability and semilinear sets This PR formalizes the classical result that Presburger definable sets are the same as semilinear sets. As an application of this result, we show that the graph of multiplication is not Presburger definable. --- - [x] depends on: #26896 - [x] depends on: #27081 - [x] depends on: #27087 - [x] depends on: #27414 - [x] depends on: #32123 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic large-import maintainer-merge 278/0 Mathlib.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Definability.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,docs/references.bib 4 10 ['awainverse', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'staroperator'] fpvandoorn
assignee:fpvandoorn
0-43802
12 hours ago
19-26701
19 days ago
80-74832
80 days
34049 smmercuri
author:smmercuri
refactor: use 1-field structure to define the `WithVal` type synonym Following the Zulip threads [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithLp.60/near/526234806) and [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithAbs.60.2F.60WithVal.60/with/569663323) and using `WithLp` as a template, we refactor the `WithVal` type synonym as a 1-field structure. The main benefit being that it prevents defeq abuse. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 417/138 Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 8 24 ['chrisflav', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'smmercuri'] chrisflav
assignee:chrisflav
0-42888
11 hours ago
0-42045
11 hours ago
25-33930
25 days
35423 Rob23oba
author:Rob23oba
feat: add congruence lemmas for `Function.update` and `Pi.single` Adds `simp` congruence lemmas to `Function.update` and `Pi.single` that are specialized for the non-dependent case. See also [#mathlib4 > Simp fails to apply with `Function.update`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Simp.20fails.20to.20apply.20with.20.60Function.2Eupdate.60/with/573889929). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 29/6 Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/RepresentationTheory/Tannaka.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 5 8 ['Rob23oba', 'eric-wieser', 'github-actions', 'loefflerd'] nobody
0-40934
11 hours ago
0-37631
10 hours ago
0-82610
22 hours
31425 robertmaxton42
author:robertmaxton42
feat(Topology): implement delaborators for non-standard topology notation Add delaborators for unary and binary notation related to non-standard topologies in the TopologicalSpace namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 250/4 Mathlib.lean,Mathlib/Topology/Defs/Basic.lean,Mathlib/Util/DelabNonCanonical.lean,MathlibTest/Delab/TopologicalSpace.lean 4 45 ['eric-wieser', 'github-actions', 'jcommelin', 'kckennylau', 'robertmaxton42'] eric-wieser
assignee:eric-wieser
0-40438
11 hours ago
31-64594
31 days ago
85-63021
85 days
35445 themathqueen
author:themathqueen
feat(Analysis): `{LinearMap, Matrix}.trace` as a positive linear map --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis large-import 43/1 Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/Matrix/Order.lean 2 1 ['github-actions'] nobody
0-40224
11 hours ago
0-39554
10 hours ago
0-39332
10 hours
32260 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle/Oriented/Affine): oriented angle bisection and halving unoriented angles Add lemmas relating points bisecting an oriented angle to explicit expressions for one unoriented angle in relation to half another unoriented angle. --- Feel free to golf. --- - [x] depends on: #32259 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry maintainer-merge 107/0 Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean 2 7 ['github-actions', 'jsm28', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'wwylele'] JovanGerb
assignee:JovanGerb
0-40007
11 hours ago
23-42345
23 days ago
63-16342
63 days
35430 urkud
author:urkud
feat: define `LinearMap.piMap` and `ContinuousLinearMap.piMap` As requested by @eric-wieser in #34491 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 39/0 Mathlib/LinearAlgebra/Pi.lean,Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean 2 4 ['github-actions', 'grunweg', 'urkud'] nobody
0-39881
11 hours ago
0-37666
10 hours ago
0-71621
19 hours
35447 themathqueen
author:themathqueen
feat(LinearAlgebra/UnitaryGroup): the transpose and conjugate of a unitary matrix as a unitary matrix --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
35/0 Mathlib/LinearAlgebra/UnitaryGroup.lean 1 1 ['github-actions'] nobody
0-39434
10 hours ago
0-38390
10 hours ago
0-38168
10 hours
33764 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Diam): drop `Finite α` from `ediam_le_two_mul_radius` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 22/5 Mathlib/Combinatorics/SimpleGraph/Diam.lean 1 5 ['IvanRenison', 'Rida-Hamadani', 'github-actions', 'robin-carlier', 'vlad902'] kmill
assignee:kmill
0-36720
10 hours ago
33-13399
33 days ago
40-26817
40 days
33909 YaelDillies
author:YaelDillies
feat(SetTheory/Cardinal): more lemmas about `ENat` and deduplicate a few pairs. From ProofBench --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 81/49 Mathlib/Data/Finite/Card.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/RingTheory/Length.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/ENat.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/SetTheory/Cardinal/NatCount.lean,Mathlib/SetTheory/Cardinal/ToNat.lean 10 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'tb65536', 'vihdzp'] alreadydone
assignee:alreadydone
0-35535
9 hours ago
0-33399
9 hours ago
30-28280
30 days
35451 samueloettl
author:samueloettl
feat(MeasureTheory.Function): compMeasurePreserving_iterate --- These are useful for dynamics/ergodic theory. Possibly some of these could be simp lemmas but I'm not confident enough to say that they are so I didn't mark them as such. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 32/0 Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean 2 2 ['github-actions'] nobody
0-34894
9 hours ago
0-33822
9 hours ago
0-33600
9 hours
35037 sgouezel
author:sgouezel
refactor: change definition of distance in normed group The current definition of the distance in a normed group is `dist x y = ||x / y||`. With this definition, the distance is right-invariant. This does not correspond to the convention in geometric group theory where the distance is given by `||x^{-1} * y||` to make sure it is left-invariant -- this corresponds to the fact that, in a Cayley graph, we put an edge between `x` and `xs` and declare these to be at distance one. We refactor the definition to make sure it follows the standard convention. A pain point is that, in additive commutative groups, which is arguably the most important case, it becomes `||-x + y||` instead of `||x - y||` (which is propositionally the same, but not definitionally). To minimize the hassle, we keep all the lemmas that use `||x - y||`, with their current names, and add new versions in terms of `||-x + y||` when useful. --- - [x] depends on: #35252 - [x] depends on: #35384 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 705/444 Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/Complex/LocallyUniformLimit.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Complex/OpenMapping.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/TaylorSeries.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Metric.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Bounded.lean,Mathlib/Analysis/Normed/Group/Completion.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/Normed/Group/Defs.lean,Mathlib/Analysis/Normed/Group/Int.lean,Mathlib/Analysis/Normed/Group/Pointwise.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Group/Rat.lean,Mathlib/Analysis/Normed/Group/Real.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/MulAction.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Analysis/Normed/Operator/Completeness.lean,Mathlib/Analysis/Normed/Order/Hom/Basic.lean,Mathlib/Analysis/Normed/Order/Hom/Ultra.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Basic.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Integral/CircleTransform.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/NormedSpace.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/ConvexBody.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Padics/MahlerBasis.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/Module/Multilinear/Bounded.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/ContinuousMap/Bounded/Normed.lean,Mathlib/Topology/ContinuousMap/Compact.lean,Mathlib/Topology/MetricSpace/Kuratowski.lean,MathlibTest/hintAll.lean,scripts/nolints_prime_decls.txt 75 11 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sgouezel', 'themathqueen'] YaelDillies
assignee:YaelDillies
0-33789
9 hours ago
0-47620
13 hours ago
0-47412
13 hours
35422 PrParadoxy
author:PrParadoxy
feat(Analysis/LocallyConvex/WeakDual): Weak Representation Theorem This PR uses the material in Topology/Algebra/Module/WeakBilin.lean from the unfinished PR #26345 by @mans0954. Given a bilinear form `B : E →ₗ[𝕜] F →ₗ[𝕜] 𝕜`, every continuous functional on `E` endowed with the `σ(E, F; B)`-topology is of the form `x ↦ B(x, y)` for some `y : F`. The result doesn't generally seem to be named, but Narici-Beckenstein's "Topological Vector Spaces" calls it the "weak representation theorem", a term we have used for the docstring. --- Changes compared to #26345: * We have moved the material to `Analysis/LocallyConvex/WeakDual`, as this is where the supporting result `mem_span_iff_continuous` ended up. (C.f. PR #27316) * `dualEmbedding_surjective` is now much shorter and should no longer rely on defeqs. Co-authored-by: Christopher Hoskin t-analysis new-contributor 31/0 Mathlib/Analysis/LocallyConvex/WeakDual.lean 1 3 ['github-actions'] nobody
0-32246
8 hours ago
1-12788
1 day ago
1-12566
1 day
35446 kbuzzard
author:kbuzzard
perf: try lowering prio for A(0) instances, A a graded object If Lean is looking for `Mul X` where `X` is coincidentally of the form `A 0` then the first thing it tries is `GradedMonoid.GradeZero.mul` which, if wrong, can take a long time to fail. In this PR I steer typeclass inference away from "A(0)-instances" by lowering their priority. Benchmarking is 100% green indicating that this decision is not hurting us. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) See [#mathlib4 > Typeclass Synthesis Regression @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Typeclass.20Synthesis.20Regression/near/564417997) I initiated a new discussion about this PR here [#mathlib4 > priority hacks @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/priority.20hacks/near/574353616) t-algebra
label:t-algebra$
14/13 Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/GradedMonoid.lean 2 9 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
0-30573
8 hours ago
0-31168
8 hours ago
0-37734
10 hours
34077 kbuzzard
author:kbuzzard
perf: increase priority of instSMulOfMul #31040 deprecated `Mul.toSMul` in place of the core instance `instSMulOfMul`, which is at a lowered priority of 910. This PR undeprecates it and makes it a higher priority instance (1100) which seems better for mathlib. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This PR follows the philosophy seen in Mathlib's `Algebra.id : Algebra R R`, which also has raised priority. The idea is the same as `Algebra.id`: if you're looking for an instance of `Algebra R S` with R not equal to S then `Algebra.id` is extremely likely to fail quickly in practice, and if you're looking for an instance of `Algebra R R` then `Algebra.id` is unambiguously the right answer so should be tried ASAP. However the instance is defined so early in mathlib that in in practice it is tried last unless the priority is raised. The same philosophy holds here; if you're looking for an instance of `SMul X X` then you absolutely want to try `Mul.toSMul` first and if you're looking for an instance of `SMul X Y` with Y not X then `Mul.toSMul` will in practice be quick to fail. This PR was inspired by #33908 (another "this should be quick to fail and if it fits then it's almost certainly what we want" prio change) which made an instance of `IsScalarTower R A A` high priority and gave a performance boost. This PR also gives a performance boost. Note that the performance in #31040 looks very bad but the radar output is incorrect; there was a hardware change between the two runs. In fact #31040 produced no changes in profiling, as one might expect. I don't know the correct way to change the priority of a core instance in mathlib, and I didn't know if just changing the priority naively would work repo-wide rather than just file-wide, which was why this PR introduces a second instance. Zulip discussion at [#mathlib4 > priority hacks](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/priority.20hacks/with/574353616) t-algebra
label:t-algebra$
3/9 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Units.lean 2 25 ['alreadydone', 'github-actions', 'kbuzzard', 'leanprover-radar'] jcommelin
assignee:jcommelin
0-30165
8 hours ago
0-30974
8 hours ago
0-33355
9 hours
35346 grunweg
author:grunweg
style(Archive): avoid using > or ≥ Prefer to use < or ≤ instead. For consistently with mathlib style; extracted from #12933. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO 19/19 Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2019Q4.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BallotProblem.lean 9 1 ['github-actions', 'harahu'] nobody
0-28478
7 hours ago
2-48633
2 days ago
2-48411
2 days
30640 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Acyclic): acyclic and bridge theorems + golfing --- - [x] depends on: #30542 - [x] depends on: #30570 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 75/79 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean 2 10 ['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash'] b-mehta
assignee:b-mehta
0-26843
7 hours ago
4-4323
4 days ago
69-62051
69 days
35456 Maldooor
author:Maldooor
feat: `DenseRange.eq_zero_of_inner_left` and generalize `Dense.eq_zero_of_inner_right` --- Generalizes - `DenseRange.eq_zero_of_inner_left` - `DenseRange.eq_zero_of_inner_right` - `Dense.eq_of_inner_left` - `Dense.eq_of_inner_right` to work with arbitrary sets. Also adds - `DenseRange.eq_zero_of_inner_left` - `DenseRange.eq_zero_of_inner_right` t-analysis 48/28 Mathlib/Analysis/InnerProductSpace/Continuous.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/InnerProductSpace/Projection/Submodule.lean 3 1 ['github-actions'] nobody
0-24922
6 hours ago
0-23837
6 hours ago
0-23657
6 hours
35452 joelriou
author:joelriou
feat(CategoryTheory/Sites): descent data, given as coalgebras Let `F : LocallyDiscrete Cᵒᵖ ⥤ᵖ Adj Cat` be a pseudofunctor to the bicategory of adjunctions in `Cat`. In particular, for any morphism `g : X ⟶ Y` in `C`, we have an adjunction `(g^*, g_*)` between a pullback functor and a pushforward functor. In this PR, given a family of morphisms `f i : X i ⟶ S` indexed by a type `ι` in `C`, we introduce a category `F.DescentDataAsCoalgebra f` of descent data relative to the morphisms `f i`, where the objects are described as a family of objects `obj i` over `X i`, and the morphisms relating them are described as morphisms `obj i₁ ⟶ (f i₁)^* (f i₂)_* (obj i₂)`, similarly as Eilenberg-Moore coalgebras. Indeed, when the index type `ι` contains a unique element, we show that `F.DescentDataAsCoalgebra (fun (i : ι) ↦ f` identifies to the category of coalgebras for the comonad attached to the adjunction `(F.map f.op.toLoc).adj`. Co-authored-by: Christian Merten --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 248/1 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Cat.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataAsCoalgebra.lean 3 1 ['github-actions'] nobody
0-24581
6 hours ago
0-24581
6 hours ago
0-29404
8 hours
34937 tannerduve
author:tannerduve
feat(Computability): semilattice instance on Turing degrees This PR equips `TuringDegree` with a `SemilatticeSup` structure by introducing the Turing join, proving usual least-upper-bound properties, and lifting these to degrees (quotients). In support of this, it extends the existing `RecursiveIn` API with some lemmas used in the degree theory. The main contribution is the `SemilatticeSup` instance on `TuringDegree`. We define the Turing join as follows ``` turingJoin (f g) : ℕ → ℕ -- notation: f ⊕ g ``` and prove it is a least upper bound: * `left_le_join`, `right_le_join` * `join_le` * monotonicity and congruence lemmas (`join_mono`, `join_congr`) We lift this to degrees in `TuringDegree.sup`, `TuringDegree.le_sup_left`, `TuringDegree.le_sup_right`, and `TuringDegree.sup_le` ``` instance : SemilatticeSup TuringDegree ``` **New additions to `RecursiveIn.lean`:** - `liftPrim`, `liftPrimrec`, `RecursiveIn'`, `ComputableIn`, `ComputableIn₂`: Encodes partial/total functions between `Primcodable` types as `ℕ →. ℕ`, analogous to `Partrec`/`Computable`. - `of_eq`, `of_eq_tot`, `of_primrec`, `some`, `none`, `mono`, `subst`: Standard closure properties for `RecursiveIn`. - `cond_const`, `cond_core_rfind`, `cond`, `ComputableIn.cond`: Shows `RecursiveIn` is closed under conditionals when the guard is absolutely computable - `Nat.Partrec.recursiveIn`, `Computable.computableIn`: Every partrec/computable function is recursive in any oracle set. Small addition to `Partrec` we add to `Mathlib.Computability.Partrec` a small helper def (`Partrec.kronecker` and related `rfind` lemmas) representing the function that returns 1 if its two (unpaired) arguments are equal, and 0 otherwise, which is used in the proof of `cond` ## TODO Some current `RecursiveIn` proofs such as `cond_core_rfind` still work directly with the inductive constructors and are thus very long. A follow up could add a combinator-style closure library by essentially relativizing all the results and lemmas in `Partrec`, and proofs could be golfed heavily as they are in `Partrec` ## Note: AI Usage [Aleph prover](https://logicalintelligence.com/aleph-coding-ai/) was allowed to prove an earlier version of `cond_core_rfind`, which included stating and proving the lemma `cond_const` but the proofs have since been iterated on manually Cursor was allowed to run git commands and edit docstrings/headers, and was used in setting up the module structure of the files t-computability new-contributor large-import 644/63 Mathlib/Computability/Partrec.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/TuringDegree.lean 3 14 ['eric-wieser', 'github-actions', 'plp127', 'tannerduve', 'vihdzp'] nobody
0-24433
6 hours ago
0-23766
6 hours ago
9-69185
9 days
34693 SnirBroshi
author:SnirBroshi
feat(Data/Finite/Card): `Nat.card`/`ENat.card` is strictly monotonic on finite sets --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 27/4 Mathlib/Data/Finite/Card.lean 1 3 ['SnirBroshi', 'github-actions', 'ocfnash'] TwoFX and ocfnash
assignee:TwoFX assignee:ocfnash
0-23131
6 hours ago
0-23131
6 hours ago
16-11142
16 days
32942 kim-em
author:kim-em
feat(CategoryTheory/Monoidal/Rigid): tensor product of exact pairings This PR adds the tensor product construction for exact pairings in rigid monoidal categories: - `ExactPairing.tensor`: Given exact pairings `(X₁, Y₁)` and `(X₂, Y₂)`, we get an exact pairing `(X₁ ⊗ X₂, Y₂ ⊗ Y₁)`. Note the reversed order in the second factor - this is essential for the monoidal structure of dual functors. - `HasRightDual.tensor` and `HasLeftDual.tensor`: If `X` and `Y` have duals, so does `X ⊗ Y` - `rightDual_tensor` and `leftDual_tensor` simp lemmas 🤖 Prepared with Claude Code t-category-theory 103/0 Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean 1 2 ['github-actions', 'kim-em'] nobody
0-22721
6 hours ago
0-53639
14 hours ago
0-53417
14 hours
35326 jano-wol
author:jano-wol
feat: root space decomposition of ideals of Lie algebras Root space decomposition of ideals of Lie algebras --- PR proves that in an IsKilling Lie algebra, every Lie ideal decomposes as its intersection with the Cartan subalgebra plus a sum of root spaces. This result is needed for two larger proofs: 1. Showing the order isomorphism between Lie ideals and invariant root submodules. 2. Showing that semisimple Lie algebras with irreducible root system are simple. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
60/0 Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Lie/Weights/Cartan.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean 4 6 ['github-actions', 'jano-wol', 'ocfnash'] ocfnash
assignee:ocfnash
0-22248
6 hours ago
0-22248
6 hours ago
1-84285
1 day
34068 leomayer1
author:leomayer1
feat: give functor categories an instance of `HasBinaryBiproducts` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor maintainer-merge 74/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/BinaryBiproducts.lean 2 12 ['dagurtomas', 'github-actions', 'leomayer1'] dagurtomas
assignee:dagurtomas
0-21621
6 hours ago
0-20764
5 hours ago
1-14079
1 day
35400 vlad902
author:vlad902
feat(SimpleGraph): `IsEdgeReachable` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 18/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean 1 7 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
0-20500
5 hours ago
0-19816
5 hours ago
1-49190
1 day
34777 sqrt-of-2
author:sqrt-of-2
feat(Combinatorics/SetFamily/Intersecting): L-intersecting families Define L-intersecting families and establish their basic properties. A family 𝒜 of finsets is L-intersecting if all pairwise intersection sizes of members of 𝒜 belong to L ⊆ ℕ. From LeanCamCombi. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 81/2 Mathlib/Combinatorics/SetFamily/Intersecting.lean 1 9 ['YaelDillies', 'b-mehta', 'github-actions'] b-mehta
assignee:b-mehta
0-19448
5 hours ago
0-18482
5 hours ago
14-34235
14 days
29996 vihdzp
author:vihdzp
chore(Order/Concept): `IsIntent` and `IsExtent` We define predicates for a set to be an intent/extent, and use them to define alternate constructors for a concept. Using these, we golf the complete lattice instances. --- - [x] depends on: #30484 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 154/113 Mathlib/Order/Concept.lean 1 41 ['Vierkantor', 'YaelDillies', 'github-actions', 'linesthatinterlace', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] YaelDillies
assignee:YaelDillies
0-17275
4 hours ago
1-16945
1 day ago
18-50546
18 days
35458 harahu
author:harahu
chore(Algebra): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
51/51 Mathlib/Algebra/BigOperators/Group/Finset/Gaps.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/TStructure.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/Linear.lean,Mathlib/Algebra/Homology/ShortComplex/Ab.lean,Mathlib/Algebra/Lie/Derivation/AdjointAction.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Lie/Derivation/Killing.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Module/Submodule/Union.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Ring/Semireal/Defs.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean 22 1 ['github-actions'] nobody
0-16797
4 hours ago
0-16101
4 hours ago
0-15879
4 hours
33840 vihdzp
author:vihdzp
feat(SetTheory/Ordinal/CantorNormalForm): Evaluate a Finsupp as a CNF Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 191/18 Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/CantorNormalForm.lean 2 5 ['github-actions', 'jcommelin', 'plp127', 'vihdzp'] alreadydone
assignee:alreadydone
0-16431
4 hours ago
0-14759
4 hours ago
36-72068
36 days
33416 vihdzp
author:vihdzp
chore(Order/GameAdd): add `elab_as_elim` attributes This PR does three things: - Rename `GameAdd.fix` to the more illustrative `GameAdd.recursion` - Add `elab_as_elim` attributes on `GameAdd.recursion` - Deprecate the duplicate `GameAdd.induction` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 24/14 Mathlib/Order/GameAdd.lean,Mathlib/SetTheory/PGame/Order.lean,Mathlib/SetTheory/ZFC/Ordinal.lean 3 5 ['github-actions', 'grunweg', 'ocfnash', 'vihdzp'] alreadydone
assignee:alreadydone
0-16102
4 hours ago
0-15331
4 hours ago
48-63686
48 days
35460 harahu
author:harahu
chore(CategoryTheory): fix indentation in markdown lists Make sure to also indent subsequent lines of an item: this is required by the markdown specification (though not doc-gen), it expresses intent more clearly, and makes it easier to catch accidental misindentations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 94/93 Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Basic.lean,Mathlib/CategoryTheory/Abelian/Projective/Ext.lean,Mathlib/CategoryTheory/Bicategory/Functor/Cat/ObjectProperty.lean,Mathlib/CategoryTheory/Bicategory/Functor/StrictlyUnitary.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,Mathlib/CategoryTheory/Conj.lean,Mathlib/CategoryTheory/Distributive/Monoidal.lean,Mathlib/CategoryTheory/FiberedCategory/Fibered.lean,Mathlib/CategoryTheory/Functor/Derived/Adjunction.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerived.lean,Mathlib/CategoryTheory/Functor/KanExtension/DenseAt.lean,Mathlib/CategoryTheory/Grothendieck.lean,Mathlib/CategoryTheory/GuitartExact/Basic.lean,Mathlib/CategoryTheory/HomCongr.lean,Mathlib/CategoryTheory/Idempotents/Basic.lean,Mathlib/CategoryTheory/Idempotents/Karoubi.lean,Mathlib/CategoryTheory/Limits/Presheaf.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Equifibered.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Kernels.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ChosenPullbacksAlong.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean,Mathlib/CategoryTheory/MorphismProperty/Representable.lean,Mathlib/CategoryTheory/ObjectProperty/ColimitsOfShape.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsOfShape.lean,Mathlib/CategoryTheory/Presentable/OrthogonalReflection.lean,Mathlib/CategoryTheory/Shift/Adjunction.lean,Mathlib/CategoryTheory/Shift/CommShiftTwo.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/SheafHom.lean,Mathlib/CategoryTheory/Subobject/ArtinianObject.lean,Mathlib/CategoryTheory/Triangulated/SpectralObject.lean 32 1 ['github-actions'] nobody
0-15702
4 hours ago
0-14543
3 hours ago
0-14321
3 hours
35461 vihdzp
author:vihdzp
chore(Order/Types/Arithmetic): golf addition/multiplication instances We also make the universe heterogeneous instances lower priority, so Lean can more easily elaborate universes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 8/12 Mathlib/Order/Types/Arithmetic.lean 1 2 ['YaelDillies', 'github-actions'] nobody
0-15421
4 hours ago
0-14756
4 hours ago
0-14534
4 hours
35455 chrisflav
author:chrisflav
feat(RingTheory): `Algebra.TensorProduct.map f g` is flat if `f` and `g` are From Proetale. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 76/0 Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/RingHom/Flat.lean 2 2 ['github-actions', 'joelriou'] nobody
0-15407
4 hours ago
0-14655
4 hours ago
0-23863
6 hours
34881 CBirkbeck
author:CBirkbeck
feat(ModularForm/NumberTheory/Delta): Define the delta function We define the Delta function on the upper half plane and show how it transforms under the slash operator, this is in preparation to proving it is a modular form. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 214/0 Mathlib.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/NumberTheory/ModularForms/Delta.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 4 12 ['github-actions', 'loefflerd'] nobody
0-14488
4 hours ago
0-24363
6 hours ago
0-33419
9 hours
34091 staroperator
author:staroperator
feat(SetTheory/Cardinal): generalize infinite pigeonhole principle 1. generalize `infinite_pigeonhole_card_lt` and `exists_infinite_fiber` only to require the domain `β` to be infinite instead of codomain `α`. Also make arguments of `Infinite` implicit. 2. add `exists_uncountable_fiber` for uncountable sets. 3. fix a TODO in `le_range_of_union_finset_eq_top` (and also golf). PS: thanks ChatGPT for providing the informal proofs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 41/20 Mathlib/LinearAlgebra/Basis/Cardinality.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/SetTheory/Cardinal/Pigeonhole.lean 3 10 ['github-actions', 'ocfnash', 'staroperator'] ocfnash and vihdzp
assignee:ocfnash assignee:vihdzp
0-14328
3 hours ago
0-14328
3 hours ago
30-55361
30 days
35399 kebekus
author:kebekus
feat: Poisson Integral Formula for ℂ-differentiable functions Establish two versions of the Poisson Integral Formula for ℂ-differentiable functions on arbitrary disks in the complex plane, formulated with the real part of the Herglotz–Riesz kernel of integration and with the Poisson kernel, respectively. This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 302/0 Mathlib.lean,Mathlib/Analysis/Complex/Poisson.lean 2 12 ['github-actions', 'j-loreaux'] nobody
0-12936
3 hours ago
1-50218
1 day ago
1-49996
1 day
35454 chrisflav
author:chrisflav
chore(CategoryTheory/Limits): dualize (parts of) `pullback.diagonal` We add the definition `pushout.codiagonal`, some API and prove one square is a pushout square. --- - [x] depends on: #35453 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 93/0 Mathlib/CategoryTheory/Limits/Shapes/Diagonal.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Defs.lean 2 3 ['github-actions', 'joelriou', 'mathlib-dependent-issues'] nobody
0-11687
3 hours ago
0-10536
2 hours ago
0-12924
3 hours
35450 tb65536
author:tb65536
feat(Topology/Connected/TotallyDisconnected): a preconnected totally disconnected space is subsingleton This PR proves that a preconnected totally disconnected space must be subsingleton. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 4/0 Mathlib/Topology/Connected/TotallyDisconnected.lean 1 1 ['github-actions'] nobody
0-11545
3 hours ago
0-11545
3 hours ago
0-11323
3 hours
34851 dennj
author:dennj
feat(Data/Matrix/Mul): add diagonal and transpose lemmas for vector operations This adds three lemmas for matrix-vector operations that serve as foundational support for future ML formalization: - `vecMul_diagonal_dotProduct`: weighted inner product `x ᵥ* diagonal d ⬝ᵥ y = ∑ i, d i * x i * y i` - `dotProduct_transpose_mulVec`: bilinear form symmetry `x ⬝ᵥ Aᵀ *ᵥ y = y ⬝ᵥ A *ᵥ x` - `mul_diagonal_mulVec`: column-weighted sum `(A * diagonal d) *ᵥ x = ∑ i, (d i * x i) • A.col i` These are basic linear algebra identities involving diagonal matrices and vector operations that appear frequently in machine learning contexts (weighted inner products, attention mechanisms, feature scaling, diagonal preconditioning). t-data new-contributor 22/0 Mathlib/Data/Matrix/Mul.lean 1 5 ['dennj', 'eric-wieser', 'github-actions', 'themathqueen'] pechersky
assignee:pechersky
0-11414
3 hours ago
3-76160
3 days ago
13-16410
13 days
30077 agjftucker
author:agjftucker
feat(Analysis/Calculus/ImplicitFunction): define implicitFunctionOfBivariate Two specializations of the implicit function theorem, one applying to an uncurried bivariate function and one applying to a curried bivariate function. --- This PR is a synthesis of material from others which failed to make progress. But there seems always to have been a different reason for it, so I'm afraid I keep trying where maybe I shouldn't. #26985 reviewed by j-loreaux and later on by winstonyin. #16743 and #26300 reviewed by sgouezel. [Zulip chat](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Inverse.20function.20theorem.20and.20ContinuousLinearEquiv/with/567586606) with Yury Kudryashov. There are certain changes agreed upon in those PRs, e.g. to existing names, that are doubtless good but that I have excised from this PR to avoid distraction. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 311/2 Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Partial.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/ImplicitFunction/Bivariate.lean,Mathlib/Analysis/Calculus/ImplicitFunction/ProdDomain.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
0-10839
3 hours ago
0-18196
4 hours ago
14-76419
14 days
34137 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): Remove `injectiveSeminorm` Currently, `injectiveSeminorm` is extensionally equal to `projectiveSeminorm`. Both implement what is commonly called the "projective tensor norm". # Background (C.f. [[Diestel et al.]](https://www.ams.org/bookstore/pspdf/mbk-52-prev.pdf)). On the algebraic tensor product of two Banach spaces X, Y, there are two distinguished norms. First the projective norm, or "largest reasonable crossnorm". Two equivalent expressions for it are: (L1) `‖u‖_∧ = sup { sum_i ‖x_i‖ ‖y_i‖ | sum_i x_i ⊗ y_i = u }`, (L2) `‖u‖_∧ = norm of the linear map that sends b : B(X,Y; 𝕂) to (lift b) u`, where `B(X,Y; Z)` is the set of bounded bilinear maps into a normed space `Z`. Second, there is the injective norm, or "smallest reasonable crossnorm": (S) `‖u‖_∨` = norm of the bilinear map that sends `f : X', g : Y'` to `(f⊗g) u`. # Mathlib The formalization treats tensor products of seminormed spaces over normed fields. In this context, `projectiveSeminorm` implements (L1). But `injectiveSeminorm u` doesn't implement (S), but the following variant of (L2): (L2') `sup_Z { norm of map sending b : B(X,Y; Z) to (lift b) u }.` In fact, `injectiveSeminorm = projectiveSeminorm `. The upper bound is proven in Mathlib. Equality is attained (somewhat tautologically) by choosing `Z` to be `X ⊗ Y` endowed with the projective seminorm. `projectiveSeminorm` is defined first; `injectiveSeminorm` builds on it. Then the theory of an isometric version of `PiTensorProduct.lift` is based on `injectiveSeminorm`. # Proposed change This PR deprecates `injectiveSeminorm` and ports all applications to (L1). This doesn't actually require too much work, leads to the same mathematical theory, and significantly reduces complexity (and potential for confusion!). There is a [companion PR](https://github.com/leanprover-community/mathlib4/pull/33969) which formalizes the equality of the current definitions and has a WIP / RFC implementation of the injective seminorm as commonly understood. Deprecations: - injectiveSeminorm - injectiveSeminorm_apply - norm_eval_le_injectiveSeminorm - injectiveSeminorm_le_projectiveSeminorm - injectiveSeminorm_tprod_le - Mathlib.Analysis.Normed.Module.PiTensorProduct.InjectiveSeminorm --- Co-authored-by: Davood H. H. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 167/207 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean 3 18 ['Ruben-VandeVelde', 'dupuisf', 'github-actions', 'goliath-klein', 'robin-carlier', 'tb65536'] dupuisf
assignee:dupuisf
0-10246
2 hours ago
0-30024
8 hours ago
25-83816
25 days
35464 tb65536
author:tb65536
feat(Analysis/InnerProductSpace/Rayleigh): the norm of a symmetric operator is the supremum of the Rayleigh quotients This PR proves that the norm of a symmetric operator is the supremum of the Rayleigh quotients. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 25/2 Mathlib/Analysis/InnerProductSpace/Rayleigh.lean 1 1 ['github-actions'] nobody
0-10018
2 hours ago
0-10018
2 hours ago
0-9796
2 hours
35118 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): introduce truncFinset to unify truncations Resolves the TODO in MvPowerSeries/Trunc.lean by implementing a general truncation map `truncFinset`, which paves the way for unifying strict and non-strict truncations and defining other truncations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 132/144 Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean 2 23 ['BryceT233', 'chrisflav', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
0-9760
2 hours ago
0-9760
2 hours ago
5-45982
5 days
35196 tb65536
author:tb65536
feat(Analysis/Normed/Operator/Compact): criteria for compactness of the identity operator This PR adds several criteria for compactness of the identity operator. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 19/0 Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Operator/Compact.lean 2 4 ['b-mehta', 'github-actions', 'j-loreaux', 'tb65536'] j-loreaux
assignee:j-loreaux
0-9206
2 hours ago
0-9206
2 hours ago
5-2615
5 days
35466 vihdzp
author:vihdzp
chore: fix inexistent `NE.ne` namespace The `≠` relation is simply called `Ne`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order easy
label:t-algebra$
5/2 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean 1 1 ['github-actions'] nobody
0-9067
2 hours ago
0-6442
1 hour ago
0-6220
1 hour
35465 MixedMatched
author:MixedMatched
feat(Data/Multiset/Powerset): show injectivity and monotonicity of powerset Add Injective, Monotone, and StrictMono proofs for `Multiset.powerset`. Also, add a theorem showing that the sizes of two powersets are bidirectionally related to the sizes of the underlying Multisets (`le_powerset_iff_le`), a couple of other small `Multiset.powerset` lemmas, and theorems for append and map for `List.Subperm`. Also, thanks to Ruben Van de Velde for looking this over on the Zulip! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 62/0 Mathlib/Data/List/Perm/Subperm.lean,Mathlib/Data/List/Sublists.lean,Mathlib/Data/Multiset/Powerset.lean 3 2 ['github-actions'] nobody
0-7867
2 hours ago
0-6504
1 hour ago
0-6282
1 hour
28546 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… 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). t-dynamics new-contributor 746/0 Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/Translate/ToAdditive.lean 3 180 ['Sfgangloff', 'botbaki-review', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
0-6883
1 hour ago
0-6132
1 hour ago
95-37766
95 days
33364 BoltonBailey
author:BoltonBailey
feat(Analysis/Convex/SimplicialComplex): add AbstractSimplicialComplex + constructions This adds the concept of [abstract simplicial complex](https://en.wikipedia.org/wiki/Abstract_simplicial_complex) (and refactors SimplicialComplex in terms of it). It also adds constructions that makes it easy to define a simplicial complex for any index family of points which is downward closed and which is affinely independent. I also include a construction of (abstract and geometric) simplicial complexes associated with a SimpleGraph, where vertices become 0-faces and edges become 1-faces, which could be useful later in defining the topological notion of a graph embedding. Co-authored-by: Claude Opus 4.5 --- - [x] depends on: #35115 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis t-algebraic-topology 450/15 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Analysis/Convex/SimplicialComplex/AffineIndependentUnion.lean,Mathlib/Analysis/Convex/SimplicialComplex/Basic.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 7 25 ['BoltonBailey', 'denisgorod', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] j-loreaux
assignee:j-loreaux
0-5389
1 hour ago
4-280
4 days ago
4-80718
4 days
33792 xroblot
author:xroblot
feat(GroupTheory/FiniteAbelian): construct bijection between subgroups and subgroups of the dual --- - [x] depends on: #33403 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 101/3 Mathlib/GroupTheory/FiniteAbelian/Duality.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] tb65536
assignee:tb65536
0-5388
1 hour ago
3-43271
3 days ago
3-55299
3 days
35086 kebekus
author:kebekus
feat: add congruence lemmas for integrability Add simple congruence lemmas for interval- and circle integrability. Perform very minor golfing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability maintainer-merge 93/34 Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Periodic.lean 4 26 ['YaelDillies', 'github-actions', 'kebekus'] EtienneC30
assignee:EtienneC30
0-5387
1 hour ago
3-41012
3 days ago
6-36723
6 days
35198 j-loreaux
author:j-loreaux
feat: generalize Hölder's inequality for sums to `Real.HolderTriple` Currently the API exists only for `Real.HolderConjugate`. This generalizes it in anticipation of #35197, which implements the Hölder framework for `lp` spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 160/39 Mathlib/Analysis/MeanInequalities.lean,Mathlib/Data/Real/ConjExponents.lean 2 1 ['github-actions'] ADedecker
assignee:ADedecker
0-5385
1 hour ago
5-21687
5 days ago
5-21465
5 days
35272 jvanwinden
author:jvanwinden
feat(Topology/Instances/EReal): limsup of multiplication by a constant add an analogue of `limsup_const_mul_of_ne_top` which applies to `EReal` instead of `ENNReal` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 16/0 Mathlib/Topology/Instances/EReal/Lemmas.lean 1 4 ['github-actions', 'jvanwinden', 'vihdzp'] j-loreaux
assignee:j-loreaux
0-5384
1 hour ago
3-57827
3 days ago
4-21283
4 days
35279 BoltonBailey
author:BoltonBailey
chore(Data/Nat/Choose): add grind annotations While doing some work for Numina, I noticed that there was a point at which I wanted to have `Nat.choose_eq_zero_of_lt` applied as a `grind <=` lemma. This PR adds a grind annotation here, as well as a few other grind annotations to the file, and tries to golf using these where appropriate. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 10/10 Mathlib/Data/Nat/Choose/Basic.lean 1 4 ['BoltonBailey', 'github-actions', 'leanprover-radar'] pechersky
assignee:pechersky
0-5383
1 hour ago
4-2066
4 days ago
4-1844
4 days
35280 khwilson
author:khwilson
feat(Mathlib/Analysis/Polynomial/MahlerMeasure): Mahler Measure estimate in terms of supNorm The Mahler measure of a polynomial is bounded above by `√(p.natDegree + 1) * p.supNorm`. This is a tighter estimate than `(p.natDegree + 1) * p.supNorm`, which is implied by `mahlerMeasure_le_sum_norm_coeff`. AI Usage: Claude Code (Opus 4.6) provided first drafts for several sorries in the main calc block. Gemini Pro was used for one-off looks ups of lemma names like `ae_restrict_iff'`. The final code was edited by me. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 80/0 Mathlib/Analysis/Polynomial/MahlerMeasure.lean 1 2 ['github-actions'] j-loreaux
assignee:j-loreaux
0-5382
1 hour ago
4-7636
4 days ago
4-10380
4 days
35283 Multramate
author:Multramate
feat(Algebra/Polynomial): add Polynomial.algHomEquiv and its bivariate version --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
26/0 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Bivariate.lean 2 2 ['copilot-pull-request-reviewer', 'github-actions'] riccardobrasca
assignee:riccardobrasca
0-5381
1 hour ago
3-32167
3 days ago
3-31945
3 days
35285 SnirBroshi
author:SnirBroshi
feat(Algebra/LinearRecurrence): define a standard basis for the solution space of a linear recurrence Also `mkSol` is injective. --- The hard work was already done by the existing equivalence `toInit`; this defines the basis that the equivalence provides and uses it to simplify a couple of proofs. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
24/12 Mathlib/Algebra/LinearRecurrence.lean 1 1 ['github-actions'] Vierkantor
assignee:Vierkantor
0-5379
1 hour ago
3-79395
3 days ago
3-79173
3 days
35293 euprunin
author:euprunin
chore: golf proofs The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <20 ms considered measurement noise): * `Equiv.preimage_piEquivPiSubtypeProd_symm_pi`: unchanged 🎉 * `Function.minimalPeriod_eq_one_iff_isFixedPt`: unchanged 🎉 * `Functor.mapEquiv_refl`: unchanged 🎉 * `Mathlib.Tactic.FieldSimp.NF.cons_ne_zero`: unchanged 🎉 * `Part.fix_le`: unchanged 🎉 * `PartialEquiv.EqOnSource.restr`: unchanged 🎉 * `PartialEquiv.EqOnSource.source_inter_preimage_eq`: unchanged 🎉 * `Relation.acc_of_singleton`: unchanged 🎉 * `Turing.PartrecToTM2.codeSupp_supports`: unchanged 🎉 * `Turing.PartrecToTM2.contSupp_supports`: unchanged 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 3/13 Mathlib/Computability/TMToPartrec.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Logic/Equiv/Functor.lean,Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/Logic/Hydra.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean 8 3 ['euprunin', 'github-actions', 'leanprover-radar'] j-loreaux
assignee:j-loreaux
0-5378
1 hour ago
3-51516
3 days ago
3-51294
3 days
35301 RemyDegenne
author:RemyDegenne
feat: `klDiv` and scalar multiplication The Kullback-Leibler divergence in Mathlib is defined for finite measures, not just probability measures. This PR adds lemmas that show how `klDiv` changes when we multiply one or both of the measures by a scalar. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 201/1 Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/LogLikelihoodRatio.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean 5 1 ['github-actions'] EtienneC30
assignee:EtienneC30
0-5377
1 hour ago
3-42326
3 days ago
3-42104
3 days
35309 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: rename nat_abs_sum_le --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
4/1 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 1 ['github-actions'] kim-em
assignee:kim-em
0-5374
1 hour ago
3-35555
3 days ago
3-35333
3 days
35315 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 3/5) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 51/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 4 ['SnirBroshi', 'github-actions'] j-loreaux
assignee:j-loreaux
0-5371
1 hour ago
3-17402
3 days ago
3-29760
3 days
35317 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 5/5) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 78/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart2.lean 2 2 ['github-actions'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-5370
1 hour ago
3-27249
3 days ago
3-27027
3 days
35304 euprunin
author:euprunin
chore: golf proofs The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <20 ms considered measurement noise): * `AkraBazziRecurrence.smoothingFn_mul_asympBound_isBigO_T`: 3899 ms before, 3809 ms after 🎉 * `MulAction.is_one_preprimitive_iff`: unchanged 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 2/19 Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean 2 3 ['euprunin', 'github-actions', 'leanprover-radar'] nobody
0-5016
1 hour ago
3-42347
3 days ago
3-42125
3 days
35358 wwylele
author:wwylele
feat(Geometry/Euclidean): Simplex.closedInterior is closed Intermediate lemma towards #34826. The immediate follow up is that the closed interior is measurable, but I'll leave it till the Measure folder appears under Geometry/Euclidean. --- ~~Not sure if this is the best place to put `isClosed_closedInterior`. It is a bit more general than other lemmas in the file (it needs minimal topological space assumptions instead of inner product space), but it still requires `ℝ` so I don't think it should be in the Topology folder.~~ See the updated location [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry maintainer-merge 104/24 Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Analysis/Convex/TotallyBounded.lean 4 12 ['copilot-pull-request-reviewer', 'github-actions', 'jsm28', 'wwylele'] nobody
0-3838
1 hour ago
0-84957
23 hours ago
2-9767
2 days
35467 ZRTMRH
author:ZRTMRH
feat(Combinatorics): add Schreier graphs, Cayley graphs, and Cayley sum graphs ## Summary - Defines Schreier graphs and Cayley graphs as quivers with labeled edges, porting the approach from Lean 3 PR leanprover-community/mathlib3#18693 by @bottine, @YaelDillies, and @antoinelab01. - Proves the labelling prefunctor is a covering for group actions, establishes reachability characterization, connectivity, and vertex-transitivity (right multiplication is a covering isomorphism). - Provides concrete examples: cyclic groups ℤ/nℤ, symmetric groups S_n, and integers ℤ. - Defines Cayley sum graphs as `SimpleGraph` where `Adj u v ↔ u ≠ v ∧ u + v ∈ s`, with translation properties and connection to circulant graphs. ## References - Lean 3 PR: leanprover-community/mathlib3#18693 (Rémi Bottinelli, Yaël Dillies, Antoine Labelle) - Lean 3 branch: https://github.com/leanprover-community/mathlib3/tree/geometric-group-theory ## New files | File | Lines | Content | |------|-------|---------| | `Mathlib/Combinatorics/Quiver/Schreier.lean` | 770 | Core theory | | `Mathlib/Combinatorics/Quiver/SchreierExamples.lean` | 183 | Examples | | `Mathlib/Combinatorics/SimpleGraph/CayleySumGraph.lean` | 159 | Cayley sum graphs | ## Test plan - [x] All three files build clean on latest master - [x] No `sorry` - [x] All public declarations have docstrings - [x] `lake exe mk_all --check` passes - [x] `lake exe runLinter` passes ## AI disclosure This PR was developed with assistance from [Claude Code](https://claude.com/claude-code) (Anthropic's CLI tool). Claude Code was used for: writing proof scaffolding, debugging type errors, style cleanup (naming conventions, `fun ↦` syntax), rebasing onto upstream master, and PR preparation. All mathematical content, design decisions, and proof strategies were directed by the author. The code has been reviewed by the author and their advisor. t-combinatorics new-contributor 1117/0 Mathlib.lean,Mathlib/Combinatorics/Quiver/Schreier.lean,Mathlib/Combinatorics/Quiver/SchreierExamples.lean,Mathlib/Combinatorics/SimpleGraph/CayleySumGraph.lean 4 2 ['github-actions'] nobody
0-2932
48 minutes ago
0-3606
56 minutes ago
0-3384
56 minutes
35321 harahu
author:harahu
doc: capitalize the proper name Kan We capitalize the surname of Daniel Kan. --- This PR is exhaustive. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 4/4 Mathlib/CategoryTheory/Bicategory/Kan/HasKan.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/ExternalProduct/KanExtension.lean,Mathlib/Topology/Sheaves/Alexandrov.lean 4 1 ['github-actions', 'vihdzp'] nobody
0-2620
43 minutes ago
3-21061
3 days ago
3-20839
3 days

New contributors' PRs on the review queue

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
33458 NoneMore
author:NoneMore
feat(ModelTheory): add lifting for embeddings to languages with constants Prepare for a generalized Tarski-Vaught test with a set as input instead of a substructure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic new-contributor 35/0 Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/LanguageMap.lean 2 3 ['Citronhat', 'github-actions'] fpvandoorn
assignee:fpvandoorn
20-63781
20 days ago
20-62920
20 days ago
46-55231
46 days
34138 pfaffelh
author:pfaffelh
feat(MeasureTheory): Introduce `MassFunction α` giving rise to a `Measure α ⊤` Define `MassFunction α := α → ℝ≥0∞` Define `toMeasure (w : MassFunction α) : @Measure α ⊤` as a sum of diracs Show properties of the resulting objects This PR intends to start a more userfriendly interaction with probability mass functions (`PMF`). There are two main differences between `MassFunction` and `PMF`: * `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `MassFunction`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.) * The `toMeasure` function of `MassFunction` directly defines the measure as a sum of diracs, which immediately makes computations possible. Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 224/0 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/MassFunction.lean 4 10 ['DavidLedvinka', 'github-actions', 'metakunt', 'pfaffelh'] EtienneC30
assignee:EtienneC30
19-23766
19 days ago
19-20688
19 days ago
29-12969
29 days
33817 FlAmmmmING
author:FlAmmmmING
fix(Combinatorics/Enumerative/Schroder.lean): Fix the definition and theorem of smallSchroder. In the previous definition, the small Schröder numbers were defined as ```LaTeX s_0 = 1, s_1 = 1, s_2 = 1, s_3 = 3... ``` , which does not match the sequence listed in OEIS A006318. Moreover, this definition makes it difficult to correctly write the generating function for the small Schröder numbers. This PR fixes this issue. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import 61/39 Mathlib/Combinatorics/Enumerative/Schroder.lean 1 19 ['FlAmmmmING', 'github-actions', 'vihdzp'] awainverse
assignee:awainverse
19-5313
19 days ago
27-70713
27 days ago
38-21297
38 days
34227 stepan2698-cpu
author:stepan2698-cpu
feat: If sum of densities is at least one, the sumset covers the naturals Proves an outstanding TODO item from Mathlib.Combinatorics.Schnirelmann : shows that if the sum of two densities is at least one, the sumset covers the positive naturals. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/1 Mathlib/Combinatorics/Schnirelmann.lean 1 3 ['github-actions', 'grunweg', 'kbuzzard'] awainverse
assignee:awainverse
19-5310
19 days ago
27-7289
27 days ago
27-22082
27 days
34028 floor-licker
author:floor-licker
feat(SimpleGraph): add max-flow/min-cut weak duality This PR introduces a basic s–t flow setup for undirected SimpleGraphs and proves the standard weak-duality inequality: for any feasible flow f and any s–t cut S, value f ≤ cutCapacity S. This is a small, self-contained lemma I extracted while working on larger graph-theoretic formalizations, in particular, results that will ultimately rely on a full max-flow/min-cut theorem. The full MFMC equality/existence statement is not included here. This is the weak-duality direction (∀ f S, value f ≤ cutCapacity S). t-combinatorics new-contributor 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/MaxFlowMinCut.lean 2 13 ['SnirBroshi', 'floor-licker', 'github-actions'] kmill
assignee:kmill
18-5320
18 days ago
22-44078
22 days ago
31-19156
31 days
33520 NoneMore
author:NoneMore
feat(ModelTheory/ElementarySubstructures): add a variant of Tarski-Vaught test taking sets as input There should exist an `ElementarySubstructure.copy` such that we can directly bundle the set itself instaed of its closure as an elementary substructure. The other direction depends on #33458. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic new-contributor 55/0 Mathlib/ModelTheory/ElementarySubstructures.lean 1 3 ['Citronhat', 'NoneMore', 'github-actions'] awainverse
assignee:awainverse
17-5271
17 days ago
20-68733
20 days ago
45-52794
45 days
34521 huaizhangchu
author:huaizhangchu
feat(MeasureTheory): add measurableEmbedding_natCast This PR adds a lemma stating that the coercion from `ℕ` to `ℝ` is a measurable embedding. ```lean lemma measurableEmbedding_natCast : MeasurableEmbedding (Nat.cast : ℕ → ℝ) := Nat.isClosedEmbedding_coe_real.measurableEmbedding ``` This is useful for proving properties about discrete probability distributions on `ℕ` by lifting them to `ℝ` and will be used in #34435. t-measure-probability new-contributor 3/0 Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean 1 1 ['github-actions'] kex-y
assignee:kex-y
17-5263
17 days ago
20-42942
20 days ago
20-46218
20 days
33791 PhoenixIra
author:PhoenixIra
feat: Generalization of FixedPointApproximants to CompletePartialOrder --- This PR provides a generalization of FixedPointApproximants to CompletePartialOrder. Not every theorem can be generalized, as sometimes we require additional conditions (namely `x ≤ f x`) in order to guarantee that the set is directed and thus the supremum is well-defined. This is not necessary in a CompleteLattice. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 223/100 Mathlib/Order/CompletePartialOrder.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean 2 20 ['PhoenixIra', 'github-actions', 'vihdzp'] PhoenixIra and vihdzp
assignee:PhoenixIra assignee:vihdzp
16-56094
16 days ago
28-30448
28 days ago
28-30226
28 days
34664 GrigorenkoPV
author:GrigorenkoPV
feat(SetTheory/Ordinal/Arithmetic): prove isSuccPrelimit_iff_omega0_dvd --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory new-contributor 36/15 Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/Notation.lean 3 8 ['GrigorenkoPV', 'github-actions', 'vihdzp'] vihdzp
assignee:vihdzp
14-40631
14 days ago
15-43995
15 days ago
17-519
17 days
34375 jvanwinden
author:jvanwinden
feat(MeasureTheory/Function/AEEqOfLIntegral): introduce lemmas for rewriting a.e. inequalities Introduce the following lemmas: - ae_le_const_iff_forall_gt_imp_ae_lt, - ae_const_le_iff_forall_lt_imp_ae_gt, - ae_le_const_iff_forall_gt_imp_ae_le, - ae_const_le_iff_forall_lt_imp_ae_ge, which can be used get an epsilon of room in a.e. inequalities, with the epsilon being outside the a.e. quantifier. The 'le/ge' variants require a dense ordering. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 24/0 Mathlib/MeasureTheory/Function/AEEqOfLIntegral.lean 1 4 ['github-actions', 'jvanwinden', 'urkud'] kex-y
assignee:kex-y
14-39112
14 days ago
24-40530
24 days ago
24-40308
24 days
32570 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph): bipartite subgraphs and vertex-disjoint graphs for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 22/0 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 2 19 ['SnirBroshi', 'github-actions', 'jcommelin', 'ksenono', 'vlad902'] kmill
assignee:kmill
14-15080
14 days ago
14-15080
14 days ago
66-45862
66 days
32555 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph/Matching): maximum and maximal matchings for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 127/0 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean 2 24 ['SnirBroshi', 'github-actions', 'jcommelin', 'ksenono'] awainverse
assignee:awainverse
14-13907
14 days ago
14-13907
14 days ago
66-69110
66 days
34191 IlPreteRosso
author:IlPreteRosso
feat(Topology/Algebra/InfiniteSum): Discrete Convolution API 1st PR Defines the very basics of the discrete convolution API. In analogy with [MeasureTheory.Convolution](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Convolution.html#MeasureTheory.convolution). Main definitions include - `mulFiber`, `convolution`, `ConvolutionExists`, `ConvolutionExists.add_distrib`, `ConvolutionExistsAt.smul_convolution`, `mulFiber_swapEquiv`, `convolution_comm` RM: - The main docstring is *as is* - Next step is triple sum intrastrcutre + `assoc` theorems for convolution (long) Continues the work from #33411 and #33410 (splitting into shorter PRs, carries over the modifications from previous reviews) t-topology new-contributor 277/0 Mathlib.lean,Mathlib/Topology/Algebra/InfiniteSum/DiscreteConvolution.lean 2 18 ['IlPreteRosso', 'github-actions', 'j-loreaux'] PatrickMassot
assignee:PatrickMassot
13-34186
13 days ago
13-33564
13 days ago
22-34101
22 days
34709 dennj
author:dennj
feat(Analysis/ODE): add discrete Grönwall inequality ## Summary Add discrete Grönwall inequality to `Mathlib/Analysis/ODE/DiscreteGronwall.lean` Provides bounds for recurrence inequalities of the form `u(n+1) ≤ c(n) * u(n) + b(n)` ### Main results - `discrete_gronwall_prod_general`: Product form working over any linearly ordered commutative ring - `prod_one_add_Ico_mono`: Auxiliary lemma for product comparisons over subintervals - `discrete_gronwall`: Classical exponential bound `u(n) ≤ (u(n₀) + ∑ b(k)) * exp(∑ c(i))` (ℝ-specific) - `discrete_gronwall_Ico`: Uniform bound over a finite interval (ℝ-specific) ## Related work Complements the continuous Grönwall inequality in `Mathlib.Analysis.ODE.Gronwall` ## References * Grönwall, T. H. (1919). "Note on the derivatives with respect to a parameter of the solutions of a system of differential equations". *Annals of Mathematics*, 20(4), 292–296. t-analysis new-contributor 174/0 Mathlib.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean 2 1 ['github-actions'] ADedecker
assignee:ADedecker
12-5404
12 days ago
15-80339
15 days ago
15-80117
15 days
34182 IlPreteRosso
author:IlPreteRosso
feat(Data/Finsupp/Single, Data/Finsupp/Indicator): Add set_indicator_singleton, indicator_singleton; golfed single_eq_set_indicator, single_eq_indicator [Mathlib.Data.Finsupp.Single](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Single.html#Finsupp.single) - Add `set_indicator_singleton`, golfed `single_eq_set_indicator` [Mathlib.Data.Finsupp.Indicator](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Indicator.html#Finsupp.indicator_apply) - Add `indicator_singleton`, golfed `single_eq_indicator` Continues the work from #34095 large-import t-data new-contributor 17/17 Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Single.lean 2 29 ['IlPreteRosso', 'eric-wieser', 'github-actions', 'mathlib-bors', 'urkud'] eric-wieser and urkud
assignee:urkud assignee:eric-wieser
11-35097
11 days ago
27-74001
27 days ago
27-80607
27 days
34954 brianrabern
author:brianrabern
feat(Combinatorics/SimpleGraph/Acyclic): add colorable and chromaticN… …umber bridges for acyclic and tree graphs Add thin bridge lemmas expressing that acyclic graphs (forests) and trees are 2-colorable, and that their chromatic number is at most 2, directly in terms of `Colorable` and `chromaticNumber`. The existing `IsAcyclic.isBipartite` already proves this via the definitional equality `IsBipartite = Colorable 2`, but these bridges improve discoverability for users who reason about `Colorable` or `chromaticNumber` without passing through `IsBipartite`. This is a first step toward building out the graph coloring API. New declarations: - `IsAcyclic.colorable_two` - `IsTree.colorable_two` - `IsAcyclic.chromaticNumber_le_two` - `IsTree.chromaticNumber_le_two` All are one-line proofs reusing existing results; no new imports needed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 16/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 1 ['github-actions'] nobody
10-29280
10 days ago
unknown
unknown
34054 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): OmegaCompletePartialOrder instance for `Sigma` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sigma` along with `ωScottContinuous` lemmas for basic operations (`mk`, `fst`, `snd`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sigma`s. --- - [x] depends on: #33941 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order please-merge-master 168/0 Mathlib/Data/Sigma/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
10-4908
10 days ago
13-78604
13 days ago
13-78382
13 days
33257 NickAdfor
author:NickAdfor
feat(Combinatorics/SimpleGraph/Bipartite): Odd Cycle Theorem (A Solution to TODO) Prove bipartite iff all cycles are even This PR formalizes the classical graph theory theorem: a graph is bipartite if and only if all its cycles have even length. Co-authored-by: Nick Adfor Co-authored-by: Yue Sun Co-authored-by: Aristotle AI --- ## Main results - `SimpleGraph.bipartite_iff_all_cycles_even` : the main equivalence theorem ## Key supporting lemmas - `SimpleGraph.even_length_iff_same_color` : parity lemma for 2-colorings - `SimpleGraph.even_length_iff_even_bypass_length` : bypass length parity - `SimpleGraph.even_cycle_length_of_path` : cycle construction lemma - `SimpleGraph.bypass_eq_nil_of_closed` : closed path properties ## Proof outline 1. For bipartite graphs: use the 2-coloring to show that in a 2-coloring, a walk has even length iff its endpoints have the same color. 2. For cycles (start = end), this forces even length. 3. For the converse: if all cycles are even, construct a 2-coloring using the `two_colorable_iff_forall_loop_even` characterization. 4. Show this coloring is valid using bypass operations and path properties. ## Technical notes - Uses `SimpleGraph.Walk` for path/cycle representation - Handles both `IsPath` and `IsCycle` predicates - Uses bypass operations (`takeUntil`, `dropUntil`, `bypass`) to analyze walks - Requires `DecidableEq V` for some lemmas - Uses classical logic for case analysis ## Reviewer notes - The proof uses induction on walks and case analysis on colorings - Some lemmas (like `even_length_iff_same_color`) could be extracted to more general locations - All theorems are in the `SimpleGraph` namespace - The `bipartite_iff_all_cycles_even` theorem provides the complete characterization t-combinatorics new-contributor 164/8 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 2 70 ['IvanRenison', 'NickAdfor', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'kmill', 'mitchell-horner', 'vihdzp', 'vlad902'] nobody
10-3483
10 days ago
10-3891
10 days ago
18-4468
18 days
33668 Citronhat
author:Citronhat
feat(PMF): add lintegral formulas for PMF This PR introduces two lemmas describing the `lintegral` of a function with respect to the measure induced by a probability mass function: - `PMF.lintegral_eq_tsum` - `PMF.lintegral_eq_sum` These are the `ℝ≥0∞` analogues of the existing Bochner `integral` formulas `integral_eq_tsum` and `integral_eq_sum`. They could be useful for reasoning about expectations and integrability. In addition, the proof of `integral_eq_sum` is simplified by deriving it directly from `integral_eq_tsum` using `tsum_fintype`. t-measure-probability new-contributor 14/5 Mathlib/Probability/ProbabilityMassFunction/Integrals.lean 1 2 ['DavidLedvinka', 'github-actions'] kex-y
assignee:kex-y
10-3371
10 days ago
42-9643
42 days ago
42-41099
42 days
33688 Citronhat
author:Citronhat
feat(PMF): add expectation lemmas for Poisson PMF This PR adds some basic results about the Poisson distribution, its `PMF`, and its expectation. **New lemmas:** * `poissonPMF_apply` — an unfolding lemma for `poissonPMF`. * `poissonPMFReal_mul_eq_succ_mul` — the standard recursion identity for the Poisson mass function. * `poissonPMFReal_hasSum_nmul` — shows that `fun n ↦ poissonPMFReal r n * n` has sum `r`. * `poissonPMF_tsum_nmul` — the corresponding identity at the level of the `PMF`. * `poissonPMF_coe_tsum_nmul` — the same result after coercion to `ℝ`. Both `ℝ`-valued and `ℝ≥0∞`-valued formulations are included so that these results can be used conveniently in both Lebesgue and Bochner integration contexts. new-contributor t-measure-probability 21/0 Mathlib/Probability/Distributions/Poisson.lean 1 6 ['Citronhat', 'DavidLedvinka', 'github-actions'] urkud
assignee:urkud
10-1615
10 days ago
41-15648
41 days ago
42-10915
42 days
34093 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `Option` with basic `ωScottContinuous` lemmas --- - [x] depends on: #33941 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 297/0 Mathlib.lean,Mathlib/Data/Option/Order.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean 4 5 ['YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] pechersky
assignee:pechersky
9-5390
9 days ago
13-73159
13 days ago
13-72937
13 days
34435 huaizhangchu
author:huaizhangchu
feat(Probability): convolution of Poisson distributions This PR proves that the convolution of two Poisson distributions is again a Poisson distribution: `Poisson(r₁) ∗ Poisson(r₂) = Poisson(r₁ + r₂)` ## Main results - `poissonMeasureReal_charFun`: characteristic function of Poisson distribution is `exp(r(exp(it) - 1))` - `poissonMeasureReal_conv_poissonMeasureReal`: convolution of Poisson distributions on ℝ - `poissonMeasure_conv_poissonMeasure`: convolution of Poisson distributions on ℕ - `poissonMeasure_add_poissonMeasure_of_indepFun`: sum of independent Poisson random variables ## Proof strategy Uses characteristic functions: `φ(t) = exp(r(eⁱᵗ - 1))`, then pulls back from ℝ to ℕ. t-measure-probability large-import new-contributor 110/1 Mathlib/Probability/Distributions/Poisson.lean 1 14 ['CoolRmal', 'DavidLedvinka', 'github-actions', 'huaizhangchu'] RemyDegenne
assignee:RemyDegenne
9-5385
9 days ago
12-55591
12 days ago
13-83624
13 days
33662 Pjotr5
author:Pjotr5
feat(Algebra/Order/BigOperators/Expect): add lemmas and strict variants ### Summary - Combine `le_expect_nonempty_of_subadditive` and `le_expect_of_subadditive` into a single lemma `le_expect_of_subadditive`. The extra assumptions `(hs : s.Nonempty)` and `(h_zero : m 0 = 0)` are unnecessary (since `m 0 = 0` follows from `h_div`). This requires a small downstream update to `Mathlib/Analysis/RCLike/Basic.lean` (`norm_expect_le`). - Add strict-inequality variants: `expect_lt_expect`, `expect_lt`, `lt_expect`. - Add existence lemmas: `exists_le_of_expect_le_expect`, `exists_le_of_le_expect`, `exists_le_of_expect_le`, and `exists_lt_of_expect_lt_expect`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
46/16 Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Analysis/RCLike/Basic.lean 2 1 ['github-actions'] thorimur
assignee:thorimur
8-49671
8 days ago
8-48332
8 days ago
42-55561
42 days
34551 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename defs to `set*Antidiagonal` and deprecate old names in namespace Finset Main file is [Prod.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Antidiag/Prod.html). Adds `Finset.HasMulAntidiagonal`, the multiplicative counterpart to `HasAntidiagonal`, linked via `@[to_additive existing]`. Split PR (current changes): This PR renames the set-based antidiagonal definitions to have a `set` prefix, distinguishing them from the typeclass-based API in `Prod.lean`. **Only definitions are renamed in this PR.** Theorem/lemma renames will follow in a subsequent PR. [MulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/MulAntidiagonal.lean) - `mulAntidiagonal` → `setMulAntidiagonal` - `addAntidiagonal` → `setAddAntidiagonal` (via `@[to_additive]`) [SMulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/SMulAntidiagonal.lean) - `SMulAntidiagonal` → `setSMulAntidiagonal` - `VAddAntidiagonal` → `setVAddAntidiagonal` (via `@[to_additive]`) Propagates to: - `Mathlib/RingTheory/HahnSeries/Multiplication.lean` - `Mathlib/RingTheory/HahnSeries/Summable.lean` --- Added deprecation aliases for the renamed definitions. [Finset/MulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/MulAntidiagonal.lean) ``` @[to_additive (attr := deprecated setAddAntidiagonal (since := "2026-01-31")), deprecated setMulAntidiagonal (since := "2026-01-31")] alias mulAntidiagonal := setMulAntidiagonal ``` [Finset/SMulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/SMulAntidiagonal.lean) ``` @[to_additive (attr := deprecated setVAddAntidiagonal (since := "2026-01-31")), deprecated setSMulAntidiagonal (since := "2026-01-31")] alias smulAntidiagonal := setSMulAntidiagonal ``` Propagates: [PointwiseSMul.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finsupp/PointwiseSMul.lean) - updated to use Set.vaddAntidiagonal (the original Set name) --- Full changes to be made: For a monoid `M`, `mulAntidiagonal n` returns the finset of pairs `(i, j)` such that `i * j = n`. [MulAntidiagonal.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/MulAntidiagonal.html) - `mulAntidiagonal` → `setMulAntidiagonal` - `addAntidiagonal` → `setAddAntidiagonal` (via `@[to_additive]`) - All related theorems renamed accordingly: - `mem_setMulAntidiagonal` - `setMulAntidiagonal_mono_left`/`setMulAntidiagonal_mono_right` - `swap_mem_setMulAntidiagonal` - `support_setMulAntidiagonal_subset_mul` - `isPWO_support_setMulAntidiagonal` - `setMulAntidiagonal_min_mul_min` [SMulAntidiagonal.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/SMulAntidiagonal.html) - `setSMulAntidiagonal` (lowercase `set` prefix) - `setVAddAntidiagonal` (via `@[to_additive setVAddAntidiagonal ...]`) - All related theorems use lowercase `set` prefix: - `mem_setSMulAntidiagonal` / `mem_setVAddAntidiagonal` - `setSMulAntidiagonal_mono_left`/`setSMulAntidiagonal_mono_right` / `setVAddAntidiagonal_mono_left`/`setVAddAntidiagonal_mono_right` - `support_setSMulAntidiagonal_subset_smul` / `support_setVAddAntidiagonal_subset_vadd` - `isPWO_support_setSMulAntidiagonal` / `isPWO_support_setVAddAntidiagonal` - `setSMulAntidiagonal_min_smul_min` / `setVAddAntidiagonal_min_vadd_min` [Prod.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Antidiag/Prod.html) - Added explicit `@[to_additive]` target names: - `@[to_additive antidiagonal_congr ...]` for `mulAntidiagonal_congr` - `@[to_additive (attr := ext) antidiagonal_subtype_ext ...]` for `mulAntidiagonal_subtype_ext` - `@[to_additive antidiagonal_congr' ...]` for `mulAntidiagonal_congr'` - `@[to_additive (attr := simps) sigmaAntidiagonalEquivProd ...]` for `sigmaMulAntidiagonalEquivProd` [Multiplication.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/Multiplication.html) - Updated all VAdd antidiagonal references to use lowercase `set` prefix: - `setVAddAntidiagonal` - `mem_setVAddAntidiagonal` - `setVAddAntidiagonal_mono_left`/`setVAddAntidiagonal_mono_right` - `isPWO_support_setVAddAntidiagonal` - `support_setVAddAntidiagonal_subset_vadd` - `setVAddAntidiagonal_min_vadd_min` - Updated all Add antidiagonal references: - `mem_setAddAntidiagonal` - `swap_mem_setAddAntidiagonal` [Summable.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/Summable.html) - `setVAddAntidiagonal` references updated - `mem_setAddAntidiagonal` references updated [PowerSeries.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/PowerSeries.html) - `mem_addAntidiagonal` → `mem_setAddAntidiagonal` t-algebra new-contributor
label:t-algebra$
67/47 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Set/MulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 6 ['IlPreteRosso', 'Ruben-VandeVelde', 'github-actions', 'kim-em', 'mathlib-merge-conflicts'] jcommelin
assignee:jcommelin
8-18401
8 days ago
8-16117
8 days ago
18-66858
18 days
34026 SnkXyx
author:SnkXyx
feat(Algebra/MvPolynomial): add mainVariable Add `mainVariable` of `MvPolynomial`, the largest variable index appearing in the polynomial. Main Theorems: * `mainVariable_eq_bot_iff_eq_C` * `mainVariable_sum_le` * `mainVariable_prod_le` * `degreeOf_eq_zero_of_mainVariable_lt` The PR is upstreamized from [github.com/WuProver/lean_characteristic_set](https://github.com/WuProver/lean_characteristic_set) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
147/0 Mathlib.lean,Mathlib/Algebra/MvPolynomial/MainVariable.lean 2 1 ['github-actions'] mattrobball
assignee:mattrobball
8-5129
8 days ago
32-76611
32 days ago
32-76389
32 days
34854 GrigorenkoPV
author:GrigorenkoPV
chore(Combinatorics/Enumerative/Catalan): split into `Basic` & `Tree` --- Split off from #34853 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 227/194 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean 6 2 ['SnirBroshi', 'github-actions'] thorimur
assignee:thorimur
8-5117
8 days ago
11-51100
11 days ago
13-13207
13 days
26985 agjftucker
author:agjftucker
feat(Analysis/Calculus/ImplicitFunction): define implicitFunctionOfProdDomain This PR continues the work from #16743. Original PR: https://github.com/leanprover-community/mathlib4/pull/16743 --- - [x] depends on: #28352 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 269/157 Mathlib.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean,Mathlib/Analysis/Calculus/ImplicitFunction/ProdDomain.lean 4 27 ['agjftucker', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'winstonyin'] hrmacbeth
assignee:hrmacbeth
7-67249
7 days ago
7-66362
7 days ago
70-28512
70 days
32744 NoneMore
author:NoneMore
feat(ModelTheory/Definablity): add `DefinableFun` definition and lemmas This PR adds two basic shapes of definable sets and `DefinableFun` definition with relevant lemmas. The main result is `Set.Definable.preimage_of_map` asserting that the preimage of a definable set under a definable map is definable. There are also some tool lemmas derived by the preimage lemma. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 147/0 Mathlib/ModelTheory/Definability.lean 1 59 ['NoneMore', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator'] awainverse
assignee:awainverse
7-61285
7 days ago
39-69460
39 days ago
60-12533
60 days
35011 whocares-abt
author:whocares-abt
feat(Combinatorics/SimpleGraph/Copy): add degree of copy less than original add two theorems relating degree of a graph and it's copy t-combinatorics new-contributor 17/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 2 ['github-actions', 'themathqueen'] nobody
7-61006
7 days ago
7-60337
7 days ago
8-63976
8 days
26479 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis sphere-packing 205/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 5 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'wwylele'] urkud
assignee:urkud
7-10477
7 days ago
27-26502
27 days ago
27-26280
27 days
34481 DAE123456
author:DAE123456
feat: Ore's Theorem Ore Theorem : Let G be a graph of order n ≥ 3 that satisfies the Ore property. Then G has a Hamilton cycle. t-combinatorics new-contributor 3372/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Ore.lean 2 25 ['DAE123456', 'LLaurance', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'kim-em', 'tb65536', 'vlad902'] b-mehta
assignee:b-mehta
7-5236
7 days ago
15-59296
15 days ago
19-20452
19 days
34722 GrigorenkoPV
author:GrigorenkoPV
feat(Data/Finset/RangeDistance): add --- Rebase of https://github.com/leanprover-community/mathlib4/pull/26347 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data 34/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 4 ['GrigorenkoPV', 'github-actions', 'joneugster', 'plp127'] TwoFX
assignee:TwoFX
7-5232
7 days ago
15-45069
15 days ago
15-44847
15 days
34875 banrovegrie
author:banrovegrie
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap. - Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}` - Add `Matrix.inv_sub_vecMulVec`: subtraction variant - Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses ## Test plan - [x] `lake build` passes - [x] Lines within 100 char limit - [x] All declarations have docstrings t-algebra new-contributor
label:t-algebra$
135/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean 2 10 ['Xxxjdjdid', 'banrovegrie', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions'] kim-em
assignee:kim-em
7-5221
7 days ago
10-69819
10 days ago
12-35651
12 days
34838 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 2/4) --- Required for https://github.com/leanprover-community/mathlib4/pull/33050 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 13/0 Mathlib/Analysis/Analytic/Order.lean 1 1 ['github-actions'] sgouezel
assignee:sgouezel
6-46648
6 days ago
6-45828
6 days ago
13-44165
13 days
35122 Marygold-Dusk
author:Marygold-Dusk
feat: define C^n submersions This PR defines submersions between C^n manifolds. In the infinite-dimensional setting, submersions are defined via local normal forms rather than surjectivity of the mfderiv. A map f is a submersion at x if, in suitable charts around x and f x, it has the form (u, v) ↦ u after identifying the model space with a product. We prove a few basic properties: - being a submersion is a local property, - products of submersions are submersions, - the set of submersed points is open Future PRs will prove that submersions are C^n and deduce equivalence with the standard definition in finite dimensions. From the path towards the regular value theorem. This file was developed under the supervision of Michael Rothgang. Co-authored-by: Michael Rothgang --- Most of the design is analogues to submersions. t-differential-geometry new-contributor 596/0 Mathlib.lean,Mathlib/Geometry/Manifold/Submersion.lean 2 2 ['github-actions'] grunweg
assignee:grunweg
6-41652
6 days ago
6-41029
6 days ago
6-41799
6 days
34888 stepan2698-cpu
author:stepan2698-cpu
feat: definition of equivalence of representations Defines equivalence of representations, and defines an equivalence between $$\mathrm{Hom}(V, W)$$ and $$V^* \otimes W$$ as representations. This is a missing piece to respell all of the results in Character.lean without using category-theoretic notions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
60/0 Mathlib/RepresentationTheory/Intertwining.lean 1 2 ['github-actions', 'plp127'] ocfnash
assignee:ocfnash
6-5396
6 days ago
10-5814
10 days ago
12-12767
12 days
33895 jessealama
author:jessealama
feat(Computability/Primrec): add list_take, list_drop, list_modify, and list_set This PR shows that several list operations from Lean core are primitive recursive: - `list_drop`: [`List.drop`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/TakeDrop.lean), via iterating `List.tail` using `nat_iterate` - `list_take`: [`List.take`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/TakeDrop.lean), via `list_drop` on the reversed list - `list_modifyHead'`: [`List.modifyHead`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/Nat/Modify.lean) with external data - `list_modify'`: [`List.modify`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/Nat/Modify.lean) with external data - `list_modify`: [`List.modify`](https://github.com/leanprover/lean4/blob/master/src/Init/Data/List/Nat/Modify.lean) - `list_set`: [`List.set`](https://github.com/leanprover/lean4/blob/master/src/Init/Prelude.lean) The primed versions (`list_modify'`, `list_modifyHead'`) take a function `g : β → α → α` that depends on external data of type `β`. This generalization enables deriving the other operations: - `list_modify` specializes `list_modify'` with `β = Unit` - `list_set` uses `list_modify'` via `List.set_eq_modify` Also moves `list_length` earlier in the file (before `list_drop` and `list_take`, which depend on it). new-contributor t-computability 48/4 Mathlib/Computability/Primrec/List.lean 1 1 ['github-actions'] nobody
5-57282
5 days ago
5-56557
5 days ago
33-56657
33 days
34940 michaellee94
author:michaellee94
feat: the graph of a continuous function on a $C^n$ manifold is a $C^n$ manifold --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 227/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Graph.lean 2 56 ['botbaki-review', 'github-actions', 'grunweg', 'michaellee94'] ocfnash
assignee:ocfnash
5-43316
5 days ago
5-42594
5 days ago
10-36269
10 days
34674 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): replace ENNReal lemmas with WithTop versions * Add `WithTop` versions of basic multiplicative order lemmas. * Use the new `WithTop` lemmas to replace `ENNReal` proofs and address six TODOs. * Fix a typo in the `pos_of_ne_zero` alias name. new-contributor t-algebra
label:t-algebra$
46/15 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/ENNReal/Operations.lean 3 4 ['Citronhat', 'Ruben-VandeVelde', 'github-actions'] Ruben-VandeVelde
assignee:Ruben-VandeVelde
5-29102
5 days ago
14-63321
14 days ago
16-48891
16 days
28246 Sebi-Kumar
author:Sebi-Kumar
feat(AlgebraicTopology/FundamentalGroupoid): the n-sphere is simply connected for n > 1 Prove that the `n`-dimensional sphere (i.e., the unit sphere centered at the origin in `(n + 1)`-dimensional real Euclidean space) is a simply connected space for `n > 1`. This proof follows Hatcher's "Algebraic Topology"; we first prove a general lemma about decomposing loops and then exploit the fact that non-surjective loops in the sphere are homotopically trivial. Note: To get this file to build, I edited `Mathlib/Tactic/Linter/DirectoryDependency.lean` to remove the restrictions on AlgebraicTopology files importing Geometry, NumberTheory, and FieldTheory files. Thank you to those who shared their expertise [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Warning.20that.20AlgebraicTopology.20can't.20import.20SetTheory/with/533833638). As I understand it, this is just a short-term solution, so I would appreciate feedback on what to do about this situation. Note: I am unsure where exactly the file `SimplyConnectedSphere.lean` should go or whether that is an appropriate name for the file, so feedback there would be appreciated. --- To provide additional context, this code was written 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. - [x] depends on: #28208 - [x] depends on: #28198 - [x] depends on: #28185 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor 343/3 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnectedSphere.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 5 ['dagurtomas', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] robin-carlier
assignee:robin-carlier
5-14337
5 days ago
11-34201
11 days ago
11-33979
11 days
32807 WilliamCoram
author:WilliamCoram
feat: Define the Gauss norm for MvPowerSeries We adjust the current definition for Gauss norm on power series to work for multivariate power series. If this seems acceptable I can refactor the single variable case. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 124/0 Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 2 25 ['WilliamCoram', 'erdOne', 'fbarroero', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] alreadydone
assignee:alreadydone
4-45670
4 days ago
4-45025
4 days ago
17-45997
17 days
34966 Deep0Thinking
author:Deep0Thinking
feat(MeasureTheory): add `IntegrableOn. tendsto_primitive_` over `Ioi/Iio` and `IntegrableOn.continuousOn_primitive_` over `Ioi/Iio/Ici/Iic` This PR mainly proves: - `IntegrableOn.tendsto_primitive_` over `Ioi/Iio` - `IntegrableOn.continuousWithinAt_primitive_` over `Ioi/Iio` - `IntegrableOn.continuousOn_primitive_` over `Ioi/Iio/Ici/Iic` - `IntegrableOn.tendsto_integral_` over `Ioi/Iio/Ici/Iic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 204/1 Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/Order/Interval/Set/LinearOrder.lean 3 6 ['CoolRmal', 'Deep0Thinking', 'github-actions'] RemyDegenne
assignee:RemyDegenne
4-5400
4 days ago
8-59750
8 days ago
9-53234
9 days
35100 stepan2698-cpu
author:stepan2698-cpu
feat: definition of a character of a representation This PR begins to transfer definitions and theorems about characters from `FDRep` to `Representation`. Once #34888 is merged, the theorems involving isomorphisms of representations will be appropriately restated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
57/0 Mathlib/RepresentationTheory/Character.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
4-5396
4 days ago
7-20118
7 days ago
7-19896
7 days
33188 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): introduce rename This file establishes the `rename` operation on multivariate power series under a map with finite fibers, which modifies the set of variables. This file is patterned after `MvPolynomials/Rename.lean` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory large-import 426/1 Mathlib.lean,Mathlib/Data/Finsupp/Antidiagonal.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean 7 26 ['BryceT233', 'Komyyy', 'erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] erdOne and riccardobrasca
assignee:riccardobrasca assignee:erdOne
3-72814
3 days ago
3-71116
3 days ago
32-39947
32 days
35307 samueloettl
author:samueloettl
fix(Dynamics/BirkhoffSum): birkhoffAverage_of_comp_eq only needs AddCommMonoid --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor easy 8/8 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 4 ['github-actions', 'samueloettl'] nobody
3-38481
3 days ago
3-38593
3 days ago
3-38371
3 days
34598 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): nondegeneracy conditions and interconversion with Affine.Triangle This PR implements suggestions provided in [this comment](https://github.com/leanprover-community/mathlib4/pull/34393#issuecomment-3810047384) by @jsm28: interconversion between `Polygon P 3` and `Affine.Triangle` as well as the nondegeneracy conditions `NondegenerateVertices` and `NondegenerateEdges`. I tried to keep typeclass restrictions as minimal as possible. --- new-contributor t-euclidean-geometry maintainer-merge 117/5 Mathlib/Geometry/Polygon/Basic.lean 1 18 ['A-M-Berns', 'eric-wieser', 'github-actions', 'jcommelin', 'jsm28'] jsm28
assignee:jsm28
3-24204
3 days ago
4-27307
4 days ago
17-32207
17 days
34914 jvanwinden
author:jvanwinden
feat(Analysis/Normed/Module/FiniteDimension): add lemmas on IsTheta and summability IsTheta.summable_iff is a natural generalization of IsEquivalent.summable_iff. Some adjacent lemmas now become direct consequences. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 26/7 Mathlib/Analysis/Normed/Module/FiniteDimension.lean 1 13 ['github-actions', 'jvanwinden', 'themathqueen', 'vihdzp', 'wwylele'] urkud
assignee:urkud
3-20047
3 days ago
3-18969
3 days ago
11-40037
11 days
35329 BryceT233
author:BryceT233
feat(Data/Finsupp): add computational lemmas for cons and single This PR introduces `cons_eq_single_zero_iff` and `cons_eq_single_succ_iff`, which are helper lemmas designed to facilitate calculations (or simplification) of equalities involving `Finsupp.cons` and `Finsupp.single`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib/Data/Finsupp/Fin.lean 1 2 ['github-actions'] nobody
3-7699
3 days ago
3-5931
3 days ago
3-5709
3 days
35058 GrigorenkoPV
author:GrigorenkoPV
chore: move tendsto_{floor,ceil}_at{Top,Bot} Moves: - Topology.Algebra.Order.Floor.tendsto_floor_atTop -> Order.Filter.AtTopBot.Floor.tendsto_floor_atTop - Topology.Algebra.Order.Floor.tendsto_floor_atBot -> Order.Filter.AtTopBot.Floor.tendsto_floor_atBot - Topology.Algebra.Order.Floor.tendsto_ceil_atTop -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atTop - Topology.Algebra.Order.Floor.tendsto_ceil_atBot -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atBot --- Tracked in #7987 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import 22/25 Mathlib/Order/Filter/AtTopBot/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
3-5395
3 days ago
6-59725
6 days ago
6-59503
6 days
35187 bilichboris
author:bilichboris
feat(GroupTheory): establish that every finite left cancellative monoid is a group This PR closes a todo in the GroupTheory module. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor maintainer-merge 8/1 Mathlib/GroupTheory/OrderOfElement.lean 1 8 ['bilichboris', 'github-actions', 'riccardobrasca', 'robin-carlier'] nobody
2-46277
2 days ago
4-44245
4 days ago
5-29057
5 days
26160 oliver-butterley
author:oliver-butterley
feat(MeasureTheory.VectorMeasure): add several lemmas which characterize variation Add the following lemmas concerning variation of a VectorMeasure: * `norm_measure_le_variation`: `‖μ E‖ₑ ≤ variation μ E`. * `variation_neg`: `(-μ).variation = μ.variation`. * `variation_zero`: `(0 : VectorMeasure X V).variation = 0`. * `absolutelyContinuous` Co-authored-by: @yoh-tanimoto - [x] depends on: #26156 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 238/4 Mathlib.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/Order/Partition/Finpartition.lean 8 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
2-31259
2 days ago
4-72017
4 days ago
20-60192
20 days
34267 Brian-Nugent
author:Brian-Nugent
feat(Topology/Algebra): Add API for Sheaves of abelian groups in preparation for proving results on sheaf cohomology. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 89/1 Mathlib.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Sheaf.lean,Mathlib/Topology/Sheaves/AddCommGrpCat.lean 4 24 ['Brian-Nugent', 'dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
2-19011
2 days ago
2-18306
2 days ago
19-20262
19 days
35386 Brian-Nugent
author:Brian-Nugent
feat: CategoryTheory.toSheafify induces an isomorphism on stalks The main result `TopCat.Presheaf.stalkFunctor_map_unit_toSheafify_isIso` says that for a presheaf on a topological space, the induced map on stalks of `CategoryTheory.toSheafify` is an isomorphism. This is similar to `TopCat.Presheaf.sheafifyStalkIso` defined in the same file except that the latter is only for sheaves of Types. The proof involved the abstract nonsense `CategoryTheory.Adjunction.isIso_map_unit_of_isLeftAdjoint_comp` which should probably go in a different file but feels too specific to go into any of the files in `CategoryTheory.Adjunction`. Suggestions are very welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-topology t-category-theory new-contributor 53/1 Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Skyscraper.lean 2 2 ['github-actions'] nobody
2-15224
2 days ago
2-14530
2 days ago
2-14308
2 days
35174 nielsvoss
author:nielsvoss
feat(Analysis/InnerProductSpace): a linear map composed with its adjoint is symmetric Add theorems about `LinearMap.IsSymmetric` that match some theorems for `LinearMap.IsPositive`. Mathlib contains stronger versions of some of these, like `LinearMap.IsPositive.self_comp_adjoint`, but having a dedicated version for `LinearMap.IsSymmetric` is advantageous, especially when used with `LinearMap.IsSymmetric.eigenvalues`. --- One thing that I am uncertain about is if I should add similar lemmas for `ContinuousLinearMap` to even better match the `IsPositive` API, and if so, whether these theorems should be stated in terms of `IsSymmetric` or `IsSelfAdjoint`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 22/1 Mathlib/Analysis/InnerProductSpace/Adjoint.lean 1 3 ['github-actions', 'themathqueen'] sgouezel
assignee:sgouezel
2-5385
2 days ago
5-32286
5 days ago
5-55542
5 days
35193 Brian-Nugent
author:Brian-Nugent
feat(Topology/Closeds): implement category of closed sets in topologi… …cal spaces I copied over the nice API for working with `TopologicalSpace.Opens` as a category over for `TopologicalSpace.Closeds`. The only thing that did not immediately transfer was `Topology.IsInducing.functorObj` so I omitted it. Based on work of @kim-em --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 385/0 Mathlib.lean,Mathlib/Topology/Category/TopCat/Closeds.lean 2 2 ['github-actions'] dagurtomas
assignee:dagurtomas
2-5378
2 days ago
5-24604
5 days ago
5-24382
5 days
34209 mike1729
author:mike1729
feat(Analysis/Normed): Schauder basis definition and characterization via projections A Schauder basis is a fundamental concept in functional analysis, providing a way to represent every element of a Banach space as a unique convergent series. This PR adds the core structures, some theorems necessary to work with these bases and a characterization of a Schauder basis using projections. This PR is based on Chapter 1. from Albiac, F., & Kalton, N. J. (2016). Topics in Banach Space Theory. This is a first PR in a series of three aiming for Eberlein-Smulyan Theorem. The next one will contain theory of basic sequences and the final one will contain a proof of Eberlein-Smulyan Theorem using basic sequences. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 549/0 Mathlib.lean,Mathlib/Analysis/Normed/Module/Bases.lean,docs/references.bib 3 124 ['Ruben-VandeVelde', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'mike1729', 'sgouezel', 'themathqueen'] sgouezel
assignee:sgouezel
1-78750
1 day ago
1-78762
1 day ago
16-38674
16 days
35402 samueloettl
author:samueloettl
feat(Dynamics/BirkhoffSum): birkhoffAverage const --- I think this might be useful. My feeling tells me that one of these should be a simp lemma. I'm not really sure if I got the naming of the theorems correct. Also I think it is somewhat debatable if these theorems should be generalized to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 26/3 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 2 ['github-actions'] nobody
1-48533
1 day ago
1-47863
1 day ago
1-47641
1 day
35300 Ljon4ik4
author:Ljon4ik4
feat: Semi-direct sum of Lie algebras In this PR a construction of the [semi-direct sum of two Lie algebras](https://en.wikipedia.org/wiki/Lie_algebra_extension#By_semidirect_sum) is added. It is shown that the resulting object $H\rtimes G$ is a Lie algebra and that it fits into an exact sequence $H \to H\rtimes G \to G$. I was not sure about multiple things and would be very grateful for feedback: - Currently the semidirect product is created via a def as a type synonym of $H\times G$ so one can define a new bracket on it, which need not coincide with the standard 'direct sum' bracket. This is analogous to e.g. `PointedContMDiffMap` in `Mathlib.Geometry.Manifold.DerivationBundle`. An alternative way would creating a structure with $H$ and $G$ as fields. This seems to be the way chosen in `Mathlib.GroupTheory.SemidirectProduct.lean`. - Currently it is created as a separate file, but it could also be added to the `Mathlib.Algebra.Lie.Extension` file. - I am not fully happy with some of the proofs, especially the `leibniz_lie` in the `LieRing` instance, but did not manage to get it more elegant. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
139/0 Mathlib.lean,Mathlib/Algebra/Lie/SemiDirect.lean 2 2 ['github-actions'] ocfnash
assignee:ocfnash
1-39186
1 day ago
3-42156
3 days ago
3-41934
3 days
34624 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): surjection between types induces surjection between free groups feat(GroupTheory/FreeGroup/Basic): adds the theorem that if `α` and `β` are arbitrary types and there is a surjection between them, then the induced FreeGroup.map is also surjective. This is a dependency of a larger PR to formalize finitely presented groups https://github.com/leanprover-community/mathlib4/pull/34236. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor 14/3 Mathlib/GroupTheory/FreeGroup/Basic.lean 1 23 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-merge-conflicts', 'tb65536', 'vlad902'] nobody
1-29535
1 day ago
1-27624
1 day ago
11-70014
11 days
35010 parabamoghv
author:parabamoghv
style(CategoryTheory/Monoidal): add notation for whiskerLeftIso and whiskerRightIso The PR adds the notation " ◁ᵢ " and " ▷ᵢ " for whiskerLeftIso and whiskerRightIso, respectively. Motivation: 1. There is a notation " ⊗ᵢ " for tensorIso; this is consistent. 2. In my other PR, I had to use whiskerLeftIso. I thought the notation would be neat. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor 13/1 Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean 2 8 ['github-actions', 'parabamoghv', 'robin-carlier'] robin-carlier
assignee:robin-carlier
1-24587
1 day ago
1-24626
1 day ago
2-19760
2 days
34621 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): `FreeGroup Empty ≃* Unit`, `FreeGroup Empty ≃* PUnit` and `FreeGroup Unit ≃* Multiplicative ℤ` feat(GroupTheory/FreeGroup/Basic): defines the free group on one element as isomorphic multiplicatively to ℤ. This is a dependency of a larger PR to formalize finitely presented groups https://github.com/leanprover-community/mathlib4/pull/34236. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor 45/6 Mathlib/GroupTheory/FreeGroup/Basic.lean 1 35 ['b-mehta', 'copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'tb65536'] nobody
1-19271
1 day ago
1-27155
1 day ago
8-30059
8 days
35017 robo7179
author:robo7179
feat(Combinatorics/SimpleGraph/Acyclic): add every nontrivial tree has atleast two leaves Added two theorems to prove that every non trivial tree has atleast two leaves (one in Finite the other in Acyclic). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 94/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean 2 24 ['IvanRenison', 'SnirBroshi', 'github-actions', 'robo7179'] nobody
1-19250
1 day ago
1-20694
1 day ago
7-24471
7 days
34295 Yu-Misaka
author:Yu-Misaka
chore: drop `PartialOrder` in `IsOrderedMonoid` instances This PR attempts to remove `PartialOrder` assumption in `IsOrderedMonoid`. The main objective is to make [Finsupp.sum_le_sum](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Order.html#Finsupp.sum_le_sum) available for preorder. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra t-order
label:t-algebra$
149/123 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Subgroup/Order.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Associated.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/Submonoid.lean,Mathlib/Algebra/Order/Monoid/TypeTags.lean,Mathlib/Algebra/Order/Monovary.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/UpperLower.lean,Mathlib/Analysis/Normed/Order/UpperLower.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/Order/Filter/AtTopBot/Monoid.lean,Mathlib/Order/Filter/Germ/OrderedMonoid.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Algebra/Order/UpperLower.lean 32 16 ['Citronhat', 'MichaelStollBayreuth', 'Yu-Misaka', 'copilot-pull-request-reviewer', 'github-actions', 'leanprover-radar'] Vierkantor
assignee:Vierkantor
1-5405
1 day ago
6-54160
6 days ago
25-29114
25 days
35097 pevogam
author:pevogam
feat: add a LE version Rat.lt_one_iff_num_le_denom theorem The following is more useful due to the partial order application of LE in comparison to LT. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
2/0 Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean 1 6 ['github-actions', 'pevogam', 'wwylele'] kim-em
assignee:kim-em
1-5399
1 day ago
4-54222
4 days ago
7-13724
7 days
33985 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): `OmegaCompletePartialOrder` instance for `Sum` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sum`, along with `ωScottContinuous` lemmas for basic operations (`inl`, `inr`, `elim`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sum`s (e.g. see the proof of `Sum.ωScottContinuous_map`). --- - [x] depends on: #33941 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-order 191/1 Mathlib/Data/Sum/Basic.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean 4 20 ['Vierkantor', 'YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] Vierkantor
assignee:Vierkantor
1-396
1 day ago
0-84453
23 hours ago
13-61757
13 days
34578 dennj
author:dennj
feat: define Boolean circuits over abstract gate families This PR introduces a foundation for Boolean circuits parameterized by abstract gate families. ## Main definitions - `GateEval`: typeclass for gate families with Boolean semantics - `GateHom`: arity-preserving maps between gate families - `Circuit`: inductive type representing circuit syntax trees - `AC0Gate`, `ACC0Gate`, `TC0Gate`: standard complexity-theoretic gate bases ## Design notes The key design choice is to keep **syntax** (gate labels `G : Nat → Type`) separate from **semantics** (`GateEval.eval`), allowing users to define custom gate families (e.g., MAJ, XOR, arbitrary threshold gates) without modifying core definitions. ### Tree vs DAG representation We evaluated two approaches for circuit representation: 1. **Tree-based** (this PR): Circuits as inductive syntax trees 2. **DAG-based**: Circuits as lists of gates with index-based references We chose tree-based circuits because: - **Compositionality**: Easy to build circuits via `gate g (fun i => subcircuit i)` - **Type safety**: Arity-indexed gates (`G : Nat → Type`) catch errors at compile time - **Manipulation**: Natural support for `mapGate`, `subst`, `mapInputs` - **Mathlib philosophy**: Aligns with structural/compositional reasoning patterns For use cases requiring explicit sharing (complexity analysis, evaluation efficiency), a separate `DAG` type can be added later with proven equivalence via `Circuit.toDAG`. The current representation serves as a minimal foundation for size/depth measures, circuit families, and complexity classes (AC0, ACC0, TC0). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-computability 919/0 Mathlib.lean,Mathlib/Computability/Circuit/Basic.lean,Mathlib/Computability/Formula/Basic.lean,Mathlib/Computability/Gate.lean 4 18 ['LLaurance', 'YuvalFilmus', 'dennj', 'github-actions'] nobody
0-85254
23 hours ago
0-85254
23 hours ago
8-28708
8 days
34713 dennj
author:dennj
feat(Probability/Markov): stationary distributions for stochastic matrices This PR proves that every row-stochastic matrix on a finite nonempty state space has a stationary distribution in the standard simplex. Main additions to `Mathlib/Probability/Markov/Stationary.lean`: - `IsStationary`: A distribution μ is stationary for matrix P if μ ᵥ* P = μ - `cesaroAverage`: Cesàro average of iterates of a vector under a matrix - `Matrix.rowStochastic.exists_stationary_distribution`: existence theorem The proof uses Cesàro averaging: start with uniform distribution, form averages, extract convergent subsequence by compactness, show limit is stationary via L¹ non-expansiveness. Also adds `vecMul_mem_stdSimplex` to `Stochastic.lean`: multiplying a probability vector by a row-stochastic matrix preserves simplex membership. t-algebra new-contributor
label:t-algebra$
231/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean,Mathlib/Probability/Markov/Stationary.lean 3 6 ['dennj', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
0-85222
23 hours ago
0-85222
23 hours ago
1-28423
1 day
27953 CoolRmal
author:CoolRmal
feat(ProbabilityTheory): Conditional Jensen's Inequality This PR adds conditional Jensen's inequality. I made some changes to Mathlib/Analysis/Convex/Approximation.lean because I need the sequence of affine functions to be bouneded above at each point. --- - [x] depends on: #31411 - [x] depends on: #31399 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 130/20 Mathlib.lean,Mathlib/Analysis/Convex/Approximation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean 4 8 ['CoolRmal', 'EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] sgouezel
assignee:sgouezel
0-83631
23 hours ago
0-82963
22 hours ago
20-36950
20 days
33746 ster-oc
author:ster-oc
feat(Algebra/Module/ZLattice): align `ZSpan.floor` to `Int.floor` API This PR adds some of the existent lemmas about `Int.floor`, `Int.ceil` and `Int.fract` to the `ZSpan` namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
353/145 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Topology/Algebra/Order/Floor.lean 3 7 ['github-actions', 'joelriou', 'mathlib-merge-conflicts', 'ster-oc'] joelriou
assignee:joelriou
0-65763
18 hours ago
0-65975
18 hours ago
25-3912
25 days
35436 daniel-carranza
author:daniel-carranza
feat(CategoryTheory/Monoidal/Closed): Prove the isomorphism of internal hom objects C(x \otimes y, z) and C(y, C(x, z)) Prove the currying-uncurrying isomorphism `C(x \otimes y, z) \iso C(y, C(x, z))` between internal hom objects of a closed monoidal category `C`. --- This result is connected to the infinity-cosmos project, and is used to prove that a closed monoidal category enriched in itself admits all cotensors. Line 81 currently contains a one-line proof in tactics mode `exact rfl`. When trying to use `rfl` outside of tactics mode, an error is thrown. Any help with this (or any other aspect of the formalization) is greatly appreciated! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory infinity-cosmos 84/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Closed/InternalCurrying.lean 2 4 ['github-actions', 'robin-carlier'] nobody
0-57714
16 hours ago
0-61024
16 hours ago
0-60802
16 hours
35451 samueloettl
author:samueloettl
feat(MeasureTheory.Function): compMeasurePreserving_iterate --- These are useful for dynamics/ergodic theory. Possibly some of these could be simp lemmas but I'm not confident enough to say that they are so I didn't mark them as such. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 32/0 Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean 2 2 ['github-actions'] nobody
0-34894
9 hours ago
0-33822
9 hours ago
0-33600
9 hours
35422 PrParadoxy
author:PrParadoxy
feat(Analysis/LocallyConvex/WeakDual): Weak Representation Theorem This PR uses the material in Topology/Algebra/Module/WeakBilin.lean from the unfinished PR #26345 by @mans0954. Given a bilinear form `B : E →ₗ[𝕜] F →ₗ[𝕜] 𝕜`, every continuous functional on `E` endowed with the `σ(E, F; B)`-topology is of the form `x ↦ B(x, y)` for some `y : F`. The result doesn't generally seem to be named, but Narici-Beckenstein's "Topological Vector Spaces" calls it the "weak representation theorem", a term we have used for the docstring. --- Changes compared to #26345: * We have moved the material to `Analysis/LocallyConvex/WeakDual`, as this is where the supporting result `mem_span_iff_continuous` ended up. (C.f. PR #27316) * `dualEmbedding_surjective` is now much shorter and should no longer rely on defeqs. Co-authored-by: Christopher Hoskin t-analysis new-contributor 31/0 Mathlib/Analysis/LocallyConvex/WeakDual.lean 1 3 ['github-actions'] nobody
0-32246
8 hours ago
1-12788
1 day ago
1-12566
1 day
34937 tannerduve
author:tannerduve
feat(Computability): semilattice instance on Turing degrees This PR equips `TuringDegree` with a `SemilatticeSup` structure by introducing the Turing join, proving usual least-upper-bound properties, and lifting these to degrees (quotients). In support of this, it extends the existing `RecursiveIn` API with some lemmas used in the degree theory. The main contribution is the `SemilatticeSup` instance on `TuringDegree`. We define the Turing join as follows ``` turingJoin (f g) : ℕ → ℕ -- notation: f ⊕ g ``` and prove it is a least upper bound: * `left_le_join`, `right_le_join` * `join_le` * monotonicity and congruence lemmas (`join_mono`, `join_congr`) We lift this to degrees in `TuringDegree.sup`, `TuringDegree.le_sup_left`, `TuringDegree.le_sup_right`, and `TuringDegree.sup_le` ``` instance : SemilatticeSup TuringDegree ``` **New additions to `RecursiveIn.lean`:** - `liftPrim`, `liftPrimrec`, `RecursiveIn'`, `ComputableIn`, `ComputableIn₂`: Encodes partial/total functions between `Primcodable` types as `ℕ →. ℕ`, analogous to `Partrec`/`Computable`. - `of_eq`, `of_eq_tot`, `of_primrec`, `some`, `none`, `mono`, `subst`: Standard closure properties for `RecursiveIn`. - `cond_const`, `cond_core_rfind`, `cond`, `ComputableIn.cond`: Shows `RecursiveIn` is closed under conditionals when the guard is absolutely computable - `Nat.Partrec.recursiveIn`, `Computable.computableIn`: Every partrec/computable function is recursive in any oracle set. Small addition to `Partrec` we add to `Mathlib.Computability.Partrec` a small helper def (`Partrec.kronecker` and related `rfind` lemmas) representing the function that returns 1 if its two (unpaired) arguments are equal, and 0 otherwise, which is used in the proof of `cond` ## TODO Some current `RecursiveIn` proofs such as `cond_core_rfind` still work directly with the inductive constructors and are thus very long. A follow up could add a combinator-style closure library by essentially relativizing all the results and lemmas in `Partrec`, and proofs could be golfed heavily as they are in `Partrec` ## Note: AI Usage [Aleph prover](https://logicalintelligence.com/aleph-coding-ai/) was allowed to prove an earlier version of `cond_core_rfind`, which included stating and proving the lemma `cond_const` but the proofs have since been iterated on manually Cursor was allowed to run git commands and edit docstrings/headers, and was used in setting up the module structure of the files t-computability new-contributor large-import 644/63 Mathlib/Computability/Partrec.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/TuringDegree.lean 3 14 ['eric-wieser', 'github-actions', 'plp127', 'tannerduve', 'vihdzp'] nobody
0-24433
6 hours ago
0-23766
6 hours ago
9-69185
9 days
34068 leomayer1
author:leomayer1
feat: give functor categories an instance of `HasBinaryBiproducts` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor maintainer-merge 74/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/BinaryBiproducts.lean 2 12 ['dagurtomas', 'github-actions', 'leomayer1'] dagurtomas
assignee:dagurtomas
0-21621
6 hours ago
0-20764
5 hours ago
1-14079
1 day
34777 sqrt-of-2
author:sqrt-of-2
feat(Combinatorics/SetFamily/Intersecting): L-intersecting families Define L-intersecting families and establish their basic properties. A family 𝒜 of finsets is L-intersecting if all pairwise intersection sizes of members of 𝒜 belong to L ⊆ ℕ. From LeanCamCombi. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 81/2 Mathlib/Combinatorics/SetFamily/Intersecting.lean 1 9 ['YaelDillies', 'b-mehta', 'github-actions'] b-mehta
assignee:b-mehta
0-19448
5 hours ago
0-18482
5 hours ago
14-34235
14 days
34851 dennj
author:dennj
feat(Data/Matrix/Mul): add diagonal and transpose lemmas for vector operations This adds three lemmas for matrix-vector operations that serve as foundational support for future ML formalization: - `vecMul_diagonal_dotProduct`: weighted inner product `x ᵥ* diagonal d ⬝ᵥ y = ∑ i, d i * x i * y i` - `dotProduct_transpose_mulVec`: bilinear form symmetry `x ⬝ᵥ Aᵀ *ᵥ y = y ⬝ᵥ A *ᵥ x` - `mul_diagonal_mulVec`: column-weighted sum `(A * diagonal d) *ᵥ x = ∑ i, (d i * x i) • A.col i` These are basic linear algebra identities involving diagonal matrices and vector operations that appear frequently in machine learning contexts (weighted inner products, attention mechanisms, feature scaling, diagonal preconditioning). t-data new-contributor 22/0 Mathlib/Data/Matrix/Mul.lean 1 5 ['dennj', 'eric-wieser', 'github-actions', 'themathqueen'] pechersky
assignee:pechersky
0-11414
3 hours ago
3-76160
3 days ago
13-16410
13 days
34137 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): Remove `injectiveSeminorm` Currently, `injectiveSeminorm` is extensionally equal to `projectiveSeminorm`. Both implement what is commonly called the "projective tensor norm". # Background (C.f. [[Diestel et al.]](https://www.ams.org/bookstore/pspdf/mbk-52-prev.pdf)). On the algebraic tensor product of two Banach spaces X, Y, there are two distinguished norms. First the projective norm, or "largest reasonable crossnorm". Two equivalent expressions for it are: (L1) `‖u‖_∧ = sup { sum_i ‖x_i‖ ‖y_i‖ | sum_i x_i ⊗ y_i = u }`, (L2) `‖u‖_∧ = norm of the linear map that sends b : B(X,Y; 𝕂) to (lift b) u`, where `B(X,Y; Z)` is the set of bounded bilinear maps into a normed space `Z`. Second, there is the injective norm, or "smallest reasonable crossnorm": (S) `‖u‖_∨` = norm of the bilinear map that sends `f : X', g : Y'` to `(f⊗g) u`. # Mathlib The formalization treats tensor products of seminormed spaces over normed fields. In this context, `projectiveSeminorm` implements (L1). But `injectiveSeminorm u` doesn't implement (S), but the following variant of (L2): (L2') `sup_Z { norm of map sending b : B(X,Y; Z) to (lift b) u }.` In fact, `injectiveSeminorm = projectiveSeminorm `. The upper bound is proven in Mathlib. Equality is attained (somewhat tautologically) by choosing `Z` to be `X ⊗ Y` endowed with the projective seminorm. `projectiveSeminorm` is defined first; `injectiveSeminorm` builds on it. Then the theory of an isometric version of `PiTensorProduct.lift` is based on `injectiveSeminorm`. # Proposed change This PR deprecates `injectiveSeminorm` and ports all applications to (L1). This doesn't actually require too much work, leads to the same mathematical theory, and significantly reduces complexity (and potential for confusion!). There is a [companion PR](https://github.com/leanprover-community/mathlib4/pull/33969) which formalizes the equality of the current definitions and has a WIP / RFC implementation of the injective seminorm as commonly understood. Deprecations: - injectiveSeminorm - injectiveSeminorm_apply - norm_eval_le_injectiveSeminorm - injectiveSeminorm_le_projectiveSeminorm - injectiveSeminorm_tprod_le - Mathlib.Analysis.Normed.Module.PiTensorProduct.InjectiveSeminorm --- Co-authored-by: Davood H. H. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 167/207 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean 3 18 ['Ruben-VandeVelde', 'dupuisf', 'github-actions', 'goliath-klein', 'robin-carlier', 'tb65536'] dupuisf
assignee:dupuisf
0-10246
2 hours ago
0-30024
8 hours ago
25-83816
25 days
35118 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): introduce truncFinset to unify truncations Resolves the TODO in MvPowerSeries/Trunc.lean by implementing a general truncation map `truncFinset`, which paves the way for unifying strict and non-strict truncations and defining other truncations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 132/144 Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean 2 23 ['BryceT233', 'chrisflav', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
0-9760
2 hours ago
0-9760
2 hours ago
5-45982
5 days
35465 MixedMatched
author:MixedMatched
feat(Data/Multiset/Powerset): show injectivity and monotonicity of powerset Add Injective, Monotone, and StrictMono proofs for `Multiset.powerset`. Also, add a theorem showing that the sizes of two powersets are bidirectionally related to the sizes of the underlying Multisets (`le_powerset_iff_le`), a couple of other small `Multiset.powerset` lemmas, and theorems for append and map for `List.Subperm`. Also, thanks to Ruben Van de Velde for looking this over on the Zulip! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 62/0 Mathlib/Data/List/Perm/Subperm.lean,Mathlib/Data/List/Sublists.lean,Mathlib/Data/Multiset/Powerset.lean 3 2 ['github-actions'] nobody
0-7867
2 hours ago
0-6504
1 hour ago
0-6282
1 hour
28546 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… 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). t-dynamics new-contributor 746/0 Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/Translate/ToAdditive.lean 3 180 ['Sfgangloff', 'botbaki-review', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
0-6883
1 hour ago
0-6132
1 hour ago
95-37766
95 days
35272 jvanwinden
author:jvanwinden
feat(Topology/Instances/EReal): limsup of multiplication by a constant add an analogue of `limsup_const_mul_of_ne_top` which applies to `EReal` instead of `ENNReal` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 16/0 Mathlib/Topology/Instances/EReal/Lemmas.lean 1 4 ['github-actions', 'jvanwinden', 'vihdzp'] j-loreaux
assignee:j-loreaux
0-5384
1 hour ago
3-57827
3 days ago
4-21283
4 days
35280 khwilson
author:khwilson
feat(Mathlib/Analysis/Polynomial/MahlerMeasure): Mahler Measure estimate in terms of supNorm The Mahler measure of a polynomial is bounded above by `√(p.natDegree + 1) * p.supNorm`. This is a tighter estimate than `(p.natDegree + 1) * p.supNorm`, which is implied by `mahlerMeasure_le_sum_norm_coeff`. AI Usage: Claude Code (Opus 4.6) provided first drafts for several sorries in the main calc block. Gemini Pro was used for one-off looks ups of lemma names like `ae_restrict_iff'`. The final code was edited by me. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 80/0 Mathlib/Analysis/Polynomial/MahlerMeasure.lean 1 2 ['github-actions'] j-loreaux
assignee:j-loreaux
0-5382
1 hour ago
4-7636
4 days ago
4-10380
4 days
35315 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 3/5) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 51/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 4 ['SnirBroshi', 'github-actions'] j-loreaux
assignee:j-loreaux
0-5371
1 hour ago
3-17402
3 days ago
3-29760
3 days
35317 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 5/5) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 78/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart2.lean 2 2 ['github-actions'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-5370
1 hour ago
3-27249
3 days ago
3-27027
3 days
35467 ZRTMRH
author:ZRTMRH
feat(Combinatorics): add Schreier graphs, Cayley graphs, and Cayley sum graphs ## Summary - Defines Schreier graphs and Cayley graphs as quivers with labeled edges, porting the approach from Lean 3 PR leanprover-community/mathlib3#18693 by @bottine, @YaelDillies, and @antoinelab01. - Proves the labelling prefunctor is a covering for group actions, establishes reachability characterization, connectivity, and vertex-transitivity (right multiplication is a covering isomorphism). - Provides concrete examples: cyclic groups ℤ/nℤ, symmetric groups S_n, and integers ℤ. - Defines Cayley sum graphs as `SimpleGraph` where `Adj u v ↔ u ≠ v ∧ u + v ∈ s`, with translation properties and connection to circulant graphs. ## References - Lean 3 PR: leanprover-community/mathlib3#18693 (Rémi Bottinelli, Yaël Dillies, Antoine Labelle) - Lean 3 branch: https://github.com/leanprover-community/mathlib3/tree/geometric-group-theory ## New files | File | Lines | Content | |------|-------|---------| | `Mathlib/Combinatorics/Quiver/Schreier.lean` | 770 | Core theory | | `Mathlib/Combinatorics/Quiver/SchreierExamples.lean` | 183 | Examples | | `Mathlib/Combinatorics/SimpleGraph/CayleySumGraph.lean` | 159 | Cayley sum graphs | ## Test plan - [x] All three files build clean on latest master - [x] No `sorry` - [x] All public declarations have docstrings - [x] `lake exe mk_all --check` passes - [x] `lake exe runLinter` passes ## AI disclosure This PR was developed with assistance from [Claude Code](https://claude.com/claude-code) (Anthropic's CLI tool). Claude Code was used for: writing proof scaffolding, debugging type errors, style cleanup (naming conventions, `fun ↦` syntax), rebasing onto upstream master, and PR preparation. All mathematical content, design decisions, and proof strategies were directed by the author. The code has been reviewed by the author and their advisor. t-combinatorics new-contributor 1117/0 Mathlib.lean,Mathlib/Combinatorics/Quiver/Schreier.lean,Mathlib/Combinatorics/Quiver/SchreierExamples.lean,Mathlib/Combinatorics/SimpleGraph/CayleySumGraph.lean 4 2 ['github-actions'] nobody
0-2932
48 minutes ago
0-3606
56 minutes ago
0-3384
56 minutes

PRs on the review queue labelled 'easy'

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
35067 bustercopley
author:bustercopley
style(RingTheory/PowerSeries/Derivative): prove derivative_pow from Derivation.leibniz_pow --- Firstly prove `derivative_pow` from the more general `Derivation.leibniz_pow` (because I think this is more illuminating), and secondly generalize `derivative_pow` to `CommSemiring`. The two are independent, in that the texts of the original and modified proofs both work fine, with either hypothesis. t-ring-theory easy 4/10 Mathlib/RingTheory/PowerSeries/Derivative.lean 1 3 ['bustercopley', 'github-actions'] erdOne
assignee:erdOne
4-5399
4 days ago
8-1294
8 days ago
8-1720
8 days
35307 samueloettl
author:samueloettl
fix(Dynamics/BirkhoffSum): birkhoffAverage_of_comp_eq only needs AddCommMonoid --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor easy 8/8 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 4 ['github-actions', 'samueloettl'] nobody
3-38481
3 days ago
3-38593
3 days ago
3-38371
3 days
35297 astrainfinita
author:astrainfinita
chore: clean up `sSup` and `sInf` usage --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy 10/12 Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/CategoryTheory/Category/Pairwise.lean,Mathlib/CategoryTheory/Limits/Lattice.lean,Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Order/Atoms.lean,Mathlib/Topology/Order/HullKernel.lean 6 1 ['github-actions', 'vihdzp'] nobody
2-75058
2 days ago
3-7170
3 days ago
3-40390
3 days
35338 WenrongZou
author:WenrongZou
chore(RingTheory/MvPowerSeries): modify docs in expand Modify a documentation in `MvPowerSeries.expand`. Easy. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory easy 4/3 Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/PowerSeries/Expand.lean 2 2 ['WenrongZou', 'github-actions'] nobody
2-58460
2 days ago
2-58790
2 days ago
2-58568
2 days
35199 Komyyy
author:Komyyy
doc: `PFun.fix_induction` to `PFun.fixInduction` This is typo of [`PFun.fixInduction`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/PFun.html#PFun.fixInduction) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-data mathlib-port easy 1/1 Mathlib/Data/PFun.lean 1 1 ['github-actions'] TwoFX
assignee:TwoFX
2-5377
2 days ago
5-21658
5 days ago
5-21436
5 days
35050 j-loreaux
author:j-loreaux
feat: generalize some results for `SupConvergenceClass` to `ConditionallyCompletePartialOrder{Sup,Inf}` --- - [ ] depends on: #35047 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-order easy 7/4 Mathlib/Topology/Order/MonotoneConvergence.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-27476
1 day ago
1-26220
1 day ago
1-25998
1 day
35224 b-mehta
author:b-mehta
feat(Module/RCLike): convenience lemma to prove antilipschitz over RCLike Use the fact that we can rescale by norms in RCLike to get a convenience constructor for Antilipschitz --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 16/0 Mathlib/Analysis/Normed/Module/RCLike/Basic.lean 1 1 ['github-actions'] ADedecker
assignee:ADedecker
1-5390
1 day ago
5-375
5 days ago
5-153
5 days
35207 j-loreaux
author:j-loreaux
feat: neighborhood basis in a metric space consisting of closed balls of radius `1 / (n + 1)` --- I wanted this for convenience downstream and it didn't exist. We have similar things, but not this one. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology easy 19/0 Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 1 3 ['Komyyy', 'github-actions'] nobody
0-76142
21 hours ago
1-36496
1 day ago
5-12877
5 days
35466 vihdzp
author:vihdzp
chore: fix inexistent `NE.ne` namespace The `≠` relation is simply called `Ne`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order easy
label:t-algebra$
5/2 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean 1 1 ['github-actions'] nobody
0-9067
2 hours ago
0-6442
1 hour ago
0-6220
1 hour
35283 Multramate
author:Multramate
feat(Algebra/Polynomial): add Polynomial.algHomEquiv and its bivariate version --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
26/0 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Bivariate.lean 2 2 ['copilot-pull-request-reviewer', 'github-actions'] riccardobrasca
assignee:riccardobrasca
0-5381
1 hour ago
3-32167
3 days ago
3-31945
3 days
35321 harahu
author:harahu
doc: capitalize the proper name Kan We capitalize the surname of Daniel Kan. --- This PR is exhaustive. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 4/4 Mathlib/CategoryTheory/Bicategory/Kan/HasKan.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/ExternalProduct/KanExtension.lean,Mathlib/Topology/Sheaves/Alexandrov.lean 4 1 ['github-actions', 'vihdzp'] nobody
0-2620
43 minutes ago
3-21061
3 days ago
3-20839
3 days

PRs on the review queue labelled 'tech debt' or 'longest-pole'

There are currently no PRs on the review queue which are labelled 'tech debt' or 'longest-pole. Congratulations!