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: March 03, 2026 at 10:35 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
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
47-73927
1 month ago
47-72216
47 days ago
84-66235
84 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
33-80631
1 month ago
33-79784
33 days ago
44-62672
44 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
33-79972
1 month ago
33-78433
33 days ago
39-48136
39 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
33-79480
1 month ago
33-78626
33 days ago
39-48388
39 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
33-34395
1 month ago
42-53291
42 days ago
42-75758
42 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
32-56369
1 month ago
32-55447
32 days ago
44-1173
44 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
32-34411
1 month ago
41-13411
41 days ago
51-50243
51 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
32-34408
1 month ago
40-36387
40 days ago
40-51028
40 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
31-34418
1 month ago
35-73176
35 days ago
44-48102
44 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
30-34369
1 month ago
34-11431
34 days ago
58-81740
58 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
29-63708
1 month ago
29-62957
29 days ago
48-39484
48 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
29-15867
1 month ago
40-39365
40 days ago
41-70201
41 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
27-68210
27 days ago
37-69628
37 days ago
37-69254
37 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
27-44178
27 days ago
27-44178
27 days ago
79-74808
79 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
27-43005
27 days ago
27-43005
27 days ago
80-11656
80 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
27-34394
27 days ago
30-55383
30 days ago
30-56294
30 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
26-63284
26 days ago
26-62662
26 days ago
35-63047
35 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
26-5627
26 days ago
26-4633
26 days ago
34-46596
34 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
25-34502
25 days ago
29-23037
29 days ago
29-22663
29 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
25-34501
25 days ago
28-64287
28 days ago
28-63913
28 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
24-64195
24 days ago
41-16699
41 days ago
41-23153
41 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
24-58405
24 days ago
24-57257
24 days ago
42-51579
42 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
24-34496
24 days ago
28-12522
28 days ago
29-14924
29 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
24-34476
24 days ago
27-58970
27 days ago
27-58596
27 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
23-32469
23 days ago
55-38741
55 days ago
55-70045
55 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
22-34488
22 days ago
27-15857
27 days ago
27-15483
27 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
22-34486
22 days ago
33-78289
33 days ago
39-51380
39 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
22-34483
22 days ago
25-84689
25 days ago
27-26170
27 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
21-34227
21 days ago
46-19309
46 days ago
46-18935
46 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
21-34221
21 days ago
25-31884
25 days ago
27-61458
27 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
21-34216
21 days ago
27-47437
27 days ago
27-47063
27 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
21-9947
21 days ago
21-9060
21 days ago
83-57458
83 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
21-3983
21 days ago
53-12158
53 days ago
73-41479
73 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
20-34335
20 days ago
24-7702
24 days ago
24-7328
24 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
20-34334
20 days ago
29-1994
29 days ago
32-49398
32 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
20-34330
20 days ago
28-74167
28 days ago
28-73793
28 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
20-34326
20 days ago
27-47354
27 days ago
27-46980
27 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
19-70750
19 days ago
19-70127
19 days ago
19-70745
19 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
19-34485
19 days ago
22-53829
22 days ago
22-56450
22 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
19-27729
19 days ago
19-27027
19 days ago
22-50654
22 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
18-34468
18 days ago
22-24605
22 days ago
22-24231
22 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
17-74768
17 days ago
17-74123
17 days ago
30-74943
30 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
17-47363
17 days ago
17-47363
17 days ago
78-80709
78 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
17-41496
17 days ago
17-40460
17 days ago
28-21817
28 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
17-41479
17 days ago
17-39767
17 days ago
43-37779
43 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
17-34502
17 days ago
23-37443
23 days ago
28-29351
28 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
17-34501
17 days ago
20-39084
20 days ago
26-83499
26 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
16-34495
16 days ago
20-37117
20 days ago
20-36743
20 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
15-70767
15 days ago
15-70767
15 days ago
15-70393
15 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
15-34493
15 days ago
19-12817
19 days ago
19-65481
19 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
15-34487
15 days ago
18-51033
18 days ago
18-50659
18 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
14-79979
14 days ago
14-79227
14 days ago
14-78853
14 days
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
14-63259
14 days ago
unknown
unknown
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
14-62341
14 days ago
unknown
unknown
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
14-54304
14 days ago
25-3454
25 days ago
25-3080
25 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
14-53614
14 days ago
38-40093
38 days ago
38-80047
38 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
14-53547
14 days ago
34-7942
34 days ago
34-7568
34 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
14-51702
14 days ago
14-51046
14 days ago
31-76996
31 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
14-48348
14 days ago
14-49792
14 days ago
20-53417
20 days
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
14-36862
14 days ago
16-32077
16 days ago
16-35684
16 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
14-34505
14 days ago
18-15747
18 days ago
29-72454
29 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
14-27952
14 days ago
14-27952
14 days ago
21-57654
21 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
14-6451
14 days ago
14-5746
14 days ago
14-45934
14 days
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
13-73723
13 days ago
13-71339
13 days ago
49-40773
49 days
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
13-69536
13 days ago
45-7292
45 days ago
99-5567
99 days
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
13-49598
13 days ago
13-48914
13 days ago
14-78136
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
13-40512
13 days ago
17-18858
17 days ago
26-45356
26 days
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
13-35981
13 days ago
13-35230
13 days ago
108-66712
108 days
35360 vlad902
author:vlad902
chore: 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
12-67529
12 days ago
15-66801
15 days ago
15-66427
15 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'] b-mehta
assignee:b-mehta
12-34499
12 days ago
24-37749
24 days ago
36-76200
36 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 10 ['bwangpj', 'dagurtomas', 'eric-wieser', 'github-actions', 'riccardobrasca'] dagurtomas
assignee:dagurtomas
12-9949
12 days ago
41-2916
41 days ago
41-4899
41 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'] b-mehta
assignee:b-mehta
11-34507
11 days ago
23-57716
23 days ago
23-57342
23 days
34637 mcdoll
author:mcdoll
feat(Analysis/Distribution): support We define the support of distributions. The definition applies to both tempered and classical distributions, but for this PR we only prove some elementary statements for tempered distributions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 241/0 Mathlib.lean,Mathlib/Analysis/Distribution/Support.lean 2 14 ['github-actions', 'lauramonk', 'mcdoll', 'urkud'] ADedecker
assignee:ADedecker
11-20718
11 days ago
11-20042
11 days ago
26-32905
26 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 4 ['CoolRmal', 'github-actions', 'mcdoll'] thorimur
assignee:thorimur
11-17777
11 days ago
11-17219
11 days ago
39-12761
39 days
26212 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): the Rees theorem for depth In this PR we proved the Rees theorem for depth. Co-authored-by: Hu Yongle --- - [x] depends on: #27416 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-ring-theory 240/24 Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Regular/Category.lean,Mathlib/RingTheory/Regular/Depth.lean,Mathlib/RingTheory/Regular/RegularSequence.lean 5 55 ['Thmoas-Guan', 'alreadydone', 'chrisflav', 'dagurtomas', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
11-11894
11 days ago
11-11894
11 days ago
79-5602
79 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'] ADedecker
assignee:ADedecker
10-34518
10 days ago
13-47294
13 days ago
28-18965
28 days
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'] alexjbest
assignee:alexjbest
10-34506
10 days ago
13-77038
13 days ago
13-76664
13 days
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'] kim-em
assignee:kim-em
10-34504
10 days ago
13-67488
13 days ago
13-67114
13 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'] RemyDegenne
assignee:RemyDegenne
10-34504
10 days ago
13-62920
13 days ago
13-62546
13 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'] kim-em
assignee:kim-em
10-34502
10 days ago
13-45199
13 days ago
13-44825
13 days
33121 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Hasse): paths in a graph are isomorphic to path graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 43/1 Mathlib/Combinatorics/SimpleGraph/Hasse.lean 1 23 ['MrQubo', 'SnirBroshi', 'erdOne', 'github-actions', 'jcommelin', 'mitchell-horner'] b-mehta
assignee:b-mehta
10-31373
10 days ago
10-30796
10 days ago
69-6430
69 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
10-27444
10 days ago
26-31846
26 days ago
26-31472
26 days
33292 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/LineGraph): lift copies/isomorphisms to line-graph Non-injective homomorphisms (`G →g G'`) cannot be lifted to a homomorphism on line-graphs (`G.lineGraph →g G'.lineGraph`) because e.g. `∀ k > 1` there is a homomorphism from `pathGraph k` to `G'` iff `G'` has an edge, and `∀ n > 0, (pathGraph (n + 1)).lineGraph ≃ pathGraph n`, but there is no homomorphism from `pathGraph k` to `pathGraph 1` because it has no edges. So for `G := pathGraph 3` and `G' := pathGraph 2` there is a `G →g G'` but no `G.lineGraph →g G'.lineGraph`. But we can lift `Copy`/`Embedding`/`Iso`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-combinatorics 45/4 Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Data/Sym/Sym2.lean 2 6 ['SnirBroshi', 'github-actions', 'tb65536'] b-mehta
assignee:b-mehta
10-26842
10 days ago
10-27606
10 days ago
63-83390
63 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
9-79575
9 days ago
17-22093
17 days ago
17-21719
17 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 53/0 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean 1 55 ['LessnessRandomness', 'SnirBroshi', 'b-mehta', 'github-actions', 'vlad902'] awainverse
assignee:awainverse
9-76450
9 days ago
9-76626
9 days ago
33-76701
33 days
34966 Deep0Thinking
author:Deep0Thinking
feat(MeasureTheory): add `continuousWithinAt_Ici/Iic_primitive_Ioi/Iio` and `continuousOn_Ici/Iic_primitive_Ioi/Iio/Ici/Iic` This PR proves: - `continuousWithinAt_Ici/Iic_primitive_Ioi/Iio` - `continuousOn_Ici/Iic_primitive_Ioi/Iio/Ici/Iic` - `integral_Ioi_sub_Ioi`, `integral_Ioi_sub_Ioi'`, `integral_Iio_sub_Iio`, `integral_Iio_sub_Iio'` - `Ioi_diff_Ioc` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 125/1 Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/Order/Interval/Set/LinearOrder.lean 3 14 ['CoolRmal', 'Deep0Thinking', 'github-actions'] RemyDegenne
assignee:RemyDegenne
9-62959
9 days ago
9-62466
9 days ago
21-85899
21 days
34144 IvanRenison
author:IvanRenison
feat(Data/ENat): add lemma `ENat.iInf_eq_coe_iff` Co-authored-by: SnirBroshi <26556598+SnirBroshi@users.noreply.github.com> --- [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/ENat.2EiInf_eq_nat_iff/with/568699219) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 21/0 Mathlib/Data/ENat/Lattice.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 3 16 ['IvanRenison', 'Ruben-VandeVelde', 'SnirBroshi', 'eric-wieser', 'github-actions', 'tb65536'] TwoFX
assignee:TwoFX
9-51547
9 days ago
9-48141
9 days ago
37-68813
37 days
35615 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Maps): lemmas about support --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 41/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 1 ['github-actions'] nobody
9-39010
9 days ago
9-38378
9 days ago
9-38004
9 days
35616 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Copy): `IsContained` and `IsIndContained` are preorders --- This makes `calc` work and provides `Std.Refl` and `IsTrans` instances. `grw` still doesn't work and mixing the two predicates in `calc` (to prove `IsContained`) also doesn't work. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 20/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 1 ['github-actions'] nobody
9-38142
9 days ago
9-37487
9 days ago
9-37113
9 days
35613 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Clique): use `IsContained` instead of an explicit embedding from top This makes theorems require only a proof that a `Copy` exists rather than provide an explicit `Embedding`. Also tag monotonicity lemmas with `@[gcongr]`. --- This isn't a generalization per-se since one could use choice plus `Copy.topEmbedding` to upgrade the `IsContained` to an embedding, but `IsContained` makes more sense in theorems. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 37/36 Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean 3 1 ['github-actions'] nobody
9-38036
9 days ago
9-37433
9 days ago
9-37059
9 days
35619 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Clique): intersection and union of cliques Plus a couple of lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 29/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 1 ['github-actions'] nobody
9-35873
9 days ago
9-35290
9 days ago
9-34916
9 days
30526 SnirBroshi
author:SnirBroshi
chore(Logic/Relation): use `≤` to spell subrelation Replace every `∀ x y, r x y → r' x y` with `r ≤ r'` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 161/136 Mathlib.lean,Mathlib/Algebra/Category/Grp/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Filtered/Connected.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Types/Coequalizers.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/TMConfig.lean,Mathlib/Data/PFunctor/Multivariate/M.lean,Mathlib/Data/Quot.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/Prop.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Topology/Gluing.lean 25 14 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'thorimur', 'vihdzp'] thorimur
assignee:thorimur
9-35283
9 days ago
9-55975
9 days ago
39-7556
39 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'] Vierkantor
assignee:Vierkantor
9-34482
9 days ago
16-63284
16 days ago
16-62910
16 days
35622 SnirBroshi
author:SnirBroshi
feat(Logic/Function/Basic): `onFun` and `swap` preserve relation properties --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 105/1 Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Order/Defs/Unbundled.lean 3 4 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
8-85123
8 days ago
8-82018
8 days ago
9-20537
9 days
35470 kim-em
author:kim-em
chore(Algebra/Quaternion): make `Quaternion` instance_reducible This PR marks `Quaternion` as `@[instance_reducible]`, removing 7 (net) `set_option backward.isDefEq.respectTransparency false` workarounds from `Analysis/Quaternion.lean`. The `smul_left` proof in the `NormedAddCommGroup` instance needs a small adjustment (`simp [inner_def]` → `simp [inner_def, mul_add]`) since `@[instance_reducible]` changes how `simp` normalizes through the type alias. 🤖 Prepared with Claude Code tech debt t-analysis 3/9 Mathlib/Algebra/Quaternion.lean,Mathlib/Analysis/Quaternion.lean 2 5 ['MichaelStollBayreuth', 'github-actions', 'kim-em', 'mathlib-bors'] nobody
8-83915
8 days ago
12-85586
12 days ago
12-85283
12 days
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
8-50517
8 days ago
8-49925
8 days ago
23-9760
23 days
35295 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): `dropLast` of a cycle is a path --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 18/1 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean 2 6 ['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'vlad902'] nobody
8-45916
8 days ago
8-45209
8 days ago
10-15517
10 days
35504 JoaBjo
author:JoaBjo
feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property Add the main analytic results for the exponential distribution: - moment-generating function `mgf id (expMeasure r) t = r / (r - t)` for `t < r` - mean `∫ x, x ∂(expMeasure r) = r⁻¹` - variance `Var[id; expMeasure r] = r⁻¹ ^ 2` - `ℒp` membership for all `p` - tail probability `P(X > x) = exp (-(r * x))` - memoryless property `P(X > s + t | X > s) = P(X > t)` The MGF is computed by reducing to the known improper integral `∫ exp(c * x)` on `Ioi`, and integrability is deduced by contradiction from the positive closed-form value. The mean and variance are computed via the Gamma function integral `∫₀^∞ x^(n-1) exp(-r x) dx = Γ(n) / rⁿ`. The memoryless property follows from the exponential identity `exp(-(r(s+t))) = exp(-rt) * exp(-rs)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 200/0 Mathlib/Probability/Distributions/Exponential.lean 1 6 ['JoaBjo', 'Timeroot', 'github-actions'] kex-y
assignee:kex-y
8-34507
8 days ago
11-48046
11 days ago
12-52900
12 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 12 ['SnirBroshi', 'github-actions', 'themathqueen', 'vihdzp'] nobody
8-8919
8 days ago
8-8195
8 days ago
22-5727
22 days
35682 chenson2018
author:chenson2018
chore(Computability/Partrec): remove `linter.flexible` exceptions This removes all `set_option linter.flexible false` from this module. Some proofs simply required moving around the usage of `simp`. For others I used `grind`, which is permitted to follow flexible tactics. In all cases I prioritized leaving the structure of the proof either mostly as-is or slightly improving readability. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability maintainer-merge 23/41 Mathlib/Computability/Partrec.lean 1 6 ['chenson2018', 'github-actions', 'grunweg'] nobody
7-42727
7 days ago
7-42147
7 days ago
7-63638
7 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$
332/1 Mathlib.lean,Mathlib/RingTheory/PowerSeries/Pentagonal.lean,Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean,docs/1000.yaml 4 21 ['copilot-pull-request-reviewer', 'github-actions', 'jcommelin', 'mathlib4-dependent-issues-bot', 'urkud', 'vihdzp', 'wwylele'] kex-y
assignee:kex-y
7-41119
7 days ago
7-43816
7 days ago
56-78118
56 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'] kmill
assignee:kmill
7-34506
7 days ago
23-32989
23 days ago
31-33414
31 days
34599 cameronfreer
author:cameronfreer
feat(Logic/Equiv/Fintype): generalize toCompl and exists_extending_pair to finite source Generalize the Equiv subtype-extension API so it only needs finiteness of the source subtype, then use that to drastically simplify `Equiv.Perm.isMultiplyPretransitive`. ### Changes to `Logic/Equiv/Fintype.lean` * **`Equiv.toCompl`**: generalize from `[Finite α]` to `[Finite {x | p x}]`. New proof (due to tb65536) uses finset symmetric differences to avoid needing finiteness of the ambient type. * **`Equiv.extendSubtype`** and related lemmas: adapt to `[Finite {x | p x}]`. * **`Equiv.Perm.exists_extending_pair`**: strengthen from `[Finite β]` to `[Finite α]`. Given two injective functions `f, g : α → β` where `α` is finite, there exists `σ : Perm β` with `σ ∘ f = g`. The target `β` can now be infinite. ### Changes to `MultipleTransitivity.lean` * **`Equiv.Perm.isMultiplyPretransitive`**: replace ~70-line manual bijectivity construction with a two-line proof via `exists_smul_eq_embedding`. * **`exists_smul_eq_embedding`**: rewire to use `exists_extending_pair` directly (removing the old cardinal-arithmetic proof `exists_extending_pair_of_finite_source`). ### Application Used in formalizing de Finetti's theorem (exchangeability ⇒ contractability): https://github.com/cameronfreer/exchangeability/blob/03a854a2/Exchangeability/Contractability.lean#L459 Co-authored-by: tb65536 t-group-theory new-contributor 49/77 Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/Logic/Equiv/Fintype.lean 2 24 ['LLaurance', 'cameronfreer', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] mattrobball
assignee:mattrobball
7-34505
7 days ago
7-39329
7 days ago
16-75356
16 days
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'] Vierkantor
assignee:Vierkantor
7-34498
7 days ago
13-79259
13 days ago
13-78885
13 days
35549 JovanGerb
author:JovanGerb
fix(Translate): don't look in arguments of free variables in `shouldTranslate` This PR addresses a `to_additive` limitation reported at [#mathlib4 > #35179 breaks to_additive call in FLT](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.2335179.20breaks.20to_additive.20call.20in.20FLT/with/574823087) by making sure `shouldTranslate` doesn't looks at the arguments of free variable applications This PR refactors `shouldTranslate` in a few ways - The monad is changed from `OptionT` to `ExceptT`, with the underlying type changing from `Option Expr` to `ExceptT Expr Unit`. Although this is technically a bit less efficient, it makes the program shorter and more intuitive, because a failure now actually corresponds to a monadic failure instead of a monadic success. - When visiting a `Expr.app` node, we now loop through the whole application at once, instead of doing this step by step and checking the cache at each step. This allows us to detect when the head is a free variable, and skip its arguments. It also lets us deal with `ignoreArgsAttr` more naturally. - This change removes the need for the `inApp : Bool` argument that used to be passed around in order to tell whether a constant was in an application. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 44/39 Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Tactic/Translate/ToDual.lean,MathlibTest/toAdditive.lean 4 5 ['JovanGerb', 'github-actions', 'leanprover-radar'] dwrensha
assignee:dwrensha
7-34493
7 days ago
11-31003
11 days ago
11-30629
11 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 269/0 Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Incenter.lean 2 6 ['Parcly-Taxel', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'wwylele'] JovanGerb
assignee:JovanGerb
7-32826
7 days ago
7-32263
7 days ago
20-73494
20 days
35642 SnirBroshi
author:SnirBroshi
feat(SimpleGraph/Walks/Operations): `p.dropLast.length` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 12/1 Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean 1 1 ['github-actions', 'vlad902'] nobody
7-2268
7 days ago
8-84864
8 days ago
8-84490
8 days
31046 Thmoas-Guan
author:Thmoas-Guan
feat(Homology) : compatibility of map between `Ext` In this PR, we proved the compatibility of map between `Ext` induced by exact functor with 1: `mk_0` 2: `comp` 3: `extClass` --- - [x] depends on: #31707 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 232/1 Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/HomologicalComplexAbelian.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean 4 20 ['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] eric-wieser
assignee:eric-wieser
6-78584
6 days ago
6-78584
6 days ago
15-22347
15 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 3 ['MichaelStollBayreuth', 'bryangingechen', 'github-actions'] Vierkantor
assignee:Vierkantor
6-74024
6 days ago
19-40701
19 days ago
19-40327
19 days
35631 SnirBroshi
author:SnirBroshi
feat(SimpleGraph/Walks/Operations): `p.dropLast.support` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 9/0 Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean 1 2 ['github-actions', 'vlad902'] nobody
6-71780
6 days ago
6-71171
6 days ago
8-85650
8 days
35627 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Finite): min/max degrees of top/bot --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 24/1 Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 2 6 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
6-70944
6 days ago
9-23694
9 days ago
9-23320
9 days
35493 xroblot
author:xroblot
feat(RamificationInertia): add `ramificationIdx_algebra_tower'` The result [Ideal.ramificationIdx_algebra_tower](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.ramificationIdx_algebra_tower) is stated in a very general situation whereas most of its applications should be when there is a tower of prime ideals like in [Ideal.inertiaDeg_algebra_tower](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.inertiaDeg_algebra_tower). This PR adds a version of `Ideal.ramificationIdx_algebra_tower` specialized to this case. The instances needed are stronger but there is no side condition. I believe that this corresponds to the more useful situation and thus I replaced all the use of `Ideal.ramificationIdx_algebra_tower` by the new version even if that means having to adjust the hypotheses. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 37/24 Mathlib/NumberTheory/NumberField/Cyclotomic/Ideal.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean 4 3 ['MichaelStollBayreuth', 'github-actions', 'xroblot'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
6-62577
6 days ago
6-61961
6 days ago
6-61587
6 days
35664 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): the adjacency matrix of empty and complete graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 11/0 Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean 1 2 ['IvanRenison', 'github-actions'] nobody
6-56469
6 days ago
6-55757
6 days ago
8-35544
8 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
6-38875
6 days ago
16-70517
16 days ago
16-83112
16 days
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 64 ['DavidLedvinka', 'RemyDegenne', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'kex-y', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'pfaffelh', 'themathqueen'] kex-y
assignee:kex-y
6-35171
6 days ago
14-81987
14 days ago
36-2488
36 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'] bryangingechen
assignee:bryangingechen
6-34486
6 days ago
14-27151
14 days ago
27-4303
27 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'] urkud
assignee:urkud
6-34485
6 days ago
26-48676
26 days ago
29-38530
29 days
35042 JovanGerb
author:JovanGerb
chore: remove `meta` form `import Mathlib.Tactic...` This PR cleans up some imports of the form `import Mathlib.Tactic...`, by either removing them entirely, or removing the `meta` keyword. It should never be necessary to `meta import` a file from `Mathlib.Tactic`, because the relevant definitions should already have been marked as `meta`. The motivation is to reduce the amount of files that are `meta` imported when writing e.g. `import Mathlib`, hence reducing the amount of stuff that needs to be loaded. There are more other `meta import`s that need to be removed, but this PR is a good start. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 61/142 Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/Data/List/ChainOfFn.lean,Mathlib/Dynamics/OmegaLimit.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/Tactic/Algebraize.lean,Mathlib/Tactic/ApplyFun.lean,Mathlib/Tactic/ArithMult.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/CategoryTheory/Coherence/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/CategoryTheory/Coherence/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Elementwise.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Tactic/Choose.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/DefEqTransformations.lean,Mathlib/Tactic/DeriveCountable.lean,Mathlib/Tactic/DeriveFintype.lean,Mathlib/Tactic/DeriveTraversable.lean,Mathlib/Tactic/ENatToNat.lean,Mathlib/Tactic/Explode.lean,Mathlib/Tactic/Explode/Pretty.lean,Mathlib/Tactic/FinCases.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRewrite/Elab.lean,Mathlib/Tactic/Group.lean,Mathlib/Tactic/IrreducibleDef.lean,Mathlib/Tactic/Lift.lean,Mathlib/Tactic/Linarith.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/Gauss.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Linarith/Verification.lean,Mathlib/Tactic/LinearCombination/Lemmas.lean,Mathlib/Tactic/Linter/DeprecatedSyntaxLinter.lean,Mathlib/Tactic/Linter/DocPrime.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/EmptyLine.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/Linter/GlobalAttributeIn.lean,Mathlib/Tactic/Linter/HashCommandLinter.lean,Mathlib/Tactic/Linter/Multigoal.lean,Mathlib/Tactic/Linter/OldObtain.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/MinImports.lean,Mathlib/Tactic/MoveAdd.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/NormNum/DivMod.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Prime.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/CollectFacts.lean,Mathlib/Tactic/Order/Graph/Tarjan.lean,Mathlib/Tactic/PNatToNat.lean,Mathlib/Tactic/Peel.lean,Mathlib/Tactic/ProdAssoc.lean,Mathlib/Tactic/ProxyType.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Qify.lean,Mathlib/Tactic/RSuffices.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/Common.lean,Mathlib/Tactic/Ring/Compare.lean,Mathlib/Tactic/Ring/PNat.lean,Mathlib/Tactic/Simproc/Divisors.lean,Mathlib/Tactic/Simproc/FinsetInterval.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Subsingleton.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Tactic/TautoSet.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/TagUnfoldBoundary.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CommDiag.lean,Mathlib/Tactic/Widget/CongrM.lean 107 7 ['JovanGerb', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] dupuisf
assignee:dupuisf
6-34482
6 days ago
9-83606
9 days ago
13-60959
13 days
35273 grunweg
author:grunweg
chore: replace `continuity` -> `fun_prop` in remaining auto-parameters Resurrected version of #13994. Let's look at the current fall-out and performance effect. --- - [x] depends on: #35278 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 23/16 Mathlib/Analysis/Convex/PathConnected.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/SpecialFunctions/Arcosh.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,Mathlib/Topology/Algebra/SeparationQuotient/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Category/TopCat/ULift.lean,Mathlib/Topology/ContinuousMap/Basic.lean,Mathlib/Topology/ContinuousMap/Defs.lean,Mathlib/Topology/FiberPartition.lean 14 4 ['github-actions', 'grunweg', 'leanprover-radar', 'mathlib-dependent-issues'] urkud
assignee:urkud
6-34481
6 days ago
13-4419
13 days ago
13-16812
13 days
35481 FrankieeW
author:FrankieeW
chore(NumberTheory/Zsqrtd): inline duplicated order lemmas into instances This PR follows reviewer feedback by removing duplicated order/additive wrapper theorems in `Zsqrtd` and inlining the proofs into the corresponding typeclass instances. Changes include: - remove redundant wrappers such as `Zsqrtd.le_total`, `Zsqrtd.add_le_add_left`, `Zsqrtd.le_of_add_le_add_left`, `Zsqrtd.add_lt_add_left`, and `Zsqrtd.le_antisymm` - keep the canonical API through `LinearOrder` / ordered additive structure fields - update downstream use in `PellMatiyasevic` to the canonical theorem (`_root_.le_antisymm`) This reduces namespace-level duplicate APIs and keeps proofs aligned with standard typeclass lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-number-theory 26/10 Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean 2 8 ['FrankieeW', 'github-actions', 'vihdzp'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
6-34478
6 days ago
9-41918
9 days ago
12-66970
12 days
35565 felixpernegger
author:felixpernegger
feat(Topology): sequentially T2 spaces Adds typeclass for topoligcal spaces where convergent sequences have a unique limit. This lies between T2 and T1 and is occassionally useful when T2 is not strictly required. An example of a non T2 space with unique limit is the one point compactification of Q. There are some more implications not in this PR, see https://topology.pi-base.org/properties/P000099 In particular, (countably) compact sets are closed in sequentially T2 spaces. t-topology 135/0 Mathlib.lean,Mathlib/Topology/SequentiallyHausdorff.lean 2 1 ['github-actions'] urkud
assignee:urkud
6-34476
6 days ago
10-80541
10 days ago
10-80167
10 days
35590 chrisflav
author:chrisflav
feat(Algebra): add `AlgHom.ulift` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
71/3 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Ring/ULift.lean 3 4 ['chrisflav', 'github-actions', 'wwylele'] kim-em
assignee:kim-em
6-34471
6 days ago
9-49305
9 days ago
10-35063
10 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 67/0 Mathlib/Analysis/Polynomial/MahlerMeasure.lean 1 12 ['github-actions', 'j-loreaux', 'khwilson', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
6-27902
6 days ago
6-26753
6 days ago
16-30326
16 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 maintainer-merge 440/16 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/Order/UpperLower/Relative.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 8 30 ['BoltonBailey', 'denisgorod', 'eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] j-loreaux
assignee:j-loreaux
6-22053
6 days ago
6-18724
6 days ago
18-14480
18 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 16 ['YuvalFilmus', 'eric-wieser', 'github-actions', 'j-loreaux'] eric-wieser
assignee:eric-wieser
6-2211
6 days ago
6-1429
6 days ago
37-36268
37 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 215/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 7 ['Komyyy', 'b-mehta', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'zhuyizheng'] sgouezel
assignee:sgouezel
5-74675
5 days ago
5-73810
5 days ago
22-10862
22 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
5-72365
5 days ago
5-71257
5 days ago
55-83330
55 days
30505 mariainesdff
author:mariainesdff
feat(NumberTheory/RatFunc/Ostrowski): prove Ostrowski's theorem for K(X) We prove Ostrowski's theorem for the field of rational functions `K(X)`, where `K` is any field. Co-authored-by: @xgenereux --- - [x] depends on: #30404 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-number-theory
label:t-algebra$
338/13 Mathlib.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/FieldTheory/RatFunc/Degree.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean 5 38 ['MichaelStollBayreuth', 'alreadydone', 'github-actions', 'mariainesdff', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
5-68709
5 days ago
5-68709
5 days ago
8-19984
8 days
34154 euprunin
author:euprunin
chore: golf using `grind` (and add four supporting `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`: 311 ms before, 284 ms after 🎉 * `UV.compression_self`: 29 ms before, 19 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 🎉 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/30 Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Combinatorics/SetFamily/Compression/UV.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean 6 13 ['Parcly-Taxel', 'euprunin', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'tb65536'] kim-em
assignee:kim-em
5-60839
5 days ago
5-80017
5 days ago
33-84135
33 days
35740 LLaurance
author:LLaurance
chore(SimpleGraph/Basic): clean up and shorten Clean up and shorten some proofs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 43/50 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 1 ['github-actions'] nobody
5-42783
5 days ago
5-43044
5 days ago
5-42670
5 days
34760 astrainfinita
author:astrainfinita
chore: use `RelHomClass` in `IsChain.image` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 24/24 Counterexamples/AharoniKorman.lean,Mathlib/Order/Height.lean,Mathlib/Order/Preorder/Chain.lean 3 5 ['Vierkantor', 'astrainfinita', 'github-actions'] Vierkantor
assignee:Vierkantor
5-36145
5 days ago
5-33797
5 days ago
15-49131
15 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. When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 22/0 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 2 ['github-actions'] urkud
assignee:urkud
5-34508
5 days ago
8-43525
8 days ago
14-74703
14 days
35643 chrisflav
author:chrisflav
chore(Algebra): make `TensorProduct.equivOfCompatibleSMul` more linear --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
61/46 Mathlib/LinearAlgebra/TensorProduct/Associator.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Coalgebra/TensorProduct.lean,Mathlib/RingTheory/LinearDisjoint.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Smooth/Fiber.lean,Mathlib/RingTheory/TensorProduct/Maps.lean,Mathlib/RingTheory/TensorProduct/Nontrivial.lean 8 1 ['github-actions'] kim-em
assignee:kim-em
5-34504
5 days ago
8-77174
8 days ago
8-76800
8 days
31595 astrainfinita
author:astrainfinita
chore: redefine `Ideal.IsPrime` Redefine `Ideal.IsPrime` to make it correct for non-commutative cases --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
333/100 Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Noetherian.lean,Mathlib/RingTheory/Ideal/Oka.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Ideal/Prime.lean,Mathlib/RingTheory/Ideal/Prod.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IsPrimary.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/Valuation/Basic.lean 22 32 ['alreadydone', 'artie2000', 'astrainfinita', 'erdOne', 'github-actions', 'leanprover-bot', 'leanprover-radar', 'mathlib4-merge-conflict-bot'] alreadydone
assignee:alreadydone
5-23397
5 days ago
5-26025
5 days ago
33-76370
33 days
35530 xroblot
author:xroblot
feat(RingTheory): add the class `HasFiniteQuotients` As discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Rings.20with.20finite.20quotients/with/574554760), this PR add the class of commutative rings `R` such that, for all nonzero ideals `I` of `R`, the quotient `R ⧸ I` is finite and prove several results including: - If `R` has finite quotients then it has dimension ≤ 1 - If `R` has finite quotients then it is a Noetherian ring - Assume that `R` a finite quotients and that `S` is a domain and a finite `R`-module. Then `S` has finite quotients - A domain that is also a finite `ℤ`-module has finite quotients. Also add two instances: - Assume that `S` is a finite `R`-module and that `S ⧸ J` is a `(R ⧸ I)`-module with `I`, resp. `J`, an ideal of `R`, resp. `S`, then `S ⧸ J` is a finite `(R ⧸ I)`-module. - For nonzero `n` , `ℤ ⧸ Ideal.span {n}` is finite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 121/0 Mathlib.lean,Mathlib/Data/ZMod/QuotientRing.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/HasFiniteQuotients.lean 5 4 ['github-actions', 'leanprover-radar', 'tb65536', 'xroblot'] chrisflav
assignee:chrisflav
5-6153
5 days ago
unknown
unknown
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 171/0 Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sets/Closeds.lean 4 54 ['Raph-DG', 'chrisflav', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] erdOne
assignee:erdOne
5-2458
5 days ago
5-1842
5 days ago
41-25444
41 days
33780 ooovi
author:ooovi
feat(Geometry/Convex/Cone): lineality space of pointed cones Define the lineality space `PointedCone.lineal` as the submodule `C ⊓ -C`. Prove that it is the largest submodule of the cone, which is sometimes used as an alternative definition. Co-authored-by: Martin Winter --- dependency of #33664 - [x] depends on #33761 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 42/1 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 19 ['artie2000', 'eric-wieser', 'github-actions', 'martinwintermath', 'mathlib4-merge-conflict-bot', 'ooovi', 'vihdzp'] nobody
4-80267
4 days ago
4-82892
4 days ago
16-25758
16 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$
53/0 Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 1 4 ['copilot-pull-request-reviewer', 'github-actions'] kim-em
assignee:kim-em
4-70499
4 days ago
4-69208
4 days ago
15-61276
15 days
35534 xgenereux
author:xgenereux
feat(Torsion/Basic): Add a few convenient lemmas for torsion submodules This PR adds a few convenient lemmas in Torsion/Basic. In particular, it adds: - A version of `torsionBySet_span_singleton_eq` for Ideals. These two are added to the simp set. - Show two instances of `isTorsionBy`/`isTorsionBySet` being `IsTorsion` in the form of `torsionBy_isTorsion_nonZeroDivisor` and `torsionBySet_ideal_isTorsion_of_noZeroDivisors`. - Add a version of `iSup_torsionBySet_ideal_eq_torsionBySet_iInf` and `supIndep_torsionBySet_ideal` for `sup` instead of `iSup`. Note: To go from `iSup` to `sup` I need to talk about `Fin 2` which requires `Finset.univ_fin2` that is in Mathlib but in a weird place. I just put it as a have in my proof. Note2: one could also use `{P,Q}` and `id` instead of the map from `Fin 2` but that makes the proof of `disjoint_torsionBySet_ideal` inconvenient. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
30/0 Mathlib/Algebra/Module/Torsion/Basic.lean 1 5 ['github-actions', 'joelriou', 'xgenereux'] joelriou
assignee:joelriou
4-68024
4 days ago
4-67204
4 days ago
11-59729
11 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 file-removed maintainer-merge 127/3 Mathlib.lean,Mathlib/Probability/Distributions/Poisson/Basic.lean,Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean,Mathlib/Probability/ProbabilityMassFunction/Binomial.lean,docs/1000.yaml 5 24 ['EtienneC30', 'github-actions', 'vihdzp'] EtienneC30
assignee:EtienneC30
4-63727
4 days ago
4-62986
4 days ago
38-31803
38 days
35821 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice): `sInf s ≤ sSup t` for `(s ∩ t).Nonempty` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 27/1 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean 3 1 ['github-actions'] nobody
4-63579
4 days ago
4-60673
4 days ago
4-60299
4 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 maintainer-merge 57/0 Mathlib.lean,Mathlib/Topology/Algebra/Group/Extension.lean 2 3 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
4-52811
4 days ago
20-56326
20 days ago
20-78172
20 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$
170/6 Mathlib/RepresentationTheory/Character.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RepresentationTheory/Irreducible.lean 4 8 ['github-actions', 'ocfnash', 'stepan2698-cpu'] ocfnash
assignee:ocfnash
4-49644
4 days ago
4-49644
4 days ago
20-30383
20 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'] kmill
assignee:kmill
4-34520
4 days ago
21-57518
21 days ago
21-57144
21 days
35652 dennj
author:dennj
feat(LinearAlgebra/Matrix): add `Matrix.mul_eq_smul_one_symm` ## Summary - Add `Matrix.mul_eq_smul_one_symm`: if `M * N = c • 1` and `det M ≠ 0`, then `N * M = c • 1` - A scalar generalisation of `mul_eq_one_symm` (the `c = 1` case) to arbitrary scalars, requiring `IsDomain` and `det M ≠ 0` - The proof uses the adjugate identity `adjugate M * M = det M • 1` to derive `det M • (N * M) = det M • (c • 1)`, then cancels `det M` via `mul_left_cancel₀` Theorem imported from: https://github.com/Latinum-Agentic-Commerce/AlgebraicDesignTheory t-algebra new-contributor
label:t-algebra$
28/0 Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean 1 2 ['eric-wieser', 'github-actions'] joelriou
assignee:joelriou
4-34516
4 days ago
8-55516
8 days ago
8-55142
8 days
35654 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 (differences <30 ms considered measurement noise): * `CochainComplex.HomComplex.mem_coboundaries_iff`: unchanged 🎉 * `integral_cos_mul_complex`: unchanged 🎉 * `List.next_getLast_cons`: unchanged 🎉 * `foldl_argAux_mem`: unchanged 🎉 * `Equiv.Perm.support_swap`: unchanged 🎉 * `Fermat42.mul`: unchanged 🎉 * `Filter.high_scores`: 155 ms before, 108 ms after 🎉 * `IocProdIoc_preimage`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. 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/) 11/65 Mathlib/Algebra/Homology/HomotopyCategory/HomComplexCohomology.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/MinMax.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/NumberTheory/FLT/Four.lean,Mathlib/Order/Filter/AtTopBot/Finite.lean,Mathlib/Probability/Kernel/IonescuTulcea/Maps.lean 8 3 ['euprunin', 'github-actions', 'vihdzp'] kex-y
assignee:kex-y
4-34515
4 days ago
8-45751
8 days ago
8-48067
8 days
35662 FrankieeW
author:FrankieeW
feat(NumberTheory/Zsqrtd): add Archimedean instance via le_arch This PR follows a suggestion made in #35606 , #35481 - add `Zsqrtd.le_arch_smul` in `Mathlib/NumberTheory/Zsqrtd/Basic.lean` - use it to provide `instance : Archimedean (ℤ√d)` in the `Nonsquare` section - refactor the proof using symmetry to reduce duplication while keeping checks clean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 43/2 Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean 2 6 ['FrankieeW', 'github-actions', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
4-34513
4 days ago
7-62642
7 days ago
8-36518
8 days
35683 gasparattila
author:gasparattila
fix(Tactic/FunProp): detect `Continuous.subtype_mk` as compositional This PR changes `fun_prop` to detect some theorems involving dependent types, such as `Continous.subtype_mk` to be in compositional form. This lets `fun_prop` solve goals such as `Continuous fun x => (⟨x, trivial⟩ : {x : ℝ // True})`. --- These theorems become compositional: `Continuous.subtype_mk`, `Topology.IsEmbedding.inclusion`, `Topology.IsOpenEmbedding.inclusion`, `Topology.IsClosedEmbedding.inclusion`, `Measurable.subtype_mk`, `Measurable.imp`, `Path.symm_continuous_family`, `Continuous.upperHalfPlaneMk` These theorems become simple: `hasFDerivAt_prodMk_left`, `hasFDerivAt_prodMk_right`, `contDiff_prodMk_left`, `contDiff_prodMk_right` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 53/31 Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Theorems.lean,MathlibTest/fun_prop_dev.lean 4 1 ['github-actions'] JovanGerb
assignee:JovanGerb
4-34511
4 days ago
7-47202
7 days ago
7-46828
7 days
35690 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Algebra/TrivSqZeroExt): the canonical ideal has square zero - Define `TrivSqZeroExt.kerIdeal`: the canonical ideal of `TrivSqZeroExt R M` - Prove `TrivSqZero.sqZero`: this ideal has square zero. co-authored with @mariainesdff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
29/1 Mathlib/Algebra/TrivSqZeroExt.lean 1 1 ['github-actions'] ocfnash
assignee:ocfnash
4-34511
4 days ago
7-55303
7 days ago
7-54929
7 days
35573 antisubnoous
author:antisubnoous
feat(NumberTheory/Chebyshev): express the Chebyshev theta function in terms of the prime counting function This is a sibling theorem to Chebyshev.primeCounting_eq_theta_div_log_add_integral. --- This is my first mathlib4 commit. I am working through some exercises and results in Apostol's ANT book as a means to practice Lean, and this result seemed like an opportunity to practice the mechanics of contributing to Mathlib because the new theorem mirrors closely the sibling theorem above (both appear in Apostol Theorem 4.3). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 36/1 Mathlib/NumberTheory/Chebyshev.lean 1 2 ['github-actions'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
4-29799
4 days ago
4-28180
4 days ago
10-64561
10 days
34507 metakunt
author:metakunt
feat(NumberTheory/AKSPrimality): Adds the AKS primality test Adds the completed proof for the AKS primality test. Everything except the final theorem is marked private as it's only needed for the final proof. Also everything except the final theorem is namespaced with AKS. ---- Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Aks.20primality.20Theorem.206.2E1.20Claim.20.28i.29.20proven t-number-theory 653/0 Mathlib.lean,Mathlib/NumberTheory/AKSPrimality.lean 2 28 ['github-actions', 'jcommelin', 'kim-em', 'metakunt', 'vihdzp'] kim-em
assignee:kim-em
4-17251
4 days ago
4-16634
4 days ago
7-84536
7 days
35713 Parcly-Taxel
author:Parcly-Taxel
feat: Bird–Wadler duality theorems Forms of these three theorems already exist in mathlib and the Lean standard library, but they are scattered about. Bring them together in one file, deprecating the _ad hoc_ names for the first and second theorems. t-data 167/82 Mathlib.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/BirdWadler.lean,docs/references.bib 4 1 ['github-actions'] nobody
4-16195
4 days ago
4-13281
4 days ago
6-72387
6 days
35656 euprunin
author:euprunin
chore(ModelTheory): golf proofs This PR removes unused `have`/`haveI`/`let`/`letI` calls. 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 <30 ms considered measurement noise): * `FirstOrder.Field.realize_genericMonicPolyHasRoot`: unchanged 🎉 * `FirstOrder.Language.exists_cg_is_age_of`: unchanged 🎉 * `FirstOrder.Language.Theory.models_formula_iff_onTheory_models_equivSentence`: unchanged 🎉 * `FirstOrder.Language.Sentence.realize_cardGe`: unchanged 🎉 * `FirstOrder.Language.Ultraproduct.boundedFormula_realize_cast`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. 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-logic 3/16 Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Satisfiability.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Ultraproducts.lean 5 6 ['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] nobody
4-14182
4 days ago
7-40912
7 days ago
8-44975
8 days
35677 euprunin
author:euprunin
chore(SetTheory): golf proofs This PR removes unused `have`/`haveI`/`let`/`letI` calls + some small similar cleanups. 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 <30 ms considered measurement noise): * `Cardinal.mul_eq_self`: unchanged 🎉 * `Cardinal.succ_natCast`: unchanged 🎉 * `Ordinal.exists_fundamental_sequence`: unchanged 🎉 * `Cardinal.mk_subtype_le_of_countable_eventually_mem`: unchanged 🎉 * `Nat.card_image_of_injOn`: unchanged 🎉 * `mul_le_of_limit_aux`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. 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-set-theory 2/11 Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/CountableCover.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/ZFC/PSet.lean 7 4 ['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] nobody
4-14074
4 days ago
8-7217
8 days ago
8-6843
8 days
35552 vihdzp
author:vihdzp
chore(SetTheory/Ordinal/Basic): remove `backward.privateInPublic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory tech debt 7/27 Mathlib/SetTheory/Ordinal/Basic.lean 1 1 ['github-actions'] nobody
4-7072
4 days ago
4-5537
4 days ago
11-33762
11 days
35853 vihdzp
author:vihdzp
chore(SetTheory/Ordinal): deprecate more theorems on `succ` --- - [x] depends on: #35844 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 39/37 Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/SetTheory/Ordinal/Topology.lean 9 2 ['github-actions', 'mathlib-dependent-issues'] nobody
4-1237
4 days ago
3-86095
3 days ago
3-85818
3 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 maintainer-merge 16/14 Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/CategoryTheory/Bicategory/Kan/HasKan.lean,Mathlib/CategoryTheory/Bicategory/Kan/IsKan.lean 3 13 ['dagurtomas', 'github-actions', 'harahu', 'joelriou', 'robin-carlier'] joelriou
assignee:joelriou
4-697
4 days ago
3-86300
3 days ago
18-71716
18 days
35084 edegeltje
author:edegeltje
feat(Combinatorics/SimpleGraph): The Cayley graph for structures with `Mul`/`Add` This pr: - adds the definition `SimpleGraph.mulCayley`, where `x` is adjacent to a distinct `y` when there is `g` such that `x * g = y` or `x = y * g`, - proves various lemmas about the above, - adds/proves the additive versions of all of the above 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 27 ['SnirBroshi', 'edegeltje', 'github-actions', 'vihdzp', 'vlad902'] nobody
3-79990
3 days ago
3-79456
3 days ago
20-65947
20 days
35865 vihdzp
author:vihdzp
chore: review `Cardinal.ord` API This PR does the following: - Mark `Cardinal.ord` as no expose. - Prove the defining property `gciOrdCard` earlier. - Deprecate the unused `ord.orderEmbedding` (it simply restates that the function is strictly monotonic). - Rename `ord_nat` → `ord_natCast`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 45/39 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean 4 1 ['github-actions'] nobody
3-78069
3 days ago
3-76516
3 days ago
3-76142
3 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 maintainer-merge 815/0 Mathlib.lean,Mathlib/RingTheory/Coalgebra/CoassocSimps.lean,Mathlib/Tactic/Attr/Register.lean,MathlibTest/RingTheory/CoassocSimps.lean 4 22 ['erdOne', 'github-actions', 'joneugster', 'riccardobrasca'] joneugster and mattrobball
assignee:joneugster assignee:mattrobball
3-76564
3 days ago
11-64191
11 days ago
28-83204
28 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 46/0 Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/LanguageMap.lean 2 7 ['Citronhat', 'NoneMore', 'fpvandoorn', 'github-actions'] fpvandoorn
assignee:fpvandoorn
3-75657
3 days ago
3-75181
3 days ago
59-81323
59 days
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 5 ['BryceT233', 'WenrongZou', 'github-actions'] mariainesdff
assignee:mariainesdff
3-75252
3 days ago
14-8770
14 days ago
14-8396
14 days
35415 joneugster
author:joneugster
feat(Cache): enable partial cache in downstream projects Migrated to fork from: #21238. Add features to `cache` and cleanup code: * enable partial cache retrieval in downstream projects: `lake exe cache get MyProject.Basic` downloads only the relevant cache to build `MyProject/Basic.lean` --- - [x] depends on: #21834 ### Notes: - replaces: #21195 - should address: #8767 - should address: #20568 ### Completed: - [x] depends on: #21632 - [x] ~~depends on: #21663~~ - [x] depends on: #21666 - [x] depends on: #21701 - [x] depends on: #21703 - [x] depends on: #21704 - [x] depends on: #21705 - [x] depends on: #21707 - [x] depends on: #21711 - [x] depends on: #21750 - [x] depends on: #21815 - [x] depends on: #21816 - [x] depends on: #21817 - [x] depends on: #21818 - [x] depends on: #21822 - [x] depends on: #21830 - #21848 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI t-meta 34/15 Cache/Hashing.lean,Cache/IO.lean,Cache/Main.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-71639
3 days ago
3-71126
3 days ago
3-70752
3 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 (`powerset_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 81/0 Mathlib/Data/List/Perm/Subperm.lean,Mathlib/Data/List/Sublists.lean,Mathlib/Data/Multiset/Powerset.lean 3 28 ['MixedMatched', 'eric-wieser', 'github-actions', 'joneugster', 'vihdzp'] joneugster
assignee:joneugster
3-69926
3 days ago
10-19977
10 days ago
10-61865
10 days
34583 adomani
author:adomani
feat: basic properties of subnormal subgroups This is a follow up to #34284. Co-authored-by: Inna Capdeboscq --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-group-theory 107/3 Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/GroupTheory/IsSubnormal.lean 3 38 ['LLaurance', 'adomani', 'github-actions', 'tb65536'] mattrobball
assignee:mattrobball
3-67763
3 days ago
3-66806
3 days ago
19-41737
19 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$
11/1 Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 2 4 ['dagurtomas', 'github-actions', 'tb65536'] dagurtomas
assignee:dagurtomas
3-67543
3 days ago
3-67543
3 days ago
16-81605
16 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 524/0 Mathlib.lean,Mathlib/Analysis/Normed/Module/Bases.lean,docs/references.bib 3 181 ['Ruben-VandeVelde', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'mike1729', 'sgouezel', 'themathqueen'] sgouezel
assignee:sgouezel
3-66947
3 days ago
3-66954
3 days ago
22-52292
22 days
35653 pepamontero
author:pepamontero
feat: add ChartedSpace structure on orbit space feat: add ChartedSpace structure on orbit space Add topological preliminaries for properly discontinuous group actions, and use them to equip the orbit space `orbitRel.Quotient G M` with a `ChartedSpace` structure. In particular: - Show that the quotient map `Quotient.mk _ : M → orbitRel.Quotient G M` is a covering map and hence a local homeomorphism. - Construct chosen local inverses of the quotient map and establish properties over them. - Define a `ChartedSpace` instance on the quotient by composing these local inverses with charts of M. This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it. --- new-contributor t-differential-geometry 186/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/OrbitSpace.lean,Mathlib/Topology/Algebra/OrbitSpace.lean 3 2 ['github-actions'] grunweg
assignee:grunweg
3-65806
3 days ago
8-52913
8 days ago
8-52539
8 days
35608 BoltonBailey
author:BoltonBailey
chore(Computability): move TM files to a single folder This PR takes files relevant to Turing machines and moves them to a single folder for better organization. In the process, we do some renaming of these files * We remove the "TM" from the front of these files, as it's now redundant. * TuringMachine.lean --> TuringMachine/StackMachine.lean * (really the key difference between the TM2 model presented in this file, and the TM1 model from the previous, is the introduction of stacks instead of tapes) I also remove `EvalsTo` and friends from TuringMachine.Computable, as these in #33291 were moved out of the TM namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability file-removed 21/58 Mathlib.lean,Mathlib/Computability/StateTransition.lean,Mathlib/Computability/TuringMachine/Computable.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Computability/TuringMachine/PostTuringMachine.lean,Mathlib/Computability/TuringMachine/StackMachine.lean,Mathlib/Computability/TuringMachine/Tape.lean,Mathlib/Computability/TuringMachine/ToPartrec.lean 8 3 ['BoltonBailey', 'github-actions', 'mathlib-merge-conflicts'] nobody
3-56325
3 days ago
3-55717
3 days ago
9-17785
9 days
35630 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): relate `dropLast` and `concat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 8/0 Mathlib/Data/List/Basic.lean 1 4 ['SnirBroshi', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
3-49249
3 days ago
3-56458
3 days ago
9-389
9 days
35830 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Data/Nat/Choose/Plurinomial): plurinomial coefficients Define the multinomial coefficients, a variant of `Nat.multinomial`. - `Multiset.plurinomial`. Given a multiset `m` of natural numbers, `m.plurinomial` is the multinomial coefficient defined by (m.sum) ! / ∏ i ∈ m, m i !. As an example, `Multiset.plurinomial {1, 2, 2} = 30`. This is the exponent of $x y^2 z^2$ in $(x+y+z)^5$. This should not be confused with the existing `Multiset.multinomial` which gives a different answer, for example, `Multiset.multinomial {1, 2, 2} = 3`. We chose the name “plurinomial” by changing the Greek root “multi” to its Latine version “pluri”. - `Multiset.plurinomial_cons` proves that `(x ::ₘ m).plurinomial = Nat.choose (x + m.sum) x * m.plurinomial` - `Multiset.plurinomial_add` proves that `(m + m').plurinomial = Nat.choose (m + m').sum m.sum * m.plurinomial * m'.plurinomial` co-authored with @mariainesdff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 179/20 Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Data/List/ToFinsupp.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean 4 9 ['AntoineChambert-Loir', 'github-actions', 'vihdzp'] nobody
3-47062
3 days ago
3-46352
3 days ago
3-79260
3 days
35857 AlexeyMilovanov
author:AlexeyMilovanov
feat(Logic.Equiv.BijectiveBase2): add bijective base-2 numeration This PR introduces a formalization of the bijective base-2 numeration system. Unlike standard binary representation, bijective base-2 avoids the "leading zeros" problem, providing a strict mathematical bijection between natural numbers (`ℕ`) and lists of booleans (`List Bool`). **Main additions:** * `Equiv.BijectiveBase2.toBits`: Encodes `ℕ` to `List Bool`. * `Equiv.BijectiveBase2.ofBits`: Decodes `List Bool` to `ℕ`. * `equivBijectiveBase2`: The formal `ℕ ≃ List Bool` equivalence. *(Note: This replaces my previously closed PR to avoid the terminology clash between "Dyadic" and dyadic rationals. The namespace and definitions have been updated accordingly).* *(Note: Used AI to assist with standardizing proof structures).* t-logic new-contributor 95/0 Mathlib.lean,Mathlib/Logic/Equiv/ListNatBijective.lean 2 4 ['AlexeyMilovanov', 'SnirBroshi', 'github-actions'] nobody
3-46640
3 days ago
3-47984
3 days ago
3-53963
3 days
35776 IvanRenison
author:IvanRenison
feat(Combinatorics): define `HasAdj` for capturing the common structure of different kinds of (simple) graphs We add a vertex set considering that we want to refactor `SimpleGraph` to also use one --- This pr replaces #4127 Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 101/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/HasAdj.lean,Mathlib/Combinatorics/HasAdj/Basic.lean,Mathlib/Combinatorics/SimpleGraph/HasAdj.lean 4 1 ['github-actions'] nobody
3-44720
3 days ago
3-44720
3 days ago
3-44346
3 days
35822 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice): `sSup (f '' s) ≤ f (sSup s)` --- #35260 will add `iSup` versions. Future work: `Antitone`, `MonotoneOn`, `AntitoneOn` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 39/1 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean 2 5 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
3-41054
3 days ago
4-60246
4 days ago
4-59872
4 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/) t-algebra
label:t-algebra$
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 9 ['Rob23oba', 'eric-wieser', 'github-actions', 'joneugster', 'loefflerd'] thorimur
assignee:thorimur
3-40275
3 days ago
13-66729
13 days ago
14-25156
14 days
34742 Brian-Nugent
author:Brian-Nugent
feat(SheafCohomology): add API for Sheaf Cohomology Defines the long exact sequence on cohomology associated to a short exact sequence of sheaves `H.longSequence`. Also defines `H.equiv₀`, the additive equivalence between `H F 0` and `((sheafSections J AddCommGrpCat).obj (op T)).obj F` when the category has a terminal object `T`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-category-theory 76/2 Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/CategoryTheory/Sites/Abelian.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/Basic.lean 3 16 ['Brian-Nugent', 'adamtopaz', 'dagurtomas', 'github-actions', 'joneugster'] adamtopaz
assignee:adamtopaz
3-39244
3 days ago
3-38522
3 days ago
21-38979
21 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'] kmill
assignee:kmill
3-34532
3 days ago
17-8681
17 days ago
17-74099
17 days
35540 tb65536
author:tb65536
feat(GroupTheory/ResiduallyFinite): define residually finite groups This PR defines residually finite groups, provides some basic API, and gives the connection with profinite completion. Some to_additivizing is still waiting on #34784. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
91/1 Mathlib.lean,Mathlib/GroupTheory/FiniteIndexNormalSubgroup.lean,Mathlib/GroupTheory/ResiduallyFinite.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean 4 1 ['github-actions'] mattrobball
assignee:mattrobball
3-34530
3 days ago
11-53726
11 days ago
11-53352
11 days
35592 SnirBroshi
author:SnirBroshi
chore(Order/Defs/Unbundled): deprecate `def Transitive` in favor of `class IsTrans` --- [`def Transitive`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#Transitive) [`class IsTrans`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#IsTrans) [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Relation.20properties.20duplication/near/544638270) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 141/110 Mathlib/Algebra/Group/Semiconj/Defs.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/List/MinMax.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/WSeq/Relation.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/Logic/Relation.lean,Mathlib/ModelTheory/Order.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/Quotient.lean,Mathlib/Order/RelClasses.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/Metrizable/Uniformity.lean 20 1 ['github-actions', 'vihdzp'] pechersky
assignee:pechersky
3-34528
3 days ago
9-47120
9 days ago
10-20347
10 days
35610 IvanRenison
author:IvanRenison
feat(Data/Fin): add several lemmas about subtraction of `Fin.{castLT, castAdd, castSucc, castPred}` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 79/0 Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/SuccPred.lean 2 3 ['github-actions', 'wwylele'] TwoFX
assignee:TwoFX
3-34526
3 days ago
8-81594
8 days ago
9-3935
9 days
35672 dennj
author:dennj
feat(RingTheory/Polynomial/Cyclotomic): vanishing sums and fiber equidistribution at primitive roots ## Summary Building on `sum_eq_zero_iff_forall_eq` from #34592, this PR adds: - `cyclotomic_prime_coeff_eq_one`: for prime `p`, all coefficients of `cyclotomic p R` equal `1`. - `eq_nsmul_cyclotomic_of_nonneg_coeff`: a nonneg-coefficient polynomial vanishing at a primitive root is a positive scalar multiple of the cyclotomic polynomial. - `card_fiber_eq_card_div`: if a function `d : A → ZMod p` satisfies `∑ ζ^(d a) = 0`, then every fiber has cardinality `|A| / p`. These results are useful for combinatorial applications involving exponential sums and equidistribution over cyclic groups. Theorems imported from: https://github.com/Latinum-Agentic-Commerce/AlgebraicDesignTheory t-ring-theory new-contributor 101/1 Mathlib/RingTheory/Polynomial/Cyclotomic/Basic.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Roots.lean 2 2 ['github-actions'] chrisflav
assignee:chrisflav
3-34524
3 days ago
8-20983
8 days ago
8-20609
8 days
35720 tb65536
author:tb65536
feat(NumberTheory/FunctionField): add instances on `FqtInfty` This PR proves the relevant instances on `FqtInfty` by locally replacing the existing valued instance `RatFunc.valuedRatFunc` coming from the ideal `X` with the required `UniformSpace` instance coming from the valuation at infinity and then deriving the relevant instances. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra
label:t-algebra$
16/9 Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/NumberTheory/FunctionField.lean 2 1 ['github-actions'] dagurtomas
assignee:dagurtomas
3-34522
3 days ago
6-62243
6 days ago
6-65232
6 days
35721 chrisflav
author:chrisflav
chore: fix delaborators for `[Comm][Semi]RingCat` and some more Since #31622 terms of type `CommRingCat` are pretty printed as `{ carrier := R, commRing := inst }`. We make it pretty print as `CommRingCat.of R` again, which was the previous behaviour. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
77/0 Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/CategoryTheory/FintypeCat.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopCommRingCat.lean 4 1 ['github-actions'] dagurtomas
assignee:dagurtomas
3-34521
3 days ago
6-64053
6 days ago
6-63679
6 days
35736 mathlib-splicebot
author:mathlib-splicebot
chore(Mathlib/Topology/Algebra/Module/LinearMap.lean): automated extraction This PR was automatically created from PR #35538 by @bilichboris via a [review comment](https://github.com/leanprover-community/mathlib4/pull/35538#discussion_r2849347321) by @j-loreaux. new-contributor t-topology 9/0 Mathlib/Topology/Algebra/Module/LinearMap.lean 1 4 ['github-actions', 'themathqueen'] ocfnash
assignee:ocfnash
3-34519
3 days ago
6-49303
6 days ago
6-48929
6 days
35628 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Maps): characterize `neighborSet` and `edgeSet` across an embedding --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 40/0 Mathlib/Combinatorics/SimpleGraph/Maps.lean 1 1 ['github-actions'] nobody
3-21370
3 days ago
3-20692
3 days ago
9-21294
9 days
35878 Parcly-Taxel
author:Parcly-Taxel
chore: use `induction` for `Quotient.induction` invocations Found through the regex `(refine|apply|exact).*Quotient.induction`. Includes the multiple-argument variants. tech debt 93/102 Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Basic.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/Combinatorics/Tiling/Tile.lean,Mathlib/Computability/Tape.lean,Mathlib/Data/Multiset/Functor.lean,Mathlib/Data/Multiset/Sym.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Quotient/Pi.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean 28 1 ['github-actions'] nobody
3-19157
3 days ago
3-16000
3 days ago
3-15626
3 days
26770 Jun2M
author:Jun2M
feat(Combinatorics/Graph): subgraph relations on `Graph` This PR creates a new file `Combinatorics/Graph/Subgraph.lean`. In it, the PR introduces a partial order on graphs by subgraph relation, defines relations `IsInducedSubgraph`, `IsSpanningSubgraph` and `IsClosedSubgraph`. Co-authored-by: Peter Nelson --- - [x] depends on: #34783 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 325/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Subgraph.lean 2 60 ['Jun2M', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] YaelDillies
assignee:YaelDillies
3-15124
3 days ago
3-16405
3 days ago
7-3259
7 days
35880 astrainfinita
author:astrainfinita
feat(Order/Defs/LinearOrder): `min_ind` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 5/0 Mathlib/Order/Defs/LinearOrder.lean 1 1 ['github-actions'] nobody
3-14992
3 days ago
3-11783
3 days ago
3-11409
3 days
35882 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/ModuleCat): API on short complex in ModuleCat Adding some API on short complex in ModuleCat, for construction and exactness. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
19/0 Mathlib/Algebra/Homology/ShortComplex/ModuleCat.lean 1 1 ['github-actions'] nobody
3-14252
3 days ago
unknown
unknown
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/18 Mathlib/NumberTheory/LucasLehmer.lean 1 14 ['eric-wieser', 'euprunin', 'github-actions', 'leanprover-radar', 'robin-carlier'] eric-wieser
assignee:eric-wieser
3-2416
3 days ago
3-2416
3 days ago
35-65155
35 days
35840 SnirBroshi
author:SnirBroshi
feat(SetTheory/Ordinal/Arithmetic): `typein (· < ·) = natCast` for `ℕ` and `Fin n` Co-authored-by: Matt Diamond --- [#Is there code for X? > `Ordinal.typein = NatCast`](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.60Ordinal.2Etypein.20.3D.20NatCast.60/with/576057726) The same statement but for ordinals exists as [Ordinal.typein_ordinal](https://leanprover-community.github.io/mathlib4_docs/Mathlib/SetTheory/Ordinal/Arithmetic.html#Ordinal.typein_ordinal). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 25/0 Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean 2 16 ['SnirBroshi', 'github-actions', 'vihdzp'] vihdzp
assignee:vihdzp
3-2324
3 days ago
3-805
3 days ago
3-85310
3 days
35886 euprunin
author:euprunin
chore: exhaustively replace `measurability`/`continuity` → `fun_prop`, `simp_all` → `simp` where possible The goal of this PR is to exhaustively replace `measurability`/`continuity` and `simp_all` with the preferred `fun_prop` and `simp` where possible. Trace profiling results (differences <30 ms considered measurement noise): * `PeriodPair.weierstrassPExcept_add`: unchanged 🎉 * `PeriodPair.derivWeierstrassPExcept_sub`: unchanged 🎉 * `PeriodPair.coeff_weierstrassPExceptSeries`: 353 ms before, 320 ms after 🎉 * `Polynomial.Chebyshev.integral_measureT`: unchanged 🎉 * `Polynomial.Chebyshev.integrable_measureT`: 513 ms before, 338 ms after 🎉 * `LinearMap.fst_prodOfFinsuppNat`: unchanged 🎉 * `Representation.leftRegular_norm_apply`: unchanged 🎉 * `ValuativeRel.isDiscrete_trivialRel`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 11/11 Mathlib/Analysis/Fourier/Convolution.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Orthogonality.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean 6 5 ['euprunin', 'github-actions', 'leanprover-radar'] nobody
2-86204
2 days ago
2-86346
2 days ago
2-86109
2 days
35716 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Connectivity): add lemmas about reachable, degree and neighbor set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 28/6 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean 1 10 ['IvanRenison', 'SnirBroshi', 'github-actions', 'vlad902'] nobody
2-81147
2 days ago
2-80542
2 days ago
6-72008
6 days
35829 IvanRenison
author:IvanRenison
refactor(Data/Last): move `Mathlib.Tactic.BicategoryLike.pairs` to `List.consecutivePairs` Moves: - Mathlib.Tactic.BicategoryLike.pairs -> List.consecutivePairs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 12/6 Mathlib/Data/List/Defs.lean,Mathlib/Tactic/Widget/StringDiagram.lean 2 5 ['IvanRenison', 'SnirBroshi', 'github-actions', 'robin-carlier'] nobody
2-81005
2 days ago
3-41856
3 days ago
4-19476
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/) t-analysis 351/24 Mathlib.lean,Mathlib/Analysis/Convex/Approximation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean 4 2 ['github-actions', 'joneugster'] nobody
2-77425
2 days ago
14-18544
14 days ago
14-18170
14 days
33878 xroblot
author:xroblot
feat(MulChar): generalize duality results on finite abelian groups to multiplicative characters --- - [x] depends on: #33792 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-number-theory 116/5 Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/MulChar/Duality.lean,Mathlib/NumberTheory/MulChar/Lemmas.lean 4 13 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536', 'xroblot'] tb65536
assignee:tb65536
2-72907
2 days ago
2-71477
2 days ago
11-63726
11 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. --- - [x] depends on: #35483 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 31/0 Mathlib/NumberTheory/RamificationInertia/Basic.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] alexjbest
assignee:alexjbest
2-72577
2 days ago
2-71925
2 days ago
13-86337
13 days
35774 astrainfinita
author:astrainfinita
chore: use `IsLUB` `IsGLB` in `ConditionallyCompleteLattice` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 142/197 Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/Data/Int/ConditionallyCompleteOrder.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Copy.lean 9 8 ['astrainfinita', 'github-actions', 'vihdzp'] nobody
2-71177
2 days ago
2-68542
2 days ago
5-54082
5 days
35098 b-mehta
author:b-mehta
feat(Analysis/Normed): relate compactness of operators to locally compact spaces --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 16/1 Mathlib/Analysis/Normed/Module/FiniteDimension.lean 1 8 ['b-mehta', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
2-69533
2 days ago
2-68562
2 days ago
7-43214
7 days
35769 SnirBroshi
author:SnirBroshi
feat(Order/WellFounded): the cardinality of a set is an upper-bound for the amount of elements before the set's mex The "mex" of a set is its minimum excluded value, see https://en.wikipedia.org/wiki/Mex_(mathematics) --- Extracted from #35669 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 19/0 Mathlib/Order/WellFounded.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Ordinal/Basic.lean 3 1 ['github-actions'] nobody
2-64849
2 days ago
2-63231
2 days ago
5-61880
5 days
35893 b-mehta
author:b-mehta
feat(Data/Nat/Choose/Lucas): add choose_mul_mul and choose_pow_mul_pow_mul modular congruence lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 32/1 Mathlib/Data/Nat/Choose/Lucas.lean 1 1 ['github-actions'] nobody
2-64148
2 days ago
2-63456
2 days ago
2-63082
2 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. t-algebra
label:t-algebra$
610/0 Archive.lean,Archive/Robbins.lean 2 1 ['github-actions'] dwrensha
assignee:dwrensha
2-62327
2 days ago
22-70673
22 days ago
23-25574
23 days
33363 BoltonBailey
author:BoltonBailey
feat: add `empty_eq_image` simp lemmas Creates new simp lemmas `empty_eq_image`, similar to existing simp lemmas, but with the LHS equality reversed, so that simp can identify these when in this form. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 26/0 Mathlib/Data/Finset/Image.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Image.lean,Mathlib/Order/Filter/Map.lean 5 7 ['BoltonBailey', 'github-actions', 'joneugster', 'urkud'] joneugster and urkud
assignee:urkud assignee:joneugster
2-57891
2 days ago
2-57891
2 days ago
32-41196
32 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 26/0 Mathlib/Analysis/Analytic/Order.lean 1 6 ['SnirBroshi', 'github-actions', 'j-loreaux', 'mkaratarakis'] j-loreaux
assignee:j-loreaux
2-55867
2 days ago
2-55115
2 days ago
16-14511
16 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 t-analysis 62/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 7 ['MichaelStollBayreuth', 'github-actions', 'mkaratarakis'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
2-55848
2 days ago
2-55129
2 days ago
15-43353
15 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 94/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 6 ['erdOne', 'github-actions', 'harahu', 'mathlib-merge-conflicts'] erdOne
assignee:erdOne
2-50184
2 days ago
2-49421
2 days ago
11-51729
11 days
35895 edegeltje
author:edegeltje
feat(CategoryTheory/Topos/Classifier): subobject classifiers, isos and equivalences this PR adds `Classifier.ofEquivalence`, `Classifier.ofIso` and `Classifier.uniqueUpToIso`, as well as accompanying lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 106/3 Mathlib/CategoryTheory/Topos/Classifier.lean 1 1 ['github-actions'] nobody
2-49949
2 days ago
2-49355
2 days ago
2-48981
2 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 28/0 Mathlib/Topology/Instances/EReal/Lemmas.lean 1 13 ['github-actions', 'j-loreaux', 'jvanwinden', 'mathlib-merge-conflicts', 'vihdzp'] j-loreaux
assignee:j-loreaux
2-49730
2 days ago
2-48369
2 days ago
6-83008
6 days
35871 edegeltje
author:edegeltje
feat(CategoryTheory/Limits): `IsPullback.mono_fst_of_mono` and similar This lemma is more convenient than going through `MorphismProperty.IsStableUnderBasechange`. We use `(inst : Mono f := by infer_instance)` instead of `[Mono f]` because on occasion, these proof arguments are not by `inferInstance`, and this design lets us more easily use the lemma in such cases. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 46/46 Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/Limits.lean 2 1 ['github-actions'] nobody
2-47611
2 days ago
3-61483
3 days ago
3-61109
3 days
35867 edegeltje
author:edegeltje
feat(CategoryTheory/Topos): Define subobject classifier for sheaf of types This PR defines `Sheaf.classifier J : Classifier (Sheaf J (Type (max u v))`, which is the last ingredient missing to sheaf categories being elementary topoi. adapted from: https://github.com/edegeltje/CwFTT/blob/591d4505390172ae70e1bc97544d293a35cc0b3f/CwFTT/Classifier/Sheaf.lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 370/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Basic.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean,Mathlib/CategoryTheory/Topos/Sheaf.lean 4 15 ['chrisflav', 'edegeltje', 'github-actions'] nobody
2-45598
2 days ago
2-44742
2 days ago
2-68883
2 days
35899 themathqueen
author:themathqueen
feat(Analysis): `extremePoints 𝕜 (closedBall 0 1) ⊆ sphere 0 1` ... in a nontrivial normed space, with equality in a nontrivial Hilbert space. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 84/0 Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/RCLike/Basic.lean 2 1 ['github-actions'] nobody
2-43342
2 days ago
2-42099
2 days ago
2-41725
2 days
35892 vlad902
author:vlad902
feat(Data): lemmas for `List.bagInter` Basic API lemmas for `List.bagInter` and correct a few misnamed lemmas. Co-authored-by: Aristotle (Harmonic) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 60/5 Mathlib/Data/List/Lattice.lean,Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/Multiset/UnionInter.lean 3 1 ['github-actions'] nobody
2-42299
2 days ago
2-39380
2 days ago
2-39006
2 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 414/1 Mathlib.lean,Mathlib/Data/Finsupp/Antidiagonal.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/Order/Filter/Cofinite.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean 8 36 ['BryceT233', 'Komyyy', 'erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] erdOne and riccardobrasca
assignee:riccardobrasca assignee:erdOne
2-37352
2 days ago
2-35038
2 days ago
45-43812
45 days
34246 staroperator
author:staroperator
feat(SetTheory/Cardinal): Δ-system lemma We prove the Δ-system lemma, which says for any regular cardinal `θ` and infinite cardinal `κ < θ`, if `∀ c < θ, c ^< κ < θ`, any `θ`-sized family of sets whose cardinalities are less than `κ` must contain a `θ`-sized Δ-system (this condition is called Δ-system property for `θ` and `κ`, noted as `Δ(θ, k)`). As a special case, `Δ(ℵ₁, ℵ₀)` ensures any uncountable family of finite sets must contain an uncountable Δ-system. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 384/0 Mathlib.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/DeltaSystem.lean,Mathlib/SetTheory/Cardinal/Pigeonhole.lean,docs/references.bib 6 1 ['github-actions'] alreadydone
assignee:alreadydone
2-34408
2 days ago
8-57995
8 days ago
8-57621
8 days
34621 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): deprecate `FreeGroup Empty ≃ Unit` using `Equiv.ofUnique`, add `Mul` suggestion using `MulEquiv.ofUnique` and add `FreeGroup α ≃* Multiplicative ℤ` feat(GroupTheory/FreeGroup/Basic): deprecate `FreeGroup Empty ≃ Unit` using `Equiv.ofUnique`, add `Mul` suggestion using `MulEquiv.ofUnique` and add `FreeGroup α ≃* Multiplicative ℤ`. Originally, the PR showed that `FreeGroup Empty ≃* Unit` and `FreeGroup α ≃* Multiplicative ℤ`. During the review process, I was asked to generalized `Unit` to any `Unique` type and `Empty` to `IsEmpty`. Through working on this, it has been realized that the pre-existing `FreeGroup Empty ≃ Unit` should be deprecated using `Equiv.ofUnique` and a multiplicative version `FreeGroup Empty ≃* Unit` can be obtained similarly using `MulEquiv.ofUnique` and there was no need to explicitly upgrade the equivalence. The title has been changed to reflect this. 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 39 ['b-mehta', 'copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'kbuzzard', 'tb65536'] riccardobrasca
assignee:riccardobrasca
2-34407
2 days ago
14-56253
14 days ago
21-59005
21 days
35528 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 (differences <20 ms considered measurement noise): * `CochainComplex.HomComplex.mem_coboundaries_iff`: <20 ms before, 43 ms after * `Affine.Simplex.Scalene.dist_ne`: unchanged 🎉 * `List.next_getLast_cons`: unchanged 🎉 * `AbsolutelyContinuousOnInterval.biUnion_uIoc_subset_of_mem_disjWithin`: unchanged 🎉 * `Filter.high_scores`: 109 ms before, 139 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/55 Mathlib/Algebra/Homology/HomotopyCategory/HomComplexCohomology.lean,Mathlib/Analysis/Normed/Affine/Simplex.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Data/List/Cycle.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/Order/Filter/AtTopBot/Finite.lean 6 1 ['github-actions', 'vihdzp'] adamtopaz
assignee:adamtopaz
2-34405
2 days ago
12-3161
12 days ago
12-2787
12 days
35559 mike1729
author:mike1729
feat(Analysis/Normed): weak-topology embedding into weak-star bidual and compactenss transfer theorem This PR refactors the double dual material and adds new results connecting the weak topology on a normed space to the weak-star topology on its bidual. ## Changes ### New file: `Analysis.Normed.Module.DoubleDual` Extracts the canonical embedding `inclusionInDoubleDual` and the bidual isometry `inclusionInDoubleDualLi` from `Analysis.Normed.Module.Dual` into a dedicated file, and adds: - `inclusionInDoubleDualWeak`: the canonical map from `WeakSpace 𝕜 X` into `WeakDual 𝕜 (StrongDual 𝕜 X)`. - `inclusionInDoubleDualWeak_isEmbedding`: this map is a topological embedding. - `inclusionInDoubleDualWeak_homeomorph`: the map as a homeomorphism onto its range. - `isCompact_closure_of_isBounded`: bounded sets whose bidual image has weak-star closure in range have weakly compact closure, via Banach–Alaoglu. ### New file: `Analysis.Normed.Module.WeakSpace` - `WeakSpace.instBornology`: norm bornology on `WeakSpace 𝕜 E`, inherited from `E`. - `WeakSpace.instT2Space`: the weak topology over `RCLike` is Hausdorff (via Hahn–Banach). ### Modified: `Analysis.Normed.Module.Dual` The double dual inclusion material is moved out; polar set results remain. References to `inclusionInDoubleDual` in `polar_closure` are replaced by `ContinuousLinearMap.apply` to avoid a dependency on the new file. --- CC: @faenuccio this may be relevant for your Goldstine formalization. t-analysis new-contributor 285/99 Mathlib.lean,Mathlib/Analysis/LocallyConvex/SeparatingDual.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Analysis/Normed/Module/WeakSpace.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean 10 15 ['github-actions', 'j-loreaux', 'mike1729'] ADedecker
assignee:ADedecker
2-34405
2 days ago
6-6697
6 days ago
10-21244
10 days
35567 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): Golfs This PR cleans up the proofs in Analysis/Normed/Module/PiTensorProduct/{InjectiveSeminorm.lean, ProjectiveSeminorm.lean} In addition, it performs the following minor structural changes: * Weaken assumptions from `NontriviallyNormedField 𝕜` to `NormedField 𝕜` where possible * The proofs showing that `projectiveSeminorm` actually defines a `Seminorm` are split off into separate lemmas. This mimics the idiom used e.g. in `Analysis.Normed.Modula.Operator.Basic` to define the operator norm. * Register a `Nonempty x.lifts` instance in PiTensorProduct.lean, to avoid creating a half-dozen local instances. This is the first in a series of three PRs with the goal to [deprecate `PiTensorProuduct.injectiveSeminorm`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798633). --- Co-authored-by: Davood H. T. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor 101/158 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean 3 10 ['github-actions', 'goliath-klein', 'leanprover-radar', 'tb65536'] sgouezel
assignee:sgouezel
2-34404
2 days ago
10-72236
10 days ago
10-71873
10 days
35745 khwilson
author:khwilson
feat(Mathlib/Analysis/Asymptotics/Defs): congr lemmas for IsBigO* This PR primarily provides two calculational lemmas that are commonly used in bounding functions. First, it provides `IsBigO*.sum_congr`. This theorem allows the user to bound each term of a (finite) sum individually. This is different than `IsBigO.sum` which requires all terms to be bound by the _same_ function. Second, it provides `IsBigO*.sum_congr'`. This theorem allows the user to bound the terms of a sum individually _when the length of the sum changes with respect to the running variable_. This is a common setup with certain techniques such as the method of the hyperbola. Note: This makes the overall length of this file go above 1500 lines. I'm happy to break it up at the request of reviewers, but that's a bigger change to the API. AI Usage: Looking up various lemma names in Google Gemini. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 92/1 Mathlib/Analysis/Asymptotics/Defs.lean 1 2 ['github-actions'] j-loreaux
assignee:j-loreaux
2-34397
2 days ago
6-26447
6 days ago
6-26073
6 days
35753 Vilin97
author:Vilin97
feat(Topology/Algebra/Order): regular grid helpers and piecewise linear interpolation ## Summary - Add `Nat.floor_div_eq_of_mem_Ico`, `mem_Ico_Nat_floor_div`, `locallyFinite_Icc_grid`, and `ContinuousOn.of_Icc_grid` to `Topology/Algebra/Order/Floor.lean`. - Add new file `Topology/Algebra/Order/PiecewiseLinear.lean` with `piecewiseLinear` and `piecewiseConst` definitions for interpolation on regular grids, along with evaluation lemmas, continuity, and right derivative. - Grid helpers are generalized over `Field K` with `FloorSemiring` and `OrderTopology`. - Piecewise definitions are generic over `Field α`; continuity/derivative results are for `ℝ`-normed spaces. ## Motivation These are used in the [forward Euler convergence proof](https://github.com/Vilin97/forward_euler) to construct piecewise linear interpolations of Euler points and prove their continuity. They are general-purpose lemmas about regular grids and piecewise interpolation that should be useful beyond this application. Follow-up PR: #35755 (forward Euler method convergence). --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was then iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code (Claude Opus 4.6). t-topology new-contributor 151/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/Floor.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 3 2 ['copilot-pull-request-reviewer', 'github-actions'] dagurtomas
assignee:dagurtomas
2-34396
2 days ago
6-4949
6 days ago
6-4857
6 days
35767 kebekus
author:kebekus
feat: asymptotics of the `logCounting` function of Value Distribution Theory If `f` is meromorphic over a field `𝕜`, show that the logarithmic counting function for the poles of `f` is asymptotically bounded if and only if `f` has only removable singularities. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 150/0 Mathlib.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean 2 1 ['github-actions'] j-loreaux
assignee:j-loreaux
2-34395
2 days ago
5-65298
5 days ago
5-64924
5 days
35771 euprunin
author:euprunin
chore: golf using `exact` The goal of this 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 <30 ms considered measurement noise): * `IsBaseChange.comp`: 132 ms before, 98 ms after 🎉 * `Cardinal.powerlt_aleph0`: unchanged 🎉 * `ONote.fastGrowing_one`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/RingTheory/IsTensorProduct.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Notation.lean 3 1 ['github-actions', 'vihdzp'] EtienneC30
assignee:EtienneC30
2-34392
2 days ago
5-62508
5 days ago
5-62134
5 days
35763 kim-em
author:kim-em
chore(scripts): make rm_set_option cache opt-in via --resume This PR changes `scripts/rm_set_option.py` so the progress cache is only used when explicitly requested via `--resume`, rather than being on by default (with `--no-resume` to disable). The previous default was unsafe: the cache only checks that the target module's own SHA256 is unchanged, so edits to upstream modules between runs would be silently ignored, causing the script to skip modules that should be reprocessed. 🤖 Prepared with Claude Code 4/4 scripts/README.md,scripts/rm_set_option.py 2 1 ['github-actions'] nobody
2-33945
2 days ago
5-79935
5 days ago
5-79561
5 days
35858 vihdzp
author:vihdzp
doc(SetTheory/Ordinal/Arithmetic): improve documentation This PR does the following: - Use better variable names in the docs (instead of just variants of the letter `o`). - Remove mentions of things defined in other files, or specify that they are defined on other files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-set-theory 14/21 Mathlib/SetTheory/Ordinal/Arithmetic.lean 1 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
2-31677
2 days ago
2-30138
2 days ago
3-32939
3 days
35905 Jun2M
author:Jun2M
feat(Combinatorics/Graph): Add definitions for small graphs (noEdge, bouquet, banana) This pull request adds new constructors and supporting lemmas for special types of graphs in the `Mathlib/Combinatorics/Graph/Basic.lean` file. It introduces: * `Graph.noEdge V`: The graph with vertex set V and empty edge set. * `Graph.bouquet v E`: The graph with vertex set {v} and edge set E, where all edges are loops at v. * `Graph.banana u v E`: The graph with vertex set {u, v} and edge set E, where all edges connect u and v. along with various properties and characterizations for these graphs. Co-authored-by: Peter Nelson [apn.uni@gmail.com](mailto:apn.uni@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 126/0 Mathlib/Combinatorics/Graph/Basic.lean 1 1 ['github-actions'] nobody
2-27062
2 days ago
2-26461
2 days ago
2-26087
2 days
35907 JJYYY-JJY
author:JJYYY-JJY
fix(Topology/Defs/Basic): preserve noncanonical topology instances in delaboration Preserve noncanonical topology instances in delaboration. Restore local instances before checking whether topology arguments can be omitted during delaboration, and print `IsOpen[t]`, `IsClosed[t]`, `closure[t]`, and `Continuous[t₁, t₂]` when the topology instances are not canonical in the current local-instance context. Previously, pretty-printing could silently drop noncanonical topology arguments, so declarations such as `LinearMap.mem_span_iff_continuous_of_finite` were rendered as if they used the default topology. Closes #33238 t-topology new-contributor 111/0 Mathlib/Topology/Defs/Basic.lean,MathlibTest/TopologyNonstandardNotation.lean 2 4 ['copilot-pull-request-reviewer', 'github-actions'] nobody
2-25197
2 days ago
2-23609
2 days ago
2-23235
2 days
35908 vihdzp
author:vihdzp
chore(FieldTheory/AbelRuffini): simpler definition of `solvableByRad` We redefine `solvableByRad F E` as the smallest intermediate field closed under n-th roots. This makes the predicate `IsSolvableByRad` redundant, and so we deprecate it. We also private/remove various auxiliary results, and change the statement of the Abel-Ruffini theorem to be about an element of the field, rather than the subtype. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
134/164 Archive/Wiedijk100Theorems/AbelRuffini.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/FieldTheory/AbelRuffini.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean 4 5 ['github-actions', 'plp127', 'vihdzp'] nobody
2-18210
2 days ago
2-17479
2 days ago
2-17781
2 days
35665 BryceT233
author:BryceT233
feat(RingTheory/AdicCompletion): introduce AdicCompletion.finsuppSum This is split from #34936 to make the review process easier. It introduces `AdicCompletion.finsuppSum`, which is a `Finsupp` version of `AdicCompletion.sum`. --- - [x] depends on: #35595 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory 93/0 Mathlib/LinearAlgebra/Finsupp/LSum.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean 2 4 ['github-actions', 'joneugster', 'mathlib-dependent-issues'] nobody
2-15814
2 days ago
2-15093
2 days ago
7-21216
7 days
35910 LLaurance
author:LLaurance
chore(Probability): remove deprecated items, shorten proofs Remove deprecated items, shorten proofs, use dot notation where possible, style --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 63/129 Mathlib/Probability/Distributions/Exponential.lean,Mathlib/Probability/Distributions/Gamma.lean,Mathlib/Probability/Distributions/Geometric.lean,Mathlib/Probability/Distributions/Pareto.lean,Mathlib/Probability/Distributions/Poisson.lean,Mathlib/Probability/Distributions/Uniform.lean 6 1 ['github-actions'] nobody
2-7717
2 days ago
2-7128
2 days ago
2-6771
2 days
35912 WenrongZou
author:WenrongZou
feat(RingTheory/FormalGroup): definition and examples of formal group --- Definition of one dimensional formal group law over commutative ring and some examples of formal group law. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 192/0 Mathlib.lean,Mathlib/RingTheory/FormalGroup/Basic.lean 2 1 ['github-actions'] nobody
1-86115
1 day ago
1-85542
1 day ago
1-85168
1 day
35539 xgenereux
author:xgenereux
feat(DedekindDomain/Factorization): add `iInf` version of `finprod_heightOneSpectrum_factorization` This PR adds an `iInf` version of `finprod_heightOneSpectrum_factorization`. This requires two lemmas: - `prod_eq_iInf_of_coprime` - An `iInf` version of `mul_eq_inf_of_coprime`. - `HeightOneSpectrum.pow_sup_pow_eq_top` - Bundled up version of `Ideal.IsMaximal.coprime_of_ne` + `Ideal.pow_sup_pow_eq_top` for `HeightOneSpectrum`. ------ I noticed that these lemmas simplify a bit the work on the Chinese remainder theorem done in the file. The last commit of this PR is this simplification. I can remove it if this is not relevant. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 73/42 Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Operations.lean 3 10 ['erdOne', 'github-actions', 'xgenereux'] chrisflav
assignee:chrisflav
1-84562
1 day ago
1-82860
1 day ago
11-6877
11 days
34938 peabrainiac
author:peabrainiac
feat(Geometry/Manifold): interior and boundary are preserved by (local) diffeomorphisms If `f` is a local diffeomorphism at `x`, `f x` is an interior point iff `x` is. We prove this and a bunch of corollaries, in particular that `BoundarylessManifold` is invariant under diffeomorphisms which we need for subsequent work. --- - [x] depends on: #33189 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 133/5 Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean 2 8 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] nobody
1-82596
1 day ago
2-23032
2 days ago
2-22658
2 days
35705 jdhart81
author:jdhart81
feat(Data/ENNReal, Probability/Independence): division decomposition and self-independence Two general-purpose lemmas extracted from a formal verification of "The Intelligence Bound" (Hart 2025). --- ### New lemmas - `ENNReal.div_eq_div_mul_div`: Division decomposition `a / c = a / b * (b / c)` when `b ≠ 0` and `b ≠ ⊤`. Added to `Mathlib.Data.ENNReal.Inv`. - `IndepFun.of_self`: If `Y` is independent of itself under a probability measure, then `X` and `Y` are independent. Self-independence implies `Y` is a.e. constant. Added to `Mathlib.Probability.Independence.Basic`. ### Context These lemmas arose in formalizing information-theoretic results where: - The ENNReal division identity is needed for decomposing rate expressions (limsup of ratios) - The self-independence result bridges entropy = 0 and measure-theoretic independence ### References - Formal verification: https://github.com/jdhart81/intelligence-bound-lean - Paper: "The Intelligence Bound" (Hart 2025) new-contributor t-data 47/0 Mathlib/Data/ENNReal/Inv.lean,Mathlib/Probability/Independence/Basic.lean 2 10 ['SnirBroshi', 'github-actions', 'jdhart81', 'joneugster', 'kbuzzard'] nobody
1-79364
1 day ago
2-74524
2 days ago
6-32589
6 days
34477 spanning-tree
author:spanning-tree
refactor(Order): make CompletePartialOrder extend OrderBot Make `CompletePartialOrder` extend `OrderBot`, and add a constructor `completePartialOrderOfLubOfDirected`. Previously, `CompletePartialOrder` had an implicit bottom element but did not extend OrderBot explicitly. Breaking change: `CompletePartialOrder` instances must provide `⊥` and `bot_le`, or use the constructor. See discussion in [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20complete.20partial.20order.20and.20domain.20theory.20formalization). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 15/1 Mathlib/Order/CompletePartialOrder.lean 1 3 ['Citronhat', 'github-actions', 'mathlib-merge-conflicts'] pechersky
assignee:pechersky
1-73799
1 day ago
1-73198
1 day ago
22-44061
22 days
35921 grunweg
author:grunweg
chore: remove some superfluous parens Found by manually auditing the output of regex-searching for '\([A-Za-z0-9_][A-Za-z0-9_]+\)'. Most results are false positives (such as, documentation or export statements), a few are more interesting. Not exhaustive, I looked at perhaps a fifth or a tenth of all results. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
14/14 Counterexamples/AharoniKorman.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/BigOperators.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Lie/Semisimple/Lemmas.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean 11 1 ['github-actions'] nobody
1-68788
1 day ago
1-66542
1 day ago
1-66168
1 day
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 680/0 Mathlib.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 3 200 ['github-actions', 'grunweg', 'idontgetoutmuch'] grunweg
assignee:grunweg
1-66957
1 day ago
1-66230
1 day ago
16-5991
16 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 11 ['Xxxjdjdid', 'banrovegrie', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] kim-em
assignee:kim-em
1-65403
1 day ago
24-12517
24 days ago
25-64597
25 days
35916 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra): `IsIdempotentElem a ↔ spectrum R a ⊆ {0, 1}` ... also adds a tfae for `IsStarProjection` in C*-algebras and that if `star x * x` is idempotent then so is `x * star x`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis large-import 58/4 Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/Projection.lean 3 2 ['github-actions', 'themathqueen'] nobody
1-60269
1 day ago
1-62051
1 day ago
1-73642
1 day
30339 grunweg
author:grunweg
feat: extend a tangent vector for a locally smooth vector field Given a vector bundle `V` over `M` and a vector `X` in the fibre `E x` some point `x`, construct a section of `V` which is smooth near `x` and has value `X` at `x`. This will be used to prove the tensoriality of covariant derivatives. From the path towards geodesics and the Levi-Civita connection. Co-authored-by: Patrick Massot [patrickmassot@free.fr](mailto:patrickmassot@free.fr) --- Open questions I'd like a second opinion on: - should this definition be generalised to any local frame (on some set `U ∋ x`)? this would be easy; at the moment, I don't see how we would need that - should the new definition be namespaced, e.g. in the Trivialization namespace? - order of the explicit arguments: first e then b, or the other way around? might be resolved by the previous point - [x] depends on: #30083 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 95/3 Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean 1 8 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'ocfnash'] ocfnash
assignee:ocfnash
1-58816
1 day ago
1-58868
1 day ago
1-60673
1 day
29982 hrmacbeth
author:hrmacbeth
feat: new `isolate` tactic This PR adds a new tactic, `isolate`, which "solves for x" in an equation or relation. For example: ```lean example (a b : ℝ) (f : ℝ → ℝ) : 5 * f a - 3 < b := by isolate f a -- new goal: `⊢ f a < (b + 3) / 5` ``` The `isolate` tactic may generate side goals, if these are necessary to justify the transformation. The tactic will attempt to justify such side goals using `positivity` (as in the above example), unification, or type class inference, but if unsuccessful will present them to the user. For example: ```lean example (a b c : ℝ) (f : ℝ → ℝ) : c * f a - 3 < b := by isolate f a -- new goal: `⊢ f a < (b + 3) / c` -- second (side) new goal: `⊢ 0 < c` ``` The `isolate` tactic is extensible. Coverage may be extended to new relations and new operations-to-be-undone by tagging appropriate lemmas with the new `@[isolate]` attribute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 943/1 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Isolate.lean,Mathlib/Tactic/Isolate/Core.lean,Mathlib/Tactic/Isolate/Tagging.lean,Mathlib/Tactic/Relation/Symm.lean,MathlibTest/Isolate/Heavyweight.lean,MathlibTest/Isolate/Lightweight.lean,scripts/noshake.json 12 45 ['JovanGerb', 'PatrickMassot', 'Vierkantor', 'github-actions', 'hrmacbeth', 'kim-em', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
1-54681
1 day ago
1-54681
1 day ago
50-41557
50 days
27274 peabrainiac
author:peabrainiac
feat(Geometry/Diffeology): continuous diffeologies & D-topology-lemmas Introduces the continuous diffeology on topological spaces and the Galois connection between it and the D-topology, and then uses it to prove a few more lemmas about the D-topology. --- Aside from being useful for defining a right adjoint of the D-topology functor later, this is a prerequisite for correctly defining coinduced diffeologies (namely in such a way that the D-topology is defeq to the coinduced topology) and thus also for most constructions of diffeological spaces. - [x] depends on: #26973 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 153/0 Mathlib.lean,Mathlib/Geometry/Diffeology/Continuous.lean 2 4 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] ocfnash
assignee:ocfnash
1-51127
1 day ago
3-15100
3 days ago
3-15508
3 days
35834 homeowmorphism
author:homeowmorphism
feat(Mathlib/GroupTheory/PresentedGroup): every group has a presentation We show that every group has a presentation defined by taking the free group with all of the group elements as the generators, and defining the relations as the kernel of the induced subjective homomorphism from that free group to the group itself. Use of AI: This has been vibe-coded with GPT-Codex-5.3, was updated through review, and was double-checked by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-group-theory large-import 29/1 Mathlib/GroupTheory/PresentedGroup.lean 1 12 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-bors', 'plp127', 'tb65536'] nobody
1-46086
1 day ago
1-76746
1 day ago
1-76372
1 day
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 535/0 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/Instances/Graph.lean,Mathlib/Topology/Constructions/Graph.lean 4 64 ['botbaki-review', 'github-actions', 'grunweg', 'michaellee94', 'ocfnash'] ocfnash
assignee:ocfnash
1-44469
1 day ago
1-43864
1 day ago
14-44369
14 days
35639 vihdzp
author:vihdzp
chore(Order/SuccPred/Limit): use `to_dual` on everything that was missing --- - [x] depends on: #34882 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge 36/135 Mathlib/Data/Fintype/Card.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/SuccPred/Limit.lean 3 4 ['JovanGerb', 'github-actions', 'mathlib-dependent-issues'] adamtopaz
assignee:adamtopaz
1-43523
1 day ago
8-39211
8 days ago
8-68725
8 days
35944 euprunin
author:euprunin
chore: replace uses of `omega` with `lia` As [previously discussed](https://github.com/leanprover-community/mathlib4/pull/32666), the plan is to migrate from `omega` to `lia`, the linear integer arithmetic component of `grind`. Trace profiling results (differences <30 ms considered measurement noise): * `AnalyticAt.analyticOrderAt_sub_eq_one_of_deriv_ne_zero`: 1094 ms before, 979 ms after 🎉 * `CategoryTheory.Pretriangulated.shiftFunctorCompIsoId_op_inv_app`: unchanged 🎉 * `Lagrange.leadingCoeff_eq_sum`: unchanged 🎉 * `Finset.intervalGapsWithin_snd_of_lt`: unchanged 🎉 * `Finset.intervalGapsWithin_le_fst`: unchanged 🎉 * `Ideal.exists_radical_pow_le_of_fg`: unchanged 🎉 * `PowerSeries.coeff_X_mul_largeSchroderSeriesSeries_sq`: unchanged 🎉 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 9/9 Mathlib/Analysis/Analytic/Order.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Basic.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/Order/Interval/Finset/Gaps.lean,Mathlib/RingTheory/Finiteness/Ideal.lean,Mathlib/RingTheory/PowerSeries/Schroder.lean 6 1 ['github-actions'] nobody
1-43157
1 day ago
1-41848
1 day ago
1-41474
1 day
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 26/3 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Data/Finite/Card.lean 2 2 ['Rida-Hamadani', 'github-actions'] nobody
1-42183
1 day ago
1-40198
1 day ago
16-6132
16 days
35945 euprunin
author:euprunin
chore: replace uses of `aesop` with `simp` Since `aesop` runs `simp_all` by default, it is preferable to call `simp` directly when it suffices to close the goal. This makes the proof intent more explicit and is typically faster (sometimes significantly so in the cases below). Trace profiling results (differences <30 ms considered measurement noise): * `Polynomial.splits_mul_iff`: 998 ms before, 807 ms after 🎉 * `summable_condensed_iff_of_eventually_nonneg`: 927 ms before, 835 ms after 🎉 * `CategoryTheory.PreservesFiniteLimitsOfFlat.uniq`: 1476 ms before, 1327 ms after 🎉 * `IsCyclotomicExtension.union_of_isPrimitiveRoot`: 528 ms before, 306 ms after 🎉 * `Representation.FiniteCyclicGroup.coinvariantsKer_leftRegular_eq_ker`: 324 ms before, 292 ms after 🎉 * `of_adjoin_eq_top`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 15/15 Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/PSeries.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/LinearAlgebra/Multilinear/Curry.lean,Mathlib/NumberTheory/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/RepresentationTheory/Homological/FiniteCyclic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/FiniteCyclic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeHom.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean 13 3 ['euprunin', 'github-actions', 'leanprover-radar'] nobody
1-39731
1 day ago
1-39531
1 day ago
1-39157
1 day
35518 kim-em
author:kim-em
chore: forbid prime (') in filenames, rename LinearCombination' This PR renames `Mathlib/Tactic/LinearCombination'.lean` to `LinearCombinationPrime.lean` (and the corresponding test file), and adds a lint check to `modulesOSForbidden` to prevent future files with prime/apostrophe characters in their names. The `'` character in filenames causes shell escaping issues in scripts (any `find ... -name '*.lean'` or similar pattern needs careful quoting to handle these files correctly). 🤖 Prepared with Claude Code file-removed 13/8 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LinearCombinationPrime.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,MathlibTest/linear_combination_prime.lean 6 4 ['eric-wieser', 'euprunin', 'github-actions'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
1-39234
1 day ago
10-3905
10 days ago
10-3531
10 days
35772 euprunin
author:euprunin
chore: golf using `grind` The goal of this 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 <30 ms considered measurement noise): * `CategoryTheory.Precoverage.toGrothendieck_toCoverage`: unchanged 🎉 * `Int.nonneg_or_nonpos_of_mul_nonneg`: unchanged 🎉 * `Associated.separable`: 113 ms before, 67 ms after 🎉 * `ModelWithCorners.isInteriorPoint_disjointUnion_left`: unchanged 🎉 * `ModelWithCorners.isInteriorPoint_disjointUnion_right`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 5/49 Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/Data/Int/Order/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean 4 1 ['github-actions', 'vihdzp'] nobody
1-36501
1 day ago
5-58173
5 days ago
5-57799
5 days
34528 Maldooor
author:Maldooor
feat: Reproducing Kernel Hilbert Spaces and Moore's theorem We define vector-valued reproducing Kernel Hilbert spaces, which are Hilbert spaces of functions, as well as characterize these spaces in terms of infinite-dimensional positive semidefinite matrices. Co-authored-by: Yaël Dillies --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 325/5 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Continuous.lean,Mathlib/Analysis/InnerProductSpace/Reproducing.lean,docs/references.bib 4 1 ['github-actions'] j-loreaux
assignee:j-loreaux
1-34514
1 day ago
4-67512
4 days ago
5-63403
5 days
34554 SnirBroshi
author:SnirBroshi
feat(Data/Nat/Factorization/Divisors): calculate divisors using prime factorization --- There are over 200 files that import both `divisors` and `factorization`, but none of them seemed to fit, so I created a new file for this. (`Data.Nat.Factorization.PrimePow` and `NumberTheory.ArithmeticFunction.Misc` are the best I found) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 91/0 Mathlib.lean,Mathlib/Data/Nat/Factorization/Divisors.lean 2 20 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'jcommelin', 'mathlib-bors', 'plp127'] joneugster
assignee:joneugster
1-34513
1 day ago
6-3103
6 days ago
6-48354
6 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'] adamtopaz
assignee:adamtopaz
1-34512
1 day ago
20-2423
20 days ago
20-2049
20 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'] dwrensha
assignee:dwrensha
1-34512
1 day ago
16-6169
16 days ago
18-58672
18 days
35756 mariainesdff
author:mariainesdff
feat(Data/Nat/Choose/Multinomial): add lemmas Co-authored-by: @AntoineChambert-Loir. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics t-data 25/0 Mathlib/Data/Nat/Choose/Multinomial.lean 1 1 ['github-actions'] Vierkantor
assignee:Vierkantor
1-34510
1 day ago
6-334
5 days ago
5-86360
5 days
35764 YaelDillies
author:YaelDillies
feat(Data/Finsupp): characterise when `Finsupp` is `Nontrivial` From ClassFieldTheory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 15/6 Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Single.lean 2 1 ['github-actions'] joneugster
assignee:joneugster
1-34509
1 day ago
5-76996
5 days ago
5-76622
5 days
35778 kebekus
author:kebekus
feat: improve the mean value property of harmonic functions Improving existing results, establish a mean value property for functions harmonic on a disk and continuous on its closure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 65/1 Mathlib/Analysis/Complex/Harmonic/MeanValue.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean 2 1 ['github-actions'] j-loreaux
assignee:j-loreaux
1-34508
1 day ago
5-21687
5 days ago
5-21313
5 days
35797 xroblot
author:xroblot
feat(IsGaloisGroup): if `B/A` and `B/A'` are Galois with the same Galois group, then `A ≃+* A'` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
42/1 Mathlib/FieldTheory/Galois/IsGaloisGroup.lean 1 5 ['github-actions', 'tb65536', 'xroblot'] dagurtomas
assignee:dagurtomas
1-34505
1 day ago
4-78000
4 days ago
5-7119
5 days
35804 mariainesdff
author:mariainesdff
feat(RingTheory/DividedPowerAlgebra/Init): add universal divided power algebra We define the universal divided power algebra of an `R`-module `M`. Co-authored by @AntoineChambert-Loir --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 281/0 Mathlib.lean,Mathlib/RingTheory/DividedPowerAlgebra/Init.lean 2 1 ['github-actions'] mattrobball
assignee:mattrobball
1-34503
1 day ago
4-72334
4 days ago
4-71960
4 days
35807 Raph-DG
author:Raph-DG
chore(Topology): Generalised some of the instances for Function.locallyFinsuppWithin In this PR, we generalised the various instances for locally fin supp functions. These changes were originally made on the PR #26304 about algebraic cycles, but it was decided that these changes are more appropriate in their own PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 57/23 Mathlib/Topology/LocallyFinsupp.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
1-34502
1 day ago
4-79603
4 days ago
4-79229
4 days
35809 tb65536
author:tb65536
refactor(Algebra/Algebra/Subalgebra/Operations): generalize `FixedPoints.subalgebra` to `Semiring` by introducing `FixedPoints.subsemiring` This PR introduces the missing `FixedPoints.subsemiring` in order to generalize `FixedPoints.subalgebra` to `Semiring`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
10/5 Mathlib/Algebra/Algebra/Subalgebra/Operations.lean 1 1 ['github-actions'] joelriou
assignee:joelriou
1-34501
1 day ago
4-59644
4 days ago
4-59270
4 days
35818 Vierkantor
author:Vierkantor
chore(Tactic): rewrite `finiteness` tactic docstring This PR (re)writes the docstrings for the `finiteness` tactic, to consistently match the official style guide, to make sure they are complete while not getting too long. A bit of restructuring and clarification. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta 18/5 Mathlib/Tactic/Finiteness.lean 1 1 ['github-actions'] adamtopaz
assignee:adamtopaz
1-34498
1 day ago
4-63534
4 days ago
4-63160
4 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 265/7 Mathlib/Geometry/Euclidean/Sphere/OrthRadius.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean 2 28 ['Parcly-Taxel', 'eric-wieser', 'github-actions', 'jsm28', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] JovanGerb
assignee:JovanGerb
1-34351
1 day ago
12-76635
12 days ago
100-84423
100 days
35884 Parcly-Taxel
author:Parcly-Taxel
chore: fix induction and recursor names * `Finset.induction_on_{min,max}`, `Finset.induction_on_{min,max}_value` * `FreeAbelianGroup.induction_on`, `FreeAbelianGroup.induction_on'` Applications of these induction principles are also fixed. tech debt 109/112 Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Data/Finset/Max.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean 5 6 ['Parcly-Taxel', 'chenson2018', 'github-actions'] nobody
1-34334
1 day ago
1-32333
1 day ago
3-1403
3 days
35954 mcdoll
author:mcdoll
feat(Analysis/Fourier): the Fourier transform as bounded continuous function This is the main step in proving that the Fourier transform defined via the integral is equal to the Fourier transform on `L1` via extension of Schwartz functions. We do not use the Riemann-Lebesgue lemma here to define the map into `ZeroAtInftyContinuousMap` because it is possible to deduce Riemann-Lebesgue from embedding of Schwartz functions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 87/5 Mathlib/Analysis/Fourier/FourierTransform.lean 1 1 ['github-actions'] nobody
1-22880
1 day ago
1-22163
1 day ago
1-21789
1 day
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'] nobody
1-22165
1 day ago
1-21577
1 day ago
31-25005
31 days
35069 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): simple polygons and boundary map This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution. - [ ] depends on: #34598 --- new-contributor t-euclidean-geometry 360/0 Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean 4 29 ['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] nobody
1-20018
1 day ago
5-53036
5 days ago
8-1657
8 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 2 ['github-actions', 'mathlib-merge-conflicts'] eric-wieser
assignee:eric-wieser
1-15855
1 day ago
1-15855
1 day ago
5-82005
5 days
35851 vihdzp
author:vihdzp
chore(SetTheory/Ordinal/Arithmetic): remove `backward.privateInPublic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory tech debt 12/17 Mathlib/SetTheory/Ordinal/Arithmetic.lean 1 5 ['github-actions', 'plp127', 'vihdzp'] nobody
1-15704
1 day ago
1-14181
1 day ago
4-3699
4 days
35956 Scarlett-le
author:Scarlett-le
feat: add orthogonality lemmas for inner product spacesonal ## Summary Adds two lemmas about orthogonality in inner product spaces. ## New declarations - `real_inner_sub_smul_div_inner_self_eq_zero` (`Mathlib.Analysis.InnerProductSpace.Basic`): the inner product of `u - (⟪u, d⟫_ℝ / ⟪d, d⟫_ℝ) • d` with `d` is zero; subtracting the orthogonal projection of `u` onto `d` yields a vector orthogonal to `d`. Holds unconditionally including when `d = 0`. - `mem_span_singleton_of_inner_eq_zero_of_inner_eq_zero` (`Mathlib.Analysis.InnerProductSpace.Projection.FiniteDimensional`): in a two-dimensional inner product space, if nonzero vectors `w` and `u` are both orthogonal to the same nonzero vector `v`, then `u` lies in the span of `w`. t-analysis 25/0 Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean 2 1 ['github-actions'] nobody
1-14696
1 day ago
1-13783
1 day ago
1-13409
1 day
28685 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove the minimal-degree version of the Erdős-Stone theorem Proves the minimal degree-version of the Erdős-Stone theorem: If `G` has a minimal degree of at least `(1 - 1 / r + o(1)) * card V`, then `G` contains a copy of a `completeEquipartiteGraph` in `r + 1` parts each of size `t`. The double-counting construction from the proof is available in `namespace ErdosStone`. --- - [x] depends on: #25843 - [x] depends on: #27597 - [x] depends on: #27599 - [x] depends on: #28443 - [x] depends on: #28445 - [x] depends on: #28446 - [x] depends on: #28447 This is the first of several pull requests towards the full Erdős-Stone(-Simonovits) theorem, hence the name of the file. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 323/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
1-13997
1 day ago
1-13501
1 day ago
1-13127
1 day
35958 bryangingechen
author:bryangingechen
ci: add conditionals on lean-pr-testing steps These steps only need to run from mathlib4-nightly-testing and when the branch names fit the *-pr-testing pattern. There's no need to mint a token for other runs. Less importantly, this is also breaking CI on dependabot PRs cf. https://github.com/leanprover-community/mathlib4/pull/35917#issuecomment-3980111057 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 2/2 .github/workflows/build_template.yml 1 1 ['github-actions'] nobody
1-11639
1 day ago
1-11151
1 day ago
1-10777
1 day
32987 kim-em
author:kim-em
feat: pipeline downloads and decompression in `cache get` This PR modifies `lake exe cache get` to decompress files as they download, rather than waiting for all downloads to complete first. Previously the cache system had two sequential phases: download all files using `curl --parallel`, then decompress all files using a single `leantar` call. Now a background task spawns sequential batched `leantar` calls to decompress files as downloads complete, pipelining network I/O and disk I/O. 🤖 Prepared with Claude Code - [x] depends on: #34667 t-meta maintainer-merge 190/35 Cache/IO.lean,Cache/Requests.lean 2 65 ['Vierkantor', 'eric-wieser', 'github-actions', 'joneugster', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
1-11449
1 day ago
1-36876
1 day ago
59-67718
59 days
35947 euprunin
author:euprunin
chore: replace `aesop` with `grind` where the latter is significantly faster This experiment investigates the impact of replacing particularly heavy `aesop` calls with `grind`, specifically how this change affects the instruction count as measured by the benchmarking infrastructure. Trace profiling results (differences <30 ms considered measurement noise): * `Submonoid.mem_closure_image_one_lt_iff`: 125 ms before, 61 ms after 🎉 * `SimpleGraph.Connected.connected_delete_edge_of_not_isBridge`: 230 ms before, 51 ms after 🎉 * `SimpleGraph.Subgraph.IsMatching.exists_of_disjoint_sets_of_equiv`: 899 ms before, 666 ms after 🎉 * `SimpleGraph.IsCycles.existsUnique_ne_adj`: 855 ms before, 599 ms after 🎉 * `SimpleGraph.Walk.IsPath.isCycles_spanningCoe_toSubgraph_sup_edge`: 962 ms before, 619 ms after 🎉 * `SimpleGraph.IsAlternating.sup_edge`: 2854 ms before, 1615 ms after 🎉 * `SimpleGraph.Subgraph.IsPerfectMatching.symmDiff_of_isAlternating`: 3103 ms before, 1734 ms after 🎉 * `SimpleGraph.edgeSet_replaceVertex_of_not_adj`: 1525 ms before, 933 ms after 🎉 * `SimpleGraph.edgeSet_replaceVertex_of_adj`: 2194 ms before, 1605 ms after 🎉 * `SimpleGraph.tutte_exists_isPerfectMatching_of_near_matchings`: 3161 ms before, 1652 ms after 🎉 * `RootPairing.Base.sub_notMem_range_root`: 1025 ms before, 978 ms after 🎉 * `RootPairing.EmbeddedG2.mem_allRoots`: 3832 ms before, 3255 ms after 🎉 * `RootSystem.GeckConstruction.Lemmas.0.RootPairing.chainBotCoeff_mul_chainTopCoeff.aux_2`: 3572 ms before, 2631 ms after 🎉 * `isCompact_generateFrom`: 1987 ms before, 763 ms after 🎉 * `IsCompactOpenCovered.of_isCompact_of_forall_exists_isCompactOpenCovered`: 2279 ms before, 2009 ms after 🎉 * `UniformContinuousOn.comp_tendstoUniformly_eventually`: 416 ms before, 151 ms after 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 27/27 Mathlib/Algebra/Group/Irreducible/Indecomposable.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/LinearAlgebra/RootSystem/Finite/G2.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Lemmas.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Sets/CompactOpenCovered.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean 11 4 ['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] nobody
1-8619
1 day ago
1-36660
1 day ago
1-36286
1 day
35632 SnirBroshi
author:SnirBroshi
feat(Data/List/TakeDrop): `take`/`drop` + `tail`/`dropLast` almost commute --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/List.2Etail.2FList.2EdropLast.20.2B.20List.2Etake/with/572294698) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 22/0 Mathlib/Data/List/TakeDrop.lean 1 3 ['SnirBroshi', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
1-8192
1 day ago
9-16706
9 days ago
9-16332
9 days
35962 euprunin
author:euprunin
chore: golf using `simp` The goal of this 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 <30 ms considered measurement noise): * `CategoryTheory.MonoidalCategory.leftUnitor_monoidal`: unchanged 🎉 * `MeasureTheory.Measure.haar.is_left_invariant_index`: unchanged 🎉 * `Ideal.Filtration.submodule_fg_iff_stable`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 4/10 Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/RingTheory/Filtration.lean 3 1 ['github-actions'] nobody
1-7284
1 day ago
1-6218
1 day ago
1-5844
1 day
35960 vihdzp
author:vihdzp
chore(Order/ConditionallyCompleteLattice/Basic): remove `backward.isDefEq.respectTransparency` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy 0/8 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean 1 1 ['github-actions'] nobody
1-6075
1 day ago
1-6075
1 day ago
1-5701
1 day
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 52/2 Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 1 7 ['Hagb', 'erdOne', 'github-actions'] mattrobball
assignee:mattrobball
1-5590
1 day ago
1-4898
1 day ago
19-61810
19 days
35896 harahu
author:harahu
chore(misc): fix typos The typos were identified by `PyCharm`'s proofreading inspection. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 90/90 Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/Embedding/ExtendHomotopy.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexSingle.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/EngelSubalgebra.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/SuccPred/TypeTags.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/Flat.lean,Mathlib/AlgebraicGeometry/Normalization.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/EpiMono.lean,Mathlib/AlgebraicTopology/SimplicialSet/HoFunctorMonoidal.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/DifferentialForm/VectorField.lean,Mathlib/Analysis/Calculus/TangentCone/Seq.lean,Mathlib/Analysis/Complex/Positivity.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Basic.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/InnerProductSpace/OfNorm.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Algebra/GelfandMazur.lean,Mathlib/Analysis/Normed/Module/ContinuousInverse.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/RCLike/Real.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/Normed/Unbundled/FiniteExtension.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/CategoryTheory/Abelian/Injective/Resolution.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ExponentiableMorphism.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataAsCoalgebra.lean,Mathlib/CategoryTheory/Sites/Point/Over.lean,Mathlib/CategoryTheory/Sites/SheafOfTypes.lean,Mathlib/Combinatorics/Matroid/Map.lean,Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Condensed/Light/InternallyProjective.lean,Mathlib/Data/Matrix/ColumnRowPartitioned.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/Data/Set/Operations.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/LinearAlgebra/Transvection.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/Probability/Distributions/Gaussian/IsGaussianProcess/Def.lean,Mathlib/Probability/Independence/Process.lean,Mathlib/RingTheory/Extension/Cotangent/Basic.lean,Mathlib/RingTheory/Flat/TorsionFree.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Ideal.lean,Mathlib/RingTheory/PowerSeries/Expand.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/Smooth/Fiber.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean,Mathlib/Topology/MetricSpace/PartitionOfUnity.lean 69 1 ['github-actions'] nobody
1-4929
1 day ago
1-4257
1 day ago
1-3883
1 day
35928 xgenereux
author:xgenereux
feat(Subalgebra/Lattice): add notation for Algebra.adjoin This PR proposes a scoped notation for Algebra.adjoin, `R[a]`, inspired from `IntermediateField.adjoin`. See [here](https://live.lean-lang.org/#codez=JYWwDg9gTgLgBAWQIYwBYBtgCMBQOC0+cAggCZJgwCmpcAxhKVXAGZQQhwAGAkgHbUoIGsBRUAYsCrpSXAHQ4+SYQGcwSOs2LoA5lSxQkeCGCp84AGSpJzwPjgD0hOAGUArmEiw7O1m750MMAQ5izQcGjMXABKANoAHoCBBAA08YBBBMlyWamAmQQAulxwSKQAVv6BweZ8EDAolXJw+A44YFDAAG5icMK1cEws3QDW/CpUsAAqY5wA3pwAXHDjAJ6mcIBJhIsrVAC+cLEIIcXdeXsHSqQAim41dSHHOHCPcAAU8SpwC+MuSwJI8cRQQxLbiCEAASg+3UWUw+AF44FB/HAAAxwADuqDGVAeCKRz2AkIAcigIQtOJMhHC+hAcY9gANUJCCQBqOAARjg8LechUwAAXsxIvYnk8uFxnry+Dp0FQYHcACSvFSxYB5MFg2lwaSjOD0uCMhYEgA8cG5vIFEUxwpF3HFdlGsDgireKrVTuegATCXHmfFwVls9UakXa7E223PACi4BgSwAwhB0DKKiE5FRo3GE0mgiENY5nDwBlwkqa0nAsg14jlIcRCkLuHEkqkMuXcgVde9Itx3FgkLp9IY4NESFwcHo+GMxLQsMDIjrpGmzDAVA0mjgVAxTLQQBp2HMAJxs5GogDSc1BcAARLEL6aVGepskAFSXvI3hbn2EAPmp4eKJQgdhOse7peiAwx8A6MAUpw3J6DAEYyiAKjqsYpjmFYNhwAAClAsoxjhdiCHIAAi0hIFg0AoOE3YRvErS6vYAACsQUGAAD6TDoORJB9gYSByH+AF8HkOA9EgcDqN4vZ9FQAyceRZD/nYhI3Nm5gLKRXFYFSGJmFhWEAPKUJUcBwfpKm1Gp1I4jK8DMF6cG0a0OI6G4SBQLQRoAD5anIwAqMQngGSwALADGtqCYBABsNmynA4hwF6aJhagxJQEsAK+Ki8m4I8tm3ol6IpWlGVQL4ACsMlaSMYwwACQI4uK8riLEzrLnK9VIEsYJPmqOC6bhOI5TVsCdcCGlkVgCAvBY/nwNBpLwqQNIivl9mmbKTlQJqepUH5AVBSFbThWKUaUBmiZUMmfCpum8aXddcAAEyWmYmqPLhMBuFA5ixCJwboDqu37YFYDBaFJ1cJK0qyncAAsr3WqtcXxIVyVoCVmVwAAzFV5HvQisrfb98T/U8Ia6gMe3+aD4PHcCYr2rVcCVUKBP5ajSXFe5pW+LjOXsyj7xcxjPNYwjw0QbVY0E59xOmh8CxvJqFMsEgwDoN92I4GYtDaHofF4M4tHKGAMoqHgoyPdUQi9gAqqMsZIKMqFmDxBuGEbRAqbb6BwG4LudG05Eyi8Q7EJCyymI+EKxPGIAgC4abAG0UqDicsRJyAKc+CQGf6/24nhyc0zidpdDVtseBUPEpuhwscRICc8KN8kRQnHM8LTnAvLgHgADEdCYnQgyDixImD8Po+t3AWAT0PV3TyxbdYG3dAiTrfC0Db27oA7VBOy7a5XVZdBcSoqB4EHohYKHzzh5HWwx3s8eJ8nqe+NEGdZznafEPnvEBzFzgNMAAGpXV25gsIJh+BwUQ6AcAmDdgXPicAcCT0XmPUBJxnBxGwY/VYbg2Jsmrlveg59L54BwEAA) for a preview of how it would look like. Note that I am currently using bracked, `[`, `]`. I know this clashes with the notation for `Polynomial`, `DualNumber`, `AdjoinRoot` and `GetElem` but it is my impression that it would rarely cause issues. See [#mathlib4 > Notation for Algebra.adjoin](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Notation.20for.20Algebra.2Eadjoin/with/576551144). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
239/186 Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Analysis/Normed/Unbundled/IsPowMulFaithful.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/FieldTheory/Minpoly/MinpolyDiv.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/Semisimple.lean,Mathlib/NumberTheory/JacobiSum/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean,Mathlib/RingTheory/Adjoin/PowerBasis.lean,Mathlib/RingTheory/Adjoin/Singleton.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Conductor.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Polynomial/Eisenstein/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Ideal.lean,Mathlib/RingTheory/RootsOfUnity/Lemmas.lean,Mathlib/RingTheory/Unramified/LocalStructure.lean,Mathlib/RingTheory/Valuation/LocalSubring.lean,Mathlib/Topology/Algebra/Algebra.lean 23 3 ['github-actions', 'xgenereux'] nobody
1-4190
1 day ago
1-4190
1 day ago
1-43756
1 day
33348 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection): characterization of transvections among dilatransvections * `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$
274/6 Mathlib/LinearAlgebra/Transvection.lean 1 22 ['AntoineChambert-Loir', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash'] ocfnash
assignee:ocfnash
1-3951
1 day ago
1-3380
1 day ago
25-31733
25 days
35805 adrianmartir
author:adrianmartir
feat(NumberTheory/Divisors): Add `infinite_setOf_divisors_iff` This proves that the set of divisors `{ m | m | n }` of a natural number `n` is infinite if and only if `n` is zero. The first proof draft was by @Aristotle-Harmonic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 10/0 Mathlib/NumberTheory/Divisors.lean 1 5 ['adrianmartir', 'alexjbest', 'github-actions'] alexjbest
assignee:alexjbest
1-2906
1 day ago
1-2015
1 day ago
4-79068
4 days
35722 joelriou
author:joelriou
feat(CategoryTheory/Sites): the fiber functor associated to `Point.comap` The definition `Point.comap` is moved to a separate file. Using results on skyscraper sheaves, we obtain that if `F : C ⥤ D` is a representably flat continuous functor between sites `(C, J)` and `(D, K)`, `Φ` is a point of `(D, K)`, then the fiber functor on sheaves attached to the point `Φ.comap F hF` of the site `(C, J)` (where `hF : CoverPreserving J K F`) identifies to the composition of the pullback functor for `F` followed by the fiber functor attached to the point `Φ`. This is a generalization to arbitrary sites of https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sheaves/Stalks.html#TopCat.Presheaf.stalkPullbackIso Co-authored-by: Christian Merten --- - [x] depends on: #35719 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 75/22 Mathlib.lean,Mathlib/CategoryTheory/Sites/Point/Basic.lean,Mathlib/CategoryTheory/Sites/Point/Comap.lean 3 5 ['github-actions', 'joelriou', 'mathlib-dependent-issues', 'robin-carlier'] nobody
0-86230
23 hours ago
0-85632
23 hours ago
3-60668
3 days
35966 joelriou
author:joelriou
feat(CategoryTheory/Abelian): the localization w.r.t. a Serre class is abelian --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory large-import 276/6 Mathlib/CategoryTheory/Abelian/SerreClass/Localization.lean 1 1 ['github-actions'] nobody
0-85471
23 hours ago
0-84877
23 hours ago
0-84503
23 hours
35965 sgouezel
author:sgouezel
chore: make class constructor in metric spaces an abbrev instead of a def --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 10/9 Mathlib/Topology/MetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 3 1 ['github-actions'] nobody
0-83995
23 hours ago
0-82335
22 hours ago
0-82839
23 hours
35890 grunweg
author:grunweg
chore: delete deprecated module Topology/PartialHomeomorph This module was deprecated on October 3, and is blocking refactoring of the manifold library. --- This PR should only be merged on March 3rd: please delegate instead of merging! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology easy 0/11 Mathlib.lean,Mathlib/Topology/PartialHomeomorph.lean 2 5 ['fpvandoorn', 'github-actions', 'mathlib-bors'] nobody
0-82956
23 hours ago
0-82956
22 hours ago
2-66276
2 days
35874 xgenereux
author:xgenereux
feat(Adjoin/Polynomial/Bivariate): IsAlgebraic.adjoin_singleton This PR builds up to the following theorem: - `IsAlgebraic.adjoin_singleton`: Given two transcendental elements `a`, `b` over `R`, if one of them, say `a`, is algebraic over `R[b]` then `b` is algebraic over `R[a]`. In particular, it uses maps between `R[a]` and `R[X]` as well of some of the Bivariate polynomial API. The results are necessary in preparation for the following: Given a function field `K` and `(y : K)` such that `(hy : Transcendental Fq y)` then we have: ``` FiniteDimensional Fq⟮y⟯ K ``` Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
90/0 Mathlib.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean 2 6 ['github-actions', 'joneugster', 'mathlib-merge-conflicts', 'robin-carlier', 'xgenereux'] nobody
0-82121
22 hours ago
0-81545
22 hours ago
0-81171
22 hours
35637 vihdzp
author:vihdzp
chore(Topology/Order/LeftRight): use `to_dual` This overlaps with #35635, but the overlap is small (and that PR still needs some work, so I'd rather get this out of the way first). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge 32/26 Mathlib/Order/Interval/Set/LinearOrder.lean,Mathlib/Tactic/Translate/ToDual.lean,Mathlib/Topology/Order/LeftRight.lean 3 8 ['JovanGerb', 'github-actions', 'vihdzp'] jcommelin
assignee:jcommelin
0-81188
22 hours ago
0-79116
21 hours ago
9-7960
9 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$
66/1 Mathlib/Algebra/MvPolynomial/Rename.lean 1 6 ['Hagb', 'dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
0-81177
22 hours ago
0-81177
22 hours ago
23-29107
23 days
34624 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): surjection between types induces surjection between free groups on those types 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 24 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-merge-conflicts', 'tb65536', 'vlad902'] riccardobrasca
assignee:riccardobrasca
0-80129
22 hours ago
14-56722
14 days ago
25-12560
25 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 64/0 Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean 1 5 ['EtienneC30', 'github-actions'] EtienneC30
assignee:EtienneC30
0-79595
22 hours ago
0-78933
21 hours ago
18-10677
18 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 maintainer-merge 191/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 9 ['EtienneC30', 'github-actions'] EtienneC30
assignee:EtienneC30
0-76289
21 hours ago
0-78865
21 hours ago
14-6732
14 days
35973 justus-springer
author:justus-springer
feat(Algebra/Polynomial/BigOperators): A lemma about degrees of sums --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
41/0 Mathlib/Algebra/Polynomial/BigOperators.lean 1 1 ['github-actions'] nobody
0-75530
20 hours ago
0-74027
20 hours ago
0-73653
20 hours
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 160/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/VecPerm.lean,MathlibTest/Simproc/VecPerm.lean 4 83 ['JovanGerb', 'Paul-Lez', 'b-mehta', 'eric-wieser', 'github-actions', 'ocfnash'] JovanGerb
assignee:JovanGerb
0-74660
20 hours ago
0-83834
23 hours ago
52-59088
52 days
35005 b-mehta
author:b-mehta
chore(Algebra/Order/BigOperators): move lemmas which don't use addition out of Ring These lemmas all use no addition or additive operations whatsoever, so we move them out of Ring/ and into GroupWithZero. This is more consistent with the existing pattern in Algebra/BigOperators, and aids searchability. This PR also golfs and generalises `Finset.one_le_prod`. This could be a separate PR, but note that this change requires the move made in this PR, so it seems easier to combine the changes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
97/89 Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/NNReal.lean,Mathlib/Data/NNRat/BigOperators.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Data/Nat/Squarefree.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/Topology/Metrizable/ContinuousMap.lean 13 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-74660
20 hours ago
0-72254
19 hours ago
0-74081
20 hours
35980 RemyDegenne
author:RemyDegenne
feat: covering numbers and isometries The covering number of the image of a set by an isometry is equal to the covering number of the set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology brownian 57/1 Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean 2 1 ['github-actions'] nobody
0-73742
20 hours ago
0-73901
20 hours ago
0-73527
20 hours
35931 joelriou
author:joelriou
feat(Algebra/Homology): lemmas for diagram chasing in homological complexes --- - [x] depends on: #35930 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 66/1 Mathlib/Algebra/Homology/Refinements.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-72363
20 hours ago
0-71601
19 hours ago
0-71227
19 hours
35933 urkud
author:urkud
chore(WellFounded): drop unneeded `Set.Nonempty` assumptions ... in theorems that also assume that a specific element belongs to the set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 60/56 Archive/Imo/Imo1988Q6.lean,Counterexamples/AharoniKorman.lean,Mathlib/Combinatorics/Quiver/Arborescence.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/FieldTheory/Minpoly/Basic.lean,Mathlib/FieldTheory/SeparableClosure.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Cover.lean,Mathlib/Order/InitialSeg.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/RingTheory/MvPowerSeries/LexOrder.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/Topology/EMetricSpace/Paracompact.lean 22 3 ['github-actions', 'urkud', 'vihdzp'] nobody
0-71464
19 hours ago
1-40307
1 day ago
1-39933
1 day
35984 urkud
author:urkud
feat(Topology/VectorBundle): add `simp` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 21/8 Mathlib/Topology/VectorBundle/Basic.lean,Mathlib/Topology/VectorBundle/Hom.lean 2 1 ['github-actions'] nobody
0-70279
19 hours ago
unknown
unknown
34629 plp127
author:plp127
feat: cyclic group with explicit generator is equivalent to `ZMod n` We provide an equivalence between a cyclic group (given by an explicit generator) and `ZMod n`, where `n` is equal to the cardinality of the group. The equivalence sends `1` to the generator. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/ZMod.20to.20cyclic.20group/near/571147306). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 80/13 Mathlib/GroupTheory/SpecificGroups/Cyclic.lean 1 13 ['github-actions', 'mathlib-merge-conflicts', 'plp127', 'riccardobrasca', 'tb65536', 'vihdzp'] vihdzp
assignee:vihdzp
0-69523
19 hours ago
0-74377
20 hours ago
4-79551
4 days
35597 BryceT233
author:BryceT233
feat(AdicTopology): add lemmas about adic topology This PR adds APIs to transport topological and uniform properties of adic topologies across ring equivalences, By upgrading an ideal-preserving ring equivalence to a `UniformEquiv`, we provide natural congruence lemmas for adic completeness, precompleteness, and Hausdorffness, which serve as necessary topological preliminaries for the ongoing formalization of the Cohen Structure Theorem. Co-authored-by: @Thmoas-Guan --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 55/2 Mathlib/RingTheory/AdicCompletion/Topology.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean 2 7 ['erdOne', 'github-actions'] urkud
assignee:urkud
0-69115
19 hours ago
0-68529
18 hours ago
10-8488
10 days
35707 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): introduce `truncTotal` This PR introduces the total degree truncation of multivariate formal power series when the index is finite, and uses it to establish the algebraic equivalence between `MvPowerSeries` and the adic completion of `MvPolynomial` with respect to the ideal spanned by all variables `idealOfVars`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory 207/2 Mathlib.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean 4 4 ['github-actions', 'joneugster', 'mathlib-bors'] nobody
0-69086
19 hours ago
0-68040
18 hours ago
7-11068
7 days
35659 BryceT233
author:BryceT233
chore(Data/Finsupp): update pointwise module structure This is the 3rd PR split from #34936 to make the review process easier. It updates the pointwise module structure `Module (ι → R) (ι →₀ M)` where `R` is a semiring and `M` is an `R`-module. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/18 Mathlib/Data/Finsupp/Pointwise.lean 1 2 ['github-actions'] joneugster
assignee:joneugster
0-69021
19 hours ago
0-68020
18 hours ago
8-42643
8 days
35647 BryceT233
author:BryceT233
feat(RingTheory/Ideal/Quotient): add a canonical inclusion map This is the second PR split from the larger PR https://github.com/leanprover-community/mathlib4/pull/34936 to make the review process easier. It introduces `Submodule.powSmulQuotInclusion`, which is the canonical inclusion from `I ^ a • N ⧸ I ^ b • (I ^ a • N)` to `M ⧸ I ^ c • N` where `c = b + a`, and provides auxiliary lemmas for it --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 37/0 Mathlib/RingTheory/Ideal/Quotient/PowTransition.lean 1 9 ['BryceT233', 'erdOne', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
0-68994
19 hours ago
0-67902
18 hours ago
8-39637
8 days
35646 BryceT233
author:BryceT233
feat(Algebra): add two lemmas about submodule smul This is the first PR split from the larger PR #34936 to make the review process easier. It adds the following two lemmas regarding pointwise smul and restrictScalars: `Submodule.restrictScalars_image_smul_eq_smul_restrictScalars` and `Submodule.restrictScalars_map_smul_eq_smul_restrictScalars` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
29/0 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/RingTheory/Ideal/Maps.lean 2 4 ['github-actions', 'joneugster'] nobody
0-68931
19 hours ago
0-67180
18 hours ago
8-69324
8 days
35949 mathlib-splicebot
author:mathlib-splicebot
chore(Mathlib/CategoryTheory/Sites): more API for `Presieve.map` This PR was automatically created from PR #35948 by @chrisflav via a [review comment](https://github.com/leanprover-community/mathlib4/pull/35948#discussion_r2870155169) by @chrisflav. new-contributor t-category-theory 48/3 Mathlib/CategoryTheory/Sites/Sieves.lean 1 4 ['erdOne', 'github-actions'] nobody
0-68751
19 hours ago
0-67597
18 hours ago
1-28172
1 day
35987 grunweg
author:grunweg
chore(Tactic/FunProp): document that config options must come before … …the discharger This being undocumented just bit me: let's make the documentation clearer --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 1/0 Mathlib/Tactic/FunProp/Elab.lean 1 1 ['github-actions'] nobody
0-67689
18 hours ago
0-64399
17 hours ago
0-64025
17 hours
35544 chrisflav
author:chrisflav
feat(RingTheory): `I / I ^ 2` commutes with flat base change Towards smooth descends along faithfully flat ring maps. From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 258/0 Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/Quotient.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/CotangentBaseChange.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/TensorProduct/Quotient.lean 7 10 ['chrisflav', 'erdOne', 'github-actions'] mariainesdff
assignee:mariainesdff
0-66339
18 hours ago
0-65503
18 hours ago
11-43566
11 days
35594 chrisflav
author:chrisflav
feat(RingTheory): `Extension.CotangentSpace` commutes with base change From Pi1. --- - [x] depends on: #35557 - [x] depends on: #35699 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 136/0 Mathlib.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Extension/Cotangent/BaseChange.lean,Mathlib/RingTheory/Extension/Cotangent/Basic.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-65279
18 hours ago
0-65279
18 hours ago
0-64905
18 hours
35989 chrisflav
author:chrisflav
feat(RingTheory): define finite split algebras From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 75/0 Mathlib.lean,Mathlib/RingTheory/Etale/Pi.lean,Mathlib/RingTheory/TotallySplit.lean 3 1 ['github-actions'] nobody
0-64766
17 hours ago
0-64164
17 hours ago
0-63790
17 hours
35963 Parcly-Taxel
author:Parcly-Taxel
refactor: review Kleene algebra axioms The docstring did not match the actual conditions in the `KleeneAlgebra` class and there was one more condition than necessary. We replace `one_le_kstar, mul_kstar_le_kstar, kstar_mul_le_kstar` with ```lean one_add_mul_kstar (a : α) : 1 + a * a∗ = a∗ one_add_kstar_mul (a : α) : 1 + a∗ * a = a∗ ``` From the pair, the trio is trivially derivable. The pair's derivation from the trio is Proposition 2 in Kozen's 1994 paper. We also remove the `bot` and `bot_le` fields in `IdemSemiring`, since the remaining axioms already show `0 ≤ a` for all `a`. t-algebra
label:t-algebra$
102/93 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/Computability/Language.lean 4 11 ['Parcly-Taxel', 'github-actions', 'plp127', 'vihdzp'] nobody
0-61714
17 hours ago
0-71635
19 hours ago
0-76733
21 hours
35992 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra/Basic): `‖e‖ ≤ 1` for star projections Co-authored-by: Jon Bannon <59937998+JonBannon@users.noreply.github.com> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-analysis 6/0 Mathlib/Analysis/CStarAlgebra/Basic.lean 1 1 ['github-actions'] nobody
0-61041
16 hours ago
0-60251
16 hours ago
0-59877
16 hours
35974 justus-springer
author:justus-springer
feat(Algebra/Polynomial/Bivariate): more API for swap --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
10/0 Mathlib/Algebra/Polynomial/Bivariate.lean 1 2 ['github-actions', 'robin-carlier'] nobody
0-60736
16 hours ago
0-60649
16 hours ago
0-77351
21 hours
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 510/3 Mathlib.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/GroupWithZero/Action/Basic.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/SimpleModule/Basic.lean 7 44 ['Raph-DG', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
0-58225
16 hours ago
0-57611
15 hours ago
39-43878
39 days
34204 loefflerd
author:loefflerd
feat(LinearAlgebra/QuadraticForm): Sylvester's law of inertia Prove the uniqueness part of Sylvester's law of inertia (we already have the existence part, but the uniqueness is a long-standing TODO). This PR is based on work carried out by Sina Keller, Philipp Schumann, and Nicolas Trutmann in the course of their studies at ETH Zürich. --- - [x] depends on: #34110 - [x] depends on: #34309 - [x] depends on: #34493 t-algebra
label:t-algebra$
265/0 Mathlib.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Signature.lean 3 38 ['AntoineChambert-Loir', 'github-actions', 'joelriou', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] joelriou
assignee:joelriou
0-55283
15 hours ago
0-54732
15 hours ago
6-43015
6 days
35477 harahu
author:harahu
chore(Geometry): fix markdown lists We 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. Furthermore, we split some text out of the ultimate item of some markdown lists, where the text was accidentally attached to it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 11/9 Mathlib/Geometry/Diffeology/Basic.lean,Mathlib/Geometry/Euclidean/Sphere/Ptolemy.lean,Mathlib/Geometry/Manifold/ContMDiff/Constructions.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean 6 9 ['github-actions', 'grunweg', 'harahu', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
0-53830
14 hours ago
2-40844
2 days ago
10-33080
10 days
34658 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(Algebra/Group/FiniteSupport): add HasFinite(Mul)Support and API This adds predicates `Function.HasFiniteMulSupport` and `Function.HasFiniteSupport` that indicate that a function has finite (multiplicative) support, plus API lemmas. Both the definition and the API lemmas are tagged `fun_prop`, so that one can show side goals requiring the (multiplicative) support of a function to be finite `by fun_prop`. The new material is split into two files Algebra.Group.FiniteSupport.{Defs|Basic}, to allow for lighter imports when just needing the definitions. Some (not yet conclusive) discussion is here on Zulip: [#mathlib4 > fun_prop for finite (multiplicative) support? @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/fun_prop.20for.20finite.20.28multiplicative.29.20support.3F/near/570411560). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
325/115 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/FiniteSupport/Basic.lean,Mathlib/Algebra/FiniteSupport/Defs.lean,Mathlib/Algebra/Notation/FiniteSupport.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/HahnSeries/Summable.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/Nilpotent/Basic.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Group.lean,Mathlib/Topology/PartitionOfUnity.lean 21 17 ['CBirkbeck', 'MichaelStollBayreuth', 'erdOne', 'github-actions'] nobody
0-52794
14 hours ago
0-59046
16 hours ago
1-47901
1 day
35977 jessealama
author:jessealama
feat(Algebra/Homology): add dimension lemmas for homological complex differentials Show that `dFrom` and `dTo` in a homological complex vanish when the target or source object is zero, and add `Mathlib.Algebra.Homology.ChainComplex.Dimension` with dimension-related properties for complexes of modules over a division ring over an arbitrary `ComplexShape ι`: zero range from zero objects, finrank equalities between `dFrom`/`dTo` ranges and the underlying differential, inclusion of the range of `dTo` in the kernel of `dFrom`, and a finrank equality for adjacent differentials in ℤ-indexed chain complexes. Spun off from #29713. t-algebra
label:t-algebra$
111/0 Mathlib.lean,Mathlib/Algebra/Homology/ChainComplex/Dimension.lean,Mathlib/Algebra/Homology/HomologicalComplex.lean 3 2 ['github-actions', 'mathlib-bors'] nobody
0-51529
14 hours ago
0-51609
14 hours ago
0-20649
5 hours
29186 winstonyin
author:winstonyin
feat: IsIntegralCurve for solutions to ODEs I define `IsIntegralCurve` etc. for solutions to ODEs on vector spaces. The translation and scaling lemmas are also included. This parallels `IsMIntegralCurve` etc. for manifolds. Moved from #26534. - [x] depends on: #26563 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics t-differential-geometry t-analysis 309/17 Mathlib.lean,Mathlib/Analysis/ODE/Basic.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/UniformTime.lean 5 32 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mcdoll', 'michaellee94', 'sgouezel', 'winstonyin'] sgouezel
assignee:sgouezel
0-51135
14 hours ago
2-59761
2 days ago
45-47853
45 days
35951 parabamoghv
author:parabamoghv
feat(CategoryTheory/Monoidal): evaluation coevaluation isomorphisms This PR adds four features to rigid categories: 1. `coevaluation_evaluation` and `evaluation_coevaluation` as isomorphism equalities: Using `IsIso` instances for the `evaluation` and `coevaluation` morphisms, we promote the morphism equalities to isomorphism equalities. 2. `ExactPairing Y X` from `ExactPairing X Y`: Using an exact pairing and `IsIso` instances for both `evaluation` and `coevaluation`, we swap the exact pairing by inverting the evaluation and coevaluation morphisms. Any suggestions for the definition name are welcome. Right now it is `ExactPairing.Symm`. The second choice was `ExactPairing.Swap`. 3. `HasLeftDual X` from `HasRightDual X`: Using a `HasRightDual X` instance and relevant `IsIso` instances, we construct a left dual. Similar construction for the other way. 4. `LeftDual` isomorphic to `RightDual`: Using relevant `IsIso` instances, we provide the isomorphism from the left dual of an object to the right dual. This can be achieved in two ways: either by using `leftDualIso` or using `rightDualIso`. We will prove in a subsequent PR that both these isomorphisms are equal. Motivation: This is part of an effort to formalize CategoricalGroups, which can be defined as right rigid groupoids. The approach is motivated by the discussion in [#34830](https://github.com/leanprover-community/mathlib4/pull/34830). Any comments or suggestions are welcome, especially about the naming. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor 65/0 Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean 1 2 ['github-actions'] nobody
0-50847
14 hours ago
0-50192
13 hours ago
1-3588
1 day
35298 robin-carlier
author:robin-carlier
chore: make `SimplicialObject` and `SSet` abbrevs Currently, use of projections like `X.obj` and `X.map` when `X : SSet` constitute a defeq abuse at reducible transparency, because `SSet` is defeq to functors out of the opposite of the simplex category but not reducibly so. This is a test to see the performance impact of turning this `def` into an `abbrev`. The only things that broke by doing this switch were a few cases where the fact that SSet has an extra universe level MVars was abused. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 12/86 Mathlib/AlgebraicTopology/DoldKan/NReflectsIso.lean,Mathlib/AlgebraicTopology/Quasicategory/StrictBicategory.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/HoFunctorMonoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean 9 9 ['github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'robin-carlier'] nobody
0-49952
13 hours ago
0-50334
13 hours ago
0-507
8 minutes
35914 ajirving
author:ajirving
feat(Analysis/Complex): weaken hypothesis in Borel-Caratheodory theorem Replace the hypothesis Re z < m with Re z <= m which is sufficient for the proof. The conclusions are unchanged. The non-strict inequality is used in the PNT project, somehow it had been made strict when upstreaming the result. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 14/14 Mathlib/Analysis/Complex/BorelCaratheodory.lean 1 7 ['Ruben-VandeVelde', 'ajirving', 'github-actions', 'maksym-radziwill'] nobody
0-48937
13 hours ago
0-49001
13 hours ago
1-28256
1 day
26743 grunweg
author:grunweg
feat: product rule for Lie bracket on manifolds On the path towards geodesics and the Levi-Civita connection. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 199/27 Mathlib/Geometry/Manifold/MFDeriv/Atlas.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/Geometry/Manifold/VectorField/Pullback.lean 4 7 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
0-48698
13 hours ago
0-52896
14 hours ago
12-36179
12 days
36001 harahu
author:harahu
fix(docs): deduplicate yaml key --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 3/2 docs/1000.yaml 1 1 ['github-actions'] nobody
0-47203
13 hours ago
0-46644
12 hours ago
0-46270
12 hours
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'] kex-y
assignee:kex-y
0-45980
12 hours ago
0-48509
13 hours ago
41-80180
41 days
36007 grunweg
author:grunweg
chore(Geometry/Manifold/Algebra): golf using custom elaborators --- Split out from #30357. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 110/112 Mathlib/Geometry/Manifold/Algebra/LieGroup.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/Manifold/Algebra/SmoothFunctions.lean,Mathlib/Geometry/Manifold/Algebra/Structures.lean 4 1 ['github-actions'] nobody
0-44508
12 hours ago
0-43802
12 hours ago
0-43428
12 hours
36009 grunweg
author:grunweg
chore(Geometry/Manifold/MFDeriv/SpecificFunctions): golf using custom… … elaborators --- Split out from #30357. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 185/241 Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 1 1 ['github-actions'] nobody
0-44433
12 hours ago
0-43778
12 hours ago
0-43404
12 hours
36010 grunweg
author:grunweg
chore(Geometry/Manifold/MFDeriv): golf using custom elaborators --- Split out from #30357. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 64/70 Mathlib/Geometry/Manifold/MFDeriv/Atlas.lean,Mathlib/Geometry/Manifold/MFDeriv/FDeriv.lean,Mathlib/Geometry/Manifold/MFDeriv/Tangent.lean,Mathlib/Geometry/Manifold/MFDeriv/UniqueDifferential.lean 4 1 ['github-actions'] nobody
0-44423
12 hours ago
unknown
unknown
36011 grunweg
author:grunweg
chore(Geometry/Manifold/VectorBundle/MDifferentiable): golf using cus… …tom elaborators --- Split out from #30357. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 104/160 Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean 1 1 ['github-actions'] nobody
0-44411
12 hours ago
unknown
unknown
35724 matthewjasper
author:matthewjasper
feat(RingTheory/DedekindDomain/AdicValuation): v-adic integers of `K` are a localization at v^c Part of showing `R` is dense in `O_v`, which is used to show that `R / v` is isomorphic to the residue field of `O_v` and to construct the base change isomorphism for finite adeles. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import FLT 59/0 Mathlib/RingTheory/DedekindDomain/AdicValuation.lean 1 6 ['github-actions', 'matthewjasper', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
0-42999
11 hours ago
0-50783
14 hours ago
6-6854
6 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 7 ['github-actions', 'mathlib-merge-conflicts', 'mpenciak', 'robin-carlier'] mariainesdff
assignee:mariainesdff
0-42208
11 hours ago
0-40457
11 hours ago
17-40733
17 days
35513 vihdzp
author:vihdzp
refactor: redefine `Order.cof` for a preorder ... instead of using an unbundled relation. This makes it easier to work with, and avoids some `swap rᶜ` incantations. There are still a bunch of lemmas that make use of unbundled order relations; these will get fixed in follow-up PRs. --- - [x] depends on: #35517 - [x] depends on: #35519 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-order maintainer-merge 220/241 Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean 3 9 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] b-mehta
assignee:b-mehta
0-42100
11 hours ago
4-12356
4 days ago
6-49841
6 days
35970 adrianmartir
author:adrianmartir
feat(CategoryTheory/Profunctor): Add profunctors and a basic API for them This adds a definition of a profunctor and the definition of a natural transformation between two profunctors. Profunctors are defined as a structure, as suggested by @adamtopaz [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Operads.20Formalization/with/566160316). Using this as a base, I wrote a basic API for profunctors. This will be needed for a future formalization of operads. A lot of the API was first drafted by @Aristotle-Harmonic. Co-authored-by: Aristotle (Harmonic) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor 182/0 Mathlib.lean,Mathlib/CategoryTheory/Profunctor.lean 2 7 ['emilyriehl', 'github-actions'] nobody
0-41575
11 hours ago
0-50222
13 hours ago
0-62338
17 hours
36014 euprunin
author:euprunin
chore: golf proofs The goal of this 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 <30 ms considered measurement noise): * `Polynomial.smeval_commute_left`: unchanged 🎉 * `lp.norm_rpow_eq_tsum`: unchanged 🎉 * `ComputablePred.rice`: unchanged 🎉 * `ZNum.cmp_to_int`: unchanged 🎉 * `ZMod.inv_coe_unit`: unchanged 🎉 * `Ideal.Filtration.submodule_fg_iff_stable`: 343 ms before, 197 ms after 🎉 * `t2Space_of_properSMul_of_t1Group`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 10/43 Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Computability/Halting.lean,Mathlib/Data/Num/ZNum.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/Topology/Algebra/ProperAction/Basic.lean 7 1 ['github-actions'] nobody
0-41217
11 hours ago
unknown
unknown
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'] TwoFX
assignee:TwoFX
0-40984
11 hours ago
0-69119
19 hours ago
15-52310
15 days
36015 mcdoll
author:mcdoll
chore(Analysis/SchwartzMap): unify style for `mkCLM` uses Avoid using `refine` for definitions and unify the indentation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 86/85 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean 2 1 ['github-actions'] nobody
0-40507
11 hours ago
0-40207
11 hours ago
0-39833
11 hours
35953 mcdoll
author:mcdoll
feat(Analysis/SchwartzMap): estimates for `Lp` and `BCF` norms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 50/0 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean 2 1 ['github-actions'] nobody
0-40128
11 hours ago
0-40509
11 hours ago
0-68205
18 hours
33935 mckoen
author:mckoen
feat(CategoryTheory/Monoidal/Arrow): define monoidal structure on arrow category defines a monoidal category structure on the arrow category of a cartesian closed category. --- - [x] depends on: #33974 - [x] depends on: #34887 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 487/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Arrow.lean,Mathlib/CategoryTheory/Monoidal/Limits/Shapes/Pullback.lean 3 6 ['dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mckoen'] nobody
0-39788
11 hours ago
4-42976
4 days ago
2-78673
2 days
35920 chrisflav
author:chrisflav
chore(CategoryTheory/Sites): generalize `Precoverage.toGrothendieck_le_iff_le_toPrecoverage` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 78/42 Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/PrecoverageToGrothendieck.lean 2 4 ['chrisflav', 'erdOne', 'github-actions'] nobody
0-37799
10 hours ago
0-37860
10 hours ago
1-31204
1 day
35971 joelriou
author:joelriou
feat(Algebra/Homology): lifting properties for cochain complexes From a degreewise lifting, we obtain a lifting, provided a suitable `1`-cocycle is a coboundary. This will be used in order to verify the axioms of model category structures for categories of bounded below complexes in abelian categories with enough injectives. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
172/0 Mathlib.lean,Mathlib/Algebra/Homology/ModelCategory/Lifting.lean 2 1 ['github-actions'] nobody
0-36664
10 hours ago
0-36726
10 hours ago
0-44269
12 hours
35900 matthewjasper
author:matthewjasper
chore: Fix non-defeq diamonds on OrderDual This only makes changes to fix the diamonds, rather than the general defeq abuse with `OrderDual`. --- - [ ] depends on: #35995 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 213/116 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Action/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Synonym.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Module/Synonym.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Order/Ring/Synonym.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Data/Nat/Cast/Synonym.lean,Mathlib/Order/Lattice.lean 13 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-35454
9 hours ago
0-32333
8 hours ago
2-15041
2 days
35581 mpenciak
author:mpenciak
feat(RingTheory/MvPolynomial): MvPolynomial is isomorphic to the direct sum of its homogeneous submodules This PR closes a TODO in `Mathlib/RingTheory/MvPolynomial/Homogeneous.lean`. It defines the equivalence `MvPolynomial σ R ≃ₐ[R] ⨁ i, homogeneousSubmodule σ R i`, and the more general statement for weighted homogeneous submodules. Note: I'm not sure this is actually worth merging, as it's basically already contained in the `weightedGradedAlgebra` typeclass... But having this exact statement could be helpful so it could go either way? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory documentation easy 7/5 Mathlib/RingTheory/MvPolynomial/Homogeneous.lean 1 4 ['chrisflav', 'github-actions', 'mpenciak'] chrisflav
assignee:chrisflav
0-35336
9 hours ago
4-70756
4 days ago
5-390
5 days
26303 joelriou
author:joelriou
feat(AlgebraicTopology): the fundamental lemma of homotopical algebra Given a model category `C`, the fundamental lemma of homotopical algebra (Quillen) shows that it is possible to compute morphisms in the homotopy category of `C` (the localized category with respect to weak equivalences) from `X` to `Y` as a quotient of the type of morphisms from `X` to `Y` in `C` modulo an homotopy relation, when `X` is cofibrant and `Y` is fibrant. --- - [x] depends on: #34643 - [x] depends on: #34642 - [x] depends on: #34641 - [x] depends on: #33956 - [x] depends on: #33955 - [x] depends on: #33084 - [x] depends on: #33085 - [x] depends on: #33086 - [x] depends on: #33087 - [x] depends on: #33088 - [x] depends on: #26171 - [x] depends on: #26166 - [x] depends on: #26365 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology t-category-theory maintainer-merge 168/2 Mathlib.lean,Mathlib/AlgebraicTopology/ModelCategory/CofibrantObjectHomotopy.lean,Mathlib/AlgebraicTopology/ModelCategory/FibrantObjectHomotopy.lean,Mathlib/AlgebraicTopology/ModelCategory/FundamentalLemma.lean,Mathlib/AlgebraicTopology/ModelCategory/Homotopy.lean 5 12 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-34507
9 hours ago
4-8508
4 days ago
6-62372
6 days
34906 seewoo5
author:seewoo5
feat(NumberTheory/Bernoulli): von Staudt-Clausen theorem --- Rado's proof ("A New Proof of a Theorem of v. Staudt", JLMS 1935) of [von Staudt-Clausen theorem](https://en.wikipedia.org/wiki/Von_Staudt%E2%80%93Clausen_theorem). Initially written by AxiomProver (see commit 97a308e) with further golfs with Claude and Codex. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory large-import 496/4 Mathlib/NumberTheory/Bernoulli.lean,docs/references.bib 2 2 ['github-actions', 'kckennylau'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-34505
9 hours ago
5-16536
5 days ago
9-41876
9 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'] ocfnash
assignee:ocfnash
0-34504
9 hours ago
17-54479
17 days ago
17-54105
17 days
35328 astrainfinita
author:astrainfinita
chore: use `IsLUB` `IsGLB` in `CompleteLattice` --- - [ ] depends on: #35297 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 322/415 Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Set/BooleanAlgebra.lean,Mathlib/Geometry/Convex/Cone/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/CompleteLattice/Lemmas.lean,Mathlib/Order/CompleteLattice/PiLex.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/Concept.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Copy.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Hom/Order.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/Nucleus.lean,Mathlib/Order/ScottContinuity/Prod.lean,Mathlib/Order/SupClosed.lean,Mathlib/Probability/Process/Filtration.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/Topology/Algebra/Group/GroupTopology.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Algebra/Ring/Basic.lean,Mathlib/Topology/UniformSpace/Basic.lean 39 20 ['astrainfinita', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] Vierkantor
assignee:Vierkantor
0-34504
9 hours ago
5-55995
5 days ago
8-14882
8 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'] YaelDillies
assignee:YaelDillies
0-34503
9 hours ago
16-31807
16 days ago
16-31433
16 days
35401 joelriou
author:joelriou
feat(CategoryTheory/Sites): the equivalence between `DescentData'` and `DescentData` Co-authored-by: Christian Merten --- - [x] depends on: #35393 - [x] depends on: #35396 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 64/3 Mathlib/CategoryTheory/Sites/Descent/DescentDataPrime.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] adamtopaz
assignee:adamtopaz
0-34502
9 hours ago
3-55427
3 days ago
3-55053
3 days
35599 tb65536
author:tb65536
feat(RingTheory/Lasker): second uniqueness theorem for primary decomposition This PR proves the second uniqueness theorem for primary decomposition. --- - [x] depends on: #34221 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
84/6 Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/IsPrimary.lean,Mathlib/RingTheory/Lasker.lean 3 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] riccardobrasca
assignee:riccardobrasca
0-34501
9 hours ago
3-48701
3 days ago
6-53092
6 days
35607 gasparattila
author:gasparattila
fix(Tactic): make `eta_expand` idempotent The docstring of `eta_expand` says that it puts terms into a normal form, implying that it is idempontent, however, this is not the case in some tricky cases. This PR changes `eta_expand` so that it gives the normal form in one step. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 57/16 Mathlib/Tactic/DefEqTransformations.lean,MathlibTest/DefEqTransformations.lean 2 2 ['github-actions', 'mathlib-bors'] adamtopaz
assignee:adamtopaz
0-34500
9 hours ago
9-42690
9 days ago
9-42316
9 days
35661 chrisflav
author:chrisflav
feat(Geometry/Manifold): a smooth map induces a morphism of locally ringed spaces --- I have put things in the `IsManifold` namespace, because `IsManifold.locallyRingedSpace` is in that namespace. It seems to me that this namespace is not very fitting, because `IsManifold` is not mentioned once. Since I am unfamiliar with this part of the library, I refrained from changing it, but I am happy to do so if preferred. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-differential-geometry 152/1 Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Geometry/Manifold/Sheaf/LocallyRingedSpace.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean 4 2 ['chrisflav', 'github-actions'] ocfnash
assignee:ocfnash
0-34499
9 hours ago
8-40376
8 days ago
8-40002
8 days
35693 euprunin
author:euprunin
chore: avoid passing explicit lemmas to `grind` and (terminal) `simp_all` where unnecessary The goal of this 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 <30 ms considered measurement noise): * `SimpleGraph.Walk.IsCycle.getVert_injOn`: 684 ms before, 596 ms after 🎉 * `List.HasPeriod.gcd`: 846 ms before, 807 ms after 🎉 * `List.Sublist.orderedInsert_sublist`: unchanged 🎉 * `Affine.Simplex.exists_forall_dist_eq_iff_exists_excenterExists_and_eq_excenter`: unchanged 🎉 * `Matrix.pow_apply_pos_iff_nonempty_path`: unchanged 🎉 * `RootPairing.Hom.coweightHom_injective`: unchanged 🎉 * `RootPairing.isReduced_iff'`: unchanged 🎉 * `Set.Ico_eq_Ico_iff`: unchanged 🎉 * `Set.Ioc_eq_Ioc_iff`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/9 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/List/Sort.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/LinearAlgebra/Matrix/Irreducible/Defs.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/Order/Interval/Set/LinearOrder.lean 8 1 ['github-actions'] dupuisf
assignee:dupuisf
0-34498
9 hours ago
7-47195
7 days ago
7-46821
7 days
35702 plp127
author:plp127
feat: uniqueness of partial fraction decomposition We prove a uniqueness theorem for each existence theorem in the file. --- - [x] depends on: #35000 - [x] depends on: #35703 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
254/18 Mathlib/Algebra/Polynomial/PartialFractions.lean 1 3 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] dagurtomas
assignee:dagurtomas
0-34497
9 hours ago
3-41718
3 days ago
3-68758
3 days
35731 euprunin
author:euprunin
chore: golf using `exact`/`simpa` The goal of this 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 <30 ms considered measurement noise): * `AlgebraicGeometry.Scheme.Cover.exists_of_trans_eq_trans`: unchanged 🎉 * `AlgebraicGeometry.compactSpace_iff_exists`: unchanged 🎉 * `SimplexCategory.eq_id_of_mono`: unchanged 🎉 * `SimplexCategory.eq_id_of_epi`: unchanged 🎉 * `CategoryTheory.GrothendieckTopology.isIso_toPlus_of_isSheaf`: unchanged 🎉 * `CategoryTheory.Functor.isTriangulated_of_op`: unchanged 🎉 * `SimpleGraph.chromaticNumber_top`: unchanged 🎉 * `SimpleGraph.Subgraph.singletonSubgraph_connected`: unchanged 🎉 * `SimpleGraph.Walk.exists_length_eq_one_iff`: unchanged 🎉 * `Turing.TM2to1.addBottom_modifyNth`: unchanged 🎉 * `IsNoetherian.iff_fg`: unchanged 🎉 * `contMDiff_inclusion`: unchanged 🎉 * `FermatLastTheoremForThree_of_FermatLastTheoremThreeGen`: 146 ms before, 91 ms after 🎉 * `FermatLastTheoremForThreeGen.lambda_sq_dvd_c`: 313 ms before, 218 ms after 🎉 * `WithTop.isGLB_sInf`: unchanged 🎉 * `WithBot.succ_eq_bot`: 56 ms before, <30 ms after 🎉 * `WithTop.pred_eq_top`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 22/88 Mathlib/AlgebraicGeometry/Cover/Directed.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/CategoryTheory/Sites/Plus.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Functor.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Basic.lean,Mathlib/FieldTheory/Finiteness.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/NumberTheory/FLT/Three.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/SuccPred/WithBot.lean 13 22 ['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] robin-carlier
assignee:robin-carlier
0-34496
9 hours ago
3-83911
3 days ago
6-45690
6 days
35732 TJHeeringa
author:TJHeeringa
feat: Added reproducing kernels Develops the basic theory of reproducing kernels, which underlies the reproducing kernel Hilbert spaces. It shows that the kernels form an ordered semiring and common ways of constructing kernels from other kernels. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 1193/0 Mathlib.lean,Mathlib/KernelTheory/Kernel.lean 2 5 ['TJHeeringa', 'github-actions', 'joneugster', 'vihdzp'] j-loreaux
assignee:j-loreaux
0-34496
9 hours ago
6-3897
6 days ago
6-3523
6 days
35759 joelriou
author:joelriou
feat(CategoryTheory/Elements): functors to types are colimits of corepresentable functors If `F : C ⥤ Type w` and `C` is locally `w`-small, then `F` identifies a colimit of corepresentable functors, which we also state as an isomorphism with the composition `shrinkYoneda ⋙ (Functor.whiskeringLeft _ _ _).obj (CategoryOfElements.π F).op ⋙ colim`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 101/1 Mathlib/CategoryTheory/Limits/Presheaf.lean 1 10 ['github-actions', 'joelriou', 'robin-carlier'] dagurtomas
assignee:dagurtomas
0-34494
9 hours ago
3-82477
3 days ago
5-74117
5 days
35760 astrainfinita
author:astrainfinita
chore: deprecate `ConditionallyCompleteLinearOrderedField` Use the new mixin typeclass instead. Also, move the API for conditionally complete linear ordered fields into the `ConditionallyCompleteLinearOrderedField` namespace, and make instances scoped to this namespace. We should usually use `ℝ` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
82/30 Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Data/Real/CompleteField.lean 2 3 ['astrainfinita', 'github-actions', 'leanprover-radar'] Vierkantor
assignee:Vierkantor
0-34493
9 hours ago
5-81625
5 days ago
5-81251
5 days
26394 winstonyin
author:winstonyin
feat: existence of local flows on manifolds This PR continues the work from #21777. Original PR: https://github.com/leanprover-community/mathlib4/pull/21777 Transfer the existence theorem of local flows on vector spaces to manifolds. The precise statement is: > If a vector field `v` on a manifold `M` is continuously differentiable at an interior point `x₀`, then for a given `t₀` there exists a neighbourhood `u` of `x₀`, a positive `ε`, and `γ : M → ℝ → M` such that `γ x` is an integral curve of `v` on `(t₀ - ε, t₀ + ε)` for all `x ∈ u`. This is powerful because all curves `γ x` (each with initial condition `x ∈ u`) share the same existence time interval `(t₀ - ε, t₀ + ε)`, rather than each curve having its own `ε`. This will allow us to show that $C^1$ vector fields on compact manifolds always have global integral curves / global flows. Any suggestions to shorten the proof or split out useful lemmas are welcome! - [x] depends on: #26392 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 135/52 Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Order/Filter/Prod.lean 3 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'winstonyin'] nobody
0-34492
9 hours ago
unknown
unknown
35775 IvanRenison
author:IvanRenison
feat(Data/List): add theorem `length_eq_two'` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 3/0 Mathlib/Data/List/Basic.lean 1 2 ['IvanRenison', 'github-actions', 'vihdzp'] Vierkantor
assignee:Vierkantor
0-34492
9 hours ago
5-45751
5 days ago
5-53146
5 days
35786 DavidLedvinka
author:DavidLedvinka
feat(Order): Add simp lemma for `IsRelUpperSet` and `IsRelLowerSet` This is useful in scenarios when `simp` can simplify the relation to true. t-order 8/0 Mathlib/Order/UpperLower/Relative.lean 1 3 ['DavidLedvinka', 'eric-wieser', 'github-actions'] bryangingechen
assignee:bryangingechen
0-34491
9 hours ago
4-70093
4 days ago
5-37741
5 days
35819 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForm/EisensteinSeries/E2): Prove E2 is MDifferentiable Proof that E2 is MDifferentiable. This proof comes from the Sphere packing project where it was produced by Gauss. Co-authored-by: Math.inc's Gauss --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 40/0 Mathlib.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/MDifferentiable.lean 2 3 ['github-actions', 'joneugster', 'seewoo5'] tb65536
assignee:tb65536
0-34488
9 hours ago
4-63467
4 days ago
4-63093
4 days
35820 smmercuri
author:smmercuri
feat: unit lemmas and embedding for `FiniteAdeleRing` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 33/0 Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean 1 1 ['github-actions'] alreadydone
assignee:alreadydone
0-34487
9 hours ago
4-63379
4 days ago
4-63005
4 days
35824 tb65536
author:tb65536
refactor(GroupTheory/Nilpotent): add junk value to `Group.nilpotencyClass` This PR adds a junk value to `Group.nilpotencyClass` (similar to `nilpotencyClass` for rings). Can't hurt, since it only makes things more general, and occasionally allows for simpler statements. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
38/19 Mathlib/GroupTheory/Nilpotent.lean 1 1 ['github-actions'] riccardobrasca
assignee:riccardobrasca
0-34487
9 hours ago
4-54577
4 days ago
4-54203
4 days
35828 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/GradedAlgebra/Homogeneous/Hom): homogeneous algebra maps and evaluation Define the notion of homogeneous algebra morphism between algebra maps. Prove that the evaluation of a (weighted) homogeneous multivariate polynomial at adequate elements of a graded algebra define a homogeneous algebra morphism. co-authored with @mariainesdff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 74/0 Mathlib.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Hom.lean 3 2 ['github-actions', 'joneugster'] mattrobball
assignee:mattrobball
0-34486
9 hours ago
4-38402
4 days ago
4-38028
4 days
35842 WenrongZou
author:WenrongZou
feat(MvPowerSeries): subst_C and omit some finiteness of index set --- I add some elementary lemma related to substitution of multi variate power series and omit some finiteness of index set (for example in `map_subst` and `HasSubst.X_pow`). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 78/18 Mathlib/Data/Finsupp/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Expand.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 5 2 ['WenrongZou', 'github-actions'] chrisflav
assignee:chrisflav
0-34485
9 hours ago
3-72780
3 days ago
4-12254
4 days
35847 euprunin
author:euprunin
chore: golf proofs This PR removes unused `have`/`haveI`/`let`/`letI` calls. The goal of this 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 <30 ms considered measurement noise): * `GenContFract.compExactValue_correctness_of_stream_eq_some`: unchanged 🎉 * `Finset.disjoint_range_addLeftEmbedding`: unchanged 🎉 * `CategoryTheory.ComposableArrows.IsComplex.epi_cokerToKer'`: unchanged 🎉 * `CategoryTheory.ComposableArrows.IsComplex.mono_cokerToKer'`: unchanged 🎉 * `ComplexShape.QFactorsThroughHomotopy_of_exists_prev`: unchanged 🎉 * `AlgebraicGeometry.IsAffineOpen.primeIdealOf_genericPoint`: unchanged 🎉 * `AlgebraicGeometry.functionField_isFractionRing_of_isAffineOpen`: unchanged 🎉 * `AlgebraicGeometry.smooth_of_grpObj_of_isAlgClosed`: 266 ms before, 232 ms after 🎉 * `AlgebraicGeometry.Scheme.ker_morphismRestrict_ideal`: 570 ms before, 538 ms after 🎉 * `AlgebraicGeometry.Scheme.IdealSheafData.isLocalization_away`: unchanged 🎉 * `AlgebraicGeometry.affineAnd_isLocal`: unchanged 🎉 * `AlgebraicGeometry.IsZariskiLocalAtTarget.of_iSup_eq_top`: unchanged 🎉 * `AlgebraicGeometry.HasAffineProperty.iff_of_isAffine`: unchanged 🎉 * `AlgebraicGeometry.isDominant_of_of_appTop_injective`: unchanged 🎉 * `AlgebraicGeometry.IsPreimmersion.SpecMap_iff`: unchanged 🎉 * `AlgebraicGeometry.quasiCompact_affineProperty_iff_quasiSeparatedSpace`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. This 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/) 0/23 Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/Homology/ExactSequenceFour.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/Group/Smooth.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Subscheme.lean,Mathlib/AlgebraicGeometry/Morphisms/AffineAnd.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Preimmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean 12 6 ['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] JovanGerb
assignee:JovanGerb
0-34484
9 hours ago
4-13397
4 days ago
4-13466
4 days
35866 gad-wiseman
author:gad-wiseman
feat(Topology/Homotopy/Basic): maps homotopic rel S agree on S --- This adds an easy lemma showing maps that are `HomotopicRel` a set agree on it. t-topology new-contributor 5/0 Mathlib/Topology/Homotopy/Basic.lean 1 2 ['github-actions'] dagurtomas
assignee:dagurtomas
0-34482
9 hours ago
3-66619
3 days ago
3-75000
3 days
34863 JovanGerb
author:JovanGerb
feat(to_dual): support recursively reordering arguments This PR implements the feature of recursively reordering arguments of arguments in `to_dual`. All of the material on reorderings has been put in the new file `Mathlib.Tactic.Translate.Reorder`. Ideally, when tagging a structure with `to_dual`, it will try to automatically add the correct `reorder` arguments. But this is only a small quality of life improvement, so I will leave that for a potential future PR. Currently, you have to manually re-tag the projections and constructor if you want them to get a `reorder`. This PR also improves the trace messages of `trace.translate_detail`. This PR also adds new error messages for when the given `(reorder := ...)` is malformed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 573/379 Mathlib.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/Order/Basic.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Directed.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Lattice.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToDual.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/Reorder.lean,Mathlib/Tactic/Translate/ToDual.lean,MathlibTest/ToDual.lean,MathlibTest/toAdditive.lean 15 7 ['JovanGerb', 'bryangingechen', 'github-actions', 'mathlib-merge-conflicts'] bryangingechen
assignee:bryangingechen
0-32326
8 hours ago
0-29010
7 hours ago
15-33457
15 days
35939 joelriou
author:joelriou
feat(Algebra/Homology): a homology exact sequence for triangles of cochain complexes ... which become distinguished in the derived category. --- - [x] depends on: #35938 - [x] depends on: #35937 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 118/0 Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean 2 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-32035
8 hours ago
0-31436
8 hours ago
0-35193
9 hours
35789 BryceT233
author:BryceT233
feat(RingTheory): add some easy lemmas This PR adds three small helper lemmas needed for the ongoing formalization of the Cohen Structure Theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 8/1 Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean 2 8 ['BryceT233', 'eric-wieser', 'github-actions', 'vihdzp'] riccardobrasca
assignee:riccardobrasca
0-30973
8 hours ago
0-31033
8 hours ago
5-2407
5 days
36019 stepan2698-cpu
author:stepan2698-cpu
chore: update undergrad.yaml Adds links to various algebraic subjects which are listed in undergrad.yaml as missing from mathlib. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 12/12 docs/undergrad.yaml 1 1 ['github-actions'] nobody
0-30862
8 hours ago
0-30333
8 hours ago
0-29959
8 hours
36017 SproutSeeds
author:SproutSeeds
feat(Algebra/Order/BigOperators/Group/Finset): add sum_mul_le_sum_sum_filter_of_le_card_filter ## Summary This PR adds a weighted finite-cover double-counting lemma in `Finset`: - `Finset.sum_mul_le_sum_sum_filter_of_le_card_filter` (`Mathlib/Algebra/Order/BigOperators/Group/Finset.lean:234`) and refactors - `Finset.sum_le_sum_sum_filter_of_forall_exists` (`Mathlib/Algebra/Order/BigOperators/Group/Finset.lean:256`) to be a corollary via `m := fun _ => 1`. ## New theorem ```lean theorem sum_mul_le_sum_sum_filter_of_le_card_filter [DecidableEq ι] [DecidableEq β] (s : Finset ι) (t : Finset β) (R : ι → β → Prop) [DecidableRel R] (w m : ι → ℕ) (hcover : ∀ x ∈ s, m x ≤ #(t.filter (fun y => R x y))) : (∑ x ∈ s, m x * w x) ≤ ∑ y ∈ t, ∑ x ∈ s.filter (fun x => R x y), w x ``` ## Motivation This packages a reusable double-counting pattern: - per-element lower bounds on incidence multiplicity (`m x`) - weighted accumulation over incidences - a global lower bound obtained by swapping/filtering finite sums. The existing existential-cover inequality is recovered as the `m := 1` special case. ## Non-sunflower use cases 1. Incidence bounds in finite bipartite settings with minimum left-degree constraints. 2. Weighted charging arguments where each object must be charged at least `m x` times. ## API / compatibility - No imports added. - No existing theorem names changed. - No breaking API change; one existing theorem is only refactored to use the new lemma. ## Verification ```bash ~/.elan/bin/lake env lean Mathlib/Algebra/Order/BigOperators/Group/Finset.lean ``` ## AI usage I used AI tools for drafting/exploration, then manually selected the final statements, edited the Lean code, and ran local checks. new-contributor t-algebra
label:t-algebra$
40/0 Mathlib/Algebra/Order/BigOperators/Group/Finset.lean 1 3 ['github-actions'] nobody
0-30798
8 hours ago
unknown
unknown
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/) 56/33 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 10 ['github-actions', 'kbuzzard', 'kim-em', 'urkud'] dwrensha
assignee:dwrensha
0-28900
8 hours ago
0-27766
7 hours ago
11-62121
11 days
36020 SproutSeeds
author:SproutSeeds
feat(Combinatorics/Enumerative/DoubleCounting): add weighted bipartite lower bound ## Summary This PR adds a weighted bipartite double-counting lower bound in `Mathlib/Combinatorics/Enumerative/DoubleCounting.lean`: - `Finset.sum_mul_le_sum_sum_bipartiteBelow_of_le_card_bipartiteAbove` ## New theorem ```lean theorem sum_mul_le_sum_sum_bipartiteBelow_of_le_card_bipartiteAbove [∀ a b, Decidable (r a b)] (w m : α → ℕ) (hm : ∀ a ∈ s, m a ≤ #(t.bipartiteAbove r a)) : (∑ a ∈ s, m a * w a) ≤ ∑ b ∈ t, ∑ a ∈ s.bipartiteBelow r b, w a ``` ## Motivation Existing double-counting lemmas in this file are cardinality-based with constant bounds. This theorem provides the weighted/inhomogeneous variant: each left vertex `a` can carry its own multiplicity lower bound `m a` and weight `w a`. This packages a reusable pattern for incidence arguments where lower bounds vary across vertices. ## Use cases 1. Weighted incidence counting in bipartite relations with non-uniform degree guarantees. 2. Charging arguments where each object contributes weight and has an object-dependent minimum witness multiplicity. ## API / compatibility - No existing theorem names changed. - No imports added. - Additive change only. ## Verification ```bash ~/.elan/bin/lake build Mathlib.Combinatorics.Enumerative.DoubleCounting ~/.elan/bin/lake env lean Mathlib/Combinatorics/Enumerative/DoubleCounting.lean ``` ## AI usage I used AI tools for exploration/drafting, then manually selected the statement, edited the Lean code, and ran local checks. new-contributor t-combinatorics 22/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean 1 2 ['github-actions'] nobody
0-28099
7 hours ago
unknown
unknown
35906 scp020
author:scp020
feat(Combinatorics/SimpleGraph/Walks): add Walk.IsChord and Walk.IsChordless This PR adds a new file: - `Mathlib/Combinatorics/SimpleGraph/Walks/Chords` and introduces two definitions for closed walks in simple graphs: - `SimpleGraph.Walk.IsChord` - `SimpleGraph.Walk.IsChordless` Motivation: These notions are standard in graph theory and are useful for reasoning about induced cycles (that is, chordless cycles). In particular, they provide a clean interface for structural arguments where one chooses a chordless cycle and then studies how the rest of the graph interacts with it. Design: - `Walk.IsChord` says that `v` and `w` are vertices of a closed walk `p`, that they are adjacent in the ambient graph, and that this ambient edge is not an edge of `p`. - `Walk.IsChordless` says that `p` is a cycle and that every ambient edge between two vertices of `p` already appears in `p`. This PR also includes a small API for these definitions: - `SimpleGraph.Walk.IsChord.symm` - `SimpleGraph.Walk.isChord_iff` - `SimpleGraph.Walk.IsChordless.isCycle` - `SimpleGraph.Walk.IsChordless.mem_edges` - `SimpleGraph.Walk.IsChordless.not_isChord` - `SimpleGraph.Walk.isChordless_iff_forall_not_isChord` The file is placed in `namespace SimpleGraph.Walk` to match the existing `Walk`-based predicates and lemmas in the simple graph library. This PR is intentionally small: it adds the core definitions together with basic non-mechanical API that supports direct mathematical use. Validation: - `lake build Mathlib.Combinatorics.SimpleGraph.Walks.Chords` - `lake exe lint-style Mathlib/Combinatorics/SimpleGraph/Walks/Chords.lean` - `#lint` Discussion on Zulip: [Zulip link](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Walk.2EIsChordless.20live.20in.20mathlib.3F/with/575277309) authored-by: Tianyi Zhao --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 82/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Chords.lean 2 2 ['github-actions'] nobody
0-24430
6 hours ago
0-24494
6 hours ago
0-56985
15 hours
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 1101/0 Mathlib.lean,Mathlib/Combinatorics/Quiver/CayleyExamples.lean,Mathlib/Combinatorics/Quiver/Schreier.lean,Mathlib/Combinatorics/SimpleGraph/CayleySumGraph.lean 4 34 ['SnirBroshi', 'ZRTMRH', 'github-actions', 'tb65536'] nobody
0-20476
5 hours ago
6-50063
6 days ago
13-29551
13 days
35733 mkaratarakis
author:mkaratarakis
feat: Algebraic setup and matrix coefficients for Gelfond-Schneider theorem This PR introduces the foundational algebraic setup and coefficient bounds required for the proof of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), which establishes that for algebraic numbers $\alpha \neq 0, 1$ and irrational algebraic $\beta$, the number $\alpha^\beta$ is transcendental. Following the contradiction argument presented in Loo-Keng Hua's "Introduction to Number Theory" (Chapter 17.9, 490 -493) Gelfond's Proof), this file constructs the common number field $K$ and sets up the scaled algebraic integers for the auxiliary linear system. This system will later be solved via Siegel's lemma (Lemma 8.2, 490, Hua). This PR is essentially the first half of page 490 in the book. The proof proceeds by assuming $\gamma = \alpha^\beta$ is algebraic, meaning $\alpha$, $\beta$, and $\gamma$ all lie in an algebraic field $K$ of degree $h$. 1. Bundles the common number field $K$, the complex embeddings, and the algebraic preimages $\alpha', \beta', \gamma'$, alongside the core hypotheses of the theorem. 2. Defines the field degree $h = [K : \mathbb{Q}]$, and bounds $m = 2h + 2$ and $n = q^2 / (2m)$ to control the dimensions of the linear system. 3. Defines $c_1$, a natural number chosen so that $c_1 \alpha$, $c_1 \beta$, and $c_1 \gamma$ are algebraic integers in $K$. We prove numerous bounding and integrality lemmas (`isIntegral_c₁α`, `isInt_β_bound`, etc.). 4. Formalizes the core algebraic coefficients $(a+b\beta)^k \alpha^{al} \gamma^{bl}$ which appear in the evaluation of the derivatives of the auxiliary function $R(x)$. 5. By scaling the system by $c_1^{n-1+2mq}$, we successfully restrict the entries of our linear system matrix `A` entirely to the ring of integers $\mathcal{O}_K$, preparing it for the application of Siegel's lemma. 6. House Bounds (`c₂`) : Establishes the foundational base integer $c_2$ to bound the absolute values of the conjugates (houses) of our coefficients. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 416/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean 2 2 ['github-actions'] nobody
0-20271
5 hours ago
3-52011
3 days ago
6-49152
6 days
35781 mcdoll
author:mcdoll
feat(Analysis/SchwartzMap): translation of arguments We only define the translation with subtraction, because this is more common in applications. Co-authored-by: Michael Douglas --- From https://github.com/mrdouglasny/OSforGFF and made mathlib ready by me [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 44/11 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] urkud
assignee:urkud
0-18655
5 hours ago
0-17963
4 hours ago
5-10304
5 days
35950 kim-em
author:kim-em
feat(Tactic): add inferInstanceAs% to fix type leakage This PR adds `inferInstanceAs%`, a drop-in replacement for `inferInstanceAs` that prevents "type leakage" in synthesized instances. When `inferInstanceAs (SomeClass A)` is used to define `SomeClass B` (where `B` is a non-reducible alias for `A`), the synthesized instance may contain lambda binder domains (and other sub-expressions) referring to `A` or deeper unfoldings instead of `B`. This is invisible at `default` transparency but causes `isDefEq` failures at `reducibleAndInstances` transparency — which is the level used by `grind`'s `checkInst`. `inferInstanceAs%` fixes this by recursively normalizing the constructor tree: it WHNFs to expose the constructor, patches carrier type parameters via `isDefEq` matching against the unfolding chain, recursively processes instance-implicit fields, and replaces lambda binder domains in function fields. As a demonstration, this fixes the `grind` failure in `FiniteResidueField` that was worked around with `#adaptation_note` and a manual proof on `nightly-testing`. 🤖 Prepared with Claude Code 383/12 Mathlib.lean,Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Tactic.lean,Mathlib/Tactic/InferInstanceAsPercent.lean,MathlibTest/InferInstanceAsPercent.lean 5 29 ['JovanGerb', 'astrainfinita', 'github-actions', 'kim-em'] nobody
0-17840
4 hours ago
unknown
unknown
34288 winstonyin
author:winstonyin
feat: Integral curve is smooth in initial condition I prove the local smoothness theorem for integral curves of ODEs on Banach spaces with respect to the initial condition. Serge Lang's _Fundamentals of Differential Geometry_ gives two proofs (Theorem 1.11). The first one is based on Grönwall's inequality. The second one (p. 81 onwards) is based on the implicit function theorem, found by Pugh and Robbin 1968. I've chosen to formalise the second, even though it may be more involved. I wanted to do this as a challenge, and because the second proof also applies to $H^k$ vector fields (Ebin and Marsden 1970), which are not yet in Mathlib. I am open to splitting this up into several smaller PRs. ## Statement Let $f : E \to E$ be a vector field that is $C^n$ at $x_0 : E$ with $n \geq 1$. There exists a neighbourhood $U$ of $x_0$ and time interval $[t_{\mathrm{min}},t_{\mathrm{max}}]$ containing $t_0$ such that for every $x \in U$, there exists an integral curve $\alpha_x : C([t_{\mathrm{min}},t_{\mathrm{max}}], E)$ of $f$ with initial condition $\alpha_x(t_0) = x$, and that $x \mapsto \alpha_x$ is $C^n$. Note that this is not the full smoothness theorem for local flows, which states that the local flow $\alpha : [t_{\mathrm{min}},t_{\mathrm{max}}] \times U \to E$ is $C^n$ at $(t_0, x_0)$. We will prove this in a series of future PRs. ## Proof strategy * Define implicit equation $T_f : E \times C([t_{\mathrm{min}},t_{\mathrm{max}}],E) \to C([t_{\mathrm{min}},t_{\mathrm{max}}],E)$ so that $T(x,\alpha) = 0$ implies that $\alpha$ is an integral curve of $f$ with initial condition $x$. * Prove implicit equation is $C^n$ if $f$ is $C^n$. * Prove $\partial_\alpha T_f$ is invertible for some choice of $[t_{\mathrm{min}},t_{\mathrm{max}}]$. * Extract the local flow $(x : E) \mapsto (\alpha_x : C([t_{\mathrm{min}},t_{\mathrm{max}}],E))$ as the implicit function of $T_f$ around a known integral curve. * Conclude that $x \mapsto \alpha_x$ is $C^n$. ## For reviewers * Where should `Set.Icc.abs_sub_le` go? * Some proofs (marked with TODO) can be shortened after #34120, but I don't want it to be blocking. - [x] depends on: #34860 - [x] depends on: #34861 - [x] depends on: #34862 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 869/0 Mathlib.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean,Mathlib/Analysis/ODE/SmoothFlow.lean,Mathlib/Topology/MetricSpace/Pseudo/Lemmas.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
0-15179
4 hours ago
0-17621
4 hours ago
7-14790
7 days
35946 loefflerd
author:loefflerd
feat(NumberTheory/Modular): interior and closure of fundamental domain Show that the open and closed fundamental domains for the modular group are related by the interior / closure operations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 204/7 Mathlib/Analysis/Complex/UpperHalfPlane/Topology.lean,Mathlib/NumberTheory/Modular.lean 2 1 ['github-actions'] nobody
0-14684
4 hours ago
1-37842
1 day ago
1-37468
1 day
29942 smmercuri
author:smmercuri
feat(InfinitePlace/Completion): embeddings of `w.Completion` factor through embeddings of `v.Completion` when `w` lies over `v` The class `ComplexEmbedding.LiesOver ψ φ` formalises the property that the complex field embedding `φ : L →+* ℂ` restricted to `K` gives `ψ : K →+* ℂ`, whenever `Algebra K L`. If `w : InfinitePlace L` and `v : InfinitePlace K` are such that we have `Algebra v.Completion w.Completion`, then `extensionEmbedding w : L →+* ℂ` restricted to `K` gives `extensionEmbedding v : K →+* ℂ` (provided the completion algebra is well behaved with respect to the base algebra `Algebra K L`). To avoid diamonds arising from propeq instances when `K = L` we do not construct the global instance `Algebra v.Completion w.Completion` from `Algebra K L`, but assume it instead. It is then required to assume the following compatibility assumptions for the main result of this PR to be true: - `IsScalarTower (WithAbs v.1) v.Completion w.Completion` - `ContinuousSMul v.Completion w.Completion` --- - [x] depends on: #27978 - [x] depends on: #29969 - [x] depends on: #29944 - [x] depends on: #34230 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) FLT t-number-theory 85/5 Mathlib/NumberTheory/NumberField/InfinitePlace/Completion.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean 2 8 ['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
0-13996
3 hours ago
0-56403
15 hours ago
54-44192
54 days
26377 Whysoserioushah
author:Whysoserioushah
feat(RingTheory/SimpleRing/TensorProduct): tensor product of a simple algebra and a central simple algebra is simple co-authored-by: @jjaassoonn --- t-ring-theory large-import 326/8 Mathlib.lean,Mathlib/RingTheory/SimpleRing/TensorProduct.lean,Mathlib/RingTheory/TwoSidedIdeal/Kernel.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/RingTheory/TwoSidedIdeal/Operations.lean 5 69 ['Ruben-VandeVelde', 'Whysoserioushah', 'eric-wieser', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] kbuzzard
assignee:kbuzzard
0-12158
3 hours ago
13-39431
13 days ago
28-67129
28 days
35988 tb65536
author:tb65536
feat(NumberTheory/Height/Northcott): define Northcott functions This PR defines Northcott functions and provides some API. Extracted from #35918. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory t-order 64/19 Mathlib.lean,Mathlib/GroupTheory/Descent.lean,Mathlib/NumberTheory/Height/Northcott.lean 3 3 ['github-actions', 'tb65536', 'vihdzp'] nobody
0-12154
3 hours ago
0-48075
13 hours ago
0-64446
17 hours
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 320/57 Mathlib.lean,Mathlib/Analysis/Complex/Basic.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,Mathlib/Topology/Algebra/Algebra/Equiv.lean 9 11 ['github-actions', 'j-loreaux', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'urkud'] ADedecker
assignee:ADedecker
0-11642
3 hours ago
0-19704
5 hours ago
25-10738
25 days
35812 khwilson
author:khwilson
feat(MeasureTheory/Group/GeometryOfNumbers): successive minima and existence of a directional basis Define the successive minima of a discrete subgroup of a real vector space with respect to a convex set. These invariants show up throughout the geometry of numbers and are the focus of Minkowski's Second Theorem (whose statement is left here with a `proof_wanted`). Note: The key lemma is that the "gauge set" of the convex set is closed. I took the approach of showing that it is sequentially closed. There's an alternative approach via showing it's the union of a finite number of closed sets. I personally thought this approach was more intuitive, but the union approach may result in a slightly shorter proof. Co-authored-by: Yaël Dillies --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 392/33 Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Body.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/MeasureTheory/Group/GeometryOfNumbers.lean 6 3 ['github-actions', 'joneugster'] nobody
0-10065
2 hours ago
4-22730
4 days ago
4-22356
4 days
33355 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph/Connectivity): define vertex connectivity This PR introduces the foundations of vertex connectivity for simple graphs, providing a counterpart to the edge connectivity theory in #32870. ### Main definitions - `SimpleGraph.IsVertexReachable`: vertices remain reachable after removing strictly fewer than `k` other vertices. - `SimpleGraph.IsVertexConnected`: a graph is `k`-vertex-connected if its order is strictly greater than `k` and any two distinct vertices are `k`-vertex-reachable. Includes basic characterizations for $k=0$ and $k=1$, along with monotonicity lemmas (`anti` and `mono`). new-contributor t-combinatorics 198/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/VertexConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/IsolateVerts.lean 3 132 ['0xTerencePrime', 'SnirBroshi', 'YaelDillies', 'github-actions', 'vihdzp'] YaelDillies
assignee:YaelDillies
0-9073
2 hours ago
0-9146
2 hours ago
26-5822
26 days
35997 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra/CFC/Order): conjugating with a star projection in a C*-algebra When `e` is a star projection and `0 ≤ a ≤ e`, we get `e * a * e = a`. Co-authored-by: Jon Bannon [59937998+JonBannon@users.noreply.github.com](mailto:59937998+JonBannon@users.noreply.github.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 19/0 Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-8457
2 hours ago
0-19570
5 hours ago
0-35434
9 hours
35943 SnirBroshi
author:SnirBroshi
feat(Analysis/Complex/Trigonometric): `cos(2x) = 1 - 2 * sin(x)^2` This is one of the 3 commonly used forms of the cosine double-angle formula. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 6/0 Mathlib/Analysis/Complex/Trigonometric.lean 1 4 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
0-7758
2 hours ago
1-43506
1 day ago
1-43132
1 day
35961 joelriou
author:joelriou
feat(CategoryTheory/Sites): fiber functors invert morphisms which become isomorphisms after sheafification The assumptions on the target category are relaxed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 61/46 Mathlib/CategoryTheory/Sites/Point/Basic.lean,Mathlib/CategoryTheory/Sites/Point/Conservative.lean,Mathlib/CategoryTheory/Sites/Point/Skyscraper.lean 3 2 ['github-actions', 'joelriou'] nobody
0-6910
1 hour ago
0-9081
2 hours ago
0-74148
20 hours
35957 Scarlett-le
author:Scarlett-le
feat: add dist_center_midpoint_lt_radius for spheres Adds two results about chords of spheres in Euclidean affine spaces: - `Sphere.inner_vsub_center_midpoint_vsub`: the vector from the center of a sphere to the midpoint of a chord is orthogonal to the chord. - `Sphere.dist_center_midpoint_lt_radius`: the distance from the center to the midpoint of a chord with distinct endpoints is strictly less than the radius. This follows by applying the Pythagorean theorem to the right triangle formed by the center, the midpoint, and an endpoint, using the orthogonality result above. t-euclidean-geometry 30/0 Mathlib/Geometry/Euclidean/Sphere/Basic.lean 1 1 ['github-actions'] nobody
0-5587
1 hour ago
0-5651
1 hour ago
1-6009
1 day
26390 jjdishere
author:jjdishere
feat(Topology/Algebra): Krasner's lemma This PR continues the work from #18444. Original PR: https://github.com/leanprover-community/mathlib4/pull/18444 t-number-theory t-algebra
label:t-algebra$
233/0 Mathlib.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Analysis/Normed/Unbundled/AlgebraNorm.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/Topology/Algebra/Krasner.lean 6 3 ['github-actions', 'jjdishere', 'mathlib4-merge-conflict-bot'] nobody
0-5092
1 hour ago
0-4455
1 hour ago
0-40579
11 hours
36012 grunweg
author:grunweg
chore(Geometry/Manifold/VectorField/Pullback): golf using custom elab… …orators --- Split out from #30357. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 96/143 Mathlib/Geometry/Manifold/VectorField/Pullback.lean 1 1 ['github-actions'] nobody
0-3664
1 hour ago
unknown
unknown
36008 grunweg
author:grunweg
chore(Geometry/Manifold/ContMDiffMFDeriv): golf using custom elaborators --- Split out from #30357. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 59/79 Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean 1 1 ['github-actions'] nobody
0-3612
1 hour ago
unknown
unknown
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 t-algebra
label:t-algebra$
168/5 Mathlib/Data/Real/Archimedean.lean,Mathlib/NumberTheory/Height/Basic.lean 2 8 ['CBirkbeck', 'MichaelStollBayreuth', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
0-3150
52 minutes ago
4-70795
4 days ago
14-66254
14 days
35926 hrmacbeth
author:hrmacbeth
chore(ENNReal/Inv): lemma variants for `norm_cast` The `norm_cast` lemma intertwining division with the `NNReal`-to-`ENNReal` cast has a side condition that the denominator be nonzero. (Otherwise it fails, because division by zero is different in those two types.) So `norm_cast` currently works in this setting only if it can find a suitable nonzeroness hypothesis. We add a variant of the lemma in which the side condition is made instance-implicit, by phrasing it using `NeZero`. This in particular allows `norm_cast` to work for this cast when the denominator is a numeral. For example, this now works, for `↑` the cast from `NNReal` to `ENNReal`: ```lean example (x : NNReal) : (↑x) / 3 = ↑(x / 3) := by norm_cast ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 14/6 Mathlib/Data/ENNReal/Inv.lean,Mathlib/MeasureTheory/Measure/MutuallySingular.lean,MathlibTest/norm_cast.lean 3 4 ['github-actions', 'grunweg'] nobody
0-2845
47 minutes ago
1-56803
1 day ago
1-56429
1 day
35986 grunweg
author:grunweg
feat: tag ContDiff.{continuous,differentiable} as fun_prop The second one requires proving a side condition n \neq 0, which should be fine when passing a discharger. ---------- Open question: will this break existing proofs by making fun_prop try paths with a longer transition depth? It seems to be fine! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 2/0 Mathlib/Analysis/Calculus/ContDiff/Defs.lean 1 4 ['github-actions', 'grunweg', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
0-2845
47 minutes ago
0-1954
26 minutes ago
0-64238
17 hours
34594 kim-em
author:kim-em
feat(LinearAlgebra/ConvexSpace): show AffineSpace is a ConvexSpace This PR shows that every affine space is a convex space, resolving a TODO item in `Mathlib.LinearAlgebra.ConvexSpace`. The key components are: - `AddTorsor.convexCombination`: convex combination using `affineCombination` - `convexCombination_single`: unit law for convex combinations - `convexCombination_assoc`: associativity law (monadic join) - `AddTorsor.instConvexSpace`: the `ConvexSpace R P` instance 🤖 Prepared with Claude Code t-algebra
label:t-algebra$
137/0 Mathlib.lean,Mathlib/LinearAlgebra/ConvexSpace/AffineSpace.lean 2 14 ['github-actions', 'kim-em', 'ocfnash', 'plp127'] ocfnash
assignee:ocfnash
0-2713
45 minutes ago
13-80426
13 days ago
13-43817
13 days
34215 justus-springer
author:justus-springer
feat(FieldTheory/RatFunc): Degree of field extension K(X)/K(f) Prove that the degree of the field extension K(X)/K(f) of a rational function f equals the maximum of the degrees of its numerator and denominator. This is a crucial lemma towards proving Luroth's theorem. This contribution was created as part of the Heidelberg Lean workshop "Formalising algebraic geometry" in November 2025. Co-authored-by: Miriam Philipp @miriamphilipp Co-authored-by: Junyan Xu @alreadydone --- - [x] depends on: #34212 - [x] depends on: #34213 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
219/0 Mathlib.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/RatFunc/Luroth.lean 3 28 ['alreadydone', 'github-actions', 'jcommelin', 'justus-springer', 'mathlib-splicebot', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'tb65536', 'xgenereux'] jcommelin
assignee:jcommelin
0-2628
43 minutes ago
0-3095
45 minutes ago
22-78021
22 days
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 84/0 Mathlib/Probability/Process/Stopping.lean 1 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] RemyDegenne
assignee:RemyDegenne
0-2490
41 minutes ago
0-4515
1 hour ago
57-38969
57 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 248/15 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 18 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'sgouezel', 'yoh-tanimoto'] nobody
0-2100
35 minutes ago
0-12160
3 hours ago
33-12617
33 days
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/) t-number-theory maintainer-merge 251/0 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Sqrt.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/RCLike/Sqrt.lean,Mathlib/NumberTheory/ModularForms/Delta.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 6 49 ['CBirkbeck', 'faenuccio', 'github-actions', 'joneugster', 'loefflerd'] loefflerd
assignee:loefflerd
0-2093
34 minutes ago
0-42032
11 hours ago
11-18508
11 days
36013 pfaffelh
author:pfaffelh
feat(Topology/Compactness/CompactSystem): introduce compact Systems A compact system is a set systems with the property that, whenever a countable intersections of sets in the set system is empty, there is a finite subset of sets with empty intersection. These are needed e.g. in measure theory if one wants to show sigma-additivity of a set function on a ring. Main result: The set of sets which are either compact and closed, or univ, is a compact system. Co-authored-by: Rémy Degenne [remydegenne@gmail.com](mailto:remydegenne@gmail.com) --- Continues work from #25899 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 238/0 Mathlib.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/Topology/Compactness/CompactSystem.lean 4 1 ['github-actions'] nobody
0-1769
29 minutes ago
0-5556
1 hour ago
0-34663
9 hours
36035 EtienneC30
author:EtienneC30
feat: taylor expansion within `univ` This is the special case of [taylor_isLittleO](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Calculus/Taylor.html#taylor_isLittleO)[taylor_isLittleO](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Calculus/Taylor.html#taylor_isLittleO) with `s := univ` so that the filter is just `nhds`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 4/0 Mathlib/Analysis/Calculus/Taylor.lean 1 3 ['EtienneC30', 'github-actions', 'vihdzp'] nobody
0-1751
29 minutes ago
unknown
unknown
35979 xgenereux
author:xgenereux
chore(RatFunc/AsPolynomial): use Valuation.IsTrivialOn and simplify proofs Use the recently added typeclass `Valuation.IsTrivialOn` instead of the explicit hypothesis. I have taken the opportunity to simplify some proofs with grind. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 23/26 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean 5 7 ['github-actions', 'vihdzp', 'xgenereux'] nobody
0-1729
28 minutes ago
0-1790
23 minutes ago
0-69543
19 hours
26293 RemyDegenne
author:RemyDegenne
feat: tightness from convergence of characteristic functions If the characteristic functions of a sequence of measures `μ : ℕ → Measure E` on a finite dimensional inner product space converge pointwise to a function which is continuous at 0, then `{μ n | n}` is tight. --- - [x] depends on: #24846 - [x] depends on: #26292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24949.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24949* t-measure-probability 164/0 Mathlib.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/MeasureTheory/Measure/TightNormed.lean 3 13 ['EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
0-1614
26 minutes ago
0-2376
33 minutes ago
0-11047
3 hours
35372 joelriou
author:joelriou
feat(Algebra/Homology/SpectralObject): `SpectralSequenceMkData` In this file, we introduce a structure `SpectralSequenceMkData` which contains a recipe for the construction of the pages of the spectral sequence attached to a spectral object. --- - [x] depends on: #35357 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
157/0 Mathlib.lean,Mathlib/Algebra/Homology/SpectralObject/HasSpectralSequence.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-1368
22 minutes ago
0-6770
1 hour ago
2-50740
2 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. The fields `Concept.intent` and `Concept.extent` already existed, and these serve as unbundled versions of them. --- - [x] depends on: #30484 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 161/113 Mathlib/Order/Concept.lean 1 50 ['Vierkantor', 'YaelDillies', 'github-actions', 'linesthatinterlace', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] YaelDillies
assignee:YaelDillies
0-1361
22 minutes ago
0-1422
17 minutes ago
31-75617
31 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
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
32-34411
1 month ago
41-13411
41 days ago
51-50243
51 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
32-34408
1 month ago
40-36387
40 days ago
40-51028
40 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
31-34418
1 month ago
35-73176
35 days ago
44-48102
44 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
30-34369
1 month ago
34-11431
34 days ago
58-81740
58 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
27-68210
27 days ago
37-69628
37 days ago
37-69254
37 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
27-44178
27 days ago
27-44178
27 days ago
79-74808
79 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
27-43005
27 days ago
27-43005
27 days ago
80-11656
80 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
26-63284
26 days ago
26-62662
26 days ago
35-63047
35 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
25-34502
25 days ago
29-23037
29 days ago
29-22663
29 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
24-64195
24 days ago
41-16699
41 days ago
41-23153
41 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
23-32469
23 days ago
55-38741
55 days ago
55-70045
55 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
22-34488
22 days ago
27-15857
27 days ago
27-15483
27 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
22-34483
22 days ago
25-84689
25 days ago
27-26170
27 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
21-34227
21 days ago
46-19309
46 days ago
46-18935
46 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
21-9947
21 days ago
21-9060
21 days ago
83-57458
83 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
21-3983
21 days ago
53-12158
53 days ago
73-41479
73 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
20-34334
20 days ago
29-1994
29 days ago
32-49398
32 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
20-34330
20 days ago
28-74167
28 days ago
28-73793
28 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
19-70750
19 days ago
19-70127
19 days ago
19-70745
19 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
17-74768
17 days ago
17-74123
17 days ago
30-74943
30 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
14-48348
14 days ago
14-49792
14 days ago
20-53417
20 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
14-27952
14 days ago
14-27952
14 days ago
21-57654
21 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
13-40512
13 days ago
17-18858
17 days ago
26-45356
26 days
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
13-35981
13 days ago
13-35230
13 days ago
108-66712
108 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'] b-mehta
assignee:b-mehta
11-34507
11 days ago
23-57716
23 days ago
23-57342
23 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'] RemyDegenne
assignee:RemyDegenne
10-34504
10 days ago
13-62920
13 days ago
13-62546
13 days
34966 Deep0Thinking
author:Deep0Thinking
feat(MeasureTheory): add `continuousWithinAt_Ici/Iic_primitive_Ioi/Iio` and `continuousOn_Ici/Iic_primitive_Ioi/Iio/Ici/Iic` This PR proves: - `continuousWithinAt_Ici/Iic_primitive_Ioi/Iio` - `continuousOn_Ici/Iic_primitive_Ioi/Iio/Ici/Iic` - `integral_Ioi_sub_Ioi`, `integral_Ioi_sub_Ioi'`, `integral_Iio_sub_Iio`, `integral_Iio_sub_Iio'` - `Ioi_diff_Ioc` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 125/1 Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/Order/Interval/Set/LinearOrder.lean 3 14 ['CoolRmal', 'Deep0Thinking', 'github-actions'] RemyDegenne
assignee:RemyDegenne
9-62959
9 days ago
9-62466
9 days ago
21-85899
21 days
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
8-50517
8 days ago
8-49925
8 days ago
23-9760
23 days
35504 JoaBjo
author:JoaBjo
feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property Add the main analytic results for the exponential distribution: - moment-generating function `mgf id (expMeasure r) t = r / (r - t)` for `t < r` - mean `∫ x, x ∂(expMeasure r) = r⁻¹` - variance `Var[id; expMeasure r] = r⁻¹ ^ 2` - `ℒp` membership for all `p` - tail probability `P(X > x) = exp (-(r * x))` - memoryless property `P(X > s + t | X > s) = P(X > t)` The MGF is computed by reducing to the known improper integral `∫ exp(c * x)` on `Ioi`, and integrability is deduced by contradiction from the positive closed-form value. The mean and variance are computed via the Gamma function integral `∫₀^∞ x^(n-1) exp(-r x) dx = Γ(n) / rⁿ`. The memoryless property follows from the exponential identity `exp(-(r(s+t))) = exp(-rt) * exp(-rs)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 200/0 Mathlib/Probability/Distributions/Exponential.lean 1 6 ['JoaBjo', 'Timeroot', 'github-actions'] kex-y
assignee:kex-y
8-34507
8 days ago
11-48046
11 days ago
12-52900
12 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 12 ['SnirBroshi', 'github-actions', 'themathqueen', 'vihdzp'] nobody
8-8919
8 days ago
8-8195
8 days ago
22-5727
22 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'] kmill
assignee:kmill
7-34506
7 days ago
23-32989
23 days ago
31-33414
31 days
34599 cameronfreer
author:cameronfreer
feat(Logic/Equiv/Fintype): generalize toCompl and exists_extending_pair to finite source Generalize the Equiv subtype-extension API so it only needs finiteness of the source subtype, then use that to drastically simplify `Equiv.Perm.isMultiplyPretransitive`. ### Changes to `Logic/Equiv/Fintype.lean` * **`Equiv.toCompl`**: generalize from `[Finite α]` to `[Finite {x | p x}]`. New proof (due to tb65536) uses finset symmetric differences to avoid needing finiteness of the ambient type. * **`Equiv.extendSubtype`** and related lemmas: adapt to `[Finite {x | p x}]`. * **`Equiv.Perm.exists_extending_pair`**: strengthen from `[Finite β]` to `[Finite α]`. Given two injective functions `f, g : α → β` where `α` is finite, there exists `σ : Perm β` with `σ ∘ f = g`. The target `β` can now be infinite. ### Changes to `MultipleTransitivity.lean` * **`Equiv.Perm.isMultiplyPretransitive`**: replace ~70-line manual bijectivity construction with a two-line proof via `exists_smul_eq_embedding`. * **`exists_smul_eq_embedding`**: rewire to use `exists_extending_pair` directly (removing the old cardinal-arithmetic proof `exists_extending_pair_of_finite_source`). ### Application Used in formalizing de Finetti's theorem (exchangeability ⇒ contractability): https://github.com/cameronfreer/exchangeability/blob/03a854a2/Exchangeability/Contractability.lean#L459 Co-authored-by: tb65536 t-group-theory new-contributor 49/77 Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/Logic/Equiv/Fintype.lean 2 24 ['LLaurance', 'cameronfreer', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] mattrobball
assignee:mattrobball
7-34505
7 days ago
7-39329
7 days ago
16-75356
16 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'] bryangingechen
assignee:bryangingechen
6-34486
6 days ago
14-27151
14 days ago
27-4303
27 days
35481 FrankieeW
author:FrankieeW
chore(NumberTheory/Zsqrtd): inline duplicated order lemmas into instances This PR follows reviewer feedback by removing duplicated order/additive wrapper theorems in `Zsqrtd` and inlining the proofs into the corresponding typeclass instances. Changes include: - remove redundant wrappers such as `Zsqrtd.le_total`, `Zsqrtd.add_le_add_left`, `Zsqrtd.le_of_add_le_add_left`, `Zsqrtd.add_lt_add_left`, and `Zsqrtd.le_antisymm` - keep the canonical API through `LinearOrder` / ordered additive structure fields - update downstream use in `PellMatiyasevic` to the canonical theorem (`_root_.le_antisymm`) This reduces namespace-level duplicate APIs and keeps proofs aligned with standard typeclass lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-number-theory 26/10 Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean 2 8 ['FrankieeW', 'github-actions', 'vihdzp'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
6-34478
6 days ago
9-41918
9 days ago
12-66970
12 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 67/0 Mathlib/Analysis/Polynomial/MahlerMeasure.lean 1 12 ['github-actions', 'j-loreaux', 'khwilson', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
6-27902
6 days ago
6-26753
6 days ago
16-30326
16 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
5-72365
5 days ago
5-71257
5 days ago
55-83330
55 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. When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 22/0 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 2 ['github-actions'] urkud
assignee:urkud
5-34508
5 days ago
8-43525
8 days ago
14-74703
14 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$
170/6 Mathlib/RepresentationTheory/Character.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RepresentationTheory/Irreducible.lean 4 8 ['github-actions', 'ocfnash', 'stepan2698-cpu'] ocfnash
assignee:ocfnash
4-49644
4 days ago
4-49644
4 days ago
20-30383
20 days
35652 dennj
author:dennj
feat(LinearAlgebra/Matrix): add `Matrix.mul_eq_smul_one_symm` ## Summary - Add `Matrix.mul_eq_smul_one_symm`: if `M * N = c • 1` and `det M ≠ 0`, then `N * M = c • 1` - A scalar generalisation of `mul_eq_one_symm` (the `c = 1` case) to arbitrary scalars, requiring `IsDomain` and `det M ≠ 0` - The proof uses the adjugate identity `adjugate M * M = det M • 1` to derive `det M • (N * M) = det M • (c • 1)`, then cancels `det M` via `mul_left_cancel₀` Theorem imported from: https://github.com/Latinum-Agentic-Commerce/AlgebraicDesignTheory t-algebra new-contributor
label:t-algebra$
28/0 Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean 1 2 ['eric-wieser', 'github-actions'] joelriou
assignee:joelriou
4-34516
4 days ago
8-55516
8 days ago
8-55142
8 days
35662 FrankieeW
author:FrankieeW
feat(NumberTheory/Zsqrtd): add Archimedean instance via le_arch This PR follows a suggestion made in #35606 , #35481 - add `Zsqrtd.le_arch_smul` in `Mathlib/NumberTheory/Zsqrtd/Basic.lean` - use it to provide `instance : Archimedean (ℤ√d)` in the `Nonsquare` section - refactor the proof using symmetry to reduce duplication while keeping checks clean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 43/2 Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean 2 6 ['FrankieeW', 'github-actions', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
4-34513
4 days ago
7-62642
7 days ago
8-36518
8 days
35573 antisubnoous
author:antisubnoous
feat(NumberTheory/Chebyshev): express the Chebyshev theta function in terms of the prime counting function This is a sibling theorem to Chebyshev.primeCounting_eq_theta_div_log_add_integral. --- This is my first mathlib4 commit. I am working through some exercises and results in Apostol's ANT book as a means to practice Lean, and this result seemed like an opportunity to practice the mechanics of contributing to Mathlib because the new theorem mirrors closely the sibling theorem above (both appear in Apostol Theorem 4.3). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 36/1 Mathlib/NumberTheory/Chebyshev.lean 1 2 ['github-actions'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
4-29799
4 days ago
4-28180
4 days ago
10-64561
10 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 46/0 Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/LanguageMap.lean 2 7 ['Citronhat', 'NoneMore', 'fpvandoorn', 'github-actions'] fpvandoorn
assignee:fpvandoorn
3-75657
3 days ago
3-75181
3 days ago
59-81323
59 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 (`powerset_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 81/0 Mathlib/Data/List/Perm/Subperm.lean,Mathlib/Data/List/Sublists.lean,Mathlib/Data/Multiset/Powerset.lean 3 28 ['MixedMatched', 'eric-wieser', 'github-actions', 'joneugster', 'vihdzp'] joneugster
assignee:joneugster
3-69926
3 days ago
10-19977
10 days ago
10-61865
10 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 524/0 Mathlib.lean,Mathlib/Analysis/Normed/Module/Bases.lean,docs/references.bib 3 181 ['Ruben-VandeVelde', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'mike1729', 'sgouezel', 'themathqueen'] sgouezel
assignee:sgouezel
3-66947
3 days ago
3-66954
3 days ago
22-52292
22 days
35653 pepamontero
author:pepamontero
feat: add ChartedSpace structure on orbit space feat: add ChartedSpace structure on orbit space Add topological preliminaries for properly discontinuous group actions, and use them to equip the orbit space `orbitRel.Quotient G M` with a `ChartedSpace` structure. In particular: - Show that the quotient map `Quotient.mk _ : M → orbitRel.Quotient G M` is a covering map and hence a local homeomorphism. - Construct chosen local inverses of the quotient map and establish properties over them. - Define a `ChartedSpace` instance on the quotient by composing these local inverses with charts of M. This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it. --- new-contributor t-differential-geometry 186/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/OrbitSpace.lean,Mathlib/Topology/Algebra/OrbitSpace.lean 3 2 ['github-actions'] grunweg
assignee:grunweg
3-65806
3 days ago
8-52913
8 days ago
8-52539
8 days
35857 AlexeyMilovanov
author:AlexeyMilovanov
feat(Logic.Equiv.BijectiveBase2): add bijective base-2 numeration This PR introduces a formalization of the bijective base-2 numeration system. Unlike standard binary representation, bijective base-2 avoids the "leading zeros" problem, providing a strict mathematical bijection between natural numbers (`ℕ`) and lists of booleans (`List Bool`). **Main additions:** * `Equiv.BijectiveBase2.toBits`: Encodes `ℕ` to `List Bool`. * `Equiv.BijectiveBase2.ofBits`: Decodes `List Bool` to `ℕ`. * `equivBijectiveBase2`: The formal `ℕ ≃ List Bool` equivalence. *(Note: This replaces my previously closed PR to avoid the terminology clash between "Dyadic" and dyadic rationals. The namespace and definitions have been updated accordingly).* *(Note: Used AI to assist with standardizing proof structures).* t-logic new-contributor 95/0 Mathlib.lean,Mathlib/Logic/Equiv/ListNatBijective.lean 2 4 ['AlexeyMilovanov', 'SnirBroshi', 'github-actions'] nobody
3-46640
3 days ago
3-47984
3 days ago
3-53963
3 days
34742 Brian-Nugent
author:Brian-Nugent
feat(SheafCohomology): add API for Sheaf Cohomology Defines the long exact sequence on cohomology associated to a short exact sequence of sheaves `H.longSequence`. Also defines `H.equiv₀`, the additive equivalence between `H F 0` and `((sheafSections J AddCommGrpCat).obj (op T)).obj F` when the category has a terminal object `T`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-category-theory 76/2 Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/CategoryTheory/Sites/Abelian.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/Basic.lean 3 16 ['Brian-Nugent', 'adamtopaz', 'dagurtomas', 'github-actions', 'joneugster'] adamtopaz
assignee:adamtopaz
3-39244
3 days ago
3-38522
3 days ago
21-38979
21 days
35672 dennj
author:dennj
feat(RingTheory/Polynomial/Cyclotomic): vanishing sums and fiber equidistribution at primitive roots ## Summary Building on `sum_eq_zero_iff_forall_eq` from #34592, this PR adds: - `cyclotomic_prime_coeff_eq_one`: for prime `p`, all coefficients of `cyclotomic p R` equal `1`. - `eq_nsmul_cyclotomic_of_nonneg_coeff`: a nonneg-coefficient polynomial vanishing at a primitive root is a positive scalar multiple of the cyclotomic polynomial. - `card_fiber_eq_card_div`: if a function `d : A → ZMod p` satisfies `∑ ζ^(d a) = 0`, then every fiber has cardinality `|A| / p`. These results are useful for combinatorial applications involving exponential sums and equidistribution over cyclic groups. Theorems imported from: https://github.com/Latinum-Agentic-Commerce/AlgebraicDesignTheory t-ring-theory new-contributor 101/1 Mathlib/RingTheory/Polynomial/Cyclotomic/Basic.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Roots.lean 2 2 ['github-actions'] chrisflav
assignee:chrisflav
3-34524
3 days ago
8-20983
8 days ago
8-20609
8 days
35736 mathlib-splicebot
author:mathlib-splicebot
chore(Mathlib/Topology/Algebra/Module/LinearMap.lean): automated extraction This PR was automatically created from PR #35538 by @bilichboris via a [review comment](https://github.com/leanprover-community/mathlib4/pull/35538#discussion_r2849347321) by @j-loreaux. new-contributor t-topology 9/0 Mathlib/Topology/Algebra/Module/LinearMap.lean 1 4 ['github-actions', 'themathqueen'] ocfnash
assignee:ocfnash
3-34519
3 days ago
6-49303
6 days ago
6-48929
6 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 26/0 Mathlib/Analysis/Analytic/Order.lean 1 6 ['SnirBroshi', 'github-actions', 'j-loreaux', 'mkaratarakis'] j-loreaux
assignee:j-loreaux
2-55867
2 days ago
2-55115
2 days ago
16-14511
16 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 t-analysis 62/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 7 ['MichaelStollBayreuth', 'github-actions', 'mkaratarakis'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
2-55848
2 days ago
2-55129
2 days ago
15-43353
15 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 28/0 Mathlib/Topology/Instances/EReal/Lemmas.lean 1 13 ['github-actions', 'j-loreaux', 'jvanwinden', 'mathlib-merge-conflicts', 'vihdzp'] j-loreaux
assignee:j-loreaux
2-49730
2 days ago
2-48369
2 days ago
6-83008
6 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 414/1 Mathlib.lean,Mathlib/Data/Finsupp/Antidiagonal.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/Order/Filter/Cofinite.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean 8 36 ['BryceT233', 'Komyyy', 'erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] erdOne and riccardobrasca
assignee:riccardobrasca assignee:erdOne
2-37352
2 days ago
2-35038
2 days ago
45-43812
45 days
34621 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): deprecate `FreeGroup Empty ≃ Unit` using `Equiv.ofUnique`, add `Mul` suggestion using `MulEquiv.ofUnique` and add `FreeGroup α ≃* Multiplicative ℤ` feat(GroupTheory/FreeGroup/Basic): deprecate `FreeGroup Empty ≃ Unit` using `Equiv.ofUnique`, add `Mul` suggestion using `MulEquiv.ofUnique` and add `FreeGroup α ≃* Multiplicative ℤ`. Originally, the PR showed that `FreeGroup Empty ≃* Unit` and `FreeGroup α ≃* Multiplicative ℤ`. During the review process, I was asked to generalized `Unit` to any `Unique` type and `Empty` to `IsEmpty`. Through working on this, it has been realized that the pre-existing `FreeGroup Empty ≃ Unit` should be deprecated using `Equiv.ofUnique` and a multiplicative version `FreeGroup Empty ≃* Unit` can be obtained similarly using `MulEquiv.ofUnique` and there was no need to explicitly upgrade the equivalence. The title has been changed to reflect this. 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 39 ['b-mehta', 'copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'kbuzzard', 'tb65536'] riccardobrasca
assignee:riccardobrasca
2-34407
2 days ago
14-56253
14 days ago
21-59005
21 days
35559 mike1729
author:mike1729
feat(Analysis/Normed): weak-topology embedding into weak-star bidual and compactenss transfer theorem This PR refactors the double dual material and adds new results connecting the weak topology on a normed space to the weak-star topology on its bidual. ## Changes ### New file: `Analysis.Normed.Module.DoubleDual` Extracts the canonical embedding `inclusionInDoubleDual` and the bidual isometry `inclusionInDoubleDualLi` from `Analysis.Normed.Module.Dual` into a dedicated file, and adds: - `inclusionInDoubleDualWeak`: the canonical map from `WeakSpace 𝕜 X` into `WeakDual 𝕜 (StrongDual 𝕜 X)`. - `inclusionInDoubleDualWeak_isEmbedding`: this map is a topological embedding. - `inclusionInDoubleDualWeak_homeomorph`: the map as a homeomorphism onto its range. - `isCompact_closure_of_isBounded`: bounded sets whose bidual image has weak-star closure in range have weakly compact closure, via Banach–Alaoglu. ### New file: `Analysis.Normed.Module.WeakSpace` - `WeakSpace.instBornology`: norm bornology on `WeakSpace 𝕜 E`, inherited from `E`. - `WeakSpace.instT2Space`: the weak topology over `RCLike` is Hausdorff (via Hahn–Banach). ### Modified: `Analysis.Normed.Module.Dual` The double dual inclusion material is moved out; polar set results remain. References to `inclusionInDoubleDual` in `polar_closure` are replaced by `ContinuousLinearMap.apply` to avoid a dependency on the new file. --- CC: @faenuccio this may be relevant for your Goldstine formalization. t-analysis new-contributor 285/99 Mathlib.lean,Mathlib/Analysis/LocallyConvex/SeparatingDual.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Analysis/Normed/Module/WeakSpace.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean 10 15 ['github-actions', 'j-loreaux', 'mike1729'] ADedecker
assignee:ADedecker
2-34405
2 days ago
6-6697
6 days ago
10-21244
10 days
35567 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): Golfs This PR cleans up the proofs in Analysis/Normed/Module/PiTensorProduct/{InjectiveSeminorm.lean, ProjectiveSeminorm.lean} In addition, it performs the following minor structural changes: * Weaken assumptions from `NontriviallyNormedField 𝕜` to `NormedField 𝕜` where possible * The proofs showing that `projectiveSeminorm` actually defines a `Seminorm` are split off into separate lemmas. This mimics the idiom used e.g. in `Analysis.Normed.Modula.Operator.Basic` to define the operator norm. * Register a `Nonempty x.lifts` instance in PiTensorProduct.lean, to avoid creating a half-dozen local instances. This is the first in a series of three PRs with the goal to [deprecate `PiTensorProuduct.injectiveSeminorm`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798633). --- Co-authored-by: Davood H. T. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor 101/158 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean 3 10 ['github-actions', 'goliath-klein', 'leanprover-radar', 'tb65536'] sgouezel
assignee:sgouezel
2-34404
2 days ago
10-72236
10 days ago
10-71873
10 days
35745 khwilson
author:khwilson
feat(Mathlib/Analysis/Asymptotics/Defs): congr lemmas for IsBigO* This PR primarily provides two calculational lemmas that are commonly used in bounding functions. First, it provides `IsBigO*.sum_congr`. This theorem allows the user to bound each term of a (finite) sum individually. This is different than `IsBigO.sum` which requires all terms to be bound by the _same_ function. Second, it provides `IsBigO*.sum_congr'`. This theorem allows the user to bound the terms of a sum individually _when the length of the sum changes with respect to the running variable_. This is a common setup with certain techniques such as the method of the hyperbola. Note: This makes the overall length of this file go above 1500 lines. I'm happy to break it up at the request of reviewers, but that's a bigger change to the API. AI Usage: Looking up various lemma names in Google Gemini. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 92/1 Mathlib/Analysis/Asymptotics/Defs.lean 1 2 ['github-actions'] j-loreaux
assignee:j-loreaux
2-34397
2 days ago
6-26447
6 days ago
6-26073
6 days
35753 Vilin97
author:Vilin97
feat(Topology/Algebra/Order): regular grid helpers and piecewise linear interpolation ## Summary - Add `Nat.floor_div_eq_of_mem_Ico`, `mem_Ico_Nat_floor_div`, `locallyFinite_Icc_grid`, and `ContinuousOn.of_Icc_grid` to `Topology/Algebra/Order/Floor.lean`. - Add new file `Topology/Algebra/Order/PiecewiseLinear.lean` with `piecewiseLinear` and `piecewiseConst` definitions for interpolation on regular grids, along with evaluation lemmas, continuity, and right derivative. - Grid helpers are generalized over `Field K` with `FloorSemiring` and `OrderTopology`. - Piecewise definitions are generic over `Field α`; continuity/derivative results are for `ℝ`-normed spaces. ## Motivation These are used in the [forward Euler convergence proof](https://github.com/Vilin97/forward_euler) to construct piecewise linear interpolations of Euler points and prove their continuity. They are general-purpose lemmas about regular grids and piecewise interpolation that should be useful beyond this application. Follow-up PR: #35755 (forward Euler method convergence). --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was then iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code (Claude Opus 4.6). t-topology new-contributor 151/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/Floor.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 3 2 ['copilot-pull-request-reviewer', 'github-actions'] dagurtomas
assignee:dagurtomas
2-34396
2 days ago
6-4949
6 days ago
6-4857
6 days
35907 JJYYY-JJY
author:JJYYY-JJY
fix(Topology/Defs/Basic): preserve noncanonical topology instances in delaboration Preserve noncanonical topology instances in delaboration. Restore local instances before checking whether topology arguments can be omitted during delaboration, and print `IsOpen[t]`, `IsClosed[t]`, `closure[t]`, and `Continuous[t₁, t₂]` when the topology instances are not canonical in the current local-instance context. Previously, pretty-printing could silently drop noncanonical topology arguments, so declarations such as `LinearMap.mem_span_iff_continuous_of_finite` were rendered as if they used the default topology. Closes #33238 t-topology new-contributor 111/0 Mathlib/Topology/Defs/Basic.lean,MathlibTest/TopologyNonstandardNotation.lean 2 4 ['copilot-pull-request-reviewer', 'github-actions'] nobody
2-25197
2 days ago
2-23609
2 days ago
2-23235
2 days
35665 BryceT233
author:BryceT233
feat(RingTheory/AdicCompletion): introduce AdicCompletion.finsuppSum This is split from #34936 to make the review process easier. It introduces `AdicCompletion.finsuppSum`, which is a `Finsupp` version of `AdicCompletion.sum`. --- - [x] depends on: #35595 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory 93/0 Mathlib/LinearAlgebra/Finsupp/LSum.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean 2 4 ['github-actions', 'joneugster', 'mathlib-dependent-issues'] nobody
2-15814
2 days ago
2-15093
2 days ago
7-21216
7 days
35705 jdhart81
author:jdhart81
feat(Data/ENNReal, Probability/Independence): division decomposition and self-independence Two general-purpose lemmas extracted from a formal verification of "The Intelligence Bound" (Hart 2025). --- ### New lemmas - `ENNReal.div_eq_div_mul_div`: Division decomposition `a / c = a / b * (b / c)` when `b ≠ 0` and `b ≠ ⊤`. Added to `Mathlib.Data.ENNReal.Inv`. - `IndepFun.of_self`: If `Y` is independent of itself under a probability measure, then `X` and `Y` are independent. Self-independence implies `Y` is a.e. constant. Added to `Mathlib.Probability.Independence.Basic`. ### Context These lemmas arose in formalizing information-theoretic results where: - The ENNReal division identity is needed for decomposing rate expressions (limsup of ratios) - The self-independence result bridges entropy = 0 and measure-theoretic independence ### References - Formal verification: https://github.com/jdhart81/intelligence-bound-lean - Paper: "The Intelligence Bound" (Hart 2025) new-contributor t-data 47/0 Mathlib/Data/ENNReal/Inv.lean,Mathlib/Probability/Independence/Basic.lean 2 10 ['SnirBroshi', 'github-actions', 'jdhart81', 'joneugster', 'kbuzzard'] nobody
1-79364
1 day ago
2-74524
2 days ago
6-32589
6 days
34477 spanning-tree
author:spanning-tree
refactor(Order): make CompletePartialOrder extend OrderBot Make `CompletePartialOrder` extend `OrderBot`, and add a constructor `completePartialOrderOfLubOfDirected`. Previously, `CompletePartialOrder` had an implicit bottom element but did not extend OrderBot explicitly. Breaking change: `CompletePartialOrder` instances must provide `⊥` and `bot_le`, or use the constructor. See discussion in [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20complete.20partial.20order.20and.20domain.20theory.20formalization). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 15/1 Mathlib/Order/CompletePartialOrder.lean 1 3 ['Citronhat', 'github-actions', 'mathlib-merge-conflicts'] pechersky
assignee:pechersky
1-73799
1 day ago
1-73198
1 day ago
22-44061
22 days
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 680/0 Mathlib.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 3 200 ['github-actions', 'grunweg', 'idontgetoutmuch'] grunweg
assignee:grunweg
1-66957
1 day ago
1-66230
1 day ago
16-5991
16 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 11 ['Xxxjdjdid', 'banrovegrie', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] kim-em
assignee:kim-em
1-65403
1 day ago
24-12517
24 days ago
25-64597
25 days
35834 homeowmorphism
author:homeowmorphism
feat(Mathlib/GroupTheory/PresentedGroup): every group has a presentation We show that every group has a presentation defined by taking the free group with all of the group elements as the generators, and defining the relations as the kernel of the induced subjective homomorphism from that free group to the group itself. Use of AI: This has been vibe-coded with GPT-Codex-5.3, was updated through review, and was double-checked by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-group-theory large-import 29/1 Mathlib/GroupTheory/PresentedGroup.lean 1 12 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-bors', 'plp127', 'tb65536'] nobody
1-46086
1 day ago
1-76746
1 day ago
1-76372
1 day
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 535/0 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/Instances/Graph.lean,Mathlib/Topology/Constructions/Graph.lean 4 64 ['botbaki-review', 'github-actions', 'grunweg', 'michaellee94', 'ocfnash'] ocfnash
assignee:ocfnash
1-44469
1 day ago
1-43864
1 day ago
14-44369
14 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'] adamtopaz
assignee:adamtopaz
1-34512
1 day ago
20-2423
20 days ago
20-2049
20 days
35069 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): simple polygons and boundary map This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution. - [ ] depends on: #34598 --- new-contributor t-euclidean-geometry 360/0 Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean 4 29 ['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] nobody
1-20018
1 day ago
5-53036
5 days ago
8-1657
8 days
35805 adrianmartir
author:adrianmartir
feat(NumberTheory/Divisors): Add `infinite_setOf_divisors_iff` This proves that the set of divisors `{ m | m | n }` of a natural number `n` is infinite if and only if `n` is zero. The first proof draft was by @Aristotle-Harmonic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 10/0 Mathlib/NumberTheory/Divisors.lean 1 5 ['adrianmartir', 'alexjbest', 'github-actions'] alexjbest
assignee:alexjbest
1-2906
1 day ago
1-2015
1 day ago
4-79068
4 days
34624 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FreeGroup/Basic): surjection between types induces surjection between free groups on those types 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 24 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-merge-conflicts', 'tb65536', 'vlad902'] riccardobrasca
assignee:riccardobrasca
0-80129
22 hours ago
14-56722
14 days ago
25-12560
25 days
35597 BryceT233
author:BryceT233
feat(AdicTopology): add lemmas about adic topology This PR adds APIs to transport topological and uniform properties of adic topologies across ring equivalences, By upgrading an ideal-preserving ring equivalence to a `UniformEquiv`, we provide natural congruence lemmas for adic completeness, precompleteness, and Hausdorffness, which serve as necessary topological preliminaries for the ongoing formalization of the Cohen Structure Theorem. Co-authored-by: @Thmoas-Guan --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 55/2 Mathlib/RingTheory/AdicCompletion/Topology.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean 2 7 ['erdOne', 'github-actions'] urkud
assignee:urkud
0-69115
19 hours ago
0-68529
18 hours ago
10-8488
10 days
35707 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): introduce `truncTotal` This PR introduces the total degree truncation of multivariate formal power series when the index is finite, and uses it to establish the algebraic equivalence between `MvPowerSeries` and the adic completion of `MvPolynomial` with respect to the ideal spanned by all variables `idealOfVars`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory 207/2 Mathlib.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean 4 4 ['github-actions', 'joneugster', 'mathlib-bors'] nobody
0-69086
19 hours ago
0-68040
18 hours ago
7-11068
7 days
35659 BryceT233
author:BryceT233
chore(Data/Finsupp): update pointwise module structure This is the 3rd PR split from #34936 to make the review process easier. It updates the pointwise module structure `Module (ι → R) (ι →₀ M)` where `R` is a semiring and `M` is an `R`-module. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/18 Mathlib/Data/Finsupp/Pointwise.lean 1 2 ['github-actions'] joneugster
assignee:joneugster
0-69021
19 hours ago
0-68020
18 hours ago
8-42643
8 days
35647 BryceT233
author:BryceT233
feat(RingTheory/Ideal/Quotient): add a canonical inclusion map This is the second PR split from the larger PR https://github.com/leanprover-community/mathlib4/pull/34936 to make the review process easier. It introduces `Submodule.powSmulQuotInclusion`, which is the canonical inclusion from `I ^ a • N ⧸ I ^ b • (I ^ a • N)` to `M ⧸ I ^ c • N` where `c = b + a`, and provides auxiliary lemmas for it --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 37/0 Mathlib/RingTheory/Ideal/Quotient/PowTransition.lean 1 9 ['BryceT233', 'erdOne', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
0-68994
19 hours ago
0-67902
18 hours ago
8-39637
8 days
35646 BryceT233
author:BryceT233
feat(Algebra): add two lemmas about submodule smul This is the first PR split from the larger PR #34936 to make the review process easier. It adds the following two lemmas regarding pointwise smul and restrictScalars: `Submodule.restrictScalars_image_smul_eq_smul_restrictScalars` and `Submodule.restrictScalars_map_smul_eq_smul_restrictScalars` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
29/0 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/RingTheory/Ideal/Maps.lean 2 4 ['github-actions', 'joneugster'] nobody
0-68931
19 hours ago
0-67180
18 hours ago
8-69324
8 days
35949 mathlib-splicebot
author:mathlib-splicebot
chore(Mathlib/CategoryTheory/Sites): more API for `Presieve.map` This PR was automatically created from PR #35948 by @chrisflav via a [review comment](https://github.com/leanprover-community/mathlib4/pull/35948#discussion_r2870155169) by @chrisflav. new-contributor t-category-theory 48/3 Mathlib/CategoryTheory/Sites/Sieves.lean 1 4 ['erdOne', 'github-actions'] nobody
0-68751
19 hours ago
0-67597
18 hours ago
1-28172
1 day
35951 parabamoghv
author:parabamoghv
feat(CategoryTheory/Monoidal): evaluation coevaluation isomorphisms This PR adds four features to rigid categories: 1. `coevaluation_evaluation` and `evaluation_coevaluation` as isomorphism equalities: Using `IsIso` instances for the `evaluation` and `coevaluation` morphisms, we promote the morphism equalities to isomorphism equalities. 2. `ExactPairing Y X` from `ExactPairing X Y`: Using an exact pairing and `IsIso` instances for both `evaluation` and `coevaluation`, we swap the exact pairing by inverting the evaluation and coevaluation morphisms. Any suggestions for the definition name are welcome. Right now it is `ExactPairing.Symm`. The second choice was `ExactPairing.Swap`. 3. `HasLeftDual X` from `HasRightDual X`: Using a `HasRightDual X` instance and relevant `IsIso` instances, we construct a left dual. Similar construction for the other way. 4. `LeftDual` isomorphic to `RightDual`: Using relevant `IsIso` instances, we provide the isomorphism from the left dual of an object to the right dual. This can be achieved in two ways: either by using `leftDualIso` or using `rightDualIso`. We will prove in a subsequent PR that both these isomorphisms are equal. Motivation: This is part of an effort to formalize CategoricalGroups, which can be defined as right rigid groupoids. The approach is motivated by the discussion in [#34830](https://github.com/leanprover-community/mathlib4/pull/34830). Any comments or suggestions are welcome, especially about the naming. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor 65/0 Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean 1 2 ['github-actions'] nobody
0-50847
14 hours ago
0-50192
13 hours ago
1-3588
1 day
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'] kex-y
assignee:kex-y
0-45980
12 hours ago
0-48509
13 hours ago
41-80180
41 days
35724 matthewjasper
author:matthewjasper
feat(RingTheory/DedekindDomain/AdicValuation): v-adic integers of `K` are a localization at v^c Part of showing `R` is dense in `O_v`, which is used to show that `R / v` is isomorphic to the residue field of `O_v` and to construct the base change isomorphism for finite adeles. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import FLT 59/0 Mathlib/RingTheory/DedekindDomain/AdicValuation.lean 1 6 ['github-actions', 'matthewjasper', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
0-42999
11 hours ago
0-50783
14 hours ago
6-6854
6 days
35970 adrianmartir
author:adrianmartir
feat(CategoryTheory/Profunctor): Add profunctors and a basic API for them This adds a definition of a profunctor and the definition of a natural transformation between two profunctors. Profunctors are defined as a structure, as suggested by @adamtopaz [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Operads.20Formalization/with/566160316). Using this as a base, I wrote a basic API for profunctors. This will be needed for a future formalization of operads. A lot of the API was first drafted by @Aristotle-Harmonic. Co-authored-by: Aristotle (Harmonic) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor 182/0 Mathlib.lean,Mathlib/CategoryTheory/Profunctor.lean 2 7 ['emilyriehl', 'github-actions'] nobody
0-41575
11 hours ago
0-50222
13 hours ago
0-62338
17 hours
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'] TwoFX
assignee:TwoFX
0-40984
11 hours ago
0-69119
19 hours ago
15-52310
15 days
35900 matthewjasper
author:matthewjasper
chore: Fix non-defeq diamonds on OrderDual This only makes changes to fix the diamonds, rather than the general defeq abuse with `OrderDual`. --- - [ ] depends on: #35995 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 213/116 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Action/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Synonym.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Module/Synonym.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Order/Ring/Synonym.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Data/Nat/Cast/Synonym.lean,Mathlib/Order/Lattice.lean 13 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-35454
9 hours ago
0-32333
8 hours ago
2-15041
2 days
35732 TJHeeringa
author:TJHeeringa
feat: Added reproducing kernels Develops the basic theory of reproducing kernels, which underlies the reproducing kernel Hilbert spaces. It shows that the kernels form an ordered semiring and common ways of constructing kernels from other kernels. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 1193/0 Mathlib.lean,Mathlib/KernelTheory/Kernel.lean 2 5 ['TJHeeringa', 'github-actions', 'joneugster', 'vihdzp'] j-loreaux
assignee:j-loreaux
0-34496
9 hours ago
6-3897
6 days ago
6-3523
6 days
35866 gad-wiseman
author:gad-wiseman
feat(Topology/Homotopy/Basic): maps homotopic rel S agree on S --- This adds an easy lemma showing maps that are `HomotopicRel` a set agree on it. t-topology new-contributor 5/0 Mathlib/Topology/Homotopy/Basic.lean 1 2 ['github-actions'] dagurtomas
assignee:dagurtomas
0-34482
9 hours ago
3-66619
3 days ago
3-75000
3 days
35789 BryceT233
author:BryceT233
feat(RingTheory): add some easy lemmas This PR adds three small helper lemmas needed for the ongoing formalization of the Cohen Structure Theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 8/1 Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean 2 8 ['BryceT233', 'eric-wieser', 'github-actions', 'vihdzp'] riccardobrasca
assignee:riccardobrasca
0-30973
8 hours ago
0-31033
8 hours ago
5-2407
5 days
36017 SproutSeeds
author:SproutSeeds
feat(Algebra/Order/BigOperators/Group/Finset): add sum_mul_le_sum_sum_filter_of_le_card_filter ## Summary This PR adds a weighted finite-cover double-counting lemma in `Finset`: - `Finset.sum_mul_le_sum_sum_filter_of_le_card_filter` (`Mathlib/Algebra/Order/BigOperators/Group/Finset.lean:234`) and refactors - `Finset.sum_le_sum_sum_filter_of_forall_exists` (`Mathlib/Algebra/Order/BigOperators/Group/Finset.lean:256`) to be a corollary via `m := fun _ => 1`. ## New theorem ```lean theorem sum_mul_le_sum_sum_filter_of_le_card_filter [DecidableEq ι] [DecidableEq β] (s : Finset ι) (t : Finset β) (R : ι → β → Prop) [DecidableRel R] (w m : ι → ℕ) (hcover : ∀ x ∈ s, m x ≤ #(t.filter (fun y => R x y))) : (∑ x ∈ s, m x * w x) ≤ ∑ y ∈ t, ∑ x ∈ s.filter (fun x => R x y), w x ``` ## Motivation This packages a reusable double-counting pattern: - per-element lower bounds on incidence multiplicity (`m x`) - weighted accumulation over incidences - a global lower bound obtained by swapping/filtering finite sums. The existing existential-cover inequality is recovered as the `m := 1` special case. ## Non-sunflower use cases 1. Incidence bounds in finite bipartite settings with minimum left-degree constraints. 2. Weighted charging arguments where each object must be charged at least `m x` times. ## API / compatibility - No imports added. - No existing theorem names changed. - No breaking API change; one existing theorem is only refactored to use the new lemma. ## Verification ```bash ~/.elan/bin/lake env lean Mathlib/Algebra/Order/BigOperators/Group/Finset.lean ``` ## AI usage I used AI tools for drafting/exploration, then manually selected the final statements, edited the Lean code, and ran local checks. new-contributor t-algebra
label:t-algebra$
40/0 Mathlib/Algebra/Order/BigOperators/Group/Finset.lean 1 3 ['github-actions'] nobody
0-30798
8 hours ago
unknown
unknown
36020 SproutSeeds
author:SproutSeeds
feat(Combinatorics/Enumerative/DoubleCounting): add weighted bipartite lower bound ## Summary This PR adds a weighted bipartite double-counting lower bound in `Mathlib/Combinatorics/Enumerative/DoubleCounting.lean`: - `Finset.sum_mul_le_sum_sum_bipartiteBelow_of_le_card_bipartiteAbove` ## New theorem ```lean theorem sum_mul_le_sum_sum_bipartiteBelow_of_le_card_bipartiteAbove [∀ a b, Decidable (r a b)] (w m : α → ℕ) (hm : ∀ a ∈ s, m a ≤ #(t.bipartiteAbove r a)) : (∑ a ∈ s, m a * w a) ≤ ∑ b ∈ t, ∑ a ∈ s.bipartiteBelow r b, w a ``` ## Motivation Existing double-counting lemmas in this file are cardinality-based with constant bounds. This theorem provides the weighted/inhomogeneous variant: each left vertex `a` can carry its own multiplicity lower bound `m a` and weight `w a`. This packages a reusable pattern for incidence arguments where lower bounds vary across vertices. ## Use cases 1. Weighted incidence counting in bipartite relations with non-uniform degree guarantees. 2. Charging arguments where each object contributes weight and has an object-dependent minimum witness multiplicity. ## API / compatibility - No existing theorem names changed. - No imports added. - Additive change only. ## Verification ```bash ~/.elan/bin/lake build Mathlib.Combinatorics.Enumerative.DoubleCounting ~/.elan/bin/lake env lean Mathlib/Combinatorics/Enumerative/DoubleCounting.lean ``` ## AI usage I used AI tools for exploration/drafting, then manually selected the statement, edited the Lean code, and ran local checks. new-contributor t-combinatorics 22/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean 1 2 ['github-actions'] nobody
0-28099
7 hours ago
unknown
unknown
35906 scp020
author:scp020
feat(Combinatorics/SimpleGraph/Walks): add Walk.IsChord and Walk.IsChordless This PR adds a new file: - `Mathlib/Combinatorics/SimpleGraph/Walks/Chords` and introduces two definitions for closed walks in simple graphs: - `SimpleGraph.Walk.IsChord` - `SimpleGraph.Walk.IsChordless` Motivation: These notions are standard in graph theory and are useful for reasoning about induced cycles (that is, chordless cycles). In particular, they provide a clean interface for structural arguments where one chooses a chordless cycle and then studies how the rest of the graph interacts with it. Design: - `Walk.IsChord` says that `v` and `w` are vertices of a closed walk `p`, that they are adjacent in the ambient graph, and that this ambient edge is not an edge of `p`. - `Walk.IsChordless` says that `p` is a cycle and that every ambient edge between two vertices of `p` already appears in `p`. This PR also includes a small API for these definitions: - `SimpleGraph.Walk.IsChord.symm` - `SimpleGraph.Walk.isChord_iff` - `SimpleGraph.Walk.IsChordless.isCycle` - `SimpleGraph.Walk.IsChordless.mem_edges` - `SimpleGraph.Walk.IsChordless.not_isChord` - `SimpleGraph.Walk.isChordless_iff_forall_not_isChord` The file is placed in `namespace SimpleGraph.Walk` to match the existing `Walk`-based predicates and lemmas in the simple graph library. This PR is intentionally small: it adds the core definitions together with basic non-mechanical API that supports direct mathematical use. Validation: - `lake build Mathlib.Combinatorics.SimpleGraph.Walks.Chords` - `lake exe lint-style Mathlib/Combinatorics/SimpleGraph/Walks/Chords.lean` - `#lint` Discussion on Zulip: [Zulip link](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Walk.2EIsChordless.20live.20in.20mathlib.3F/with/575277309) authored-by: Tianyi Zhao --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 82/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Chords.lean 2 2 ['github-actions'] nobody
0-24430
6 hours ago
0-24494
6 hours ago
0-56985
15 hours
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 1101/0 Mathlib.lean,Mathlib/Combinatorics/Quiver/CayleyExamples.lean,Mathlib/Combinatorics/Quiver/Schreier.lean,Mathlib/Combinatorics/SimpleGraph/CayleySumGraph.lean 4 34 ['SnirBroshi', 'ZRTMRH', 'github-actions', 'tb65536'] nobody
0-20476
5 hours ago
6-50063
6 days ago
13-29551
13 days
35733 mkaratarakis
author:mkaratarakis
feat: Algebraic setup and matrix coefficients for Gelfond-Schneider theorem This PR introduces the foundational algebraic setup and coefficient bounds required for the proof of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), which establishes that for algebraic numbers $\alpha \neq 0, 1$ and irrational algebraic $\beta$, the number $\alpha^\beta$ is transcendental. Following the contradiction argument presented in Loo-Keng Hua's "Introduction to Number Theory" (Chapter 17.9, 490 -493) Gelfond's Proof), this file constructs the common number field $K$ and sets up the scaled algebraic integers for the auxiliary linear system. This system will later be solved via Siegel's lemma (Lemma 8.2, 490, Hua). This PR is essentially the first half of page 490 in the book. The proof proceeds by assuming $\gamma = \alpha^\beta$ is algebraic, meaning $\alpha$, $\beta$, and $\gamma$ all lie in an algebraic field $K$ of degree $h$. 1. Bundles the common number field $K$, the complex embeddings, and the algebraic preimages $\alpha', \beta', \gamma'$, alongside the core hypotheses of the theorem. 2. Defines the field degree $h = [K : \mathbb{Q}]$, and bounds $m = 2h + 2$ and $n = q^2 / (2m)$ to control the dimensions of the linear system. 3. Defines $c_1$, a natural number chosen so that $c_1 \alpha$, $c_1 \beta$, and $c_1 \gamma$ are algebraic integers in $K$. We prove numerous bounding and integrality lemmas (`isIntegral_c₁α`, `isInt_β_bound`, etc.). 4. Formalizes the core algebraic coefficients $(a+b\beta)^k \alpha^{al} \gamma^{bl}$ which appear in the evaluation of the derivatives of the auxiliary function $R(x)$. 5. By scaling the system by $c_1^{n-1+2mq}$, we successfully restrict the entries of our linear system matrix `A` entirely to the ring of integers $\mathcal{O}_K$, preparing it for the application of Siegel's lemma. 6. House Bounds (`c₂`) : Establishes the foundational base integer $c_2$ to bound the absolute values of the conjugates (houses) of our coefficients. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 416/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean 2 2 ['github-actions'] nobody
0-20271
5 hours ago
3-52011
3 days ago
6-49152
6 days
35812 khwilson
author:khwilson
feat(MeasureTheory/Group/GeometryOfNumbers): successive minima and existence of a directional basis Define the successive minima of a discrete subgroup of a real vector space with respect to a convex set. These invariants show up throughout the geometry of numbers and are the focus of Minkowski's Second Theorem (whose statement is left here with a `proof_wanted`). Note: The key lemma is that the "gauge set" of the convex set is closed. I took the approach of showing that it is sequentially closed. There's an alternative approach via showing it's the union of a finite number of closed sets. I personally thought this approach was more intuitive, but the union approach may result in a slightly shorter proof. Co-authored-by: Yaël Dillies --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 392/33 Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Body.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/MeasureTheory/Group/GeometryOfNumbers.lean 6 3 ['github-actions', 'joneugster'] nobody
0-10065
2 hours ago
4-22730
4 days ago
4-22356
4 days
33355 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph/Connectivity): define vertex connectivity This PR introduces the foundations of vertex connectivity for simple graphs, providing a counterpart to the edge connectivity theory in #32870. ### Main definitions - `SimpleGraph.IsVertexReachable`: vertices remain reachable after removing strictly fewer than `k` other vertices. - `SimpleGraph.IsVertexConnected`: a graph is `k`-vertex-connected if its order is strictly greater than `k` and any two distinct vertices are `k`-vertex-reachable. Includes basic characterizations for $k=0$ and $k=1$, along with monotonicity lemmas (`anti` and `mono`). new-contributor t-combinatorics 198/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/VertexConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/IsolateVerts.lean 3 132 ['0xTerencePrime', 'SnirBroshi', 'YaelDillies', 'github-actions', 'vihdzp'] YaelDillies
assignee:YaelDillies
0-9073
2 hours ago
0-9146
2 hours ago
26-5822
26 days
34215 justus-springer
author:justus-springer
feat(FieldTheory/RatFunc): Degree of field extension K(X)/K(f) Prove that the degree of the field extension K(X)/K(f) of a rational function f equals the maximum of the degrees of its numerator and denominator. This is a crucial lemma towards proving Luroth's theorem. This contribution was created as part of the Heidelberg Lean workshop "Formalising algebraic geometry" in November 2025. Co-authored-by: Miriam Philipp @miriamphilipp Co-authored-by: Junyan Xu @alreadydone --- - [x] depends on: #34212 - [x] depends on: #34213 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
219/0 Mathlib.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/RatFunc/Luroth.lean 3 28 ['alreadydone', 'github-actions', 'jcommelin', 'justus-springer', 'mathlib-splicebot', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'tb65536', 'xgenereux'] jcommelin
assignee:jcommelin
0-2628
43 minutes ago
0-3095
45 minutes ago
22-78021
22 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 248/15 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 18 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'sgouezel', 'yoh-tanimoto'] nobody
0-2100
35 minutes ago
0-12160
3 hours ago
33-12617
33 days

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
35960 vihdzp
author:vihdzp
chore(Order/ConditionallyCompleteLattice/Basic): remove `backward.isDefEq.respectTransparency` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy 0/8 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean 1 1 ['github-actions'] nobody
1-6075
1 day ago
1-6075
1 day ago
1-5701
1 day
35890 grunweg
author:grunweg
chore: delete deprecated module Topology/PartialHomeomorph This module was deprecated on October 3, and is blocking refactoring of the manifold library. --- This PR should only be merged on March 3rd: please delegate instead of merging! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology easy 0/11 Mathlib.lean,Mathlib/Topology/PartialHomeomorph.lean 2 5 ['fpvandoorn', 'github-actions', 'mathlib-bors'] nobody
0-82956
23 hours ago
0-82956
22 hours ago
2-66276
2 days
35992 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra/Basic): `‖e‖ ≤ 1` for star projections Co-authored-by: Jon Bannon <59937998+JonBannon@users.noreply.github.com> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-analysis 6/0 Mathlib/Analysis/CStarAlgebra/Basic.lean 1 1 ['github-actions'] nobody
0-61041
16 hours ago
0-60251
16 hours ago
0-59877
16 hours
35581 mpenciak
author:mpenciak
feat(RingTheory/MvPolynomial): MvPolynomial is isomorphic to the direct sum of its homogeneous submodules This PR closes a TODO in `Mathlib/RingTheory/MvPolynomial/Homogeneous.lean`. It defines the equivalence `MvPolynomial σ R ≃ₐ[R] ⨁ i, homogeneousSubmodule σ R i`, and the more general statement for weighted homogeneous submodules. Note: I'm not sure this is actually worth merging, as it's basically already contained in the `weightedGradedAlgebra` typeclass... But having this exact statement could be helpful so it could go either way? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory documentation easy 7/5 Mathlib/RingTheory/MvPolynomial/Homogeneous.lean 1 4 ['chrisflav', 'github-actions', 'mpenciak'] chrisflav
assignee:chrisflav
0-35336
9 hours ago
4-70756
4 days ago
5-390
5 days

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

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
35470 kim-em
author:kim-em
chore(Algebra/Quaternion): make `Quaternion` instance_reducible This PR marks `Quaternion` as `@[instance_reducible]`, removing 7 (net) `set_option backward.isDefEq.respectTransparency false` workarounds from `Analysis/Quaternion.lean`. The `smul_left` proof in the `NormedAddCommGroup` instance needs a small adjustment (`simp [inner_def]` → `simp [inner_def, mul_add]`) since `@[instance_reducible]` changes how `simp` normalizes through the type alias. 🤖 Prepared with Claude Code tech debt t-analysis 3/9 Mathlib/Algebra/Quaternion.lean,Mathlib/Analysis/Quaternion.lean 2 5 ['MichaelStollBayreuth', 'github-actions', 'kim-em', 'mathlib-bors'] nobody
8-83915
8 days ago
12-85586
12 days ago
12-85283
12 days
35552 vihdzp
author:vihdzp
chore(SetTheory/Ordinal/Basic): remove `backward.privateInPublic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory tech debt 7/27 Mathlib/SetTheory/Ordinal/Basic.lean 1 1 ['github-actions'] nobody
4-7072
4 days ago
4-5537
4 days ago
11-33762
11 days
35878 Parcly-Taxel
author:Parcly-Taxel
chore: use `induction` for `Quotient.induction` invocations Found through the regex `(refine|apply|exact).*Quotient.induction`. Includes the multiple-argument variants. tech debt 93/102 Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Basic.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/Combinatorics/Tiling/Tile.lean,Mathlib/Computability/Tape.lean,Mathlib/Data/Multiset/Functor.lean,Mathlib/Data/Multiset/Sym.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Quotient/Pi.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean 28 1 ['github-actions'] nobody
3-19157
3 days ago
3-16000
3 days ago
3-15626
3 days
35884 Parcly-Taxel
author:Parcly-Taxel
chore: fix induction and recursor names * `Finset.induction_on_{min,max}`, `Finset.induction_on_{min,max}_value` * `FreeAbelianGroup.induction_on`, `FreeAbelianGroup.induction_on'` Applications of these induction principles are also fixed. tech debt 109/112 Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Data/Finset/Max.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean 5 6 ['Parcly-Taxel', 'chenson2018', 'github-actions'] nobody
1-34334
1 day ago
1-32333
1 day ago
3-1403
3 days
35851 vihdzp
author:vihdzp
chore(SetTheory/Ordinal/Arithmetic): remove `backward.privateInPublic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory tech debt 12/17 Mathlib/SetTheory/Ordinal/Arithmetic.lean 1 5 ['github-actions', 'plp127', 'vihdzp'] nobody
1-15704
1 day ago
1-14181
1 day ago
4-3699
4 days