Maintainers page: short tasks

Are you a maintainer with just a short amount of time? The following kinds of pull requests could be relevant for you.

If you realise you actually have a bit more time, you can also look at the page for reviewers, or look at the triage page!
This dashboard was last updated on: June 02, 2026 at 14:55 UTC

Stale ready-to-merge'd PRs

There are currently no stale PRs labelled auto-merge-after-CI or ready-to-merge. Congratulations!

Stale maintainer-merge'd PRs

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
34633 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define the Zarankiewicz function Defines the Zarankiewicz function $z(m, n; s, t)$ in terms of bipartite graphs. --- - [x] depends on: #34632 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 maintainer-merge blocked-by-other-PR 247/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Zarankiewicz.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 4 30 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mitchell-horner'] nobody
121-39950
4 months ago
22-52845
22 days ago
67-63488
67 days
31141 peabrainiac
author:peabrainiac
feat(Analysis/Calculus): parametric integrals over smooth functions are smooth Show that for any smooth function `f : H × ℝ → E`, the parametric integral `fun x ↦ ∫ t in a..b, f (x, t) ∂μ` is smooth too. The argument proceeds inductively, using the fact that derivatives of parametric integrals can themselves be computed as parametric integrals. The necessary lemmas on derivatives of parametric integrals already existed, but took some work to apply due to their generality; we state some convenient special cases. --- - [x] depends on: #31077 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author maintainer-merge 470/12 Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/ParametricIntervalIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/Topology/NhdsWithin.lean,Mathlib/Topology/Separation/Regular.lean 5 36 ['fpvandoorn', 'github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac', 'sgouezel'] j-loreaux
assignee:j-loreaux
111-12711
3 months ago
111-12711
111 days ago
22-14837
22 days
37057 erdOne
author:erdOne
feat(AlgebraicTopology): `SimplexCategory.toTop_map_δ_apply` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology maintainer-merge awaiting-author merge-conflict 48/2 Mathlib/AlgebraicTopology/CechNerve.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Data/Fin/SuccPred.lean 5 17 ['Raph-DG', 'dagurtomas', 'erdOne', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'riccardobrasca'] robin-carlier
assignee:robin-carlier
55-31601
1 month ago
56-79241
56 days ago
4-43742
4 days
37420 artie2000
author:artie2000
refactor: change definitions to avoid `ConvexCone` Change the definitions of `PointedCone.positive` and `PointedCone.closure` to avoid mentioning `ConvexCone`. This PR is part of a series deprecating `ConvexCone`: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Replacing.20.60ConvexCone.60.20with.20.60PointedCone.60/with/582738985 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry maintainer-merge 10/4 Mathlib/Analysis/Convex/Cone/Closure.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 2 3 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'ooovi', 'vihdzp'] nobody
47-11195
1 month ago
47-10443
47 days ago
62-29812
62 days
37346 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. 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.IsPath.getVert_injOn`: unchanged 🎉 * `✅️ SimpleGraph.Walk.length_bypass_le`: unchanged 🎉 * `✅️ Rat.floor_intCast_div_natCast`: unchanged 🎉 * `✅️ InnerProductGeometry.norm_eq_of_angle_sub_eq_angle_sub_rev_of_angle_ne_pi`: unchanged 🎉 * `✅️ padicNorm.zero_of_padicNorm_eq_zero`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge awaiting-zulip 7/45 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean 4 22 ['FernandoChu', 'bryangingechen', 'chenson2018', 'euprunin', 'faenuccio', 'github-actions', 'grunweg'] nobody
34-10443
1 month ago
34-10474
34 days ago
30-45859
30 days
37603 Parcly-Taxel
author:Parcly-Taxel
refactor: review of `SetSemiring` * Rename `Set.up` and `SetSemiring.down` to `SetSemiring.ofSet` and `SetSemiring.toSet` respectively. Unprotect both and make them equivalences, following `FreeMonoid`. * Derive `CompleteAtomicBooleanAlgebra` for `SetSemiring` immediately. * Add `imageHom_id` and `imageHom_comp`. The three existing lemmas about `imageHom` are coalesced into `imageHom_apply`. Ultimately inspired by https://github.com/leanprover-community/mathlib4/pull/36934#issuecomment-4183475568. maintainer-merge merge-conflict 120/165 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Data/Set/Semiring.lean 2 42 ['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] nobody
33-53179
1 month ago
33-53180
33 days ago
22-34679
22 days
38358 yuanyi-350
author:yuanyi-350
doc(1000.yaml): note more formalised theorems --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation maintainer-merge 9/2 docs/1000.yaml 1 12 ['YaelDillies', 'github-actions', 'grunweg', 'vihdzp', 'yuanyi-350'] nobody
30-18197
30 days ago
30-17638
30 days ago
41-14326
41 days
37053 artie2000
author:artie2000
refactor(Analysis/Convex/Cone): use `PointedCone` in Riesz extension theorem Change the statement of the Riesz extension theorem to take a `PointedCone` rather than a `ConvexCone`. This PR is part of a series replacing `ConvexCone` with `PointedCone`. https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Replacing.20.60ConvexCone.60.20with.20.60PointedCone.60/near/581184307 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry maintainer-merge merge-conflict 15/12 Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 2 9 ['YaelDillies', 'artie2000', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] nobody
21-61392
21 days ago
21-61393
21 days ago
46-64967
46 days
37928 AlexeyMilovanov
author:AlexeyMilovanov
refactor(Computability.Encoding): unbundle Γ and remove FinEncoding This PR unbundles the alphabet `Γ` from the `Encoding` structure and completely removes `FinEncoding`. `Encoding`: The alphabet `Γ` is now an explicit parameter: `structure Encoding (α : Type u) (Γ : Type v)`. `FinEncoding`: Removed. Finiteness is now handled via standard typeclasses (e.g., `[Fintype Γ] (e : Encoding α Γ)`). Combinators: Functions like `finEncodingPair` are simplified to `encodingPair`, dropping the `fin` prefix and `[Fintype]` requirements where no longer needed. Downstream: Mechanically updated `Mathlib.Computability` and `Mathlib.ModelTheory` to pass the explicit `Γ` and use `[Fintype Γ]` where `FinEncoding` was previously required. new-contributor maintainer-merge 87/67 Mathlib/Computability/Encoding.lean,Mathlib/ModelTheory/Encoding.lean 2 9 ['AlexeyMilovanov', 'dagurtomas', 'github-actions', 'vihdzp'] nobody
19-53738
19 days ago
26-18316
26 days ago
51-82853
51 days
37722 SabrinaJewson
author:SabrinaJewson
feat(Order/Cover): intervals equal singletons iff To complement `Set.Icc_eq_singleton_iff`, this introduces: - `Set.Ioc_eq_singleton_iff` / `Set.Ico_eq_singleton_iff` - `Set.Ico_eq_singleton_left_iff` / `Set.Ioc_eq_singleton_right_iff` - `Set.Ioi_eq_singleton_iff` / `Set.Iio_eq_singleton_iff` - `Set.Ioi_eq_singleton_top_iff` / `Set.Iio_eq_singleton_bot_iff` - `Set.Ioo_eq_singleton_iff` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor awaiting-author maintainer-merge 39/0 Mathlib/Order/Atoms.lean,Mathlib/Order/Cover.lean 2 16 ['Komyyy', 'SabrinaJewson', 'github-actions', 'mathlib-merge-conflicts'] bryangingechen
assignee:bryangingechen
18-73229
18 days ago
21-26186
21 days ago
35-7103
35 days
39236 quantumsnow
author:quantumsnow
feat(AlgebraicTopology): `HomologyPretheory` for Eilenberg-Steenrod homology This splits out a part of #38369 into a separate PR. It includes a structure `TopPair.HomologyPretheory` containing the data for an Eilenberg-Steenrod homology theory and the first Eilenberg-Steenrod axiom as a typeclass `EilenbergSteenrod.IsHomotopyInvariant`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor maintainer-merge awaiting-author 155/0 Mathlib.lean,Mathlib/AlgebraicTopology/EilenbergSteenrod.lean 2 37 ['chrisflav', 'dagurtomas', 'github-actions', 'joelriou', 'quantumsnow'] robin-carlier
assignee:robin-carlier
12-82163
12 days ago
12-82163
12 days ago
2-47026
2 days
37718 SabrinaJewson
author:SabrinaJewson
feat(Order): add conversions from `Std` order typeclasses to Mathlib ones `{Preorder, PartialOrder, LinearOrder}.ofStd` exist to facilitate convenient translation from `Std` order typeclasses to Mathlib ones. The design is modelled closely after [`Init.Data.Order.PackageFactories`](https://leanprover-community.github.io/mathlib4_docs/Init/Data/Order/PackageFactories.html) (`Std.PreorderPackage` is equivalent-ish to Mathlib’s `Preorder`, and same for partial and linear orders). The `OfStdArgs` types allow conveniently bundling a whole bunch of default arguments together in a way that allows one default argument set to `extends` another. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor maintainer-merge 391/0 Mathlib.lean,Mathlib/Order/Std.lean,MathlibTest/OrderOfStd.lean 3 9 ['SabrinaJewson', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
10-65257
10 days ago
10-75361
10 days ago
56-47963
56 days
35753 Vilin97
author:Vilin97
feat(Topology/Algebra/Order): regular grid helpers and piecewise linear interpolation Make API for piecewise linear interpolation on regular grids. I need these to for ODE time-stepping methods, like forward Euler, and later Runge–Kutta methods. Follow-up PR: #35755 (forward Euler method convergence). I don't know if these numerical analysis ODE-solving methods even belong in mathlib. If someone could advise me on it, I would appreciate it. --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code. - [ ] depends on: #38091 t-topology new-contributor LLM-generated maintainer-merge 201/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 2 59 ['Vilin97', 'YanYablonovskiy', 'adomani', 'botbaki-review', 'copilot-pull-request-reviewer', 'dagurtomas', 'eric-wieser', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-dependent-issues', 'wwylele'] ADedecker
assignee:ADedecker
9-48642
9 days ago
31-60225
31 days ago
64-13935
64 days
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 maintainer-merge 329/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean 2 19 ['YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'mitchell-horner', 'robin-carlier'] nobody
8-50150
8 days ago
28-53543
28 days ago
89-55434
89 days
39798 vihdzp
author:vihdzp
chore: use `notation3` for `Ordinal.typeLT` This creates a delaborator, which avoids goals from looking like `(type fun x1 x2 ↦ x1 < x2) < (type fun x1 x2 ↦ x1 < x2)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy maintainer-merge 5/1 Mathlib/SetTheory/Ordinal/Basic.lean 1 4 ['YaelDillies', 'github-actions', 'vihdzp'] YaelDillies
assignee:YaelDillies
7-60472
7 days ago
7-60295
7 days ago
7-76161
7 days
39789 vihdzp
author:vihdzp
feat: a cofinal set has a cofinal subset of order type `(cof α).ord` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 38/20 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/SetTheory/Ordinal/Basic.lean 4 7 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
7-31904
7 days ago
7-32061
7 days ago
8-43269
8 days
39693 yuanyi-350
author:yuanyi-350
feat(Combinatorics/Enumerative/Bell): sum over partition shapes Kill TODO in `Mathlib/Combinatorics/Enumerative/Bell.lean` which proves `Nat.bell` as a sum of `Multiset.bell` over partition shapes --- Migrated from #37690 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 128/35 Mathlib/Combinatorics/Enumerative/Bell.lean 1 6 ['YaelDillies', 'github-actions'] nobody
7-18572
7 days ago
10-942
10 days ago
11-11511
11 days
39307 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph/Copy): introduce `UnlabeledCopy` carrier subtype Adds `abbrev UnlabeledCopy A B := {B' : B.Subgraph // Nonempty (A ≃g B'.coe)}` and uses it to replace the previous inline filter-set body of `copyCount G H`. Drops the now unused legacy Finset-image bridge `copyCount_eq_card_image_copyToSubgraph`. Adds `uniqueUnlabeledCopyBot` instance so `copyCount_bot` is a one-liner via `Fintype.card_unique`. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Step 1/5 of the `Copy` / `InducedCopy` refactor-feat stack.** This PR isolates the `UnlabeledCopy` type introduction and the count's type-form redefinition from the larger rename/convention work in the rest of the stack. Note that resolving the current clash in naming (`Copy` and `UnlabeledCopy` vs `labelledCopyCount` and `copyCount`) is part of #38745. t-combinatorics maintainer-merge 32/30 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 8 ['FordUniver', 'YaelDillies', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mitchell-horner'] nobody
6-1909
6 days ago
8-27638
8 days ago
18-34320
18 days
39727 vihdzp
author:vihdzp
feat: stationary sets We define stationary sets as sets intersecting all club sets, and prove basic theorems about them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 154/22 Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean 2 7 ['YaelDillies', 'github-actions', 'vihdzp'] nobody
5-61535
5 days ago
5-60824
5 days ago
10-47458
10 days
37429 RemyDegenne
author:RemyDegenne
feat: API for stoppedValue and StoppedProcess Co-authored-by: Thomas Zhu Co-authored-by: Alessio Rondelli --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability awaiting-author maintainer-merge 57/5 Mathlib/Probability/Process/Stopping.lean 1 6 ['EtienneC30', 'RemyDegenne', 'github-actions'] EtienneC30
assignee:EtienneC30
5-16871
5 days ago
5-16999
5 days ago
2-84927
2 days
39202 FordUniver
author:FordUniver
feat(Analysis/Calculus/Gradient): add `toDual_gradient` and companions Add `toDual_gradient`, `toDual_gradientWithin`, and the composed variants `toDual_comp_gradient`, `toDual_comp_gradientWithin` — the natural inverse direction of the gradient's defining equation `∇ f x := (toDual 𝕜 F).symm (fderiv 𝕜 f x)`. These identify `(toDual 𝕜 F) (∇ f x)` with `fderiv 𝕜 f x` (and the `gradientWithin` and composed forms with the corresponding fderiv versions), making the Riesz isomorphism between the two derivative views explicit. The proofs of `DifferentiableAt.hasGradientAt` and `DifferentiableWithinAt.hasGradientWithinAt` in the same file are simplified to use them. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- Came up while formalizing the descent lemma for Lipschitz-smooth functions, where being able to switch between `LipschitzWith K (fderiv ℝ f)` and `LipschitzWith K (∇ f)` is helpful, which with this PR becomes `toDual_comp_gradient ▸ (toDual ℝ F).isometry.lipschitzWith_iff K`. Also slightly simplifies two call sites in mathlib. maintainer-merge 20/5 Mathlib/Analysis/Calculus/Gradient/Basic.lean 1 5 ['FordUniver', 'Komyyy', 'github-actions'] nobody
5-13013
5 days ago
15-74037
15 days ago
21-85239
21 days
39206 FordUniver
author:FordUniver
feat(Analysis/Calculus/AddTorsor/AffineMap): smoothness of `AffineMap.lineMap` Add `AffineMap.lineMap_contDiff_uncurry` (joint smoothness in all three arguments), `AffineMap.lineMap_contDiff` (smoothness in the parameter with fixed endpoints), and the composition family `ContDiff.lineMap`, `ContDiffOn.lineMap`, `ContDiffAt.lineMap`, `ContDiffWithinAt.lineMap`, mirroring the corresponding `Continuous` family in `Mathlib.Topology.Algebra.Affine`. The uncurried and `ContDiffWithinAt` forms are tagged `@[fun_prop]` so the rest are automatically derivable. Closes the TODO at `Mathlib.MeasureTheory.Integral.CurveIntegral.Poincare:333` where the proof now reduces to `fun_prop`. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- Came up while formalizing the descent lemma for Lipschitz-smooth functions, where `Path.segment a b` being smooth on the unit interval is needed to apply FTC along the segment (#39524); `AffineMap.lineMap_contDiff` is the lemma directly used there. Two things I was genuinely not quite sure about: 1. Should the **three convenience variants** `ContDiffAt.lineMap`, `ContDiffOn.lineMap`, and `ContDiff.lineMap` be included? They are not strictly necessary but they exist for users wanting to write `h₁.lineMap h₂ hg` in dot notation by hand, and they mirror the convention of the `Continuous.lineMap` family. 2. Is `Mathlib.Analysis.Calculus.AddTorsor.AffineMap` the **right home**, and is adding `public import Mathlib.Analysis.Calculus.AddTorsor.AffineMap` to `Poincare.lean` to close the TODO reasonable? The placement mirrors the `Continuous.lineMap` family in `Mathlib.Topology.Algebra.Affine`, but hiding a `@[fun_prop]` in a file at the bottom of the hierarchy and needing to import it feels a bit off. t-analysis maintainer-merge 57/6 Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Poincare.lean 2 8 ['EtienneC30', 'FordUniver', 'github-actions'] EtienneC30
assignee:EtienneC30
4-83347
4 days ago
8-26995
8 days ago
21-8467
21 days
39882 chrisflav
author:chrisflav
chore(CategoryTheory): `StructuredArrow.map₂` along equivalences induces an equivalence Before that we only had an instance `IsEquivalence`, this provides the full equivalence with good def-eqs for the inverse. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 126/2 Mathlib/CategoryTheory/Comma/StructuredArrow/Basic.lean 1 7 ['chrisflav', 'github-actions', 'robin-carlier'] robin-carlier
assignee:robin-carlier
4-48554
4 days ago
5-64236
5 days ago
6-74875
6 days
39959 chrisflav
author:chrisflav
chore(CategoryTheory/Sites): make auxiliary declarations for `OneHypercoverDenseData.isSheaf_iff` private --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 7/7 Mathlib/CategoryTheory/Sites/DenseSubsite/OneHypercoverDense.lean 1 2 ['github-actions', 'grunweg'] robin-carlier
assignee:robin-carlier
4-48549
4 days ago
5-23028
5 days ago
5-22778
5 days
37521 jessealama
author:jessealama
feat(Data/Part): add Part.bind_eq_some_iff Add `Part.bind_eq_some_iff`, the `Part` analogue of `Option.bind_eq_some_iff`. Noticed this small gap while working on some equivalence proofs with partial functions. t-data maintainer-merge 6/0 Mathlib/Data/Part.lean 1 7 ['github-actions', 'jessealama', 'joneugster', 'vihdzp'] joneugster
assignee:joneugster
4-13357
4 days ago
12-45704
12 days ago
57-61478
57 days
39869 grunweg
author:grunweg
doc: clarify the scope of `field_simp` The term semi-field is sufficiently non-standard that it has led to confusion whether e.g. `NNReal` is supported by field_simp: it is (as it is a semifield). Let's clarify the doc-string. Inspired by discussions at the ICERM workshop "Techniques and Tools for the Formalization of Analysis". --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation easy t-meta maintainer-merge 4/4 Mathlib/Tactic/FieldSimp.lean 1 2 ['github-actions', 'joneugster'] thorimur
assignee:thorimur
4-10016
4 days ago
7-6203
7 days ago
7-5953
7 days
37415 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): compute limits of `Monomial`s Prove * `UnitMonomial.logToFun_isEquivalent_of_nonzero_head`: `log m.toFun` is asymptotically equivalent to its first summand - `m[0] • log basis[0]` if `m[0] ≠ 0`. Using this theorem we can prove that the asymptotic behavior of a monomial is determined by its first non-zero exponent. * `toFun_tendsto_top_of_FirstNonzeroIsPos` and its variants: used to infer the limit of `t.toFun` from `FirstNonzeroIsPos`/`FirstNonzeroIsNeg`/`AllZero`. * `IsLittleO_of_lt_exps` and its variants: used to asymptotically compare two monomials. --- - [x] depends on: #37411 This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 378/1 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basis.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/Basic.lean 2 16 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
3-70356
3 days ago
4-13076
4 days ago
17-83584
17 days
39703 YaelDillies
author:YaelDillies
chore: create a `Basic` top folder Move a select few folders from `Logic` to a new `Basic` folder. The goal is to finally move the material misplaced in the `Data` and `Logic` folder and to clarify the various expectations of each folder. Ultimately: * the `Basic` folder will be about basic predicates on types and basic mathematical types not fitting in any other folder; * the `Data` folder will be about data structures, instead of the current mix of data structures and basic mathematical types not fitting in any other folder; * the `Logic` folder will be about advanced logic results not fitting in either `ModelTheory` or `SetTheory`, instead of the current mix of basic predicates on types and advanced logic results. Many more files (~1000) could be moved, so I will do it in several PRs. Not all files should move to `Basic`. Some files should go to `Algebra.Order` instead (eg `Data.Nat.Lattice`) and some should be straight out deprecated (eg `Data.Analysis`). [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/Basic.20folder/with/597151406) --- This PR stems from discussions at the MI retreat 2026. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-data maintainer-merge 148/96 Counterexamples/Girard.lean,Mathlib.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Nat/Units.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/Module/Presentation/Free.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/NeZero.lean,Mathlib/Basic/Denumerable.lean,Mathlib/Basic/ExistsUnique.lean,Mathlib/Basic/IsEmpty.lean,Mathlib/Basic/IsEmpty/Basic.lean,Mathlib/Basic/IsEmpty/Defs.lean,Mathlib/Basic/Logic/Basic.lean,Mathlib/Basic/Logic/Lemmas.lean,Mathlib/Basic/Nonempty.lean,Mathlib/Basic/Nontrivial/Basic.lean,Mathlib/Basic/Nontrivial/Defs.lean,Mathlib/Basic/README.md,Mathlib/Basic/Unique.lean,Mathlib/Basic/UnivLE.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/Limits/Types/Limits.lean,Mathlib/CategoryTheory/UnivLE.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Computability/Primrec/Basic.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/GetD.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/MaxPowDiv.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/README.md,Mathlib/Data/Rat/Denumerable.lean,Mathlib/Data/TwoPointing.lean,Mathlib/Lean/Meta/CongrTheorems.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/Logic/Equiv/Defs.lean,Mathlib/Logic/Equiv/List.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/README.md,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Coprime/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/UnivLE.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/CongrExclamation.lean,Mathlib/Tactic/ITauto.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Subsingleton.lean,Mathlib/Tactic/Tauto.lean,Mathlib/Testing/Plausible/Testable.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean,MathlibTest/Linter/PrivateModule/ImportOnly.lean,scripts/autolabel.lean,scripts/noshake.json 69 25 ['SnirBroshi', 'YaelDillies', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts', 'themathqueen'] joneugster
assignee:joneugster
3-69975
3 days ago
3-68060
3 days ago
6-78125
6 days
37342 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): non-primitive corecursion for Seq: more `FriendlyOperation` API This is a continuation of #35072. This PR adds more API about friendly operations: * `FriendlyOperation.coind`: a coinductive principle for proving that operation is friendly * `FriendlyOperationClass.eq_of_bisim`: a generalisation of `Seq.eq_of_bisim'` for proving two sequences are equal. --- - [x] depends on: #35072 This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-meta maintainer-merge 160/0 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean 1 7 ['github-actions', 'joneugster', 'mathlib-dependent-issues'] joneugster
assignee:joneugster
3-69842
3 days ago
4-14181
4 days ago
33-698
33 days
35394 HugLycan
author:HugLycan
feat(Tactic/Positivity): make positivity work for types that are not partial orders Make positivity work for types that are not partial orders Most PositivityExt haven't been updated for non partial order cases yet. They will be updated in the later PR. `Strictness` now depends on `Option Q(PartialOrder $α)` instead of `Q(PartialOrder $α)`, and the constructors `Strictness.positive`/`Strictness.nonnegative` now have their `Q(PartialOrder $α)` typeclass arguments. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta maintainer-merge awaiting-author merge-conflict 612/354 Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Algebra.lean,Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Module/Field.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Order.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/DerivHyp.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Factorial/DoubleFactorial.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean,Mathlib/NumberTheory/ArithmeticFunction/Zeta.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/Height/Projectivization.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,MathlibTest/positivity.lean 54 92 ['HugLycan', 'JovanGerb', 'Vierkantor', 'fpvandoorn', 'github-actions', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
3-53125
3 days ago
6-5796
6 days ago
62-70283
62 days
39988 grunweg
author:grunweg
refactor(Tactic/Translate): document name translation a bit more I found the code a bit hard to read: the following commits each improve the code slightly. Also add a test exercising the "name matches the auto-generated name" code path. #39962 will tweak the naming algorithm slightly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 34/20 Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/TagUnfoldBoundary.lean,MathlibTest/Attribute/ToAdditive/Basic.lean 3 12 ['JovanGerb', 'github-actions', 'grunweg', 'joneugster', 'thorimur'] joneugster
assignee:joneugster
3-15584
3 days ago
3-14621
3 days ago
4-51042
4 days
34361 grunweg
author:grunweg
chore: rename comp' to fun_comp a few more times; use to_fun to autog… …enerate -------- - [x] depends on: #34257 (then this PR can be done the proper way) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 19/42 Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/DifferentialForm/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Meromorphic/Basic.lean 5 12 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
2-80068
2 days ago
13-61908
13 days ago
14-17560
14 days
37598 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Coloring): add lemmas about coloring and maps --- Idea from this Zulip thread: [graph theory>Second Order Monadic Logic for Graph](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 33/11 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 31 ['IvanRenison', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
2-67583
2 days ago
2-75791
2 days ago
53-27953
53 days
38092 SnirBroshi
author:SnirBroshi
chore(Order/Defs/Unbundled): deprecate `def Symmetric` in favor of `class Std.Symm` --- [Mathlib's `def Symmetric`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#Symmetric) [Core's `class Std.Symm`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Std.Symm) [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 maintainer-merge 465/408 Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Counterexamples/HeawoodUnitDistance.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/Normed/Operator/Compact/FredholmAlternative.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/IsConnected.lean,Mathlib/Combinatorics/Additive/ErdosGinzburgZiv.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/Graph/Delete.lean,Mathlib/Combinatorics/Graph/Lattice.lean,Mathlib/Combinatorics/Graph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Tripartite.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Data/Finset/Pairwise.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Pairwise.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/Data/Rel/Separated.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/Data/Set/Pairwise/List.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/WSeq/Relation.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/MeasureTheory/Measure/AEDisjoint.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/Order/Antichain.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/PropInstances.lean,Mathlib/RingTheory/Coprime/Ideal.lean,Mathlib/RingTheory/Radical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Graph.lean,Mathlib/Topology/CompactOpen.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/MetricSpace/MetricSeparated.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/GDelta.lean 80 8 ['SnirBroshi', 'dagurtomas', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] bryangingechen
assignee:bryangingechen
2-48347
2 days ago
14-35217
14 days ago
46-1714
46 days
39720 vihdzp
author:vihdzp
feat: cofinality within order We introduce `Order.cofWithin x = Order.cof (Iio x)` for the cofinality of an element within a preorder. This generalizes `Ordinal.cof`, with the caveat that `cof o : Cardinal.{u}` for `o : Ordinal.{u}`, whereas `cofWithin o : Cardinal.{u + 1}`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 104/14 Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean 3 11 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] alreadydone
assignee:alreadydone
2-48341
2 days ago
7-33276
7 days ago
10-52411
10 days
39984 grunweg
author:grunweg
chore(Data): move some files to better locations Move a number of files in `Data` to clearly better locations. See individual commit messages for details. --- - [x] depends on: #39976 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed tech debt maintainer-merge 30/30 Counterexamples/HomogeneousPrimeNotPrime.lean,Mathlib.lean,Mathlib/Algebra/Group/ConjFinite.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/Units/Fintype.lean,Mathlib/Algebra/Lie/SerreConstruction.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/LinearAlgebra/Matrix/Action.lean,Mathlib/LinearAlgebra/Matrix/Bilinear.lean,Mathlib/LinearAlgebra/Matrix/Cartan.lean,Mathlib/LinearAlgebra/Matrix/DualNumber.lean,Mathlib/LinearAlgebra/Matrix/Invertible.lean,Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Cardinality.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/SetTheory/Cardinal/Embedding.lean,Mathlib/SetTheory/Cardinal/NatCard.lean,Mathlib/SetTheory/Cardinal/Rat.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean,scripts/noshake.json 30 4 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues'] nobody
2-22660
2 days ago
3-68277
3 days ago
3-68027
3 days
36219 gasparattila
author:gasparattila
chore(Order/SupClosed): use `to_dual` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 68/215 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/SupClosed.lean 2 16 ['JovanGerb', 'YaelDillies', 'gasparattila', 'github-actions', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
1-82694
1 day ago
2-16342
2 days ago
51-70448
51 days
37624 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Maps): add theorems about composition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge awaiting-author 32/5 Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 12 ['IvanRenison', 'YaelDillies', 'b-mehta', 'github-actions'] nobody
1-69423
1 day ago
1-69488
1 day ago
56-36149
56 days
36376 jessealama
author:jessealama
feat(SimpleGraph): hamiltonian cycle from cyclic permutation This PR provides `IsHamiltonian.of_perm`, a bridge from `Equiv.Perm.IsCycle` to `SimpleGraph.IsHamiltonian`: if σ is a permutation that is a single cycle with full support on at least 3 elements, and each step `v → σ v` is an edge of `G`, then `G` is Hamiltonian. ### New definitions and lemmas **`Mathlib/Data/List/Chain.lean`**: - `IsChain.iterate`: `List.iterate f a n` is a chain under `r` whenever `r a (f a)` holds for all `a` **`Mathlib/Data/List/Iterate.lean`**: - `getLast_iterate`: the last element of `List.iterate f a n` is `f^[n - 1] a` **`Mathlib/Combinatorics/SimpleGraph/Walk/Iterate.lean`** (new file): - `Walk.iterate`: builds a walk of length `n` from `x` to `f^[n] x` for any function `f` with `G.Adj x (f x)` for all `x`, defined via `Walk.ofSupport` - `Walk.length_iterate`, `Walk.support_iterate`, `Walk.edges_iterate`: basic API **`Mathlib/GroupTheory/Perm/Cycle/Basic.lean`**: - `IsCycleOn.injOn_pow_apply`: the map `n ↦ (f ^ n) a` is injective on `Finset.range #s` **`Mathlib/GroupTheory/Perm/Cycle/Concrete.lean`**: - `IsCycleOn.injOn_sym2_pow_apply`: the unordered-pair edge map `k ↦ s((f ^ k) a, (f ^ (k + 1)) a)` is injective on `[0, #s)` when `#s ≠ 2` - `IsCycleOn.sym2_pow_apply_ne`: edge distinctness for cycle-on permutations — `s((f ^ k) a, (f ^ (k + 1)) a) ≠ s(a, f a)` when `k ≠ 0`, `k < #s`, and `#s ≠ 2` - `Perm.toList_eq_range_map_pow`: expresses `toList` as a range map over powers **`Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean`**: - `cons_isHamiltonianCycle_iff`: a Hamiltonian path closed by an edge outside its support is a Hamiltonian cycle, and conversely - `IsHamiltonian.of_perm`: the main theorem --- - [x] depends on: #36307 t-combinatorics maintainer-merge 182/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian/Perm.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Iterate.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Iterate.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean 8 78 ['SnirBroshi', 'YaelDillies', 'github-actions', 'jessealama', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
1-48113
1 day ago
12-44248
12 days ago
58-2392
58 days
39298 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): the pushout-product of a horn inclusion and a boundary inclusion is an anodyne extension In this PR, we construct a regular pairing for the union of `Λ[m + 1, l] ⊗ ∂Δ[n]` and ` Δ[m + 1] ⊗ ∂Δ[n]` in `Δ[m + 1] ⊗ Δ[n]`. It follows immediately that the inclusion of this subcomplex is an anodyne extension. --- - [x] depends on: #39462 - [x] depends on: #39463 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology large-import maintainer-merge 740/2 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PairingCore.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/UnionProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean 6 13 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] mattrobball
assignee:mattrobball
1-48101
1 day ago
1-78351
1 day ago
7-12047
7 days
39892 SnirBroshi
author:SnirBroshi
feat(GroupTheory/Commutator/Basic): more commutator identities From [Wikipedia](https://en.wikipedia.org/wiki/Commutator#Identities_(group_theory)) --- The last two aren't on Wikipedia but they're similar to Hall-Witt. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory maintainer-merge 44/0 Mathlib/GroupTheory/Commutator/Basic.lean 1 6 ['SnirBroshi', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
1-3223
1 day ago
5-45153
5 days ago
6-47370
6 days

All maintainer merge'd PRs

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
34633 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define the Zarankiewicz function Defines the Zarankiewicz function $z(m, n; s, t)$ in terms of bipartite graphs. --- - [x] depends on: #34632 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 maintainer-merge blocked-by-other-PR 247/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Zarankiewicz.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 4 30 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mitchell-horner'] nobody
121-39950
4 months ago
22-52845
22 days ago
67-63488
67 days
31141 peabrainiac
author:peabrainiac
feat(Analysis/Calculus): parametric integrals over smooth functions are smooth Show that for any smooth function `f : H × ℝ → E`, the parametric integral `fun x ↦ ∫ t in a..b, f (x, t) ∂μ` is smooth too. The argument proceeds inductively, using the fact that derivatives of parametric integrals can themselves be computed as parametric integrals. The necessary lemmas on derivatives of parametric integrals already existed, but took some work to apply due to their generality; we state some convenient special cases. --- - [x] depends on: #31077 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author maintainer-merge 470/12 Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/ParametricIntervalIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/Topology/NhdsWithin.lean,Mathlib/Topology/Separation/Regular.lean 5 36 ['fpvandoorn', 'github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac', 'sgouezel'] j-loreaux
assignee:j-loreaux
111-12711
3 months ago
111-12711
111 days ago
22-14837
22 days
37057 erdOne
author:erdOne
feat(AlgebraicTopology): `SimplexCategory.toTop_map_δ_apply` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology maintainer-merge awaiting-author merge-conflict 48/2 Mathlib/AlgebraicTopology/CechNerve.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Data/Fin/SuccPred.lean 5 17 ['Raph-DG', 'dagurtomas', 'erdOne', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'riccardobrasca'] robin-carlier
assignee:robin-carlier
55-31601
1 month ago
56-79241
56 days ago
4-43742
4 days
37420 artie2000
author:artie2000
refactor: change definitions to avoid `ConvexCone` Change the definitions of `PointedCone.positive` and `PointedCone.closure` to avoid mentioning `ConvexCone`. This PR is part of a series deprecating `ConvexCone`: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Replacing.20.60ConvexCone.60.20with.20.60PointedCone.60/with/582738985 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry maintainer-merge 10/4 Mathlib/Analysis/Convex/Cone/Closure.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 2 3 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'ooovi', 'vihdzp'] nobody
47-11195
1 month ago
47-10443
47 days ago
62-29812
62 days
37346 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. 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.IsPath.getVert_injOn`: unchanged 🎉 * `✅️ SimpleGraph.Walk.length_bypass_le`: unchanged 🎉 * `✅️ Rat.floor_intCast_div_natCast`: unchanged 🎉 * `✅️ InnerProductGeometry.norm_eq_of_angle_sub_eq_angle_sub_rev_of_angle_ne_pi`: unchanged 🎉 * `✅️ padicNorm.zero_of_padicNorm_eq_zero`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge awaiting-zulip 7/45 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean 4 22 ['FernandoChu', 'bryangingechen', 'chenson2018', 'euprunin', 'faenuccio', 'github-actions', 'grunweg'] nobody
34-10443
1 month ago
34-10474
34 days ago
30-45859
30 days
37603 Parcly-Taxel
author:Parcly-Taxel
refactor: review of `SetSemiring` * Rename `Set.up` and `SetSemiring.down` to `SetSemiring.ofSet` and `SetSemiring.toSet` respectively. Unprotect both and make them equivalences, following `FreeMonoid`. * Derive `CompleteAtomicBooleanAlgebra` for `SetSemiring` immediately. * Add `imageHom_id` and `imageHom_comp`. The three existing lemmas about `imageHom` are coalesced into `imageHom_apply`. Ultimately inspired by https://github.com/leanprover-community/mathlib4/pull/36934#issuecomment-4183475568. maintainer-merge merge-conflict 120/165 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Data/Set/Semiring.lean 2 42 ['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] nobody
33-53179
1 month ago
33-53180
33 days ago
22-34679
22 days
38358 yuanyi-350
author:yuanyi-350
doc(1000.yaml): note more formalised theorems --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation maintainer-merge 9/2 docs/1000.yaml 1 12 ['YaelDillies', 'github-actions', 'grunweg', 'vihdzp', 'yuanyi-350'] nobody
30-18197
30 days ago
30-17638
30 days ago
41-14326
41 days
37053 artie2000
author:artie2000
refactor(Analysis/Convex/Cone): use `PointedCone` in Riesz extension theorem Change the statement of the Riesz extension theorem to take a `PointedCone` rather than a `ConvexCone`. This PR is part of a series replacing `ConvexCone` with `PointedCone`. https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Replacing.20.60ConvexCone.60.20with.20.60PointedCone.60/near/581184307 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry maintainer-merge merge-conflict 15/12 Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 2 9 ['YaelDillies', 'artie2000', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] nobody
21-61392
21 days ago
21-61393
21 days ago
46-64967
46 days
37928 AlexeyMilovanov
author:AlexeyMilovanov
refactor(Computability.Encoding): unbundle Γ and remove FinEncoding This PR unbundles the alphabet `Γ` from the `Encoding` structure and completely removes `FinEncoding`. `Encoding`: The alphabet `Γ` is now an explicit parameter: `structure Encoding (α : Type u) (Γ : Type v)`. `FinEncoding`: Removed. Finiteness is now handled via standard typeclasses (e.g., `[Fintype Γ] (e : Encoding α Γ)`). Combinators: Functions like `finEncodingPair` are simplified to `encodingPair`, dropping the `fin` prefix and `[Fintype]` requirements where no longer needed. Downstream: Mechanically updated `Mathlib.Computability` and `Mathlib.ModelTheory` to pass the explicit `Γ` and use `[Fintype Γ]` where `FinEncoding` was previously required. new-contributor maintainer-merge 87/67 Mathlib/Computability/Encoding.lean,Mathlib/ModelTheory/Encoding.lean 2 9 ['AlexeyMilovanov', 'dagurtomas', 'github-actions', 'vihdzp'] nobody
19-53738
19 days ago
26-18316
26 days ago
51-82853
51 days
37722 SabrinaJewson
author:SabrinaJewson
feat(Order/Cover): intervals equal singletons iff To complement `Set.Icc_eq_singleton_iff`, this introduces: - `Set.Ioc_eq_singleton_iff` / `Set.Ico_eq_singleton_iff` - `Set.Ico_eq_singleton_left_iff` / `Set.Ioc_eq_singleton_right_iff` - `Set.Ioi_eq_singleton_iff` / `Set.Iio_eq_singleton_iff` - `Set.Ioi_eq_singleton_top_iff` / `Set.Iio_eq_singleton_bot_iff` - `Set.Ioo_eq_singleton_iff` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor awaiting-author maintainer-merge 39/0 Mathlib/Order/Atoms.lean,Mathlib/Order/Cover.lean 2 16 ['Komyyy', 'SabrinaJewson', 'github-actions', 'mathlib-merge-conflicts'] bryangingechen
assignee:bryangingechen
18-73229
18 days ago
21-26186
21 days ago
35-7103
35 days
39236 quantumsnow
author:quantumsnow
feat(AlgebraicTopology): `HomologyPretheory` for Eilenberg-Steenrod homology This splits out a part of #38369 into a separate PR. It includes a structure `TopPair.HomologyPretheory` containing the data for an Eilenberg-Steenrod homology theory and the first Eilenberg-Steenrod axiom as a typeclass `EilenbergSteenrod.IsHomotopyInvariant`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor maintainer-merge awaiting-author 155/0 Mathlib.lean,Mathlib/AlgebraicTopology/EilenbergSteenrod.lean 2 37 ['chrisflav', 'dagurtomas', 'github-actions', 'joelriou', 'quantumsnow'] robin-carlier
assignee:robin-carlier
12-82163
12 days ago
12-82163
12 days ago
2-47026
2 days
37718 SabrinaJewson
author:SabrinaJewson
feat(Order): add conversions from `Std` order typeclasses to Mathlib ones `{Preorder, PartialOrder, LinearOrder}.ofStd` exist to facilitate convenient translation from `Std` order typeclasses to Mathlib ones. The design is modelled closely after [`Init.Data.Order.PackageFactories`](https://leanprover-community.github.io/mathlib4_docs/Init/Data/Order/PackageFactories.html) (`Std.PreorderPackage` is equivalent-ish to Mathlib’s `Preorder`, and same for partial and linear orders). The `OfStdArgs` types allow conveniently bundling a whole bunch of default arguments together in a way that allows one default argument set to `extends` another. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor maintainer-merge 391/0 Mathlib.lean,Mathlib/Order/Std.lean,MathlibTest/OrderOfStd.lean 3 9 ['SabrinaJewson', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
10-65257
10 days ago
10-75361
10 days ago
56-47963
56 days
35753 Vilin97
author:Vilin97
feat(Topology/Algebra/Order): regular grid helpers and piecewise linear interpolation Make API for piecewise linear interpolation on regular grids. I need these to for ODE time-stepping methods, like forward Euler, and later Runge–Kutta methods. Follow-up PR: #35755 (forward Euler method convergence). I don't know if these numerical analysis ODE-solving methods even belong in mathlib. If someone could advise me on it, I would appreciate it. --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code. - [ ] depends on: #38091 t-topology new-contributor LLM-generated maintainer-merge 201/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 2 59 ['Vilin97', 'YanYablonovskiy', 'adomani', 'botbaki-review', 'copilot-pull-request-reviewer', 'dagurtomas', 'eric-wieser', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-dependent-issues', 'wwylele'] ADedecker
assignee:ADedecker
9-48642
9 days ago
31-60225
31 days ago
64-13935
64 days
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 maintainer-merge 329/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean 2 19 ['YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'mitchell-horner', 'robin-carlier'] nobody
8-50150
8 days ago
28-53543
28 days ago
89-55434
89 days
39798 vihdzp
author:vihdzp
chore: use `notation3` for `Ordinal.typeLT` This creates a delaborator, which avoids goals from looking like `(type fun x1 x2 ↦ x1 < x2) < (type fun x1 x2 ↦ x1 < x2)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy maintainer-merge 5/1 Mathlib/SetTheory/Ordinal/Basic.lean 1 4 ['YaelDillies', 'github-actions', 'vihdzp'] YaelDillies
assignee:YaelDillies
7-60472
7 days ago
7-60295
7 days ago
7-76161
7 days
39789 vihdzp
author:vihdzp
feat: a cofinal set has a cofinal subset of order type `(cof α).ord` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 38/20 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/SetTheory/Ordinal/Basic.lean 4 7 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
7-31904
7 days ago
7-32061
7 days ago
8-43269
8 days
39693 yuanyi-350
author:yuanyi-350
feat(Combinatorics/Enumerative/Bell): sum over partition shapes Kill TODO in `Mathlib/Combinatorics/Enumerative/Bell.lean` which proves `Nat.bell` as a sum of `Multiset.bell` over partition shapes --- Migrated from #37690 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 128/35 Mathlib/Combinatorics/Enumerative/Bell.lean 1 6 ['YaelDillies', 'github-actions'] nobody
7-18572
7 days ago
10-942
10 days ago
11-11511
11 days
39307 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph/Copy): introduce `UnlabeledCopy` carrier subtype Adds `abbrev UnlabeledCopy A B := {B' : B.Subgraph // Nonempty (A ≃g B'.coe)}` and uses it to replace the previous inline filter-set body of `copyCount G H`. Drops the now unused legacy Finset-image bridge `copyCount_eq_card_image_copyToSubgraph`. Adds `uniqueUnlabeledCopyBot` instance so `copyCount_bot` is a one-liner via `Fintype.card_unique`. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Step 1/5 of the `Copy` / `InducedCopy` refactor-feat stack.** This PR isolates the `UnlabeledCopy` type introduction and the count's type-form redefinition from the larger rename/convention work in the rest of the stack. Note that resolving the current clash in naming (`Copy` and `UnlabeledCopy` vs `labelledCopyCount` and `copyCount`) is part of #38745. t-combinatorics maintainer-merge 32/30 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 8 ['FordUniver', 'YaelDillies', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mitchell-horner'] nobody
6-1909
6 days ago
8-27638
8 days ago
18-34320
18 days
39727 vihdzp
author:vihdzp
feat: stationary sets We define stationary sets as sets intersecting all club sets, and prove basic theorems about them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 154/22 Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean 2 7 ['YaelDillies', 'github-actions', 'vihdzp'] nobody
5-61535
5 days ago
5-60824
5 days ago
10-47458
10 days
37429 RemyDegenne
author:RemyDegenne
feat: API for stoppedValue and StoppedProcess Co-authored-by: Thomas Zhu Co-authored-by: Alessio Rondelli --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability awaiting-author maintainer-merge 57/5 Mathlib/Probability/Process/Stopping.lean 1 6 ['EtienneC30', 'RemyDegenne', 'github-actions'] EtienneC30
assignee:EtienneC30
5-16871
5 days ago
5-16999
5 days ago
2-84927
2 days
39202 FordUniver
author:FordUniver
feat(Analysis/Calculus/Gradient): add `toDual_gradient` and companions Add `toDual_gradient`, `toDual_gradientWithin`, and the composed variants `toDual_comp_gradient`, `toDual_comp_gradientWithin` — the natural inverse direction of the gradient's defining equation `∇ f x := (toDual 𝕜 F).symm (fderiv 𝕜 f x)`. These identify `(toDual 𝕜 F) (∇ f x)` with `fderiv 𝕜 f x` (and the `gradientWithin` and composed forms with the corresponding fderiv versions), making the Riesz isomorphism between the two derivative views explicit. The proofs of `DifferentiableAt.hasGradientAt` and `DifferentiableWithinAt.hasGradientWithinAt` in the same file are simplified to use them. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- Came up while formalizing the descent lemma for Lipschitz-smooth functions, where being able to switch between `LipschitzWith K (fderiv ℝ f)` and `LipschitzWith K (∇ f)` is helpful, which with this PR becomes `toDual_comp_gradient ▸ (toDual ℝ F).isometry.lipschitzWith_iff K`. Also slightly simplifies two call sites in mathlib. maintainer-merge 20/5 Mathlib/Analysis/Calculus/Gradient/Basic.lean 1 5 ['FordUniver', 'Komyyy', 'github-actions'] nobody
5-13013
5 days ago
15-74037
15 days ago
21-85239
21 days
39206 FordUniver
author:FordUniver
feat(Analysis/Calculus/AddTorsor/AffineMap): smoothness of `AffineMap.lineMap` Add `AffineMap.lineMap_contDiff_uncurry` (joint smoothness in all three arguments), `AffineMap.lineMap_contDiff` (smoothness in the parameter with fixed endpoints), and the composition family `ContDiff.lineMap`, `ContDiffOn.lineMap`, `ContDiffAt.lineMap`, `ContDiffWithinAt.lineMap`, mirroring the corresponding `Continuous` family in `Mathlib.Topology.Algebra.Affine`. The uncurried and `ContDiffWithinAt` forms are tagged `@[fun_prop]` so the rest are automatically derivable. Closes the TODO at `Mathlib.MeasureTheory.Integral.CurveIntegral.Poincare:333` where the proof now reduces to `fun_prop`. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- Came up while formalizing the descent lemma for Lipschitz-smooth functions, where `Path.segment a b` being smooth on the unit interval is needed to apply FTC along the segment (#39524); `AffineMap.lineMap_contDiff` is the lemma directly used there. Two things I was genuinely not quite sure about: 1. Should the **three convenience variants** `ContDiffAt.lineMap`, `ContDiffOn.lineMap`, and `ContDiff.lineMap` be included? They are not strictly necessary but they exist for users wanting to write `h₁.lineMap h₂ hg` in dot notation by hand, and they mirror the convention of the `Continuous.lineMap` family. 2. Is `Mathlib.Analysis.Calculus.AddTorsor.AffineMap` the **right home**, and is adding `public import Mathlib.Analysis.Calculus.AddTorsor.AffineMap` to `Poincare.lean` to close the TODO reasonable? The placement mirrors the `Continuous.lineMap` family in `Mathlib.Topology.Algebra.Affine`, but hiding a `@[fun_prop]` in a file at the bottom of the hierarchy and needing to import it feels a bit off. t-analysis maintainer-merge 57/6 Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Poincare.lean 2 8 ['EtienneC30', 'FordUniver', 'github-actions'] EtienneC30
assignee:EtienneC30
4-83347
4 days ago
8-26995
8 days ago
21-8467
21 days
39882 chrisflav
author:chrisflav
chore(CategoryTheory): `StructuredArrow.map₂` along equivalences induces an equivalence Before that we only had an instance `IsEquivalence`, this provides the full equivalence with good def-eqs for the inverse. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 126/2 Mathlib/CategoryTheory/Comma/StructuredArrow/Basic.lean 1 7 ['chrisflav', 'github-actions', 'robin-carlier'] robin-carlier
assignee:robin-carlier
4-48554
4 days ago
5-64236
5 days ago
6-74875
6 days
39959 chrisflav
author:chrisflav
chore(CategoryTheory/Sites): make auxiliary declarations for `OneHypercoverDenseData.isSheaf_iff` private --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 7/7 Mathlib/CategoryTheory/Sites/DenseSubsite/OneHypercoverDense.lean 1 2 ['github-actions', 'grunweg'] robin-carlier
assignee:robin-carlier
4-48549
4 days ago
5-23028
5 days ago
5-22778
5 days
37521 jessealama
author:jessealama
feat(Data/Part): add Part.bind_eq_some_iff Add `Part.bind_eq_some_iff`, the `Part` analogue of `Option.bind_eq_some_iff`. Noticed this small gap while working on some equivalence proofs with partial functions. t-data maintainer-merge 6/0 Mathlib/Data/Part.lean 1 7 ['github-actions', 'jessealama', 'joneugster', 'vihdzp'] joneugster
assignee:joneugster
4-13357
4 days ago
12-45704
12 days ago
57-61478
57 days
39869 grunweg
author:grunweg
doc: clarify the scope of `field_simp` The term semi-field is sufficiently non-standard that it has led to confusion whether e.g. `NNReal` is supported by field_simp: it is (as it is a semifield). Let's clarify the doc-string. Inspired by discussions at the ICERM workshop "Techniques and Tools for the Formalization of Analysis". --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation easy t-meta maintainer-merge 4/4 Mathlib/Tactic/FieldSimp.lean 1 2 ['github-actions', 'joneugster'] thorimur
assignee:thorimur
4-10016
4 days ago
7-6203
7 days ago
7-5953
7 days
37415 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): compute limits of `Monomial`s Prove * `UnitMonomial.logToFun_isEquivalent_of_nonzero_head`: `log m.toFun` is asymptotically equivalent to its first summand - `m[0] • log basis[0]` if `m[0] ≠ 0`. Using this theorem we can prove that the asymptotic behavior of a monomial is determined by its first non-zero exponent. * `toFun_tendsto_top_of_FirstNonzeroIsPos` and its variants: used to infer the limit of `t.toFun` from `FirstNonzeroIsPos`/`FirstNonzeroIsNeg`/`AllZero`. * `IsLittleO_of_lt_exps` and its variants: used to asymptotically compare two monomials. --- - [x] depends on: #37411 This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 378/1 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basis.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/Basic.lean 2 16 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
3-70356
3 days ago
4-13076
4 days ago
17-83584
17 days
39703 YaelDillies
author:YaelDillies
chore: create a `Basic` top folder Move a select few folders from `Logic` to a new `Basic` folder. The goal is to finally move the material misplaced in the `Data` and `Logic` folder and to clarify the various expectations of each folder. Ultimately: * the `Basic` folder will be about basic predicates on types and basic mathematical types not fitting in any other folder; * the `Data` folder will be about data structures, instead of the current mix of data structures and basic mathematical types not fitting in any other folder; * the `Logic` folder will be about advanced logic results not fitting in either `ModelTheory` or `SetTheory`, instead of the current mix of basic predicates on types and advanced logic results. Many more files (~1000) could be moved, so I will do it in several PRs. Not all files should move to `Basic`. Some files should go to `Algebra.Order` instead (eg `Data.Nat.Lattice`) and some should be straight out deprecated (eg `Data.Analysis`). [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/Basic.20folder/with/597151406) --- This PR stems from discussions at the MI retreat 2026. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-data maintainer-merge 148/96 Counterexamples/Girard.lean,Mathlib.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Nat/Units.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/Module/Presentation/Free.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/NeZero.lean,Mathlib/Basic/Denumerable.lean,Mathlib/Basic/ExistsUnique.lean,Mathlib/Basic/IsEmpty.lean,Mathlib/Basic/IsEmpty/Basic.lean,Mathlib/Basic/IsEmpty/Defs.lean,Mathlib/Basic/Logic/Basic.lean,Mathlib/Basic/Logic/Lemmas.lean,Mathlib/Basic/Nonempty.lean,Mathlib/Basic/Nontrivial/Basic.lean,Mathlib/Basic/Nontrivial/Defs.lean,Mathlib/Basic/README.md,Mathlib/Basic/Unique.lean,Mathlib/Basic/UnivLE.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/Limits/Types/Limits.lean,Mathlib/CategoryTheory/UnivLE.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Computability/Primrec/Basic.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/GetD.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/MaxPowDiv.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/README.md,Mathlib/Data/Rat/Denumerable.lean,Mathlib/Data/TwoPointing.lean,Mathlib/Lean/Meta/CongrTheorems.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/Logic/Equiv/Defs.lean,Mathlib/Logic/Equiv/List.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/README.md,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Coprime/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/UnivLE.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/CongrExclamation.lean,Mathlib/Tactic/ITauto.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Subsingleton.lean,Mathlib/Tactic/Tauto.lean,Mathlib/Testing/Plausible/Testable.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean,MathlibTest/Linter/PrivateModule/ImportOnly.lean,scripts/autolabel.lean,scripts/noshake.json 69 25 ['SnirBroshi', 'YaelDillies', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts', 'themathqueen'] joneugster
assignee:joneugster
3-69975
3 days ago
3-68060
3 days ago
6-78125
6 days
37342 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): non-primitive corecursion for Seq: more `FriendlyOperation` API This is a continuation of #35072. This PR adds more API about friendly operations: * `FriendlyOperation.coind`: a coinductive principle for proving that operation is friendly * `FriendlyOperationClass.eq_of_bisim`: a generalisation of `Seq.eq_of_bisim'` for proving two sequences are equal. --- - [x] depends on: #35072 This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-meta maintainer-merge 160/0 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean 1 7 ['github-actions', 'joneugster', 'mathlib-dependent-issues'] joneugster
assignee:joneugster
3-69842
3 days ago
4-14181
4 days ago
33-698
33 days
35394 HugLycan
author:HugLycan
feat(Tactic/Positivity): make positivity work for types that are not partial orders Make positivity work for types that are not partial orders Most PositivityExt haven't been updated for non partial order cases yet. They will be updated in the later PR. `Strictness` now depends on `Option Q(PartialOrder $α)` instead of `Q(PartialOrder $α)`, and the constructors `Strictness.positive`/`Strictness.nonnegative` now have their `Q(PartialOrder $α)` typeclass arguments. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta maintainer-merge awaiting-author merge-conflict 612/354 Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Algebra.lean,Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Module/Field.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Order.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/DerivHyp.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Factorial/DoubleFactorial.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean,Mathlib/NumberTheory/ArithmeticFunction/Zeta.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/Height/Projectivization.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,MathlibTest/positivity.lean 54 92 ['HugLycan', 'JovanGerb', 'Vierkantor', 'fpvandoorn', 'github-actions', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
3-53125
3 days ago
6-5796
6 days ago
62-70283
62 days
39988 grunweg
author:grunweg
refactor(Tactic/Translate): document name translation a bit more I found the code a bit hard to read: the following commits each improve the code slightly. Also add a test exercising the "name matches the auto-generated name" code path. #39962 will tweak the naming algorithm slightly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 34/20 Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/TagUnfoldBoundary.lean,MathlibTest/Attribute/ToAdditive/Basic.lean 3 12 ['JovanGerb', 'github-actions', 'grunweg', 'joneugster', 'thorimur'] joneugster
assignee:joneugster
3-15584
3 days ago
3-14621
3 days ago
4-51042
4 days
34361 grunweg
author:grunweg
chore: rename comp' to fun_comp a few more times; use to_fun to autog… …enerate -------- - [x] depends on: #34257 (then this PR can be done the proper way) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 19/42 Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/DifferentialForm/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Meromorphic/Basic.lean 5 12 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
2-80068
2 days ago
13-61908
13 days ago
14-17560
14 days
37598 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Coloring): add lemmas about coloring and maps --- Idea from this Zulip thread: [graph theory>Second Order Monadic Logic for Graph](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 33/11 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 31 ['IvanRenison', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
2-67583
2 days ago
2-75791
2 days ago
53-27953
53 days
38092 SnirBroshi
author:SnirBroshi
chore(Order/Defs/Unbundled): deprecate `def Symmetric` in favor of `class Std.Symm` --- [Mathlib's `def Symmetric`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#Symmetric) [Core's `class Std.Symm`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Std.Symm) [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 maintainer-merge 465/408 Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Counterexamples/HeawoodUnitDistance.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/Normed/Operator/Compact/FredholmAlternative.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/IsConnected.lean,Mathlib/Combinatorics/Additive/ErdosGinzburgZiv.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/Graph/Delete.lean,Mathlib/Combinatorics/Graph/Lattice.lean,Mathlib/Combinatorics/Graph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Tripartite.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Data/Finset/Pairwise.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Pairwise.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/Data/Rel/Separated.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/Data/Set/Pairwise/List.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/WSeq/Relation.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/MeasureTheory/Measure/AEDisjoint.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/Order/Antichain.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/PropInstances.lean,Mathlib/RingTheory/Coprime/Ideal.lean,Mathlib/RingTheory/Radical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Graph.lean,Mathlib/Topology/CompactOpen.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/MetricSpace/MetricSeparated.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/GDelta.lean 80 8 ['SnirBroshi', 'dagurtomas', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] bryangingechen
assignee:bryangingechen
2-48347
2 days ago
14-35217
14 days ago
46-1714
46 days
39720 vihdzp
author:vihdzp
feat: cofinality within order We introduce `Order.cofWithin x = Order.cof (Iio x)` for the cofinality of an element within a preorder. This generalizes `Ordinal.cof`, with the caveat that `cof o : Cardinal.{u}` for `o : Ordinal.{u}`, whereas `cofWithin o : Cardinal.{u + 1}`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 104/14 Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean 3 11 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] alreadydone
assignee:alreadydone
2-48341
2 days ago
7-33276
7 days ago
10-52411
10 days
39984 grunweg
author:grunweg
chore(Data): move some files to better locations Move a number of files in `Data` to clearly better locations. See individual commit messages for details. --- - [x] depends on: #39976 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed tech debt maintainer-merge 30/30 Counterexamples/HomogeneousPrimeNotPrime.lean,Mathlib.lean,Mathlib/Algebra/Group/ConjFinite.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/Units/Fintype.lean,Mathlib/Algebra/Lie/SerreConstruction.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/LinearAlgebra/Matrix/Action.lean,Mathlib/LinearAlgebra/Matrix/Bilinear.lean,Mathlib/LinearAlgebra/Matrix/Cartan.lean,Mathlib/LinearAlgebra/Matrix/DualNumber.lean,Mathlib/LinearAlgebra/Matrix/Invertible.lean,Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Cardinality.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/SetTheory/Cardinal/Embedding.lean,Mathlib/SetTheory/Cardinal/NatCard.lean,Mathlib/SetTheory/Cardinal/Rat.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean,scripts/noshake.json 30 4 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues'] nobody
2-22660
2 days ago
3-68277
3 days ago
3-68027
3 days
36219 gasparattila
author:gasparattila
chore(Order/SupClosed): use `to_dual` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 68/215 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/SupClosed.lean 2 16 ['JovanGerb', 'YaelDillies', 'gasparattila', 'github-actions', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
1-82694
1 day ago
2-16342
2 days ago
51-70448
51 days
37624 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Maps): add theorems about composition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge awaiting-author 32/5 Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 12 ['IvanRenison', 'YaelDillies', 'b-mehta', 'github-actions'] nobody
1-69423
1 day ago
1-69488
1 day ago
56-36149
56 days
36376 jessealama
author:jessealama
feat(SimpleGraph): hamiltonian cycle from cyclic permutation This PR provides `IsHamiltonian.of_perm`, a bridge from `Equiv.Perm.IsCycle` to `SimpleGraph.IsHamiltonian`: if σ is a permutation that is a single cycle with full support on at least 3 elements, and each step `v → σ v` is an edge of `G`, then `G` is Hamiltonian. ### New definitions and lemmas **`Mathlib/Data/List/Chain.lean`**: - `IsChain.iterate`: `List.iterate f a n` is a chain under `r` whenever `r a (f a)` holds for all `a` **`Mathlib/Data/List/Iterate.lean`**: - `getLast_iterate`: the last element of `List.iterate f a n` is `f^[n - 1] a` **`Mathlib/Combinatorics/SimpleGraph/Walk/Iterate.lean`** (new file): - `Walk.iterate`: builds a walk of length `n` from `x` to `f^[n] x` for any function `f` with `G.Adj x (f x)` for all `x`, defined via `Walk.ofSupport` - `Walk.length_iterate`, `Walk.support_iterate`, `Walk.edges_iterate`: basic API **`Mathlib/GroupTheory/Perm/Cycle/Basic.lean`**: - `IsCycleOn.injOn_pow_apply`: the map `n ↦ (f ^ n) a` is injective on `Finset.range #s` **`Mathlib/GroupTheory/Perm/Cycle/Concrete.lean`**: - `IsCycleOn.injOn_sym2_pow_apply`: the unordered-pair edge map `k ↦ s((f ^ k) a, (f ^ (k + 1)) a)` is injective on `[0, #s)` when `#s ≠ 2` - `IsCycleOn.sym2_pow_apply_ne`: edge distinctness for cycle-on permutations — `s((f ^ k) a, (f ^ (k + 1)) a) ≠ s(a, f a)` when `k ≠ 0`, `k < #s`, and `#s ≠ 2` - `Perm.toList_eq_range_map_pow`: expresses `toList` as a range map over powers **`Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean`**: - `cons_isHamiltonianCycle_iff`: a Hamiltonian path closed by an edge outside its support is a Hamiltonian cycle, and conversely - `IsHamiltonian.of_perm`: the main theorem --- - [x] depends on: #36307 t-combinatorics maintainer-merge 182/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian/Perm.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Iterate.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Iterate.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean 8 78 ['SnirBroshi', 'YaelDillies', 'github-actions', 'jessealama', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
1-48113
1 day ago
12-44248
12 days ago
58-2392
58 days
39298 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): the pushout-product of a horn inclusion and a boundary inclusion is an anodyne extension In this PR, we construct a regular pairing for the union of `Λ[m + 1, l] ⊗ ∂Δ[n]` and ` Δ[m + 1] ⊗ ∂Δ[n]` in `Δ[m + 1] ⊗ Δ[n]`. It follows immediately that the inclusion of this subcomplex is an anodyne extension. --- - [x] depends on: #39462 - [x] depends on: #39463 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology large-import maintainer-merge 740/2 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PairingCore.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/UnionProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean 6 13 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] mattrobball
assignee:mattrobball
1-48101
1 day ago
1-78351
1 day ago
7-12047
7 days
39892 SnirBroshi
author:SnirBroshi
feat(GroupTheory/Commutator/Basic): more commutator identities From [Wikipedia](https://en.wikipedia.org/wiki/Commutator#Identities_(group_theory)) --- The last two aren't on Wikipedia but they're similar to Hall-Witt. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory maintainer-merge 44/0 Mathlib/GroupTheory/Commutator/Basic.lean 1 6 ['SnirBroshi', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
1-3223
1 day ago
5-45153
5 days ago
6-47370
6 days
39136 vihdzp
author:vihdzp
feat: more results on `Order.enum` Most importantly, we prove that the enumerator function of a cofinal set is normal iff the set is closed (under non-empty suprema). --- - [x] depends on: #38362 - [x] depends on: #39137 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-order maintainer-merge 90/7 Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean,Mathlib/SetTheory/Ordinal/Topology.lean 4 7 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
0-62631
17 hours ago
3-35746
3 days ago
5-24057
5 days
40111 JovanGerb
author:JovanGerb
chore: remove most `warning.simp.varHead` This pr removes most exceptions to the new simpVar linter. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt maintainer-merge 3/19 Archive/Examples/IfNormalization/Result.lean,Archive/Imo/Imo2024Q6.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/Probability/Kernel/Defs.lean 6 10 ['JovanGerb', 'adomani', 'github-actions', 'grunweg'] nobody
0-48956
13 hours ago
0-49061
13 hours ago
0-49136
13 hours
33506 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): construct a cycle of two distinct paths with same start and end Co-authored-by: Vlad Tsyrklevich Co-authored-by: Snir Broshi <26556598+SnirBroshi@users.noreply.github.com> --- - [x] depends on: #33249 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 112/5 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Nodup.lean 5 72 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody
0-47252
13 hours ago
0-46464
12 hours ago
37-77817
37 days
34909 SnirBroshi
author:SnirBroshi
feat(Data/Sym/Sym2): `fromRel` equivalence with `Sigma` over a `Quotient` Add a non-dependent recursor on members of a `fromRel` set, and the following `Equiv`s: - The `fromRel` set of a symmetric relation `r` is equivalent to summing that set restricted to fibers of `f`. - For a relation homomorphism `r →r r'` where `r` is symmetric, the `fromRel` set of `r` is equivalent to summing that set restricted to equivalence classes of `r'` using a `Subtype`. --- I find this recursor pretty useful when dealing with `fromRel`, the idea came from a suggestion by @kmill [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Eq.2Erec.20with.20a.20constant.20does.20nothing.3A.20h.20.E2.96.B8.20c.20.3D.20c/near/565176948) for another `Sym2` conundrum. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 54/3 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Data/Sym/Sym2.lean 2 19 ['SnirBroshi', 'bryangingechen', 'chrisflav', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] eric-wieser
assignee:eric-wieser
0-38436
10 hours ago
0-36815
10 hours ago
79-68982
79 days
39003 TwoFX
author:TwoFX
chore: avoid declaring duplicate instances `LE String` and `LT String` Since forever, mathlib has declared `LE String` and `LT String` instances which are propositionally, but not definitionally, equal to the `LE String` and `LT String` instances that have shipped with core. This regularly leads to problems with automation that expects instances to be canonical, most recently as described in leanprover/lean4#13544. This PR removes the mathlib instances, and redefines the `LinearOrder String` instance to use the core-provided instances rather than the ones defined in mathlib. It also redeclares the theorems `String.lt_iff_toList_lt` and `String.le_iff_toList_le` to be about the core-provided instances rather than the mathlib ones. The result relating `ltb (String.Legacy.iter s₁) (String.Legacy.iter s₂)` (the previous implementation) to `s₁ < s₂` is now packaged as `String.lt_iff_ltb`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 43/58 Mathlib/Data/String/Basic.lean 1 16 ['TwoFX', 'eric-wieser', 'github-actions', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
0-25157
6 hours ago
0-25520
7 hours ago
7-57028
7 days
39887 adomani
author:adomani
ci(build_template): validate dump outputs are regular files before upload Follow-up to #39880, adding a check that artifacts produced in CI exist. CI maintainer-merge 10/0 .github/workflows/build_template.yml 1 5 ['adomani', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
0-23716
6 hours ago
3-9249
3 days ago
5-63036
5 days
40106 sgouezel
author:sgouezel
feat: missing small lemmas in measure theory, cleanup --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability maintainer-merge 71/15 Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/VectorMeasure/WithDensity.lean 10 5 ['eric-wieser', 'github-actions', 'mcdoll', 'sgouezel'] EtienneC30
assignee:EtienneC30
0-23556
6 hours ago
0-30788
8 hours ago
1-9411
1 day
38983 kebekus
author:kebekus
feat: Invariance of `meromorphic in normal form` under composition. Establish invariance of `meromorphic in normal form` under composition with analytic functions of non-vanishing derivative. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 42/0 Mathlib/Analysis/Meromorphic/NormalForm.lean 1 12 ['github-actions', 'kebekus', 'themathqueen'] ADedecker
assignee:ADedecker
0-20081
5 hours ago
0-19321
5 hours ago
26-16289
26 days
26304 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): Pushforward of algebraic cycles In this PR we define a notion of the "pushfoward of functions with locally finite support". We give this PR the suggestive title "pushforward of algebraic cycles" because we will go on to model algebraic cycles on a scheme X as functions from X to the integers with locally finite support. - [x] depends on: #26225 - [x] depends on: #26259 - [x] depends on: #35807 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry maintainer-merge 91/0 Mathlib.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/LocallyFinsupp/Pushforward.lean 3 64 ['Raph-DG', 'chrisflav', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] joelriou
assignee:joelriou
0-10816
3 hours ago
7-3462
7 days ago
49-35887
49 days
39812 RemyDegenne
author:RemyDegenne
feat(Probability/Decision): risk in countable spaces This PR adds lemmas to write the average and Bayes risk with sums instead of integrals in countable spaces. Co-authored-by: Lorenzo Luccioli @LorenzoLuccioli --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability maintainer-merge 86/0 Mathlib.lean,Mathlib/Probability/Decision/Risk/Countable.lean 2 13 ['EtienneC30', 'RemyDegenne', 'github-actions'] EtienneC30
assignee:EtienneC30
0-8182
2 hours ago
0-7184
1 hour ago
3-22552
3 days
37534 EtienneC30
author:EtienneC30
feat: cardinality of subsets of a given cardinality Given a finite set `s`, the number of subsets of `s` with cardinality `n` is `s.ncard.choose n`. This is analog to [Finset.card_powersetCard](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/Powerset.html#Finset.card_powersetCard) and [Set.powersetCard.card](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Set/PowersetCard.html#Set.powersetCard.card) but with a set of sets rather than involving finsets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 20/0 Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Finite/Basic.lean 2 7 ['EtienneC30', 'b-mehta', 'github-actions', 'joneugster'] Vierkantor
assignee:Vierkantor
0-7997
2 hours ago
0-4837
1 hour ago
59-42609
59 days
39785 hawkrobe
author:hawkrobe
refactor(RingTheory/HopfAlgebra): `ofConvInverse` constructor The antipode of a Hopf algebra is [generally](https://arxiv.org/pdf/1409.8356) the two-sided inverse of the identity in the convolution algebra `End(A)`. When `A` is commutative, algebra homs are closed under convolution and this lifts to AlgHom equality. See [this comment](https://github.com/leanprover-community/mathlib4/pull/31898#issuecomment-3566663278) on #31898. --- Sadly the AlgHom-equality formulation is unavailable in the noncommutative case. t-ring-theory new-contributor maintainer-merge 41/20 Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean 2 35 ['YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'grunweg', 'hawkrobe', 'themathqueen'] nobody
0-7092
1 hour ago
0-52317
14 hours ago
7-81827
7 days
39533 b-mehta
author:b-mehta
feat(Data/Finset/Image): add image_comp and image_comp_image The statement `image_comp` is worth adding because it matches the Set version, and also is more useful for rewriting in the forward direction. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 13/0 Mathlib/Data/Finset/Image.lean,Mathlib/Data/Set/Image.lean 2 9 ['b-mehta', 'github-actions', 'j-loreaux', 'themathqueen'] nobody
0-6361
1 hour ago
0-6640
1 hour ago
8-68923
8 days
40091 mcdoll
author:mcdoll
chore(Analysis/InnerProductSpace): make `adjointAux` private --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 7/3 Mathlib/Analysis/InnerProductSpace/Adjoint.lean 1 8 ['b-mehta', 'github-actions', 'leanprover-radar', 'mcdoll', 'themathqueen'] nobody
0-5121
1 hour ago
1-8115
1 day ago
1-7865
1 day
39792 vihdzp
author:vihdzp
chore: deprecate `Ordinal.IsAcc` and `Ordinal.IsClosedBelow` These predicates were introduced in #16710 as preliminaries for a development of club sets. Those have [since been defined](https://leanprover-community.github.io/mathlib4_docs/Mathlib/SetTheory/Cardinal/Cofinality/Club.html#IsClub) without them, so we deprecate them, and generalize the results on them to the setting of successor orders. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 64/37 Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Topology/Order/SuccPred.lean 2 4 ['YaelDillies', 'github-actions', 'mathlib-bors'] nobody
0-3339
55 minutes ago
8-43263
8 days ago
8-61358
8 days
39740 Thmoas-Guan
author:Thmoas-Guan
feat(FieldTheory): the field of adjoining all `p`th roots In this PR, we define the field extension of adjoining all `p`th roots to a field of characteristic `p`. The definition is via defining it as the field itself with algebra map equal to frobenious. Thanks to @erdOne for this idea. Co-authored by:@dleijnse --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
68/0 Mathlib.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean 2 57 ['Thmoas-Guan', 'chrisflav', 'erdOne', 'github-actions', 'plp127', 'vihdzp'] chrisflav
assignee:chrisflav
0-3210
53 minutes ago
0-22877
6 hours ago
9-48603
9 days
39487 ADedecker
author:ADedecker
chore: switch `EqLocus` from `LinearMapClass` to `LinearMap` --- Note: this PR was opened at 35000 feet :slightly_smiling_face: [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
18/14 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Module/Submodule/EqLocus.lean,Mathlib/Analysis/InnerProductSpace/MeanErgodic.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean 4 12 ['ADedecker', 'b-mehta', 'github-actions', 'j-loreaux', 'themathqueen'] nobody
0-1451
24 minutes ago
12-59997
12 days ago
15-68525
15 days

PRs blocked on a zulip discussion

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
17623 FR-vdash-bot
author:FR-vdash-bot
feat(Algebra/Order/GroupWithZero/Unbundled): add some lemmas Some lemmas in `Algebra.Order.GroupWithZero.Unbundled` have incorrect or unsatisfactory names, or assumptions that can be omitted using `ZeroLEOneClass`. The lemmas added in this PR are versions of existing lemmas that use the correct or better name or `ZeroLEOneClass` to omit an assumption. The original lemmas will be deprecated in #17593. | New name | Old name | |-------------------------|-------------------------| | `mul_le_one_left₀` | `Left.mul_le_one_of_le_of_le` | | `mul_lt_one_of_le_of_lt_left₀` (`0 ≤ ·` version) / `mul_lt_one_of_le_of_lt_of_pos_left` | `Left.mul_lt_of_le_of_lt_one_of_pos` | | `mul_lt_one_of_lt_of_le_left₀` | `Left.mul_lt_of_lt_of_le_one_of_nonneg` | | `mul_le_one_right₀` | `Right.mul_le_one_of_le_of_le` | | `mul_lt_one_of_lt_of_le_right₀` (`0 ≤ ·` version) / `mul_lt_one_of_lt_of_le_of_pos_right` | `Right.mul_lt_one_of_lt_of_le_of_pos` | | `mul_lt_one_of_le_of_lt_right₀` | `Right.mul_lt_one_of_le_of_lt_of_nonneg` | The following lemmas use `ZeroLEOneClass`. | New name | Old name | |-------------------------|-------------------------| | `(Left.)one_le_mul₀` | `Left.one_le_mul_of_le_of_le` | | `Left.one_lt_mul_of_le_of_lt₀` | `Left.one_lt_mul_of_le_of_lt_of_pos` | | `Left.one_lt_mul_of_lt_of_le₀` | `Left.lt_mul_of_lt_of_one_le_of_nonneg` / `one_lt_mul_of_lt_of_le` (still there) | | `(Left.)one_lt_mul₀` | | | `Right.one_le_mul₀` | `Right.one_le_mul_of_le_of_le` | | `Right.one_lt_mul_of_lt_of_le₀` | `Right.one_lt_mul_of_lt_of_le_of_pos` | | `Right.one_lt_mul_of_le_of_lt₀` | `Right.one_lt_mul_of_le_of_lt_of_nonneg` / `one_lt_mul_of_le_of_lt` (still there) / `one_lt_mul` (still there) | | `Right.one_lt_mul₀` | `Right.one_lt_mul_of_lt_of_lt` | --- Split from #17593. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-zulip t-order
label:t-algebra$
146/44 Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean 2 11 ['YaelDillies', 'astrainfinita', 'github-actions', 'j-loreaux'] nobody
559-9533
1 year ago
unknown
unknown
15654 TpmKranz
author:TpmKranz
feat(Computability): language-preserving maps between NFA and RE Map REs to NFAs via Thompson's construction and NFAs to REs using GNFAs Last chunk of #12648 --- - [ ] depends on: #15651 - [ ] depends on: #15649 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR new-contributor t-computability merge-conflict awaiting-zulip 985/2 Mathlib.lean,Mathlib/Computability/GNFA.lean,Mathlib/Computability/Language.lean,Mathlib/Computability/NFA.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Data/FinEnum/Option.lean,docs/references.bib 7 3 ['github-actions', 'leanprover-community-mathlib4-bot', 'meithecatte'] nobody
392-59210
1 year ago
unknown
unknown
17458 urkud
author:urkud
refactor(Algebra/Group): make `IsUnit` a typeclass Also change some lemmas to assume `[IsUnit _]` instead of `[Invertible _]`. Motivated by potential non-defeq diamonds in #14986, see also [Zulip](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Invertible.20and.20data) I no longer plan to merge this PR, but I'm going to cherry-pick some changes to a new PR before closing this one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-zulip
label:t-algebra$
82/72 Mathlib/Algebra/CharP/Invertible.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Units.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/GroupTheory/Submonoid/Inverses.lean,Mathlib/LinearAlgebra/AffineSpace/AffineEquiv.lean,Mathlib/LinearAlgebra/AffineSpace/Combination.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Contraction.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Inversion.lean,Mathlib/LinearAlgebra/CliffordAlgebra/SpinGroup.lean,Mathlib/LinearAlgebra/Eigenspace/Minpoly.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/RingTheory/Localization/NumDen.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/GaussLemma.lean,Mathlib/RingTheory/Valuation/Basic.lean 26 12 ['MichaelStollBayreuth', 'acmepjz', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'urkud'] nobody
332-39559
10 months ago
unknown
unknown
25218 kckennylau
author:kckennylau
feat(AlgebraicGeometry): Tate normal form of elliptic curves --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry awaiting-zulip new-contributor 291/26 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/IsomOfJ.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Modular/TateNormalForm.lean,Mathlib/AlgebraicGeometry/EllipticCurve/NormalForms.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean 5 31 ['MichaelStollBayreuth', 'Multramate', 'acmepjz', 'github-actions', 'grunweg', 'kckennylau', 'leanprover-community-bot-assistant'] nobody
332-38397
10 months ago
unknown
unknown
28803 astrainfinita
author:astrainfinita
refactor: unbundle algebra from `ENormed*` Further speed up the search in the algebraic typeclass hierarchy by avoiding searching for `TopologicalSpace`. This PR continues the work from #23961. - Change `ESeminormed(Add)Monoid` and `ENormed(Add)Monoid` so they no longer carry algebraic data. - Deprecate `ESeminormed(Add)CommMonoid` and `ENormed(Add)CommMonoid` in favor of `ESeminormed(Add)Monoid` and `ENormed(Add)Monoid` with a commutative algebraic typeclass. |Old|New| |---|---| | `[ESeminormed(Add)(Comm)Monoid E]` | `[(Add)(Comm)Monoid E] [ESeminormed(Add)Monoid E]` | | `[ENormed(Add)(Comm)Monoid]` | `[(Add)(Comm)Monoid E] [ENormed(Add)Monoid]` | See [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2328803.20refactor.3A.20unbundle.20algebra.20from.20.60ENormed*.60/with/536024350) ------------ - [x] depends on: #28813 t-algebra merge-conflict slow-typeclass-synthesis awaiting-zulip t-analysis
label:t-algebra$
80/63 Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/MeasureTheory/Function/L1Space/AEEqFun.lean,Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean 14 28 ['astrainfinita', 'bryangingechen', 'github-actions', 'grunweg', 'kbuzzard', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] grunweg
assignee:grunweg
272-54042
8 months ago
281-5196
281 days ago
0-19244
5 hours
28925 grunweg
author:grunweg
chore: remove `linear_combination'` tactic When `linear_combination` was refactored in #15899, the old code was kept as the `linear_combination'` tactic, for easier migration. The consensus of the zulip discussion ([#mathlib4 > Narrowing the scope of `linear_combination` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Narrowing.20the.20scope.20of.20.60linear_combination.60/near/470237816)) was to wait, and "revisit this once people have experienced the various tactics in practice". One year later, the old tactic has almost no uses: it is unused in mathlib; [searching on github](https://github.com/search?q=linear_combination%27%20path%3A*.lean&type=code) yields 37 hits --- all of which are in various forks of mathlib. Thus, removing this tactic seems appropriate. --- Do not merge before the zulip discussion has concluded! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict file-removed awaiting-zulip 0/564 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LinearCombination'.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,MathlibTest/linear_combination'.lean 5 4 ['euprunin', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
229-31252
7 months ago
unknown
unknown
30150 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): to_additive for MonoidalCategory Add `AddMonoidalCategory`, the additive version of `MonoidalCategory`. To get this to work, I needed to _remove_ the `to_additive` attributes in `Discrete.lean`, since existing code relies on the `AddMonoid M → MonoidalCategory M` instance. For now, we simply implement the additive variants by hand instead. --- As discussed in #28718; I added an `AddMonoidalCategory` struct and tagged `MonoidalCategory` with `to_additive`, along with the lemmas in `Category.lean`. I think this is the right approach, since under this framework the "correct" additive version of `Discrete.lean` would be mapping an `AddMonoid` to an `AddMonoidalCategory`. Next steps would be to: - Make `monoidal_coherence` and `coherence` support `AddMonoidalCategory` - Add `CocartesianMonoidalCategory` extending `AddMonoidalCategory` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory large-import new-contributor merge-conflict awaiting-zulip t-meta 444/125 Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 3 22 ['JovanGerb', 'YaelDillies', 'github-actions', 'imbrem', 'mathlib4-merge-conflict-bot'] nobody
201-42126
6 months ago
241-20792
241 days ago
0-29227
8 hours
15651 TpmKranz
author:TpmKranz
feat(Computability/NFA): operations for Thompson's construction Lays the groundwork for a proof of equivalence of RE and NFA, w.r.t. described language. Actual connection to REs comes later, after the groundwork for the opposite direction has been laid. Third chunk of #12648 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-computability merge-conflict awaiting-author awaiting-zulip 307/5 Mathlib/Computability/NFA.lean 1 27 ['TpmKranz', 'YaelDillies', 'dupuisf', 'github-actions', 'leanprover-community-bot-assistant', 'meithecatte', 'rudynicolop'] nobody
196-59258
6 months ago
unknown
unknown
15649 TpmKranz
author:TpmKranz
feat(Computability): introduce Generalised NFA as bridge to Regular Expression Lays the groundwork for a proof of equivalence of NFA and RE, w.r.t. described language. Actual connection to NFA comes later, after the groundwork for the opposite direction has been laid. Second chunk of #12648 --- - [x] depends on: #15647 [Data.FinEnum.Option unchanged since then] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-computability merge-conflict awaiting-author awaiting-zulip 298/0 Mathlib.lean,Mathlib/Computability/GNFA.lean,Mathlib/Computability/Language.lean,Mathlib/Computability/RegularExpressions.lean,docs/references.bib 5 7 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'meithecatte', 'trivial1711'] nobody
195-75499
6 months ago
unknown
unknown
20648 anthonyde
author:anthonyde
feat: formalize regular expression -> εNFA The file `Computability/RegularExpressionsToEpsilonNFA.lean` contains a formal definition of Thompson's method for constructing an `εNFA` from a `RegularExpression` and a proof of its correctness. --- - [x] depends on: #20644 - [x] depends on: #20645 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-zulip new-contributor 490/0 Mathlib.lean,Mathlib/Computability/RegularExpressionsToEpsilonNFA.lean,docs/references.bib 3 7 ['anthonyde', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'meithecatte', 'qawbecrdtey'] nobody
195-26267
6 months ago
unknown
unknown
11800 JADekker
author:JADekker
feat: KappaLindelöf spaces Define KappaLindelöf spaces by following the first one-third of the API for Lindelöf spaces. The remainder will be added in a future PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-topology awaiting-zulip 301/2 Mathlib.lean,Mathlib/Topology/Compactness/KappaLindelof.lean,Mathlib/Topology/Compactness/Lindelof.lean 3 38 ['ADedecker', 'JADekker', 'PatrickMassot', 'StevenClontz', 'adomani', 'github-actions', 'grunweg', 'kim-em', 'urkud'] nobody
194-84533
6 months ago
unknown
unknown
30668 astrainfinita
author:astrainfinita
feat: `QuotType` This typeclass is primarily for use by type synonyms of `Quot` and `Quotient`. Using `QuotType` API for type synonyms of `Quot` and `Quotient` will avoid defeq abuse caused by directly using `Quot` and `Quotient` APIs. This PR also adds some typeclasses to support different ways to find the quotient map that should be used. See the documentation comments of these typeclasses for examples of usage. --- It's not a typical design to use these auxiliary typeclasses and term elaborators, but I haven't found a better way to support these notations. Some of the naming may need to be discussed. For example: - `⟦·⟧` is currently called `mkQ` in names. This distinguishes it from other `.mk`s and makes it possible to write the quotient map as `mkQ` `mkQ'` ~~`mkQ_ h`~~. But this will also require changing the old lemma names. - It would be helpful if the names of new type classes explained their functionality better. [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/migrate.20to.20.60QuotLike.60.20API) This PR continues the work from #16421. Original PR: https://github.com/leanprover-community/mathlib4/pull/16421 RFC t-data awaiting-zulip awaiting-author 629/0 Mathlib.lean,Mathlib/Data/QuotType.lean,MathlibTest/QuotType.lean 3 22 ['SnirBroshi', 'YaelDillies', 'astrainfinita', 'dagurtomas', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] nobody
173-66379
5 months ago
unknown
unknown
33368 urkud
author:urkud
feat: define `Complex.UnitDisc.shift` Also review the existing API UPD: I'm going to define a `PSL(2, Real)` action instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-zulip merge-conflict 273/39 Mathlib.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/Complex/UnitDisc/Shift.lean 3 7 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'sgouezel', 'urkud'] j-loreaux
assignee:j-loreaux
146-34692
4 months ago
146-81425
146 days ago
5-72484
5 days
33031 chiyunhsu
author:chiyunhsu
feat(Combinatorics/Enumerative/Partition): add combinatorial proof of Euler's partition theorem The new file EulerComb.lean contains the combinatorial proof of Euler's partition theorem. The analytic proof of the theorem and its generalization of Glaisher's Theorem has already been formalized in [Glaisher.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Combinatorics/Enumerative/Partition/Glaisher.lean). The generalization of the combinatorial proof from this file to Glaisher's Theorem is within reach. --- Zulip discussion: [#mathlib4 > Glaisher’s Bijection on integer partitions](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Glaisher.E2.80.99s.20Bijection.20on.20integer.20partitions/with/570808111) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-zulip awaiting-author 531/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/EulerComb.lean 2 7 ['chiyunhsu', 'dagurtomas', 'github-actions', 'tb65536', 'vihdzp'] b-mehta
assignee:b-mehta
124-1945
4 months ago
124-1945
124 days ago
42-20793
42 days
32742 LTolDe
author:LTolDe
feat(MeasureTheory/Constructions/Polish/Basic): add class SuslinSpace add new class `SuslinSpace` for a topological space that is an analytic set in itself This will be useful to prove the **Effros Theorem**, see [zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Effros.20Theorem/with/558712441). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-zulip t-measure-probability awaiting-author 4/0 Mathlib/MeasureTheory/Constructions/Polish/Basic.lean 1 10 ['ADedecker', 'LTolDe', 'dagurtomas', 'dupuisf', 'github-actions', 'jcommelin'] PatrickMassot
assignee:PatrickMassot
121-14355
4 months ago
146-84887
146 days ago
11-7478
11 days
26299 adomani
author:adomani
perf: the `whitespace` linter only acts on modified files Introduces an `IO.Ref` to allow the `commandStart` linter to only run on files that git considers modified with respect to `master`. The linter is also active on files that have had some error, as these are likely being modified! The PR should also mitigate the speed-up that the linter introduced: [#mathlib4 > A whitespace linter @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/A.20whitespace.20linter/near/525091877) Assuming that this goes well, a similar mechanism could be applied to several linters that do not need to run on all code, just on the modified code. Implementation detail: the linter is currently either on or off in "whole" files. It may be also a future development to make this more granular and only run the linter on "modifed commands in modified files", but this is not currently the plan for this modification! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-zulip awaiting-author 55/7 Mathlib/Tactic/Linter/Whitespace.lean 1 20 ['adomani', 'eric-wieser', 'github-actions', 'grunweg', 'joneugster', 'kim-em', 'leanprover-bot', 'leanprover-radar', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] grunweg
assignee:grunweg
104-25129
3 months ago
277-21447
277 days ago
51-56273
51 days
35524 grunweg
author:grunweg
feat: text-based linter against \t followed by tactic mode Wait for the zulip discussion to converge. **If** there is consensus in favour of this change, summarise the motivation here. [zulip discuss](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/proposal.3A.20no.20more.20use.20of.20.60.E2.96.B8.60.20in.20Mathlib.3F/with/574680826) --- There are currently 80 remaining exceptions in mathlib: ideally, these would get fixed before merging this. Works best when combined with #35523. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-zulip merge-conflict 23/2 Mathlib/Tactic/Linter/TextBased.lean 1 5 ['github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts', 'vihdzp'] nobody
101-82148
3 months ago
unknown
unknown
35578 Shreyas4991
author:Shreyas4991
fix: writer monad should use an additive logging type The Writer monad's w type is supposed to be additive, not multiplicative. This is how it is conceptually used in Haskell (as a logging type). Haskell uses `Monoid` because it doesn't make a distinction between `AddMonoid` and `Monoid`. [#mathlib4 > Writer should use an additive monoid @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Writer.20should.20use.20an.20additive.20monoid/near/574990415) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data awaiting-zulip merge-conflict 10/10 Mathlib/Control/Monad/Cont.lean,Mathlib/Control/Monad/Writer.lean 2 5 ['Shreyas4991', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
101-60662
3 months ago
unknown
unknown
20238 maemre
author:maemre
feat(Computability/DFA): Closure of regular languages under some set operations This shows that regular languages are closed under complement and intersection by constructing DFAs for them. --- Closure under all other operations will be proved when someone adds the proof for DFA<->regular expression equivalence, so they are not part of this PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-computability merge-conflict awaiting-author awaiting-zulip 159/0 Mathlib/Computability/DFA.lean,Mathlib/Computability/Language.lean 2 60 ['EtienneC30', 'YaelDillies', 'github-actions', 'maemre', 'mathlib4-merge-conflict-bot', 'meithecatte', 'urkud'] nobody
96-19501
3 months ago
unknown
unknown
22361 rudynicolop
author:rudynicolop
feat(Computability/NFA): nfa closure properties Add the closure properties union, intersection and reversal for NFA. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-computability merge-conflict awaiting-author awaiting-zulip 218/2 Mathlib/Computability/Language.lean,Mathlib/Computability/NFA.lean 2 91 ['EtienneC30', 'b-mehta', 'ctchou', 'github-actions', 'leanprover-community-bot-assistant', 'meithecatte', 'rudynicolop'] nobody
96-19485
3 months ago
unknown
unknown
23929 meithecatte
author:meithecatte
feat(Computability/NFA): improve bound on pumping lemma --- - [x] depends on: #25321 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability awaiting-zulip new-contributor awaiting-author 101/10 Mathlib/Computability/EpsilonNFA.lean,Mathlib/Computability/NFA.lean 2 42 ['YaelDillies', 'dagurtomas', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'meithecatte'] nobody
95-39514
3 months ago
359-68813
359 days ago
0-37135
10 hours
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 awaiting-zulip
label:t-algebra$
610/0 Archive.lean,Archive/Robbins.lean 2 2 ['chrisflav', 'github-actions'] chrisflav
assignee:chrisflav
93-77955
3 months ago
42-77930
42 days ago
71-51176
71 days
30750 SnirBroshi
author:SnirBroshi
feat(Data/Quot): `toSet` and `equivClassOf` Define `toSet` which gets the set corresponding to an element of a quotient, and `equivClassOf` which gets the equivalence class of an element under a quotient. --- I found these definitions helpful when working with quotients, specifically `ConnectedComponents` of a `TopologicalSpace`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data awaiting-author awaiting-zulip 162/0 Mathlib/Data/Quot.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Data/Setoid/Basic.lean 4 8 ['SnirBroshi', 'TwoFX', 'eric-wieser', 'github-actions', 'linesthatinterlace', 'mathlib-merge-conflicts'] TwoFX
assignee:TwoFX
91-21715
2 months ago
187-25055
187 days ago
35-80039
35 days
36890 vihdzp
author:vihdzp
chore(SetTheory): `le_mul_left` → `le_mul_of_pos_left` The new theorem names/statements match [`Nat.le_mul_of_pos_left`](https://leanprover-community.github.io/mathlib4_docs/Init/Data/Nat/Lemmas.html#Nat.le_mul_of_pos_left). The cardinal one has also been moved to an earlier file. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory awaiting-zulip merge-conflict 28/23 Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Free.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/Notation.lean 6 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
71-29670
2 months ago
74-16410
74 days ago
0-10819
3 hours
38546 yhx-12243
author:yhx-12243
fix: universe issue in injective module Change the definition of ```lean class Module.Injective : Prop where out : ∀ ⦃X Y : Type v⦄ [AddCommGroup X] [AddCommGroup Y] [Module R X] [Module R Y] (f : X →ₗ[R] Y) (_ : Function.Injective f) (g : X →ₗ[R] Q), ∃ h : Y →ₗ[R] Q, ∀ x, h (f x) = g x ``` into ```lean class Module.Injective : Prop where out : ∀ ⦃X Y : Type u⦄ [AddCommGroup X] [AddCommGroup Y] [Module R X] [Module R Y] (f : X →ₗ[R] Y) (_ : Function.Injective f) (g : X →ₗ[R] Q), ∃ h : Y →ₗ[R] Q, ∀ x, h (f x) = g x ``` to make it agree with `Module.Baer` and real mathematical definition, **without universe issues**. Since the criterion `Module.Flat` also uses `Type u` on testing modules. See discussions in https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Universe.20issue.20about.20injective.20module . --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-zulip
label:t-algebra$
57/43 Mathlib/Algebra/Category/ModuleCat/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/RepresentationTheory/FinGroupCharZero.lean,Mathlib/RingTheory/Flat/Tensor.lean,Mathlib/RingTheory/LocalProperties/Injective.lean 6 5 ['github-actions', 'grunweg', 'mathlib-bors', 'wwylele'] nobody
36-64619
1 month ago
36-64630
36 days ago
0-24433
6 hours
37346 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. 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.IsPath.getVert_injOn`: unchanged 🎉 * `✅️ SimpleGraph.Walk.length_bypass_le`: unchanged 🎉 * `✅️ Rat.floor_intCast_div_natCast`: unchanged 🎉 * `✅️ InnerProductGeometry.norm_eq_of_angle_sub_eq_angle_sub_rev_of_angle_ne_pi`: unchanged 🎉 * `✅️ padicNorm.zero_of_padicNorm_eq_zero`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge awaiting-zulip 7/45 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean 4 22 ['FernandoChu', 'bryangingechen', 'chenson2018', 'euprunin', 'faenuccio', 'github-actions', 'grunweg'] nobody
34-10443
1 month ago
34-10474
34 days ago
30-45859
30 days
32608 PrParadoxy
author:PrParadoxy
feat(LinearAlgebra/PiTensorProduct): API for PiTensorProducts indexed by sets This PR addresses a TODO item in LinearAlgebra/PiTensorProduct.lean: * API for the various ways ι can be split into subsets; connect this with the binary tensor product -- specifically by describing tensors of type ⨂ (i : S), M i, for S : Set ι. Our primary motivation is to formalise the notion of "restricted tensor products". This will be the content of a follow-up PR. Beyond that, the Set API is natural in contexts where the index type has an independent interpretation. An example is quantum physics, where ι ranges over distinguishable degrees of freedom, and where its is common practice to annotate objects by the set of indices they are defined on. --- Stub file with preliminary definition of the restricted tensor product as a direct limit of tensors indexed by finite subsets of an index type: https://github.com/PrParadoxy/mathlib4/blob/restricted-stub/Mathlib/LinearAlgebra/PiTensorProduct/Restricted.lean --- - [x] depends on: #32598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-zulip t-algebra WIP
label:t-algebra$
300/2 Mathlib.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Set.lean 3 31 ['PrParadoxy', 'dagurtomas', 'eric-wieser', 'github-actions', 'goliath-klein', 'leanprover-radar', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
21-67130
21 days ago
161-77852
161 days ago
10-64694
10 days
32828 Hagb
author:Hagb
feat(Algebra/Order/Group/Defs): add `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid'` It is similar to `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid`, while with different hypotheses. The conclusion `IsOrderedCancelMonoid α` on `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid` still holds when the hypothesis `CommGroup α` is weakened to `CancelCommMonoid α` while `PartialOrder α` is strengthened to `LinearOrder α`. --- [`IsOrderedAddMonoid.toIsOrderedCancelAddMonoid`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=IsOrderedAddMonoid.toIsOrderedCancelAddMonoid#doc) and `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid'`: https://github.com/leanprover-community/mathlib4/blob/97f78b1a4311fed1844b94f1c069219a48a098e1/Mathlib/Algebra/Order/Group/Defs.lean#L52-L62 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-zulip t-algebra awaiting-author
label:t-algebra$
4/0 Mathlib/Algebra/Order/Group/Defs.lean 1 15 ['Garmelon', 'Hagb', 'Vierkantor', 'artie2000', 'dagurtomas', 'github-actions', 'leanprover-radar'] eric-wieser
assignee:eric-wieser
16-47104
16 days ago
130-83527
130 days ago
40-36049
40 days
39026 fpvandoorn
author:fpvandoorn
feat: add assume tactic Teaching tactic: `assume p, q, r` is short for `intro (_ : p) (_ : q) (_ : r)`. --- [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Assume.20tactic/with/593477478) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-zulip t-meta awaiting-author 123/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Assume.lean,MathlibTest/Assume.lean 4 9 ['fpvandoorn', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
4-15953
4 days ago
unknown
unknown
39233 linesthatinterlace
author:linesthatinterlace
feat: `Pi.map` rename to `Function.map` This PR renames `Pi.map` to `Function.map` and makes the changes necessary to support this. In particular this means that Mathlib.Logic.Function.Defs now only contains the Function namespace. A future PR may update the names of *.piMap in line with this. Zulip thread: [#PR reviews > #39233 - rename Pi.map to Function.map @ 💬](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2339233.20-.20rename.20Pi.2Emap.20to.20Function.2Emap/near/594605689) General discussion regarding the Pi namespace: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/The.20Pi.20namespace/near/594782721 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-zulip 130/121 Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Regular/Pi.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Condensed/Discrete/LocallyConstant.lean,Mathlib/Control/Bifunctor.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Prod/Basic.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/GroupTheory/MonoidLocalization/Lemmas.lean,Mathlib/LinearAlgebra/Multilinear/Basis.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Logic/Function/Iterate.lean,Mathlib/Order/Filter/Cofinite.lean,Mathlib/Order/Filter/Pi.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/PiProd.lean,Mathlib/Topology/Algebra/RestrictedProduct/TopologicalSpace.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Maps/Basic.lean,Mathlib/Topology/MetricSpace/HausdorffAlexandroff.lean,Mathlib/Topology/MetricSpace/Isometry.lean,Mathlib/Topology/NhdsWithin.lean 37 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
3-76288
3 days ago
20-83966
20 days ago
0-701
11 minutes
39790 hawkrobe
author:hawkrobe
feat(RingTheory): quotients of coalgebra/bialgebra/Hopf algebras --- Adds the quotient constructions suggested [here](https://github.com/leanprover-community/mathlib4/pull/39579#issuecomment-4529401418). There are several ways to quotient a ring (see this [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Canonical.20way.20to.20quotient.20a.20ring/with/598586882)); I wasn't sure which to use so I focused on `RingQuot r`. t-ring-theory new-contributor awaiting-zulip 234/0 Mathlib.lean,Mathlib/RingTheory/Bialgebra/Quotient.lean,Mathlib/RingTheory/Coalgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean 4 10 ['YaelDillies', 'github-actions', 'hawkrobe'] nobody
1-3646
1 day ago
1-25376
1 day ago
5-81719
5 days
40061 gasparattila
author:gasparattila
chore(MeasureTheory/SetSemiring): deprecate `disjointOfUnion` This definition was only used in the proof of `AddContent.addContent_sUnion_le_sum`. Since it is defined using choice with very specific properties, it is unlikely to be reusable elsewhere. --- - [x] depends on: #40060 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-zulip 10/0 Mathlib/MeasureTheory/SetSemiring.lean 1 3 ['RemyDegenne', 'github-actions', 'mathlib-dependent-issues'] EtienneC30
assignee:EtienneC30
0-9805
2 hours ago
0-9805
2 hours ago
1-8910
1 day

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
39808 chenson2018
author:chenson2018
chore(Data): refactor proofs where `grind?` fails These are sources of technical debt as now reported in the [weekly linting report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/with/544658968). The idea is that a successful `grind` proof can fail to report the theorems it used via `grind?`, which means that if these proofs break across toolchains that it becomes significantly harder to repair. Most of these are fixed by squeezing the call to `grind` and unsetting `linter.tacticAnalysis.verifyGrindOnly` so they no longer appear in the weekly report. Unfortunately, this can't be on by default for performance reasons, but I highly encourage using this linter when adding any `grind` proofs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data tech debt 69/41 Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Bool/Set.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Fin/Tuple/NatAntidiagonal.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Range.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Count.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/ReduceOption.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/List/TakeDrop.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Sum/Order.lean 24 1 ['github-actions'] nobody
8-22071
8 days ago
8-32415
8 days ago
8-32165
8 days
39769 chenson2018
author:chenson2018
chore(Topology): refactor proofs where `grind?` fails These are sources of technical debt as now reported in the [weekly linting report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/with/544658968). The idea is that a successful `grind` proof can fail to report the theorems it used via `grind?`, which means that if these proofs break across toolchains that it becomes significantly harder to repair. Most of these are fixed by squeezing the call to `grind` and unsetting `linter.tacticAnalysis.verifyGrindOnly` so they no longer appear in the weekly report. Unfortunately, this can't be on by default for performance reasons, but I highly encourage using this linter when adding any `grind` proofs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology tech debt 35/17 Mathlib/Topology/Compactness/CountablyCompact.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/IsLUB.lean,Mathlib/Topology/Order/WithTop.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/Sets/VietorisTopology.lean,Mathlib/Topology/Sheaves/Flasque.lean 9 1 ['github-actions'] nobody
8-11998
8 days ago
9-9155
9 days ago
9-8905
9 days
39755 wwylele
author:wwylele
chore(GroupTheory): remove a defeq abuse --- I am not sure if this is the right change to make, so I'd like to start a discussion from this. The issue here seems to be that the simp lemma [MulAction.orbitRel.Quotient.orbit_mk](https://leanprover-community.github.io/mathlib4_docs/Mathlib/GroupTheory/GroupAction/Defs.html#MulAction.orbitRel.Quotient.orbit_mk) fired and changed the underlying type of variables in the expression, which is not defeq at instance transparency, and fails defeq check for `MulAction` ([MulAction.instElemOrbit](https://leanprover-community.github.io/mathlib4_docs/Mathlib/GroupTheory/GroupAction/Defs.html#MulAction.instElemOrbit) vs [MulAction.instElemOrbit_1](https://leanprover-community.github.io/mathlib4_docs/Mathlib/GroupTheory/GroupAction/Defs.html#MulAction.instElemOrbit_1)). The easy change here is to disable the offending simp, but it feels like a common language pitfall. Should we do either of the following instead? - remove `MulAction.orbitRel.Quotient.orbit_mk` from default simp set - Make the the orbit definition more transparent [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt t-group-theory 1/2 Mathlib/GroupTheory/GroupAction/Basic.lean 1 1 ['github-actions'] nobody
3-49594
3 days ago
3-47493
3 days ago
9-69112
9 days
38957 wwylele
author:wwylele
chore(GroupTheory/DivisibleHull): remove `backward.privateInPublic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt t-group-theory 5/12 Mathlib/GroupTheory/DivisibleHull.lean 1 13 ['Komyyy', 'github-actions', 'grunweg', 'jcommelin', 'wwylele'] jcommelin
assignee:jcommelin
3-49582
3 days ago
3-48795
3 days ago
21-15939
21 days
39990 grunweg
author:grunweg
chore: move Data/Nat/Lattice to Order This file uses only order theory: that is a much better location --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt file-removed 19/19 Mathlib.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Data/ENat/Lattice.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/Multiset/Interval.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/Order/Interval/Set/OrdConnectedLinear.lean,Mathlib/Order/Lattice/Nat.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/RingTheory/Nilpotent/Basic.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/Topology/Instances/Nat.lean,Mathlib/Topology/Metrizable/Uniformity.lean 19 6 ['SnirBroshi', 'YaelDillies', 'github-actions', 'grunweg'] nobody
2-76996
2 days ago
3-79668
3 days ago
4-63853
4 days
39984 grunweg
author:grunweg
chore(Data): move some files to better locations Move a number of files in `Data` to clearly better locations. See individual commit messages for details. --- - [x] depends on: #39976 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed tech debt maintainer-merge 30/30 Counterexamples/HomogeneousPrimeNotPrime.lean,Mathlib.lean,Mathlib/Algebra/Group/ConjFinite.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/Units/Fintype.lean,Mathlib/Algebra/Lie/SerreConstruction.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/LinearAlgebra/Matrix/Action.lean,Mathlib/LinearAlgebra/Matrix/Bilinear.lean,Mathlib/LinearAlgebra/Matrix/Cartan.lean,Mathlib/LinearAlgebra/Matrix/DualNumber.lean,Mathlib/LinearAlgebra/Matrix/Invertible.lean,Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Cardinality.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/SetTheory/Cardinal/Embedding.lean,Mathlib/SetTheory/Cardinal/NatCard.lean,Mathlib/SetTheory/Cardinal/Rat.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean,scripts/noshake.json 30 4 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues'] nobody
2-22660
2 days ago
3-68277
3 days ago
3-68027
3 days
39011 Vierkantor
author:Vierkantor
chore(Algebra/Polynomial/Module): workaround for backward.inferInstanceAs This PR, like #38990, works around a `backward.inferInstanceAs` compatibility flag introduced by identifying `PolynomialModule` with `Finsupp` in our definitions. We introduce a new dsimp lemma `funLike_eq` that transfers the `FunLike` instances, and now we can use `PolynomialModule`'s `FunLike` instance, instead of the custom `CoeFun` instance. This is not a great approach, but it seems the least painful for the short term. The alternative would be to strictly enforce the defeq barrier between `PolynomialModule` and `Finsupp`, which would mean a substantial rewrite of this corner of Mathlib. We can't make `PolynomialModule` an `@[implicit_reducible]`, because we need different multiplication on it than `Finsupp` has. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra tech debt
label:t-algebra$
8/5 Mathlib/Algebra/Polynomial/Module/Basic.lean 1 1 ['github-actions'] joneugster
assignee:joneugster
0-48164
13 hours ago
26-77273
26 days ago
26-77023
26 days
39886 grunweg
author:grunweg
chore(Geometry/Manifold): remove some `@[expose] public` section Go through a few files and audit the exposed definitions there. Best reviewed commit by commit. --- I'm happy to give more details on any file where desired. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry tech debt 17/20 Mathlib/Geometry/Manifold/Bordism.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/Geometry/Manifold/WhitneyEmbedding.lean 3 1 ['github-actions'] sgouezel
assignee:sgouezel
0-48159
13 hours ago
6-14017
6 days ago
6-65014
6 days