Mathlib triage dashboard

Welcome to the PR triage page! This page is perfect if you intend to look for pull request which seem to have stalled.
Feedback on designing this page or further information to include is very welcome.

This dashboard was last updated on: May 30, 2026 at 11:28 UTC

Quick links: PR statistics | Not yet landed PRs | Review status | Needs triage: unassigned PRs | Needs triage: assigned PRs | Likely-spurious CI failures | Tech debt PRs | PRs blocked on a zulip discussion | PRs with just a merge conflict | Stale new contributor PRs | PRs not into master | PRs with an 'approved' review | All open PRs | Other lists of PRs

Overall statistics

Found 2640 open PRs overall. Among these PRs

Approved, not yet landed PRs

At the moment,

Review status

There are currently 494 PRs awaiting review. Among these,

On the other hand, 171 PRs are unassigned and have not seen a status change in three days, and 18 PRs are assigned and have seen no review movement in two weeks.

These are triage-oriented views, not the main review queue. Updating a PR may remove it from one of these lists, but does not remove it from the review queue unless the PR's status changes out of awaiting review.

Needs triage: unassigned PRs on the review queue

Number Author Title Description Labels +/- Modified files (first 100) 📝 💬 All users who commented or reviewed Assignee(s) Approval(s) Updated Last status change total time in review
34952 joneugster
author:joneugster
feat(scripts/autolabel): use `Cli` and integrate `curl` call into `autolabel` - use `Cli` for `lake exe autolabel` - add arguments `--pr xxx --gh` and `--pr xxx --curl ` to chose between different interaction methods with github - add `--force` to skip the check whether labels are already present. (note: the current `curl` setup doesn't perform this step and neither does the refactor, so I added a `Todo` to remember this. ) - make CI-workflow simpler and more robust by removing current stdout-parsing of the debug-messages which `autolabel` emits. ### Testing Make some local changes and commit them. Ensure your local `origin/master` is in sync with `upstream/master` if you are on a fork. - `lake exe autolabel`: prints the labels which would be applicable - `lake exe autolabel --pr 34952 --gh --force` adds these labels to this PR using `gh`. - `lake exe autolabel --pr 34952 --gh` adds these labels to this PR using `gh` if no topic labels are present. - `lake exe autolabel --pr 34952 --curl ` adds these labels to this PR using `curl`. This requires a github access token for authentication --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 85/72 .github/workflows/add_label_from_diff.yaml,scripts/autolabel.lean 2 4 ['github-actions', 'mathlib-merge-conflicts'] nobody none
78-37683
2 months ago
61-84692
61 days ago
94-39093
94 days
37865 Jun2M
author:Jun2M
feat(Combinatorics/Graph): Edge cut of `Graph` This PR introduces - `edgeCut`: A function on set of vertices that returns the set of edges with exactly one end in the set. - `IsEdgeCut`: A predicate for set of edges that promises it is `edgeCut` of some set. - `IsBridge`: An edge `e` is a bridge iff it is a singleton edge cut. - `IsBond`: An edge Set `B` is bond iff it is minimal nonempty edge cut. --- - [x] depends on: #35879 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 194/0 Mathlib/Combinatorics/Graph/Connected/EdgeCut.Lean,Mathlib/Combinatorics/Graph/Subgraph.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody none
44-55567
1 month ago
44-73224
44 days ago
44-73625
44 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 3
43-85136
1 month ago
43-85100
43 days ago
59-19226
59 days
38185 Jun2M
author:Jun2M
feat(Order/Partition): operations over Frame This PR introduces: * `Partition.induce`: The induce of a partition by a frame element. * `Partition.disjUnion`: The disjoint union of two partitions. * `Partition.bind`: The finer partition obtained by family of partitions for each part of the original partition. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 89/11 Mathlib/Order/Partition/Basic.lean,Mathlib/Order/SupIndep.lean 2 1 ['github-actions'] nobody none
42-51902
1 month ago
42-51974
42 days ago
42-51937
42 days
38356 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Finset): `sSup s ≠ ⊤` in a `CompleteLinearOrder` for a finite set without `⊤` --- btw `to_dual` here is blocked on #35213 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 20/0 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean 1 1 ['github-actions'] nobody none
38-34760
1 month ago
38-34835
38 days ago
38-34798
38 days
38325 Jun2M
author:Jun2M
feat(Combinatorics/Graph): EndPoint function This PR introduces `endPoints`: `Set` of incident vertices, given an edge (in the case of non-edge, return empty). **Import change**: `Graph/Basic` now imports `Data/Set/Card` to allow reasoning about card of `endPoints`. [Relavent Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/New.20graph.20definitions/with/588616269) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import 83/3 Mathlib/Combinatorics/Graph/Basic.lean 1 9 ['Jun2M', 'SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-bors'] nobody none
37-41758
1 month ago
37-50588
37 days ago
39-20494
39 days
38498 SnirBroshi
author:SnirBroshi
feat(Order/RelIso/Basic): lift a function to an order morphism into `Relation.Map` or from `Function.onFun` For an `α`-relation `r` we have: ``` mapRelHom (f : α → β) : r →r Relation.Map r f f mapRelEmbedding (f : α ↪ β) : r ↪r Relation.Map r f f mapRelIso (f : α ≃ β) : r ≃r Relation.Map r f f ``` For a `β`-relation `r` we have: ``` onFunRelHom (f : α → β) : r.onFun f →r r onFunRelEmbedding (f : α ↪ β) : r.onFun f ↪r r onFunRelIso (f : α ≃ β) : r.onFun f ≃r r ``` --- These are pretty similar to `SimpleGraph.{Embedding/Iso}.map` and `SimpleGraph.{Hom/Embedding/Iso}.comap`, as [`comap`](https://github.com/leanprover-community/mathlib4/blob/9268b22206b0425419498769f780a91dee03bcf3/Mathlib/Combinatorics/SimpleGraph/Maps.lean#L117-L118) on graphs is a wrapper around `onFun`, and [`map`](https://github.com/leanprover-community/mathlib4/blob/9268b22206b0425419498769f780a91dee03bcf3/Mathlib/Combinatorics/SimpleGraph/Maps.lean#L57-L58) on graphs is *almost* a wrapper around `Relation.Map`. btw `@[simps]` is angry at me when I try to use it on the structures that use spread syntax. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 42/0 Mathlib/Order/RelIso/Basic.lean 1 1 ['github-actions'] nobody none
35-25402
1 month ago
35-25477
35 days ago
35-25440
35 days
38344 robo7179
author:robo7179
feat(SimpleGraph/Coloring/VertexColoring): Matching is 2 colorable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/0 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean 1 5 ['SnirBroshi', 'github-actions', 'vlad902'] nobody none
35-1325
1 month ago
38-55269
38 days ago
38-55618
38 days
38222 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Girth): add lemmas about isomorphism and girth --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 19/1 Mathlib/Combinatorics/SimpleGraph/Girth.lean 1 6 ['IvanRenison', 'SnirBroshi', 'github-actions', 'vlad902'] nobody none
34-71347
1 month ago
41-46260
41 days ago
41-46223
41 days
38528 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): some cycle lemmas are true for circuits Add `IsCircuit.{not_of_nil,ne_bot,three_le_length}` by using their corresponding `IsCycle` proofs. Also golfs a bit. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 17/9 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 1 ['github-actions'] nobody none
34-70251
1 month ago
34-70321
34 days ago
34-70284
34 days
38549 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Copy): `Is(Ind)Contained` `completeGraph` lemmas - `G ⊑ completeGraph V` - `G ⊑ completeGraph W ↔ Nonempty (V ↪ W)` - `completeGraph V ⊴ completeGraph W ↔ Nonempty (V ↪ W)` - `G ⊴ completeGraph W → G = ⊤` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 12/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 1 ['github-actions'] nobody none
33-76826
1 month ago
33-76895
33 days ago
33-76858
33 days
38529 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Girth): `egirth ⊤ = 3` when there are at least 3 vertices Since `Nontrivial` is not enough, we use the condition `3 ≤ ENat.card α`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 17/0 Mathlib/Combinatorics/SimpleGraph/Girth.lean 1 5 ['SnirBroshi', 'github-actions', 'vlad902'] nobody none
33-76769
1 month ago
34-67486
34 days ago
34-67449
34 days
37835 YaelDillies
author:YaelDillies
doc(Algebra/Order): update mentions of `OrderedSemiring` and friends As of #20676, it was replaced by `IsOrderedRing`. Not all docs were straightforward to update. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
123/280 Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Mathlib/Algebra/Group/Subgroup/Order.lean,Mathlib/Algebra/Group/ULift.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Group/Cyclic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval/Set/Monoid.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/ExistsOfLE.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Order/Sub/WithTop.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Cast/Order/Basic.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/Order/Filter/Germ/OrderedMonoid.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Valuation.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/Tactic/NormNum/Ineq.lean 37 9 ['NoahW314', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] nobody none
33-68705
1 month ago
33-68730
33 days ago
48-63827
48 days
38554 YaelDillies
author:YaelDillies
chore(Combinatorics/SimpleGraph): use the auto-param in `loopless` more --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 5/13 Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Order/Cover.lean 8 6 ['SnirBroshi', 'YaelDillies', 'github-actions'] nobody none
32-57325
1 month ago
33-3266
33 days ago
33-5298
33 days
38364 openendings
author:openendings
feat: create Order/DirectedCompletePartialOrder/Defs.lean Define DirectedCompletePartialOrder and its interaction with iSup and sSup. --- A DirectedCompletePartialOrder is equivalently: - a partial order with LUBs of nonempty directed sets; - what happens when you remove ⊥ from a CompletePartialOrder; or - a ConditionallyCompletePartialOrder in which every directed set is BddAbove. Like CPOs, DCPOs are commonly studied in denotational semantics. Potential applications: - [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/590070848) -- defining infinite sums in an DCPO-enriched `AddCommMonoidWithTop` such as `ENat` or `ENNReal`. - [#Is there code for X? > Scott Induction](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Scott.20Induction/with/590112858) -- fixpoint theorems similar to `OmegaCompletePartialOrder`, generalised to arbitrary cardinalities. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 123/0 Mathlib.lean,Mathlib/Order/DirectedCompletePartialOrder/Defs.lean,docs/references.bib 3 4 ['SnirBroshi', 'github-actions', 'openendings'] nobody none
31-45581
1 month ago
37-35701
37 days ago
38-10490
38 days
38612 SnirBroshi
author:SnirBroshi
feat(Order/SuccPred/CompleteLinearOrder): `sSup s < x` iff theorems when we know if `x` is a successor pre-limit or not Adds the following theorems (along with their duals and indexed versions): ```lean sSup_lt_iff_of_not_isSuccPrelimit : ¬IsSuccPrelimit x → sSup s < x ↔ ∀ a ∈ s, a < x le_sSup_iff_of_not_isSuccPrelimit : ¬IsSuccPrelimit x → x ≤ sSup s ↔ ∃ a ∈ s, x ≤ a Order.IsSuccPrelimit.sSup_lt_iff : IsSuccPrelimit x → sSup s < x ↔ ∃ a < x, ∀ b ∈ s, b < a Order.IsSuccPrelimit.le_sSup_iff : IsSuccPrelimit x → x ≤ sSup s ↔ ∀ a < x, ∃ b ∈ s, a ≤ b ``` They are similar to these existing theorems, but not the same: ```lean sSup_lt_iff : sSup s < x ↔ ∃ a < x, ∀ b ∈ s, b ≤ a le_sSup_iff_forall_lt : x ≤ sSup s ↔ ∀ a < x, ∃ b ∈ s, a < b ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 43/0 Mathlib/Order/SuccPred/CompleteLinearOrder.lean 1 6 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody none
31-16390
1 month ago
32-13304
32 days ago
32-13267
32 days
37930 vlad902
author:vlad902
chore(SimpleGraph): move `cycleGraph` to its own file PR #34797 re-defined `cycleGraph` independent of `circulantGraph`. Now move the definition of `cycleGraph` to its own file so that the definition can be used without importing the algebra hierarchy. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 173/148 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody none
30-20359
1 month ago
30-20382
30 days ago
30-20732
30 days
38747 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Basic): more `neighborSet` and `IsIsolated` lemmas --- `neighborSet_mono` moved from `Maps.lean` to `Basic.lean` with a simpler proof [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 72/17 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 4 2 ['github-actions', 'vlad902'] nobody none
29-42038
29 days ago
29-48994
29 days ago
30-16846
30 days
38841 SnirBroshi
author:SnirBroshi
feat(Mathlib/Order/SuccPred/Limit): more `WithTop` lemmas about `IsMin`/`CovBy`/`IsSuccLimit` --- Continues the work from #38244 We should probably also have such lemmas for `WithTopBot`/`WithBotTop`, but that's for another day [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 111/30 Mathlib/Order/Cover.lean,Mathlib/Order/SuccPred/Limit.lean,Mathlib/Order/WithBot.lean 3 1 ['github-actions'] nobody none
28-836
28 days ago
28-11352
28 days ago
28-12122
28 days
38316 tannerduve
author:tannerduve
feat(Order/OmegaCompletePartialOrder): least fixed point and Scott induction Adds `ContinuousHom.lfp` for endomorphisms on an ωCPO with `⊥`, as the `ωSup` of the iterate chain from `⊥`, together with `map_lfp`, `isFixedPt_lfp`, `lfp_le_fixed`, `isLeast_lfp`, and the Scott induction theorem `lfp_induction` (specialized from a more general seed-based `ωSup_iterate_induction`). For `Part.fix`, adds: * `Part.exists_mem_approx_of_mem_fix`: if `y ∈ Part.fix g x`, some finite approximation of `g` already contains `y`. * `Part.Fix.approx_eq_iterate_bot` and `Part.Fix.approxChain_eq_iterateChain`: bridges between `Fix.approx`/`approxChain` and `f^[n] ⊥`/`iterateChain`. * `Part.fix_eq_lfp`: `Part.fix g = ContinuousHom.lfp (.ofFun g hc)` when `g` is ω-Scott continuous. * `Part.fix_scott_induction`: Scott induction specialized to `Part.fix`. * `Part.fix_induction_mem`: membership induction on `Part.fix`, derived from `fix_scott_induction`. new-contributor 114/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody none
27-62061
27 days ago
39-38163
39 days ago
39-38652
39 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 none
27-5738
27 days ago
27-5800
27 days ago
38-7419
38 days
38871 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph): add parity lemmas for outer and inner vertices Adds three lemmas to `SimpleGraph.DegreeSum`: - `sum_degrees_option_zmod_two`: the handshaking lemma for `Option I` over ZMod 2 - `degree_none_zmod_two_eq_sum`: simp-normal form of the above - `card_degree_one_option_eq_outer_zmod_two`: under degree bound ≤ 2, count of degree-1 inner vertices equals outer vertex degree mod 2 t-combinatorics new-contributor 65/3 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean 1 6 ['0xTerencePrime', 'SnirBroshi', 'github-actions'] nobody none
26-25146
26 days ago
26-81774
26 days ago
26-81737
26 days
38897 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SetFamily): formalize 1D Sperner's Lemma parity Formalizes the 1-dimensional Sperner's Lemma (parity version): given a coloring of the `n + 1` vertices of a subdivided line segment with two colors (`ZMod 2`), if the two endpoints have different colors, then the number of color-changing edges is odd. This is **distinct** from `IsAntichain.sperner` in `SetFamily.LYM`, which concerns antichains in a power set. This file formalizes the topological/combinatorial parity statement used as the base case in higher-dimensional Sperner arguments. ## Key declarations - `SpernerColoring`: type-safe coloring via `Fin (n + 1) → ZMod 2` - `edgeDiff`: color difference on adjacent vertices, computed in `ZMod 2` - `totalDiff`: telescoping sum of all edge differences - `diffEdges`: the `Finset` of bichromatic (color-changing) edges - `sperner_1d`: main theorem — `Odd (diffEdges c).card` ## Design notes - Using `Fin (n + 1) → ZMod 2` instead of `ℕ → ZMod 2` makes boundary conditions unrepresentable at the type level, eliminating out-of-bounds cases entirely. - The proof reduces to a telescoping sum in `ZMod 2`, using `CharTwo.add_self_eq_zero` to cancel all interior vertices, avoiding parity case splits. This is intended as the 1D base case, the approach generalizes to higher-dimensional Sperner's Lemma in future work. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 133/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/Sperner1D.lean 2 3 ['github-actions', 'grunweg'] nobody none
26-16380
26 days ago
26-26530
26 days ago
26-26493
26 days
36815 EtienneC30
author:EtienneC30
feat: a measurable space structure on the type of continuous maps Endow the type `C(X, Y)` of continuous maps from `X` to `Y` with the Borel sigma-algebra coming from the compact-open topology and show that, under some assumptions on `X` and `Y`, this is equal to the restriction of the product sigma-algebra over `X → Y`. Provide a measurable equivalence between `{f : X → Y // Continuous f}` and `C(X, Y)`. Co-authored-by: @RemyDegenne --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology brownian t-measure-probability 256/0 Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/ContinuousMap.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Separation/Regular.lean 6 27 ['ADedecker', 'EtienneC30', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] nobody none
25-10493
25 days ago
25-10533
25 days ago
65-5846
65 days
38951 thomaskwaring
author:thomaskwaring
feat(Order/PrimeSeparator): remove unnecessary hypotheses In `mem_ideal_sup_principal`, boundedness and distributivity were unused, and in `prime_ideal_of_disjoint_filter_ideal`, boundedness was only used to produce an element of the filter `F`, which is already nonempty by definition. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 9/19 Mathlib/Order/PrimeSeparator.lean 1 2 ['github-actions'] nobody none
25-9071
25 days ago
25-9158
25 days ago
25-9121
25 days
38667 SnirBroshi
author:SnirBroshi
feat(Order/Hom/Basic): equivalences of `Order{Hom/Embedding/Iso}` - `OrderHom`s are equivalent to `RelHom`s of `LE` (unlike `OrderEmbedding`/`OrderIso` they aren't defined using it) - Congruence equivs for `OrderEmbedding`/`OrderIso` when the two sides are order-isomorphic. This already exists for `OrderHom`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 55/1 Mathlib/Order/Hom/Basic.lean 1 3 ['SnirBroshi', 'dagurtomas', 'github-actions'] nobody none
24-46121
24 days ago
24-46121
24 days ago
31-43605
31 days
38979 ldct
author:ldct
feat(EReal): simplify nat + ⊤ Alternative version of https://github.com/leanprover-community/mathlib4/pull/38975 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 28/2 Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Operations.lean,MathlibTest/EReal.lean 3 6 ['SnirBroshi', 'eric-wieser', 'github-actions', 'ldct', 'leanprover-radar'] nobody none
23-76403
23 days ago
23-76169
23 days ago
23-76262
23 days
39004 zhuyizheng
author:zhuyizheng
chore(ModelTheory): fix hypo of `realize_liftAt` changes the hypo of `realize_liftAt` from the incorrect `(hmn : m + n' ≤ n + 1)` to the correct `(hmn : m ≤ n)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 2/2 Mathlib/ModelTheory/Semantics.lean 1 3 ['github-actions', 'plp127', 'zhuyizheng'] nobody none
23-36632
23 days ago
23-72761
23 days ago
23-72724
23 days
38310 ZRTMRH
author:ZRTMRH
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability Adds word evaluation and reachability results to the Schreier graph API. * `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`. * `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`. * `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`. * `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`. * `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other. Follow-up to #36320. This PR was written with AI assistance (Claude). The code has been reviewed by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import LLM-generated 157/0 Mathlib/Combinatorics/Quiver/Schreier.lean 1 2 ['github-actions'] nobody none
23-23086
23 days ago
39-56560
39 days ago
39-56523
39 days
39023 TBUGTB
author:TBUGTB
feat(Algebra/Order): API lemmas on floor and abs Co-authored-by: Etienne Marion @EtienneC30 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra brownian new-contributor
label:t-algebra$
9/0 Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Ring/Abs.lean 2 3 ['TBUGTB', 'github-actions'] nobody none
23-4812
23 days ago
23-8001
23 days ago
23-7964
23 days
39078 fpvandoorn
author:fpvandoorn
feat: add lemmas about products over Finset.Iio * Mostly useful for `ℕ` * I added the `Finset.Iic` lemmas by symmetry, but I'm happy to remove them if we think they are redundant. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/0 Mathlib/Algebra/Order/BigOperators/Group/LocallyFinite.lean 1 1 ['github-actions'] nobody none
21-81857
21 days ago
21-81937
21 days ago
21-81900
21 days
38328 astrainfinita
author:astrainfinita
feat: `OrderSupSet` This PR introduces `OrderSupSet` and `OrderInfSet`, which are typeclasses expressing that `sSup` (resp., `sInf`) returns the least upper bound (resp., the greatest lower bound) of a set whenever one exists. This allows us to prove properties about the `sSup` of specific sets (such as `∅`, singletons, finite sets, and `univ`) without any typeclasses asserting the existence of LUBs. For example, `sSup ∅ = ⊥` holds for any type equipped with `OrderBot` `OrderSupSet`, no longer requiring typeclasses like `ConditionallyCompleteLinearOrderBot`. For a general set `s`, this gives a uniform way to extend results about `IsLUB s a → motive a` to `motive (sSup s)`, `motive (⨆ i, f i)`, `motive (a ⊔ b)`, etc., which allows proof reuse for basic API such as [`csSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/ConditionallyCompleteLattice/Basic.html#csSup_insert), [`iSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/CompleteLattice/Basic.html#iSup_insert), and [`sSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/CompleteLattice/Basic.html#sSup_insert) and downstream code like [`csSup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.html#csSup_add), [`sSup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.html#sSup_add), and [`sup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Lattice.html#sup_add). Furthermore, this allows us to refactor incrementally, reducing the dependency of results about various completeness typeclasses on the specific implementation of `sSup`. --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 156/73 Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/SetNotation.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean 7 16 ['JovanGerb', 'astrainfinita', 'b-mehta', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'openendings', 'vihdzp'] nobody 1
21-14967
21 days ago
21-15006
21 days ago
26-45677
26 days
39123 SnirBroshi
author:SnirBroshi
chore(Data/Matrix/Basic): mention `mopMatrix` in `transpose{Ring/Alg}Equiv`s docstring and vice versa - `RingEquiv.mopMatrix` and `transposeRingEquiv` differ by a `ᵐᵒᵖ` since the latter assumes `CommMagma α` instead of `Mul α` - `AlgEquiv.mopMatrix` and `transposeAlgEquiv` differ by a `ᵐᵒᵖ` since the latter assumes `CommSemiring α` instead of `Semiring α` --- Also slightly golfs `RingEquiv.mopMatrix` as a drive-by. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 18/11 Mathlib/Data/Matrix/Basic.lean 1 1 ['github-actions'] nobody none
20-59827
20 days ago
20-59909
20 days ago
20-59872
20 days
38855 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Indexed): `≤` version of `ciSup_or'` for `ConditionallyCompleteLattice` Deprime `ciSup_or'` because there's no `ciSup_or`, and add a `≤` version (and dual) for `ConditionallyCompleteLattice`. Only `≤` because equality does not hold when `p ≠ q` without `sSup ∅ = ⊥`. --- `ciSup_or'` can't have a dual because there's no dual to `ConditionallyCompleteLinearOrderBot`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 8/1 Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 1 1 ['github-actions'] nobody none
20-12008
20 days ago
27-33216
27 days ago
27-33179
27 days
38489 Jun2M
author:Jun2M
feat(Topology/Algebra/InfiniteSum): Generalize ENNReal lemmas This PR generalizes many theorems in Topology/Algebra/InfiniteSum/ENNReal.lean from `ENNREal` to any type that satisfies a list of order-related instances, mostly `[CommMonoid α] [CompleteLattice α] [CanonicallyOrderedMul α] [TopologicalSpace α] [SupConvergenceClass α]` Deprecation of the original `ENNReal` lemmas are done in the next PR: #38193. Related Zulip thread: [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/588756615) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 261/3 Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 4 7 ['Jun2M', 'SnirBroshi', 'github-actions', 'wwylele'] nobody none
19-49042
19 days ago
19-49119
19 days ago
35-39127
35 days
39157 vihdzp
author:vihdzp
feat: `Nat.cast` commutes with addition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 26/9 Mathlib/Data/Nat/Cast/Commute.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean 2 2 ['github-actions', 'plp127'] nobody none
18-76724
18 days ago
19-51789
19 days ago
19-51752
19 days
39219 WenrongZou
author:WenrongZou
feat(FieldTheory/Finite): add variant theorems for `expand_card` Add `MvPolynomial, MvPowerSeries, PowerSeries` version of `FiniteField.expand_card`, which is only for polynomial. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
45/4 Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/FiniteField.lean,Mathlib/RingTheory/MvPolynomial/Expand.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/PowerSeries/Expand.lean 5 1 ['github-actions'] nobody none
18-52111
18 days ago
18-52152
18 days ago
18-52347
18 days
39239 alainchmt
author:alainchmt
feat(FieldTheory/Finite): irreducible polynomial divides X^q^n - X iff degree divides n --- Add the theorem saying that, for an irreducible polynomial `f` over a finite field `K`, the degree of `f` divides `n` if and only if `f` divides `X ^ (Nat.card K) ^ n - X`. Include auxiliary lemmas. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
34/0 Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Minpoly/Field.lean 2 2 ['github-actions'] nobody none
18-5966
18 days ago
18-6055
18 days ago
18-6018
18 days
39195 linesthatinterlace
author:linesthatinterlace
feat(Logic/Function/Defs): Add dcomp lemmas This PR adds API lemmas about `dcomp` that were previously missing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 13/0 Mathlib/Logic/Function/Defs.lean 1 6 ['github-actions', 'linesthatinterlace', 'plp127'] nobody none
17-81625
17 days ago
18-83124
18 days ago
18-83087
18 days
39230 bryangingechen
author:bryangingechen
chore: extract API from #38807 and golf I wanted to understand why these two proofs in #38807 were long (and also play around more with the API in this corner of the library) so I walked through them with Claude Opus. prepared with Claude code t-order LLM-generated 23/37 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/DirSupClosed.lean 2 2 ['github-actions', 'vihdzp'] nobody 1
17-45988
17 days ago
18-34224
18 days ago
18-34187
18 days
36388 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/AdjMatrix): submatrices and homomorphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 73/3 Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean 1 19 ['SnirBroshi', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody 1
16-86191
16 days ago
17-36369
17 days ago
46-73287
46 days
39279 jayscambler
author:jayscambler
feat(Cryptography/Sigma): Schnorr sigma protocol and signature scheme Adds `Mathlib/Cryptography/Sigma/Schnorr.lean`. New file in a new top-level directory; mathlib currently has no `Mathlib/Cryptography/`, so I've taken `Mathlib/Cryptography/Sigma/` as the natural home for sigma-protocol formalizations. The file proves the three defining properties of Schnorr's identification scheme as a sigma protocol: - `Schnorr.correct`: completeness. Honest verifier accepts honest signer's transcript. - `Schnorr.specialSoundness`: from two accepting transcripts sharing the commitment but using different challenges `c, c'`, the witness `x = (s - s') / (c - c')` is recovered. Needs `q` prime so `c - c'` is invertible in `ZMod q`. - `Schnorr.hvzkAccepts`: the HVZK simulator `g^s · (y^c)⁻¹` always yields accepting transcripts. This is the structural-correctness half of HVZK only; the distributional indistinguishability statement is a separate result and not in this PR. On top of the sigma protocol there's `Schnorr.Signature.{keyGen, sign, verify, correct}` wrapping it as a Fiat-Shamir signature scheme; `Schnorr.Signature.correct` is a one-line corollary of `Schnorr.correct`. Two auxiliary lemmas, `Schnorr.gpow_sub` and `Schnorr.gpow_mul`, bridge `ZMod q` arithmetic and group exponentiation under `Fintype.card G = q`. They're local to this file for now because the surrounding `gpow` API is itself cryptography-specific; if a general `ZMod q`-graded group action framework lands in mathlib later, both lemmas would become instances of it. There's also a small `example` instantiating everything on `Multiplicative (ZMod q)` for `Fact q.Prime` to show the API typechecks. That instantiation is a toy (DLOG is trivial in that group), but it confirms the abstraction is usable. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 352/0 Mathlib.lean,Mathlib/Cryptography/Sigma/Schnorr.lean 2 2 ['github-actions'] nobody none
16-69808
16 days ago
16-69887
16 days ago
16-70340
16 days
35255 vlad902
author:vlad902
feat(SimpleGraph): `cycleGraph.IsContained` in every graph with a cycle --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 35/0 Mathlib/Combinatorics/SimpleGraph/Circulant.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody none
16-66448
16 days ago
31-52920
31 days ago
31-53830
31 days
34855 staroperator
author:staroperator
feat(Order): use `to_dual` for `PFilter` This PR redefines `PFilter` to get rid of `OrderDual` and uses `to_dual` to translate theorems. The whole file of `PFilter` is now deprecated. Some changes: - To align with `Filter`, the order on `PFilter` is changed to the reversed set inclusion. Ultrafilters, the dual notion of maximal ideals, become minimal in this order. - `to_dual` does not work on `sequenceOfCofinals`. I left `Order.Cofinal` and the Rasiowa–Sikorski lemma not `to_dual`-ized, and we should move them to a separate file later. - `IsLEChain` is added to tag `to_dual`. - `IsCoatom.isProper`/`IsCoatom.isMaximal` is deprecated by `Order.Ideal.isProper_of_isCoatom`/`Order.Ideal.isMaximal_of_isProper`, since this result is special to ideals while `IsCoatom` namespace should be for orders in general. --- - [x] depends on: #34820 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 292/242 Mathlib/Order/Atoms.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/BooleanAlgebra/Defs.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/Ideal.lean,Mathlib/Order/PFilter.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/PrimeIdeal.lean,Mathlib/Order/PrimeSeparator.lean,Mathlib/Order/ZornAtoms.lean,Mathlib/RingTheory/IdealFilter/Basic.lean,Mathlib/RingTheory/IdealFilter/Topology.lean,Mathlib/Tactic/Translate/ToDual.lean 13 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody none
16-54229
16 days ago
16-54007
16 days ago
28-77282
28 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 1
16-41279
16 days ago
23-5857
23 days ago
48-72076
48 days
39341 drocta
author:drocta
feat(Algebra/Colimit/DirectLimit): add DirectLimit.(NonUnital)StarAlgebra.(lift/of) maps and associated lemmas add the `of` and `lift` maps for `DirectLimit.StarAlgebra` and `DirectLimit.NonUnitalStarAlgebra`, as well as the associated lemmas, `of_f`, `lift_comp_of`, `lift_of`, and `hom_ext` for each. Also make `DirectLimit.NonUnitalAlgebra` only require `[Monoid R]` rather than `[CommSemiring R]`. --- Use of AI: I again asked ChatGPT for some advice about some things about this code. I can personally vouch for all of the code I'm submitting, and that I understand all of it. This is the third part of my project towards supporting direct limits of $C^∗$ -algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR adds an import of `Mathlib.Algebra.Star.StarAlgHom` (because it needs `StarAlgHom` and `NonUnitalStarAlgHom`) replacing/encompassing the previously added imports of `Mathlib.Algebra.Star.StarRingHom` and `Mathlib.Algebra.Algebra.NonUnitalHom` (added in PR #38308 and #38672 respectively). t-algebra new-contributor
label:t-algebra$
100/3 Mathlib/Algebra/Colimit/DirectLimit.lean 1 2 ['github-actions'] nobody none
16-35831
16 days ago
16-38523
16 days ago
16-38486
16 days
39373 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/CongruenceSubgroups` - simplifies `Gamma_mem` to a single `simp` proof via `Gamma_mem'` and `SpecialLinearGroup.ext_iff` - shortens `ModularGroup_T_pow_mem_Gamma` and the `Gamma0` closure proofs with direct `simp`/`simpa` arguments Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 4/22 Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
15-68905
15 days ago
15-70638
15 days ago
15-70601
15 days
39374 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/Derivative` - rewrites `normalizedDerivOfComplex_sub` to reuse the additive and negation lemmas instead of reproving the subtraction formula pointwise Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 4/10 Mathlib/NumberTheory/ModularForms/Derivative.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
15-68699
15 days ago
15-70635
15 days ago
15-70598
15 days
39375 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/SlashActions` - streamlines `prod_slash_sum_weights` by letting `simp` handle the empty case and removing the redundant singleton split in the inductive step Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 1/5 Mathlib/NumberTheory/ModularForms/SlashActions.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
15-68542
15 days ago
15-70632
15 days ago
15-70595
15 days
39376 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/RamificationInertia/Basic` - shortens `quotientToQuotientRangePowQuotSucc_surjective` by switching the ideal-factor argument to `irreducible_pow_sup` and `count_normalizedFactors_eq` after isolating the span hypotheses Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 4/10 Mathlib/NumberTheory/RamificationInertia/Basic.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
15-68370
15 days ago
15-70630
15 days ago
15-70593
15 days
39392 jayscambler
author:jayscambler
feat(Cryptography): one-time pad and Shannon perfect secrecy Adds `Mathlib/Cryptography/OTP.lean`. One-time pad over an arbitrary finite abelian group `G`: - `OTP.encrypt k m := m + k`, `OTP.decrypt k c := c - k`. - `OTP.correct`: `decrypt k (encrypt k m) = m`, by `abel`. - `OTP.perfect_secrecy`: for any `m₀, m₁`, the distributions of `encrypt k m₀` and `encrypt k m₁` over uniform `k` are equal; both reduce to `PMF.uniformOfFintype G`. Proof goes via `Equiv.addLeft`. Independent of the Schnorr PR (#39279); no shared definitions. Unlike everything else likely to live under `Mathlib/Cryptography/`, the security guarantee here is information-theoretic, not computational. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 76/0 Mathlib.lean,Mathlib/Cryptography/OTP.lean 2 3 ['MrBrain295', 'github-actions'] nobody none
15-32360
15 days ago
15-54834
15 days ago
15-54797
15 days
37745 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/AugmentationIdeal): base change for augmentation ideals Base change for augmentation ideals Co-authored with: @mariainesdff --- - [x] depends on: #37744 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra large-import
label:t-algebra$
441/1 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Projection.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/LinearAlgebra/TensorProduct/Submodule.lean,Mathlib/Order/Disjoint.lean,Mathlib/RingTheory/Ideal/IsAugmentation.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 12 18 ['AntoineChambert-Loir', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues'] nobody none
15-1699
15 days ago
15-1770
15 days ago
15-62109
15 days
39438 SnirBroshi
author:SnirBroshi
chore(Order/WellFounded): use `to_dual` Creates `argmax`/`argmaxOn` duals to the existing `argmin`/`argminOn`, and `WellFoundedLT.min`/`WellFoundedGT.max` in order to properly dualize `WellFounded.min_le`. Some theorems about `WellFounded{LT/GT}` which didn't have a dual before have to be renamed to make room, e.g. `StrictMono.range_inj` is renamed to `StrictMono.range_inj_of_wellFoundedLT`. --- This is blocking dualizing things in `ConditionallyCompleteLattice/Basic.lean`. `WellFounded.min_le` has ~30 usages in ~10 files, so deprecating it should probably happen in a separate PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 80/34 Mathlib/Data/Finset/Sort.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/WellFounded.lean,Mathlib/SetTheory/Ordinal/Enum.lean 4 5 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody 1
14-34766
14 days ago
14-34838
14 days ago
14-43397
14 days
39106 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Matrix/Reindex): `AddEquiv` and `RingEquiv` We had `Matrix.reindex` bundled as a `LinearEquiv` and an `AlgEquiv`, and this bundles it as an `AddEquiv` and a `RingEquiv`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
158/43 Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean 4 10 ['SnirBroshi', 'eric-wieser', 'github-actions', 'themathqueen'] nobody none
14-34325
14 days ago
17-37012
17 days ago
17-59177
17 days
37707 MavenRain
author:MavenRain
feat(Combinatorics/SimpleGraph): add IsMaximalClique/IsMaximalIndepSet, refactor IsMaximum* to MaximalFor Addresses #34962 new-contributor t-combinatorics 63/31 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 6 ['MavenRain', 'SnirBroshi', 'eric-wieser', 'github-actions'] nobody none
14-16083
14 days ago
14-16155
14 days ago
14-17758
14 days
39368 gasparattila
author:gasparattila
feat: homogenization of an affine space --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
401/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Homogenization.lean,docs/references.bib 3 15 ['eric-wieser', 'gasparattila', 'github-actions'] nobody none
13-79365
13 days ago
15-70871
15 days ago
15-72036
15 days
39472 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/Homogeneous): add homogeneous lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 74/2 Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 3 1 ['github-actions'] nobody none
13-58414
13 days ago
13-58484
13 days ago
13-58641
13 days
37720 cjrl
author:cjrl
feat(Data/Fintype/Card): existsUnique_notMem_image_of_injective_of_card_succ This pull requests adds a small theorem `existsUnique_notMem_image_of_injective_of_card_succ` to `Mathlib/Data/Fintype/Card` that says given an injective map f : α → β such that β has cardinality one more than α, there exists a unique element of β not in the image of f. This can be viewed as going in the opposite direction of `card_lt_of_injective_of_notMem`. This little fact is needed for our Latin Square PR #36698. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor t-set-theory 19/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/Card.lean 2 10 ['IvanRenison', 'cjrl', 'dagurtomas', 'ghseeli', 'github-actions'] nobody none
13-33063
13 days ago
13-33063
13 days ago
51-3882
51 days
39443 justus-springer
author:justus-springer
feat(Data/Set/Image): `nonempty_preimage_iff` Basically a converse to `nonempty_of_nonempty_preimage`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 4/0 Mathlib/Data/Set/Image.lean 1 4 ['Paul-Lez', 'github-actions', 'justus-springer', 'urkud'] nobody none
13-15164
13 days ago
14-46341
14 days ago
14-46304
14 days
39231 mbkybky
author:mbkybky
chore(RingTheory/PicardGroup): drop `StrongRankCondition` assumptions in two lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 3/6 Mathlib/RingTheory/PicardGroup.lean 1 1 ['github-actions'] nobody none
13-742
13 days ago
18-20108
18 days ago
18-29461
18 days
39504 WenrongZou
author:WenrongZou
feat(MvPowerSeries/Ideal): kernel of map equals map `C` of kernel In this PR, we prove that given a ring homomorphism f, suppose that kernel of f is finitely generated, then kernel of map equals map `C` of kernel. (See `ker_map_of_FG`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 87/0 Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/Ideal.lean 2 4 ['CoolRmal', 'WenrongZou', 'github-actions'] nobody none
12-77945
12 days ago
13-1862
13 days ago
13-2125
13 days
39514 SnirBroshi
author:SnirBroshi
chore(RingTheory/Polynomial/Basic): golf `degreeLTEquiv` Also extracts the `monomial i a ∈ degreeLT R n` proof to a lemma. --- The semicolons might be a bit excessive, let me know if so. Also the `right_inv` proof is slower than the previous version, so maybe it should be reverted, but the rest is fine. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 11/32 Mathlib/RingTheory/Polynomial/Basic.lean 1 1 ['github-actions'] nobody none
12-57743
12 days ago
12-58029
12 days ago
12-58400
12 days
38916 yuanyi-350
author:yuanyi-350
chore(CategoryTheory/CatCommSq): remove an erw - rewrites `hInv_hInv` by using `conv_rhs` with `iso_hom_naturality` - removes the `rw`/`erw` pair around `Functor.comp_map` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 3/2 Mathlib/CategoryTheory/CatCommSq.lean 1 2 ['github-actions', 'loefflerd'] nobody none
12-56497
12 days ago
26-1621
26 days ago
26-1584
26 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 32/5 Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 11 ['IvanRenison', 'YaelDillies', 'github-actions'] nobody 1
12-4722
12 days ago
13-59311
13 days ago
55-9668
55 days
39269 godofecht
author:godofecht
feat(Algebra/Spectrum): add the second resolvent identity Adds `spectrum.resolvent_sub_resolvent`: For `a b : A` in an `R`-algebra and `r` in the resolvent set of both, `resolvent a r - resolvent b r = resolvent a r * (a - b) * resolvent b r`. Companion to `spectrum.resolvent_eq`. t-algebra new-contributor
label:t-algebra$
15/0 Mathlib/Algebra/Algebra/Spectrum/Basic.lean 1 3 ['github-actions', 'wwylele'] nobody none
11-68280
11 days ago
17-56445
17 days ago
17-56408
17 days
39366 akiezun
author:akiezun
feat(Data/Nat): add prime divisibility for ascFactorial and choose Adds two prime-divisibility lemmas for natural-number factorial/binomial APIs. The first characterizes when a prime divides an ascending factorial: `Nat.Prime.dvd_ascFactorial_iff`. The second applies this to binomial coefficients: `Nat.Prime.dvd_choose_add_sub_one_iff`, using `Nat.ascFactorial_eq_factorial_mul_choose'` and cancellation of the `n!` factor when `n < p`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor large-import 46/0 Mathlib.lean,Mathlib/Data/Nat/Choose/Consecutive.lean,Mathlib/Data/Nat/Factorial/BigOperators.lean 3 9 ['SnirBroshi', 'akiezun', 'github-actions', 'wwylele'] nobody none
11-60827
11 days ago
11-62868
11 days ago
15-73210
15 days
39549 Hagb
author:Hagb
feat(Order/RelIso/Basic): `swap`s and `compl`s are `Equiv`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 13/8 Mathlib/Order/RelIso/Basic.lean 1 3 ['Hagb', 'github-actions', 'leanprover-radar'] nobody none
11-53163
11 days ago
11-55604
11 days ago
11-55567
11 days
39555 b-mehta
author:b-mehta
feat(Data/Finset/Image): relate images with nontriviality --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 20/0 Mathlib/Data/Finset/Image.lean 1 1 ['github-actions'] nobody none
11-46703
11 days ago
11-46781
11 days ago
11-46744
11 days
39098 BoltonBailey
author:BoltonBailey
chore(Data/Vector): add `grind` to cons lemmas This PR affects `List.Vector.head_cons` and `List.Vector.tail_cons`. It moves the simp attribute assignment of these lemmas to the lemma declarations and also applies the `grind =` attribute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 2/2 Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Defs.lean 2 4 ['BoltonBailey', 'github-actions', 'leanprover-radar'] nobody none
11-39825
11 days ago
11-39899
11 days ago
20-53492
20 days
29744 espottesmith
author:espottesmith
feat(Combinatorics): define directed hypergraphs This PR defines directed hypergraphs: ``` @[ext] structure DiHypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The edge set -/ edgeSet : Set ((Set α) × (Set α)) /-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/ edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet ``` Additional definitions: - tail/head stars and negative/positive stars - some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty) - Vertex and (hyper)edge adjacency - isolated vertices - empty and nonempty dihypergraphs The design employed here is based off of #28613, but this PR does not depend on that one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 398/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 4 ['b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody none
11-37690
11 days ago
57-7075
57 days ago
114-76905
114 days
33928 jsm28
author:jsm28
feat(Combinatorics/Tiling/TileSet): indexed families of tiles Define the type `TileSet` for indexed families of tiles (in a discrete context), and some associated definitions (including `symmetryGroup`) and API lemmas. `TileSet` can be used for tilings of the whole space; for tilings of part of the space; for patches of tiles (extracted from a tiling by considering tiles meeting some set of points, or considered on their own without extracting from a tiling); for multiple tilings (covering the space more than once). In particular, the fact that people study multiple tilings provides a clear justification for using indexed families rather than sets of tiles, and basic definitions and API lemmas generally work for all these different uses of `TileSet` (sometimes with weak constraints such as tiles being finite, nonempty and only having finitely many tiles meeting any point of the space). Definitions for saying e.g. "this `TileSet` is a tiling of the whole space" are to be included in subsequent files in subsequent PRs. From AperiodicMonotilesLean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 460/0 Mathlib.lean,Mathlib/Combinatorics/Tiling/TileSet.lean 2 23 ['Parcly-Taxel', 'b-mehta', 'eric-wieser', 'github-actions', 'jsm28', 'vihdzp'] nobody 1
11-37689
11 days ago
136-54797
136 days ago
136-54760
136 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'] nobody none
11-26102
11 days ago
11-26141
11 days ago
43-12233
43 days
39558 b-mehta
author:b-mehta
feat(Data/Finset/Prod): count the number of ordered pairs in a set These proofs were written a while ago, so they may be golfable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 21/0 Mathlib/Data/Finset/Prod.lean 1 2 ['github-actions', 'plp127'] nobody none
11-16821
11 days ago
11-44176
11 days ago
11-44139
11 days
38906 lua-vr
author:lua-vr
feat(ConditionallyCompleteLattice/Indexed): add binary versions of lemmas Add binary versions of some of the lemmas. Those are useful when the domain is indexed over the members of a set. From the Carleson project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order carleson 21/5 Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 1 19 ['JovanGerb', 'SnirBroshi', 'github-actions', 'grunweg', 'lua-vr', 'mathlib-merge-conflicts'] nobody 1
10-75747
10 days ago
10-75812
10 days ago
20-49688
20 days
39567 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Option): option type is finite iff type is finite Option type is finite if and only if the type is finite. This is an intermediate result to proving that if the `GroupWithZero` is (in)finite then the `Units` are (in)finite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean 2 11 ['AlexBrodbelt', 'github-actions', 'plp127', 'themathqueen'] nobody none
10-75362
10 days ago
11-5013
11 days ago
11-5590
11 days
39585 chrisflav
author:chrisflav
chore(RingTheory): add `rfl` lemmas for `Ideal.quotientInfRingEquivPiQuotient` From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 11/0 Mathlib/RingTheory/Ideal/Quotient/Operations.lean 1 1 ['github-actions'] nobody none
10-66385
10 days ago
10-66468
10 days ago
10-66431
10 days
39494 Hagb
author:Hagb
chore(Data/Finsupp/MonomialOrder): rename fields of `MonomialOrder` to match naming conventions Moves: - MonomialOrder.acm -> MonomialOrder.addCommMonoid_syn - MonomialOrder.lo -> MonomialOrder.linearOrder_syn - MonomialOrder.iocam -> MonomialOrder.isOrderedCancelAddMonoid_syn - MonomialOrder.wf -> MonomialOrder.wellFoundedLT_syn --- See https://github.com/leanprover-community/mathlib4/pull/32829#discussion_r2716534558. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 15/6 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean 2 1 ['github-actions'] nobody none
10-63457
10 days ago
13-28747
13 days ago
13-29237
13 days
39591 plp127
author:plp127
feat: `Equiv.symm_trans` Add theorem `Equiv.symm_trans`, which says `(f.trans g).symm = g.symm.trans f.symm`. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.60Equiv.2Esymm_trans.60/near/596266434). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-logic 2/0 Mathlib/Logic/Equiv/Defs.lean 1 1 ['github-actions'] nobody none
10-55709
10 days ago
10-55804
10 days ago
10-55767
10 days
38896 peabrainiac
author:peabrainiac
feat(Algebra): multiplicative torsors Introduce a class `Torsor` for torsors of multiplicative groups, as a multiplicative counterpart to the existing `AddTorsor` for torsors of additive groups. --- Adopted / migrated from #8608. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
385/286 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Tactic/Translate/ToAdditive.lean 6 2 ['github-actions', 'grunweg'] nobody none
10-31132
10 days ago
10-31206
10 days ago
16-34856
16 days
39547 Hagb
author:Hagb
chore(Order/Preorder/Finite): use `@[to_dual]` on lemmas about `{Min,Max}imal{For,}` Proofs of other theorems (e.g. in #39427) with dual theorems dependent on these lemmas would benefit from their duality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 11/25 Mathlib/Order/Preorder/Finite.lean 1 4 ['Hagb', 'github-actions', 'vihdzp'] nobody 1
10-29367
10 days ago
11-56025
11 days ago
11-55988
11 days
39611 mbkybky
author:mbkybky
feat(RingTheory): let `B` be a faithfully flat `A`-algebra, then `A` is a local ring if `B` is Let `B` be a faithfully flat `A`-algebra, then `A` is a local ring if `B` is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 13/0 Mathlib/RingTheory/Flat/FaithfullyFlat/Algebra.lean 1 1 ['github-actions'] nobody none
10-796
10 days ago
10-879
10 days ago
10-842
10 days
39605 Qinghev
author:Qinghev
Add docstrings for reversed range telescoping lemmas This PR adds docstrings for two existing Finset telescoping lemmas and their additive versions generated by `to_additive`: * `Finset.prod_range_div'` / `Finset.sum_range_sub'` * `Finset.eq_prod_range_div` / `Finset.eq_sum_range_sub` The goal is a small documentation-only contribution that makes the reversed range telescoping API easier to discover from search and hover docs. Local checks: * `git diff --check -- Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean` * Attempted `lake env lean Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean`, but local validation is currently blocked by downloading the `leanprover/lean4:v4.30.0-rc2` toolchain from GitHub timing out/connection-resetting on this machine. Opened as draft until the toolchain/network check can be completed or CI confirms the documentation-only change. t-algebra new-contributor
label:t-algebra$
8/2 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 2 ['github-actions'] nobody none
9-85644
9 days ago
9-85644
9 days ago
9-85607
9 days
39225 junodeveloper
author:junodeveloper
feat(SimpleGraph): add no-bridge theorem for even degree graphs This PR proves that a finite graph in which every vertex has even degree has no bridge. It adds: * `SimpleGraph.not_isBridge_of_even_degree` The proof argues by contradiction: if an edge is a bridge, delete it and look at the connected component containing one endpoint. In that component, the endpoint has odd degree, while any other odd-degree vertex would contradict the bridge assumption and the even-degree hypothesis. This contradicts the handshaking lemma via the existing odd-degree API. Local checks: ```bash lake build Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity lake exe lint-style Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity lake exe runLinter Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity ``` ## AI usage disclosure I used OpenClaw/Codex while developing this PR. Much of the Lean proof of `not_isBridge_of_even_degree` was drafted with AI assistance, including API search and proof refactoring. I reviewed the generated code, made edits, ran the local checks above, and understand and take responsibility for the final statement and proof. t-combinatorics new-contributor large-import LLM-generated 122/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean 1 12 ['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'junodeveloper', 'linesthatinterlace'] nobody none
9-76909
9 days ago
18-46484
18 days ago
18-46447
18 days
39607 TentativeConvert
author:TentativeConvert
feat(Algebra/DirectSum): equivalence between direct sum indexed by ι₁ and double sum indexed by ι₂ and fibres of f : ι₁ → ι₂ 1. Add variant `equivCongrLeft'` of `equivCongrLeft`, and corresponding `…_apply` lemma. 2. Add `…_of lemmas` for both `equivCongrLeft` and `equivCongrLeft'`. 3. Add `…of lemma` for `sigmaCurry`, i.e. `sigmaCurry_of`. 4. Add `sigmaFiberAddEquiv`: the equivalence between a direct sum indexed by a type `ι₁` and the double sum indexed by a type `ι₂` and the fibres of a map `f : ι₁ → ι₂`. Add two `…_apply` lemmas and an `…_of` lemma. --- This is supposed to be a first step towards merging the draft PR #39356. re 1: Mathematically, I don't see why one version should be preferred over the other, but I found the existing `equivCongrLeft` more difficult to work with when the equivalence `h : ι ≃ κ` is naturally given in the opposite direction. (I could not avoid explicit type casts through the equality `h.symm.symm = h` when defining `sigmaFiberAddEquiv` in terms of `equivCongrLeft`.) Very unsure about the name of `equivCongrLeft'`. (I see that the name `equivCongrLeft` was chosen in analogy with `Equiv.piCongrLeft`. `Equiv.piCongrRight` looks very different, so presumably `equivCongrLeft'` should *not* be called `equivCongrRight`.) re 4: Very unsure about the naming of the two different `…_apply` lemmas; called them `…_apply` and `…_apply'` for now. The second (`…_apply'`) cannot be a `simp` lemma as it would prevent the first (`…_apply`) from firing. I've used Claude Opus for understanding error messages and git interaction, but everything is hand coded. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
66/1 Mathlib/Algebra/DirectSum/Basic.lean 1 3 ['github-actions'] nobody none
9-76179
9 days ago
10-2332
10 days ago
10-3925
10 days
39624 justus-springer
author:justus-springer
feat(Algebra/MvPolynomial/PDeriv): a coefficient formula for `pderiv` This formula is useful for defining partial derivatives of multivariate power series, see PR #39626. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
15/0 Mathlib/Algebra/MvPolynomial/PDeriv.lean 1 1 ['github-actions'] nobody none
9-66356
9 days ago
9-66950
9 days ago
9-66913
9 days
39625 justus-springer
author:justus-springer
feat(RingTheory/MvPowerSeries/Trunc): generalize truncation lemmas Generalize `coeff_trunc_mul_trunc_eq_coeff_mul` (and its analogs for `truncFinset` and `trunc'`) to allow for different truncation levels for the two arguments. This matches the API for univariate power series, where we already have `PowerSeries.coeff_mul_eq_coeff_trunc_mul_trunc₂`. This is useful for defining partial derivatives of multivariate power series, see PR #39626. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 39/7 Mathlib/RingTheory/MvPowerSeries/Trunc.lean 1 1 ['github-actions'] nobody none
9-66338
9 days ago
9-66733
9 days ago
9-66696
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
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 10 ['ADedecker', 'b-mehta', 'github-actions', 'j-loreaux', 'themathqueen'] nobody 1
9-49709
9 days ago
10-4849
10 days ago
12-63067
12 days
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 723/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 4 200 ['Rida-Hamadani', 'github-actions', 'grunweg', 'idontgetoutmuch'] nobody none
9-37688
9 days ago
40-77239
40 days ago
85-84185
85 days
39635 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Eigenspace/Matrix): a scalar is in the spectrum iff it's an eigenvalue --- [#Is there code for X? > Matrix eigenvalues: spectrum and mulVec](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Matrix.20eigenvalues.3A.20spectrum.20and.20mulVec/with/596538140) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
18/0 Mathlib/LinearAlgebra/Eigenspace/Matrix.lean 1 1 ['github-actions'] nobody none
9-36142
9 days ago
9-36223
9 days ago
9-36186
9 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'] nobody 1
9-32654
9 days ago
11-17483
11 days ago
55-37185
55 days
38934 YaelDillies
author:YaelDillies
feat(Geometry): convex hull in a `ConvexSpace` --- - [x] depends on: #38905 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 119/0 Mathlib.lean,Mathlib/Geometry/Convex/Hull.lean 2 11 ['YaelDillies', 'github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody none
9-2067
9 days ago
9-2498
9 days ago
9-3174
9 days
38531 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): `Walk.map` preserves more properties Adds some missing theorems about how `Walk.map` behaves with `IsTrail`/`IsPath`/`IsCircuit`/`IsCycle`. Summary of what we have now, with the 8 new theorems and 2 renames marked: ``` IsTrail.of_map : (p.map f).IsTrail → p.IsTrail -- new map_isTrail_iff_of_injective : f.Injective → (p.map f).IsTrail ↔ p.IsTrail IsTrail.map : f.Injective → p.IsTrail → (p.map f).IsTrail -- renamed from map_isTrail_of_injective IsPath.of_map : (p.map f).IsPath → p.IsPath map_isPath_iff_of_injective : f.Injective → (p.map f).IsPath ↔ p.IsPath IsPath.map : f.Injective f → p.IsPath → (p.map f).IsPath -- renamed from map_isPath_of_injective IsCircuit.of_map : (p.map f).IsCircuit → p.IsCircuit -- new map_isCircuit_iff_of_injective : f.Injective → (p.map f).IsCircuit ↔ p.IsCircuit -- new IsCircuit.map : f.Injective → p.IsCircuit → (p.map f).IsCircuit -- new IsCycle.of_map : (p.map f).IsCycle → p.IsCycle -- new map_isCycle_iff_of_injective : f.Injective → (p.map f).IsCycle ↔ p.IsCycle IsCycle.map : f.Injective → p.IsCycle → (p.map f).IsCycle mapLe_isTrail : G ≤ G' → (p.mapLe h).IsTrail ↔ p.IsTrail IsTrail.of_mapLe : G ≤ G' → (p.mapLe h).IsTrail → p.IsTrail IsTrail.mapLe : G ≤ G' → p.IsTrail → (p.mapLe h).IsTrail mapLe_isPath : G ≤ G' → (p.mapLe h).IsPath ↔ p.IsPath IsPath.of_mapLe : G ≤ G' → (p.mapLe h).IsPath → p.IsPath IsPath.mapLe : G ≤ G' → p.IsPath → (p.mapLe h).IsPath mapLe_isCircuit : G ≤ G' → (p.mapLe h).IsCircuit ↔ p.IsCircuit -- new IsCircuit.of_mapLe : G ≤ G' → (p.mapLe h).IsCircuit → p.IsCircuit -- new IsCircuit.mapLe : G ≤ G' → p.IsCircuit → (p.mapLe h).IsCircuit -- new mapLe_isCycle : G ≤ G' → (p.mapLe h).IsCycle ↔ p.IsCycle IsCycle.of_mapLe : G ≤ G' → (p.mapLe h).IsCycle → p.IsCycle IsCycle.mapLe : G ≤ G' → p.IsCycle → (p.mapLe h).IsCycle ``` --- Also golfs `map_isPath_of_injective`/`IsPath.of_map`/`map_isTrail_iff_of_injective`, they don't need induction. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 47/30 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 1 ['github-actions'] nobody none
8-82375
8 days ago
34-52989
34 days ago
34-52952
34 days
39627 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/LapMatrix): 0 is always an eigenvalue and the determinant is always zero, plus a few other small lemmas. --- - [x] depends on: #39642 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 71/15 Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody none
8-80490
8 days ago
8-84960
8 days ago
9-46233
9 days
39657 mcdoll
author:mcdoll
feat(Algebra): add abstract `prod_apply` and `FunLike.coe_prod` Follow-up of #37779, where abstract `IsApply` classes were introduced. Now, we can prove a generic `sum_apply` lemma and in following PRs this will replace specific ones in function spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
25/5 Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Data/Matrix/PEquiv.lean,Mathlib/LinearAlgebra/Matrix/Polynomial.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean 5 2 ['github-actions', 'mcdoll'] nobody none
8-72710
8 days ago
8-73314
8 days ago
8-73277
8 days
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 199/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib 3 37 ['Shreyas4991', 'YaelDillies', 'Zetetic-Dhruv', 'github-actions'] nobody 1
8-68075
8 days ago
20-50308
20 days ago
37-10920
37 days
39223 BryceT233
author:BryceT233
feat(RingTheory/Extension): surjectivity and kernel of `Cotangent.map` This PR adds `Cotangent.map_surjective_of_comap_eq` and `Cotangent.map_ker_of_surjective`, which are adaptations of the existing lemmas `Ideal.mapCotangent_surjective_of_comap_eq` and `Ideal.mapCotangent_ker_of_surjective` to the cotangent space of extensions. Because `Algebra.Extension.Cotangent` uses a type synonym to define the cotangent space of an extension, the results for `Ideal.mapCotangent` could not be used directly and needed to be restated in terms of `Algebra.Extension.Cotangent.map`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 32/0 Mathlib/RingTheory/Extension/Basic.lean 1 1 ['github-actions'] nobody none
8-47259
8 days ago
18-48681
18 days ago
18-48644
18 days
36667 NoneMore
author:NoneMore
feat(ModelTheory): add `exClosure` definition for first-order formulas Prepare for moving realizations between elementarily equivalent structures. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 37/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 2 ['github-actions'] nobody none
8-37687
8 days ago
76-21908
76 days ago
76-21871
76 days
39437 ooovi
author:ooovi
feat(Geometry/Convex/ConvexSpace): show that an `AffineMap` `IsAffineMap` Show that `Convexity.IsAffineMap` generalises `AffineMap`s between affine spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 34/3 Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean 2 3 ['github-actions', 'mathlib-merge-conflicts', 'ooovi'] nobody none
8-15955
8 days ago
8-16028
8 days ago
13-25482
13 days
39575 YaelDillies
author:YaelDillies
chore(Data/Finsupp): make `mapDomain_congr` congr This makes simp stronger. It particular, it breaks some proofs that relied on simp being weak. From MeanFourier --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 29/36 Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/NumberTheory/NumberField/EquivReindex.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Intertwining.lean 10 1 ['github-actions'] nobody none
8-10572
8 days ago
8-10649
8 days ago
8-20264
8 days
39687 TentativeConvert
author:TentativeConvert
feat(Algebra/Group/Submonoid): type class to indicate that supremum in a SubmonoidClass agrees with supremum of submonoids Add a type class `SubmonoidClass.IsConcreteSSup` to indicate that the canonical map `.ofClass` from a class `S` of submonoids of `M` to `Submonoid M` preserves suprema. --- This PR implements the minimal type class assumption needed to make „pushfoward of gradings along maps of indexing sets“ – see draft PR #39356 – work in some `SetLike` generality. Given `{S M : Type*} [SetLike S M] [Monoid M] [SubmonoidClass S M]`, we have canonical maps ``` S → Submonoid M → Set M ``` The first is `Submonoid.ofClass`, the second and the composition are `coe` maps coming from the `SetLike` structures. Depending on `S`, these maps may or may not satisfy various properties with respect the lattice structures on `Submonoid M` and `Set M`. Mathlib so far includes the type class `[IsConcreteLE S M]`, which asserts that the composition `S → Set M` is order-preserving and order-reflecting. The type class defined here asserts that the first map, `S → Submonoid M`, preserves suprema. In examples such as `S = Subgroup M`, `S = Submodule R M`, much more is true – in these cases, `S` is a complete sublattice of `Submonoid M`. But there are also examples where only the weaker property defined here holds, e.g. `S = OpenSubgroup M` for a topological group `M`. Note on `outParam`: I did *not* write `(M : outParam Type*)` in the assumptions of `SubmonoidClass.IsConcreteSSup` in accordance with the [DocString of `Setlike`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/SetLike/Basic.html#SetLike). However, we do have `(B : outParam Type*)` in the definition of `IsConcreteLE`, so perhaps I'm misinterpreting the DocString. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
56/0 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/SSup.lean 2 2 ['github-actions'] nobody none
8-6081
8 days ago
8-6150
8 days ago
8-6713
8 days
39646 YaelDillies
author:YaelDillies
feat(Algebra/Order): maximally varying version of `prod_le_prod_of_subset_of_one_le` We need this for `gcongr`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
49/26 Mathlib/Algebra/Module/ZLattice/Summable.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Analysis/Complex/Exponential.lean 4 7 ['YaelDillies', 'b-mehta', 'github-actions'] nobody none
8-4391
8 days ago
9-5159
9 days ago
9-8578
9 days
36275 smmercuri
author:smmercuri
feat: norm for the finite adele ring of a number field --- - [x] depends on: #35820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 137/1 Mathlib.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody none
8-2377
8 days ago
8-2450
8 days ago
8-3673
8 days
39621 chrisflav
author:chrisflav
refactor(Topology): use `WithTopology` to define `WithConstructibleTopology` We replace the type synonym `WithConstructibleTopology` by `WithTopology _ (constructibleTopology X)`. This breaks the def-eq `X = WithConstructibleTopology X`, which was luckily not abused much yet. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 38/5 Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Spectral/ConstructibleTopology.lean,Mathlib/Topology/WithTopology.lean 3 2 ['github-actions', 'plp127'] nobody none
7-66330
7 days ago
9-68521
9 days ago
9-68484
9 days
38234 vihdzp
author:vihdzp
chore: make `IsSuccLimit` a structure This lets us name the fields. Note that the `mk_iff` lemma overwrites a recently deprecated theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 40/33 Mathlib/Order/SuccPred/InitialSeg.lean,Mathlib/Order/SuccPred/Limit.lean 2 6 ['YaelDillies', 'github-actions', 'plp127'] nobody 1
7-54783
7 days ago
21-12842
21 days ago
37-1092
37 days
39697 sorrachai
author:sorrachai
feat(Data/Tree/Basic): add Membership instance, new notation, rename Tree Summary: 1. [Rename]([#CSLib > Splay tree PR: BinaryTree vs Tree @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR.3A.20BinaryTree.20vs.20Tree/near/596482765)) from Tree to BinaryTree, which propagates the changes to other files that use it. 2. Add membership instance, prove decidability of membership. 3. Add toListInOrder, toListPreOrder, toListPostOrder Suggestion based on the discussion in the cslib [thread](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391)[#CSLib > Splay tree PR @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391). --- * depends on: #39707 new-contributor 187/75 Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Tree/Get.lean,Mathlib/Data/Tree/Traversable.lean,Mathlib/Tactic/CancelDenoms/Core.lean,docs/overview.yaml 7 4 ['eric-wieser', 'github-actions', 'sorrachai'] nobody none
7-45813
7 days ago
7-77373
7 days ago
7-79391
7 days
35069 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): simple polygons and boundary map This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution. - [x] depends on: #34598 --- new-contributor t-euclidean-geometry LLM-generated 360/0 Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean 4 30 ['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] nobody none
7-37690
7 days ago
93-63545
93 days ago
96-11394
96 days
39738 NoahW314
author:NoahW314
feat(Algebra/Algebra/Bilinear): generalize to `NonUnitalNonAssocCommSemiring` Complete a TODO which can now be done since #28604 is merged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
2/4 Mathlib/Algebra/Algebra/Bilinear.lean 1 1 ['github-actions'] nobody none
7-28850
7 days ago
7-28925
7 days ago
7-28888
7 days
39518 abeldonate
author:abeldonate
feat(RingTheory/LocalProperties/Projective): Projective Module theorem Theorem: R Noetherian, M finitely generated R-Mod. Then: M projective iff M_m free for all m maximal t-ring-theory new-contributor large-import 21/0 Mathlib/RingTheory/LocalProperties/Projective.lean 1 9 ['abeldonate', 'github-actions', 'mbkybky', 'vlad902'] nobody none
7-12205
7 days ago
10-76224
10 days ago
11-32042
11 days
39530 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): group actions on simple graphs This adds the first connection between Mathlib's MulAction and SimpleGraph libraries. The GraphAction class asserts that a group action on the vertex type preserves the adjacency relation, and builds on it to define vertex-transitivity and arc-transitivity for graphs. The GraphAction typeclass gives adj_smul_iff (the biconditional for group actions) and toIso (each group element induces a graph automorphism). The IsVertexTransitive class combines GraphAction with IsPretransitive, and IsArcTransitive requires transitivity on ordered adjacent pairs (arcs). The main theorem is the standard characterization: a graph is arc-transitive if and only if it is vertex-transitive and locally transitive (the stabilizer of each vertex acts transitively on its neighbors). The forward direction is proved directly by composing a vertex-transporting element with a neighbor-transporting stabilizer element. The reverse direction shows that an arc-transitive graph with no isolated vertices is vertex-transitive. These definitions are the algebraic graph theory prerequisites for formalizing coset graphs (Sabidussi's construction) and the characterization of symmetric graphs via double cosets and involutions (Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 130/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean 2 7 ['RaggedR', 'b-mehta', 'github-actions', 'mathlib-bors'] nobody none
7-1573
7 days ago
7-1573
7 days ago
11-56386
11 days
38194 ryanncode
author:ryanncode
feat(LinearAlgebra/BilinearForm): add indefinite metrics Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form. Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass. Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
47/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean 2 5 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'ryanncode'] nobody none
6-80173
6 days ago
6-81918
6 days ago
22-51650
22 days
39412 mbkybky
author:mbkybky
feat(RingTheory/Flat): a finite flat `R`-module `M` is locally free if `rankAtStalk M` is constant Let `M` be a finite flat `R`-module, `p` be a prime ideal of `R`. We show that if `rankAtStalk M` is constant, then there exists `a ∉ p` such that the `M` is free after localization away from `a`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 136/2 Mathlib.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/RingTheory/Flat/LocallyFree.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/Support.lean 8 4 ['github-actions', 'robin-carlier'] nobody none
6-77946
6 days ago
11-68338
11 days ago
14-73285
14 days
39212 emlis42
author:emlis42
feat(Algebra/ContinuedFractions): add `partNums!` and `partDens!` This PR adds `partNums!` and `partDens!`, which provide infinite stream representations for the sequences of partial numerators and denominators of a generalized continued fraction. t-algebra new-contributor
label:t-algebra$
8/0 Mathlib/Algebra/ContinuedFractions/Basic.lean 1 4 ['emlis42', 'github-actions', 'grunweg'] nobody none
6-64713
6 days ago
18-66473
18 days ago
18-66436
18 days
39696 jsm28
author:jsm28
refactor(LinearAlgebra/Orientation,LinearAlgebra/AffineSpace/FiniteDimensional): instances for arbitrary orientations Based on suggestions by @kim-em on Zulip https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PRs.20towards.20IMO.20geometry.202024.20P4/near/596946072 add convenience scoped instances for choosing an arbitrary orientation of a module, and for the `finrank` of the span of the vertices of a simplex. Note: I don't understand why the latter scoped instance is only found automatically in one of the two places using it; in `Sphere/Power.lean` it's necessary to use `Affine.Simplex.fact_finrank_direction_affineSpan_eq` rather than relying on typeclass inference, but in `Angle/Sphere.lean` typeclass inference suffices. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-euclidean-geometry
label:t-algebra$
26/23 Archive/Imo/Imo2019Q2.lean,Mathlib/Geometry/Euclidean/Angle/Sphere.lean,Mathlib/Geometry/Euclidean/Sphere/Power.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/Orientation.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody none
6-58365
6 days ago
6-58398
6 days ago
7-77718
7 days
39576 plp127
author:plp127
chore(Topology): generalize `Topology.IsEmbedding.perfectlyNormalSpace` Generalize theorem `Topology.IsEmbedding.perfectlyNormalSpace` to inducing maps. Generalize some other theorem along the way. Rename `isGδ_induced` to `IsGδ.preimage`, to match `IsOpen.preimage` and `IsClosed.preimage`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 29/27 Mathlib/Topology/Baire/LocallyCompactRegular.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/Separation/GDelta.lean,Mathlib/Topology/Separation/PerfectlyNormal.lean,Mathlib/Topology/Separation/Regular.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody none
6-55640
6 days ago
6-55675
6 days ago
10-74009
10 days
37716 slavanaprienko
author:slavanaprienko
feat(LinearAlgebra/Matrix/Determinant): Desnanot-Jacobi identity This PR adds the Desnanot-Jacobi identity (also known as the Lewis Carroll identity or Dodgson condensation): for any (n+2)×(n+2) matrix M over a commutative ring, $$\det(M) \cdot \det(M_{1,n}^{1,n}) = \det(M_1^1) \cdot \det(M_n^n) - \det(M_1^n) \cdot \det(M_n^1)$$ The proof follows Bressoud's *Proofs and Confirmations* (Cambridge University Press, 1999): multiply M by an auxiliary matrix built from columns of the adjugate, then compare determinants. This yields the identity premultiplied by det(M). To cancel, we pass to a universal polynomial ring (an integral domain with nonzero determinant), then specialize back to arbitrary commutative rings. It seems there's some interest in adding this: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Determinantal.20identity.20and.20the.20Cauchy.20matrix.20determinant/with/582946873 --- t-algebra new-contributor
label:t-algebra$
217/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Determinant/DesnanotJacobi.lean 2 13 ['SnirBroshi', 'github-actions', 'grunweg', 'kim-em', 'slavanaprienko'] nobody none
6-45222
6 days ago
18-55179
18 days ago
20-6972
20 days
39372 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/EisensteinSeries/MDifferentiable` - rewrites `eisensteinSeriesSIF_mdifferentiable` to use `UpperHalfPlane.mdifferentiable_iff` directly and conclude from local uniform convergence of the Eisenstein series Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 1/6 Mathlib/NumberTheory/ModularForms/EisensteinSeries/MDifferentiable.lean 1 4 ['github-actions', 'mathlib-merge-conflicts', 'yuanyi-350'] nobody none
6-39046
6 days ago
6-39084
6 days ago
15-47252
15 days
39763 NoahW314
author:NoahW314
feat(Algebra/GroupWithZero/Divisibility): add `mul_dvd_left_iff_isUnit` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
9/0 Mathlib/Algebra/GroupWithZero/Divisibility.lean 1 1 ['github-actions'] nobody none
6-27389
6 days ago
6-27469
6 days ago
6-27432
6 days
39075 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/CommRingCat): colimit of local ring via local hom In this PR, we deal with filtered colimit of local ring via local homomorphisms, proving it is again local, with maximal ideal equal to the union of images of maximal ideals. Co-authored-by: Wang Jingting --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
209/0 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean 2 1 ['github-actions'] nobody none
6-13328
6 days ago
6-13395
6 days ago
21-82658
21 days
39765 vlad902
author:vlad902
doc(RingTheory): fix local ring doc comment The predicate for local rings was updated to the current definition on non-commutative semirings back in mathlib3, but the outdated comment stating that local rings are commutative rings with a unique maximal ideal has not been updated since. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 4/4 Mathlib/RingTheory/LocalRing/Defs.lean 1 1 ['github-actions'] nobody none
6-10580
6 days ago
6-10662
6 days ago
6-10625
6 days
37642 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph): tidy various files --- Concept inspired by @Ruben-VandeVelde :) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 73/62 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/IncMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean 9 9 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] nobody 1
5-79498
5 days ago
5-79533
5 days ago
53-80155
53 days
39783 SnirBroshi
author:SnirBroshi
feat(Order/Interval/Finset): `Set.ncard` lemmas for `LocallyFiniteOrder` Followup to #39414 which untagged `Fintype.card_I??` as `@[simp]`. Adds `Cardinal.mk`/`Set.encard`/`Set.ncard` lemmas for the 8 interval sets `Set.I??` (= 24 lemmas), that convert them to `Finset.card` over the corresponding `Finset.I??` from a `LocallyFiniteOrder` instance. --- `simp`? I think it's a bit strange since the `LocallyFiniteOrder` instance could have crazy definitions for the finset intervals which aren't "simpler", though the instances we currently have are simple. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 115/0 Mathlib.lean,Mathlib/Order/Interval/Finset/Card.lean 2 1 ['github-actions'] nobody none
5-68519
5 days ago
5-68587
5 days ago
5-68849
5 days
39545 Hagb
author:Hagb
feat(Order/OrderIsoNat): some lemmas about `((· < ·) : ℕ → ℕ → Prop) ↪r r` This PR contains several lemmas about relation embedding from `<` in `Nat`, well order, and (in)finiteness. - `RelEmbedding.infinite_iff_nonempty_relEmbedding_of_isWellOrder`: a type with a well order relation is infinite iff there is such a relation embedding. - `RelEmbedding.finite_iff_empty_relEmbedding_of_isWellOrder`: a finite variant of `infinite_iff_nonempty_relEmbedding_of_isWellOrder` - `IsWellOrder.finite_of_isWellOrder_of_isWellOrder_swap`: a type with a linear order relation well founded on both directions is finite. - `instFiniteOfWellFoundedLTOfWellFoundedGT`: an instance variant of `IsWellOrder.finite_of_isWellOrder_of_isWellOrder_swap` on `WellFounded{LT,GT}`. - `RelEmbedding.infinite_iff_nonempty_relEmbedding_lt_or_nonempty_relEmbedding_gt`: a type with a linear order relation is infinite iff there are both relation embedding between `<` in `Nat` and this relation, and between `>` in `Nat` and this relation. - `RelEmbedding.finite_iff_isEmpty_relEmbedding_lt_and_isEmpty_relEmbedding_gt`: a finite variant of `infinite_iff_nonempty_relEmbedding_lt_or_nonempty_relEmbedding_gt`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
Edit: remove the description on the original motivation since `WellQuasiOrdered` instead of theorems in this PR can be used for that goal. `RelEmbedding.finite_iff_empty_relEmbedding_of_isWellOrder` might be used for proof of ```lean example {α β γ} [LinearOrder α] [LinearOrder β] [WellFoundedLT α] [WellFoundedLT β] [LinearOrder γ] {f : α × β ≃ γ} (mono : Monotone f) : WellFoundedLT γ := sorry ``` The latter will be used for ```lean example {α β γ} [Finite α] [LinearOrder β] [WellFoundedLT β] [LinearOrder γ] {f : (α → β) ≃ γ} (mono : Monotone f) : WellFoundedLT γ := sorry ``` And the finial goal is the well-foundedness of monomial order when the index type `σ` is finite (under the definition in #39214).
t-order 58/0 Mathlib/Order/OrderIsoNat.lean 1 15 ['Hagb', 'SnirBroshi', 'github-actions', 'leanprover-radar', 'vihdzp'] nobody none
5-63434
5 days ago
10-63467
10 days ago
11-12470
11 days
37752 JovanGerb
author:JovanGerb
chore(Order/CompleteLattice/Lemmas): use `to_dual` Use `to_dual` for lemmas about `CompleteLattice`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 33/56 Mathlib/Order/CompleteLattice/Lemmas.lean,Mathlib/Tactic/Translate/ToDual.lean 2 6 ['JovanGerb', 'YaelDillies', 'github-actions', 'vihdzp'] nobody 2
5-63227
5 days ago
5-63294
5 days ago
52-59874
52 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 1
5-37691
5 days ago
26-37828
26 days ago
86-46533
86 days
39799 NoahW314
author:NoahW314
chore(RingTheory/Ideal/Operations): deprecate duplicate theorem `Ideal.span_mul_span'` `Ideal.span_mul_span'` is identical to `Ideal.span_mul_span`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) At one point, `Ideal.span_mul_span` and `Ideal.span_mul_span'` were distinct, but `Ideal.span_mul_span` was changed in #22151 to be identical to `Ideal.span_mul_span'`. t-ring-theory 6/7 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Operations.lean,scripts/nolints_prime_decls.txt 4 1 ['github-actions'] nobody none
5-35193
5 days ago
5-35462
5 days ago
5-35425
5 days
39634 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Matrix/Nondegenerate): more API and generalize to non-domains - Syntactically generalize the bilinear form identities to non-square matrices - Prove iff and transpose theorems for `SeparatingLeft`/`SeparatingRight`/`Nondegenerate` - Prove `M *ᵥ v = 0 → v = 0` and `v ᵥ* M = 0 → v = 0` given `Nondegenerate` (extracted from the existing `eq_zero_of_*_eq_zero`) - Generalize `M.det ≠ 0 → M.Nondegenerate` to `M.det ∈ R⁰ → M.Nondegenerate` (over any `CommRing`) - Add `M *ᵥ v = 0 → v = 0` and `v ᵥ* M = 0 → v = 0` theorems given `M.det ∈ R⁰` - Allow `NonUnitalNonAssocSemiring`s in the `def`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
130/44 Mathlib/Data/Matrix/Mul.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/ToLinearEquiv.lean 3 9 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody none
5-30425
5 days ago
5-30276
5 days ago
9-42456
9 days
39774 Hagb
author:Hagb
feat(Order/WellFounded): `WellFounded` on subtype iff the relation restricted on the subtype is `WellFounded` Equivalence between `WellFounded` on a subtype and `WellFounded` on the underlying type with the relation restricted on the subtype. --- (It was a lemma for #39781, which has been closed since there would be a better proof.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 13/0 Mathlib/Order/WellFounded.lean 1 3 ['Hagb', 'SnirBroshi', 'github-actions'] nobody none
5-21684
5 days ago
5-63356
5 days ago
5-63319
5 days
39214 Hagb
author:Hagb
refactor(Data/Finsupp/MonomialOrder): remove `.wf` (well foundedness) field from `MonomialOrder` Many properties still hold without the well-foundedness. Although Gröbner basis theory requires the monomial order to be well founded for the termination of the division algorithm (formalized in `MonomialOrder.div`), many properties that don't relay on the division or remainder still hold without the well-foundedness. Even the division algorithm can terminate in some cases where the monomial order isn't well founded. For example, if the divisors set is finite, then the algorithm can terminate w.r.t. `MonomialOrder.lex (σ := Nat)` even though it isn't well founded. Such cases cannot be directly stated if the formalization of monomial order requires well-foundedness. Deletions: - MonomialOrder.wf --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 21/13 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean 4 5 ['Hagb', 'github-actions', 'vihdzp'] nobody none
5-20271
5 days ago
18-64804
18 days ago
18-64767
18 days
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 none
5-9612
5 days ago
5-23032
5 days ago
5-22995
5 days
39623 justus-springer
author:justus-springer
feat(Algebra/MvPolynomial/Basic): `coeff_C_of_ne_zero` and `coeff_add_single_C` These lemmas are multivariate analogs to `Polynomial.coeff_C_of_ne_zero`, `Polynomial.coeff_C_succ` and `PowerSeries.coeff_C_of_ne_zero` and `PowerSeries.coeff_succ_C`. They are useful for defining partial derivatives for multivariate power series, see PR #39626. - [x] depends on: #39632 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 16/0 Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean 2 7 ['Hagb', 'github-actions', 'justus-springer', 'mathlib-dependent-issues', 'wwylele'] nobody 2
5-9084
5 days ago
5-10748
5 days ago
9-61010
9 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 none
4-85939
4 days ago
5-84690
5 days ago
5-84653
5 days
39820 samuelchassot
author:samuelchassot
Add proof of the existence of an Eulerian walk if all vertices have even degree or if exactly vertices have odd degree As per the TODO open in `Trails.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 671/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Eulerian.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean 3 8 ['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions'] nobody none
4-81046
4 days ago
4-82277
4 days ago
4-82240
4 days
32583 MJ141592
author:MJ141592
refactor(SimpleGraph): change bridges not to require the edge to be present Remove the requirement for edges to exist in definition of isBridge, and then change the related lemmas to adjust for this, by renaming, fixing the statements and fixing the proofs, including in Acyclic. Closes #31690. --- - [x] depends on: #36802 - [x] depends on: #36804 t-combinatorics new-contributor 95/93 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 5 48 ['MJ141592', 'Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody 2
4-78745
4 days ago
4-78778
4 days ago
54-34919
54 days
39818 Ljon4ik4
author:Ljon4ik4
feat: Transferring Lie Algebra structures along Equivalences This pr adds the functionality to transfer Lie brackets along equivalences (additive, linear and plain ones). I followed the scheme of the existing `TransferInstance.lean` file. For one of the proofs, I also needed `linearEquiv_apply `, which seemed missing so I added it. AI use disclaimer: I used claude to search for lemmas/ understand error messages / proofreading and feedback, but wrote the whole code myself. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
124/0 Mathlib.lean,Mathlib/Algebra/Lie/TransferInstance.lean,Mathlib/Algebra/Module/TransferInstance.lean 3 2 ['github-actions'] nobody none
4-78199
4 days ago
4-78274
4 days ago
4-80482
4 days
39736 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/MonomialOrder): add `leadingTerm` lemmas Add lemmas for `leadingTerm` to match those for `leadingCoeff`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 87/0 Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 1 5 ['Hagb', 'NoahW314', 'github-actions'] nobody 1
4-76231
4 days ago
7-30405
7 days ago
7-30368
7 days
39692 YaelDillies
author:YaelDillies
chore(Algebra/Order/BigOperators): follow the `₀` naming convention We have long agreed that `MonoidWithZero` lemmas corresponding to `Monoid` lemmas should be suffixed with `₀`, while currently it is the `Monoid` lemmas that are primed. Also deprecate two primed lemmas that only differed from the unprimed versions in a minor way. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
283/219 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/InfiniteProd.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Measure/HasOuterApproxClosedProd.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 35 4 ['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody none
4-75772
4 days ago
4-75807
4 days ago
6-18460
6 days
39829 or4nge19
author:or4nge19
feat(LinearAlgebra): basis flag lemmas and genEigenspace map Part 1/3 of #39139. Introduces basis flag lemmas and intertwining `genEigenspace` map, using directly available constructors, ie introducing none (so improving on #39139) Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) [learningstud@gmail.com](mailto:learningstud@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
76/2 Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean 2 1 ['github-actions'] nobody none
4-74038
4 days ago
4-74096
4 days ago
4-74086
4 days
39815 sharky564
author:sharky564
feat(Analysis/Normed/Module/Complemented): add `IsCompl.isTopCompl_of_isClosed` and `isTopCompl_iff_isCompl_isClosed_isClosed` Adds two theorems: - `IsCompl.isTopCompl_of_isClosed`: In a Banach space, two closed submodules that are algebraic complements are topological - `isTopCompl_iff_isCompl_isClosed_isClosed`: `p` and `q` are topological complements if and only if `p` and `q` are algebraic complements and `p` and `q` are both closed. --- This PR addresses the final point of #38416, and finally close it. However, this is no longer much of a refactor as it is more just adding these theorems in. t-analysis 14/1 Mathlib/Analysis/Normed/Module/Complemented.lean 1 3 ['github-actions', 'themathqueen'] nobody none
4-73672
4 days ago
5-174
5 days ago
5-137
5 days
38245 RemyDegenne
author:RemyDegenne
feat: CountableSupClosed Define the property for a set of being closed by countable supremum (resp. infimum). The new file is adapted from the `SupClosed` file, which describes sets closed by binary supremum. Also use `to_dual` on `SupClosed`. `CountableInfClosed` will be used in measure theory, for developments related to compact systems used for Kolmogorov's extension theorem and Choquet's capacitability theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order brownian 381/66 Mathlib.lean,Mathlib/Order/CountableSupClosed.lean,Mathlib/Order/SupClosed.lean 3 16 ['RemyDegenne', 'b-mehta', 'github-actions', 'vihdzp'] nobody none
4-58414
4 days ago
4-74987
4 days ago
41-991
41 days
39757 gasparattila
author:gasparattila
chore(Algebra/Star): clean up `simp` lemmas about bundled `star` equivalences This PR adds `.symm` lemmas for these equivalences, allowing `simp` to reduce applications of their inverses to applications of `star`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 67/21 Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Module.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Topology/Algebra/Module/Star.lean 4 2 ['github-actions', 'themathqueen'] nobody none
4-56324
4 days ago
6-56417
6 days ago
6-56380
6 days
36605 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Add lemmas about interaction of hull, span and negation Prove lemmas about the interaction of hull, span and negation. Main additions: * `PointedCone.toSubmodule` that produces a submodule with the same support given that `-C = C`. Also the corresponding `CanLift` * `PointedCone.hull_neg_pair_eq_span_singleton` proving `hull R {-x, x} = R ∙ x` (simp lemma) * `PointedCone.span_eq_hull_neg_sup_hull` proving `span R s = hull R (-s) ⊔ hull R s` * `PointedCone.mem_span` proving `x ∈ span R C ↔ ∃ p, n ∈ C, x = p - n` Considerations: there are several ways to express that a convex cone is a submodule: * `-C = C` * `-C ≤ C` or `C ≤ -C` * `C = span R C` * `C = C.lineal` The consensus was that the the first option is the most direct way to express this property, which then allows to lift to a submodule. Co-authored by: Olivia Röhrig, Kilian Rueß, Artie Khovanov --- - [x] depends on: #37464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 68/0 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 53 ['artie2000', 'github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody 1
4-54590
4 days ago
4-54593
4 days ago
21-54958
21 days
39747 vihdzp
author:vihdzp
feat: intervals `Ici`/`Ioi` are cofinal/closed under directed suprema --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 67/11 Mathlib/Order/Cofinal.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Order/ScottTopology.lean 5 16 ['YaelDillies', 'b-mehta', 'github-actions', 'vihdzp'] nobody none
4-49863
4 days ago
5-72689
5 days ago
6-50622
6 days
39850 Ljon4ik4
author:Ljon4ik4
feat: Lie-Rinehart subalgebras introduced This PR introduces subalgebras of Lie-Rinehart algebras. It defines the corresponding structures, introduces some basic api and shows that a Lie-Rinehart subalgebra is again a Lie-Rinehart algebra. Most of the code was copied and adapted from `Mathlib/Algebra/Lie/Subalgebra.lean`, however I am not aware of a way to reuse the results from there without copy/pasting them. I also noticed a problem with the namespace of a few simp lemmas in `LieRinehartAlgebra/Defs.lean` and corrected it. There are a few design decisions that I am not sure about: * There is one structure, which only needs `[Module A L]` and `[LieRing L]` to be defined. Then additional properties are added along the file whenever needed. It is a little strange to have a `LieRinehartSubalgebra` of something which is not a `LieRinehartalgebra`, but I don't know what a better solution would be * The structure only uses `A, L` and not `R`, so `R` has to be explicitly passed to the functions later in the file. AI use disclaimer: I used claude to search for lemmas/ understand error messages / proofreading and feedback, but did not use it for generating the code. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
267/2 Mathlib.lean,Mathlib/Algebra/LieRinehartAlgebra/Defs.lean,Mathlib/Algebra/LieRinehartAlgebra/Subalgebra.lean 3 1 ['github-actions'] nobody none
4-49305
4 days ago
4-49372
4 days ago
4-50232
4 days
39856 b-mehta
author:b-mehta
feat(Data/Set/Restrict): extend is injective on the range These lemmas are placed here since that puts them close to the other `extend` lemmas, but they can't be in Logic/Function/Basic since InjOn and Set.range aren't defined there yet --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 15/0 Mathlib/Data/Set/Restrict.lean 1 1 ['github-actions'] nobody none
4-40661
4 days ago
4-40736
4 days ago
4-40699
4 days
39561 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Operations): a graph is the supremum of edge graphs - `G = ⨆ e ∈ G.edgeSet, fromEdgeSet {e}` - `G = sSup { edge u v | (u : V) (v : V) (_ : G.Adj u v) }` and `edgeSet` & `fromEdgeSet` preserve sup & inf. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 51/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean 2 2 ['b-mehta', 'github-actions'] nobody 1
4-40279
4 days ago
11-23067
11 days ago
11-23030
11 days
39505 dannyhe652
author:dannyhe652
feat(SimpleGraph): add Vizing's theorem for edge coloring Hi! I'm a high school student interested in formulization of mathematics in Lean. Recently, I have worked on a project to formulize Vizing Theorem with Daniel Raggi from Cambridge University with AI assistance. In particular, we first drafted an outline for the proof, and built the proof using Claude Opus 4.5 and 4.6. The proof is optimized using Aristotle and finally reviewed by ourselves. We rewrote some parts of the code and some comments. The code now builds cleanly and we wish this code to be reviewed by Lean Community. I am aware that there are previous attempts, some being successful, on formulizing Vizing Theorem, including this one by Arohee https://github.com/aroheebhoja/vizing. However, I believe that no PR have been made. Our proof is not based on his proof, but it could be helpful for the community to review that project as well. I sincerely thank everyone who has time to verify and review our code. A summary of the project is as follows. Please contact me if there are any questions or problems. ## Summary This PR completes the proof of **Vizing's theorem** for edge coloring in simple graphs, proving that the chromatic index of any graph is either Δ (the maximum degree) or Δ + 1. ## Changes ### New files - **`Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean`** — Core definitions - `edgeColoring`: Type for line graph colorings - `edgeColorable`: Graph is edge-colorable with n colors - `chromaticIndex`: Chromatic index as ℕ - **`Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean`** — Kempe Chain - Coloring observables: `incidentEdges`, `incidentColors`, `missingColors` - Kempe subgraph structure with bounded degree - `swapKempe`: Recolor edges in a connected component via color-swapping - **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean`** — Vizing Fan Rotation - `IsFan`: Vizing fan structure with special color properties - Fan maximality and dichotomy on terminal vertices - `rotate_termA`: Extend coloring when a free color exists at both endpoints - `vizingAdjacencyLemma`: Main adjacency lemma for both cases - **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean`** — Main theorems - `edge_eq_of_color_eq`: Proper edge colorings assign different colors to distinct edges sharing a vertex - `maxDegree_le_chromaticIndex`: χ'(G) ≥ Δ(G) - `chromaticIndex_bot`: Empty graph has chromatic index 0 - `vizingUpperBound_aux`: Inductive proof of upper bound on number of edge - `vizingTheorem`: χ'(G) ∈ {Δ(G), Δ(G) + 1} ### Modified files - `Mathlib.lean` — Added imports for the four new coloring modules ## Technical Approach **Lower bound** (χ'(G) ≥ Δ): - Edges incident to a max-degree vertex form a clique in the line graph - Clique number lower-bounds chromatic number **Upper bound** (χ'(G) ≤ Δ + 1): - Induction on the number of edges - Base case: empty graph colored with 0 colors - Inductive step: - If a free color exists at both endpoints of an edge, then extend directly - Otherwise: - Build a maximal fan from one endpoint - Apply dichotomy: either extend via Term-A (free color at both endpoints) or Term-B (Kempe swap) - Term-B uses a three-vertex connectivity argument to derive a contradiction, forcing the fan to extend ## Key Lemmas - `incidentEdges`, `incidentColors`, `missingColors`: Coloring observables at vertices - `kempeSubgraph`: Restricted subgraph of edges with two specific colors - `swapKempe`: Recolor via Kempe chain swapping - `IsFan.singleton`: Trivial fan always valid - `IsFan.length_le_card`: Fan length is bounded by vertex count - `IsFan.dichotomy`: Maximal fan satisfies Term-A or Term-B - `IsFan.rotate_termA`: Term-A case extends the coloring inductively - `vizingAdjacencyLemma`: Handles both cases for extending one edge - `vizingUpperBound_aux`: Framework for full inductive proof - `edge_eq_of_color_eq`: Distinctness of edges with same color ## Testing All four modules compile with no `sorry` nor errors or warnings. ## References * V. G. Vizing, *On an estimate of the chromatic class of a p-graph*, Diskret. Analiz. 3 (1964), 25–30. ## Co-authors Co-authored-by: Daniel Raggi Co-authored-by: Aristotle (Harmonic) Co-authored-by: Claude Opus 4.5 & 4.6 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 1915/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean 5 3 ['github-actions'] nobody none
4-40191
4 days ago
12-41952
12 days ago
12-43294
12 days
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 64/37 Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Topology/Order/SuccPred.lean 2 2 ['github-actions', 'mathlib-bors'] nobody none
4-37919
4 days ago
5-31436
5 days ago
5-51558
5 days
39722 kg583
author:kg583
feat(Combinatorics): Link `Nat.Partition` to `YoungDiagram` --- AI disclosure: Claude was used to source some proof sketches. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor large-import 120/4 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/Conjugate.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean 4 36 ['NoahW314', 'github-actions', 'kg583', 'wwylele'] nobody 2
4-29672
4 days ago
6-56881
6 days ago
7-54419
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 1
4-19445
4 days ago
4-21205
4 days ago
5-38240
5 days
37697 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Clique): add theorems about cliques and induced graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 22/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 11 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions'] nobody 2
4-7600
4 days ago
4-58196
4 days ago
48-59516
48 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 1
4-6113
4 days ago
8-1824
8 days ago
8-1787
8 days
28683 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): regular local ring is domain In this PR, we proved for a regular local ring `R`, 1 : for a finite set `S` in the maximal Ideal of `R`, it can be extended to a regular system of parameters iff they are linear independent in the cotangent space iff `R/span S` is regular local ring of dimesion `dim R - |S|` 2 : is domain 3 : regular system of parameter form regular sequence. --- - [x] depends on: #28682 - [x] depends on: #37627 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 323/0 Mathlib.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean 5 58 ['Raph-DG', 'Thmoas-Guan', 'WenrongZou', 'erdOne', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mbkybky'] nobody none
4-587
4 days ago
7-8539
7 days ago
8-70607
8 days
39600 plp127
author:plp127
chore(Topology/Compactness/CountablyCompact): generalize theorem Generalize theorem `Topology.IsEmbedding.isSeqCompact_iff` to `Topology.IsInducing.isSeqCompact_iff` by replacing `IsEmbedding` by `IsInducing`. Also fix capitalization error. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 10/4 Mathlib/Topology/Compactness/CountablyCompact.lean 1 5 ['grunweg', 'plp127', 'themathqueen'] nobody none
3-86273
3 days ago
6-48359
6 days ago
9-24881
9 days
38950 smmercuri
author:smmercuri
chore(Algebra): `coe_algHom` -> `coe_toAlgHom` --- There are also instances of `coe_ringHom`, `coe_linearMap` etc which I can fix in follow-up PRs [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 78/64 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Charpoly/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/Cyclotomic/Gal.lean,Mathlib/RingTheory/Algebraic/MvPolynomial.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/DividedPowerAlgebra/Init.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/GradedAlgebra/AlgHom.lean,Mathlib/RingTheory/GradedAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Factorization.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/TensorProduct/Maps.lean 33 6 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] nobody none
3-78571
3 days ago
3-78612
3 days ago
19-72332
19 days
39870 YaelDillies
author:YaelDillies
feat(Data): interleaving lists Define interleaving of lists, both as an operation and as a relation. This will be used to define interleaving polynomials, which in turn are a central concept in the line of work that earned June Huh his 2022 Fields medal. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 119/0 Mathlib.lean,Mathlib/Data/List/Interleave.lean 2 1 ['github-actions'] nobody none
3-74435
3 days ago
3-74501
3 days ago
3-74898
3 days
36814 YaelDillies
author:YaelDillies
refactor(Combinatorics/SimpleGraph): no proof obligation in `rotate` If the walk doesn't go through the new vertex, return `nil` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 41/32 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean 7 9 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody none
3-73188
3 days ago
3-73265
3 days ago
66-24943
66 days
39864 8e7
author:8e7
feat(Combinatorics/SimpleGraph/Acyclic): helly property on subtrees This PR adds several lemmas regarding connected subsets of vertices in trees (subtrees). The main result is the Helly property for subtrees: For a finite set of subtrees, if any pair of subtrees intersect, then there is a common vertex in all subtrees. This lemma is part of an effort to formalize tree decompositions (see #38334), and will be used in a future PR to prove `G.cliqueNum - 1 <= G.treeWidth`. AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 114/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean 2 2 ['github-actions'] nobody none
3-72566
3 days ago
4-7679
4 days ago
4-7756
4 days
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 110/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 62 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody 2
3-72110
3 days ago
3-72183
3 days ago
35-21585
35 days
39709 justus-springer
author:justus-springer
feat(RingTheory/): `MvPolynomial` is standard smooth Add the trivial submersive presentation for `MvPolynomial` and show that `MvPolynomial` is standard smooth over its base ring. This will be used to show that affine space is smooth in #39710. - [x] depends on: #39708 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 47/0 Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody none
3-60050
3 days ago
3-60058
3 days ago
3-62910
3 days
39863 thomaskwaring
author:thomaskwaring
feat(Topology/Sets/Opens): Heyting-algebra operations on open sets Add expressions for the Heyting-algebra operations on the frame of opens subsets of a topological space. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 22/0 Mathlib/Topology/Sets/Opens.lean 1 9 ['eric-wieser', 'github-actions', 'thomaskwaring'] nobody none
3-44621
3 days ago
4-3838
4 days ago
4-11352
4 days
39855 b-mehta
author:b-mehta
feat(InfiniteSum): zero function has product zero Prove that in a comm monoid with zero, the product of the zero function is zero. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 13/0 Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 1 3 ['b-mehta', 'github-actions', 'plp127'] nobody none
3-44399
3 days ago
3-44445
3 days ago
4-11248
4 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'] nobody none
3-37687
3 days ago
23-65751
23 days ago
23-65714
23 days
39895 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Module/MStructure` - refactors `Normed/Module/MStructure` by replacing a norm-zero argument with `nlinarith` and shortening the proof of `QP_eq_QPQ` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 6/10 Mathlib/Analysis/Normed/Module/MStructure.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-37364
3 days ago
3-38617
3 days ago
3-38580
3 days
39897 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Ring/Basic` - refactors `Normed/Ring/Basic` by removing redundant nonempty-case splits from `Real.iSup_fun_mul_eq_iSup_mul_iSup_of_nonneg` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 0/4 Mathlib/Analysis/Normed/Ring/Basic.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-37362
3 days ago
3-38613
3 days ago
3-38576
3 days
39894 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Lp/WithLp` - refactors `Normed/Lp/WithLp` by deriving scalar tower and scalar commutation instances from `WithLp.equiv` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 4/8 Mathlib/Analysis/Normed/Lp/WithLp.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-37112
3 days ago
3-38619
3 days ago
3-38582
3 days
39896 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Operator/ContinuousLinearMap` - refactors `Normed/Operator/ContinuousLinearMap` by reusing `mkContinuous` in bounded linear continuity proofs and shortening `homothety_inverse` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 5/16 Mathlib/Analysis/Normed/Operator/ContinuousLinearMap.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-37037
3 days ago
3-38615
3 days ago
3-38578
3 days
39898 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Unbundled/AlgebraNorm` - refactors `Normed/Unbundled/AlgebraNorm` by using structure inheritance in `MulRingNorm.toRingNorm` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 1/5 Mathlib/Analysis/Normed/Unbundled/AlgebraNorm.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-36798
3 days ago
3-38611
3 days ago
3-38574
3 days
39899 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Unbundled/FiniteExtension` - refactors `Normed/Unbundled/FiniteExtension` by proving `Basis.norm_smul` via `Finset.mul₀_sup'` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 4/15 Mathlib/Analysis/Normed/Unbundled/FiniteExtension.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-36658
3 days ago
3-38609
3 days ago
3-38572
3 days
39900 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral` - refactors `Gaussian/GaussianIntegral` by proving `integral_gaussian_complex_Ioi` using `integral_comp_neg_Ioi` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 13/20 Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean 1 2 ['github-actions', 'yuanyi-350'] nobody none
3-36555
3 days ago
3-38607
3 days ago
3-38570
3 days
39910 justus-springer
author:justus-springer
feat(AlgebraicGeometry/Morphisms/UniversallyInjective): equivalent criteria for universally injective morphisms We prove [stacks 01S4](https://stacks.math.columbia.edu/tag/01S4), which gives two new equivalent criteria for being universally injective. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry large-import 99/6 Mathlib/AlgebraicGeometry/Morphisms/UniversallyInjective.lean,Mathlib/AlgebraicGeometry/ResidueField.lean 2 2 ['github-actions', 'justus-springer'] nobody none
3-10401
3 days ago
3-10479
3 days ago
3-10442
3 days
39067 mbkybky
author:mbkybky
feat(Algebra/Module): define modules admitting finite free resolutions We say that an `R`-module `M` has a finite free resolution if there exists an exact sequence `0 ⟶ Eₙ ⟶ ⋯ ⟶ E₀ ⟶ M ⟶ 0` such that `Eᵢ` are finite free `R`-modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
186/0 Mathlib.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/FiniteFreeResolution/Basic.lean 3 1 ['github-actions'] nobody none
3-2000
3 days ago
18-70376
18 days ago
22-6932
22 days

Needs triage: assigned PRs on the review queue

Number Author Title Description Labels +/- Modified files (first 100) 📝 💬 All users who commented or reviewed Assignee(s) Approval(s) Updated Last status change total time in review
37190 cjrl
author:cjrl
feat(Combinatorics): Set-Valued Pigeonhole Principle This PR contributes two theorems to combinatorics: - `exists_lt_card_cover_of_card_biUnion_lt_card` is a set-valued version of the pigeonhole principle. - `sum_card_eq_sum_card_cover_biUnion` is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This was needed to prove the above pigeonhole principle. The motivation for these results is our Latin Square PR #36698. These results were proved in less general terms in that PR, but are independent of Latin Square considerations and so we have generalized and moved them into more relevant files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 38/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Pigeonhole.lean 2 16 ['IvanRenison', 'cjrl', 'ghseeli', 'github-actions', 'j-loreaux', 'vlad902'] b-mehta
assignee:b-mehta
none
21-36838
21 days ago
47-57334
47 days ago
63-28096
63 days
38309 ntapiam
author:ntapiam
feat(Algebra/NonAssoc): dendriform algebras Define dendriform semirings and algebras --- This PR introduces dendriform structures such as dendriform semirings and algebras, and proves basic facts linking them to their pre-Lie counterparts. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
270/0 Mathlib.lean,Mathlib/Algebra/NonAssoc/Dendriform/Defs.lean,docs/references.bib 3 5 ['dagurtomas', 'github-actions', 'ntapiam'] ocfnash
assignee:ocfnash
none
21-36828
21 days ago
22-2606
22 days ago
37-7866
37 days
38373 Nicola9Falciola
author:Nicola9Falciola
feat (Algebra/FreeAbelianGroup /Finsupp) : The support of non zero element in a freeabeliangroup is non empty Add the lemma that for a nonzero a : FreeAbelianGroup X the support of it is non empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
3/0 Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean 1 7 ['Nicola9Falciola', 'SnirBroshi', 'github-actions'] ocfnash
assignee:ocfnash
none
21-36820
21 days ago
36-78963
36 days ago
37-67367
37 days
38943 felixpernegger
author:felixpernegger
feat(Topology/CWComplex/Classical): discrete spaces are CW complexes as well as some useful lemmas This is partly based on code by @scholzhannah I think this is notable to include, since it is pretty much the only (easy) "topological" sufficient condition for something being a CW complex there is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 89/3 Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/DiscreteSubset.lean 2 28 ['felixpernegger', 'github-actions', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
1
21-36817
21 days ago
24-7671
24 days ago
25-21671
25 days
38587 dagurtomas
author:dagurtomas
feat(Tactic/CategoryTheory): concrete category boilerplate Adds `mk_concrete_category`, a command for generating the initial boilerplate for concrete categories whose morphisms are given by a bundled function type. The command creates the wrapper `Hom` type, named category and concrete category instances, `ofHom`, `Hom.hom`, and the basic dsimp lemmas. It handles parameterized categories such as `ModuleCat`, and has a paired additive/multiplicative form for generating both structures at once (e.g. `MonCat`/`AddMonCat`). Includes test categories checking the generated declarations. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated t-meta t-category-theory 905/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/MkConcreteCategory.lean,MathlibTest/CategoryTheory/MkConcreteCategory.lean 4 8 ['dagurtomas', 'eric-wieser', 'github-actions'] adamtopaz
assignee:adamtopaz
none
20-36498
20 days ago
23-27237
23 days ago
23-27961
23 days
38649 chrisflav
author:chrisflav
chore(RingTheory): equality of linear map with values in finite module spreads out We add some corollaries of `Module.Finite.exists_smul_of_comp_eq_of_isLocalizedModule`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 75/1 Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Module.lean 3 2 ['github-actions'] alreadydone
assignee:alreadydone
none
19-36417
19 days ago
31-75566
31 days ago
31-75529
31 days
39107 SnirBroshi
author:SnirBroshi
feat(Geometry/Manifold/ChartedSpace): `H ≃ₜ M` → `ChartedSpace H M` --- I thought it was strange that `Homeomorph`s didn't have this easy dot-notation, though I'm not familiar with this part of the library so I might be missing something. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 6/0 Mathlib/Geometry/Manifold/ChartedSpace.lean 1 1 ['github-actions'] PatrickMassot
assignee:PatrickMassot
none
19-36406
19 days ago
21-14934
21 days ago
21-14897
21 days
37399 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): `IsPath` and `Nil` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 10/3 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean 2 8 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
none
18-50307
18 days ago
60-29956
60 days ago
60-30063
60 days
36863 artie2000
author:artie2000
refactor(Algebra/Order/Ring/Ordering): unbundle `RingPreordering` The current design for [RingPreordering](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Ordering/Defs.html#RingPreordering) ran into issues at PR #32077. This PR unbundles [RingPreordering](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Ordering/Defs.html#RingPreordering) into a class predicate on [Subsemiring](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Ring/Subsemiring/Defs.html#Subsemiring), generalising the material on supports as far as possible. Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Ring.20orderings.20-.20structure.20or.20predicate.3F/with/562594050 See #37298 for the analogous change to group and ring cones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
455/87 Mathlib.lean,Mathlib/Algebra/Order/Ring/Ordering/Basic.lean,Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/Algebra/Ring/Subsemiring/Support.lean 4 14 ['artie2000', 'chrisflav', 'github-actions', 'mathlib-merge-conflicts'] eric-wieser
assignee:eric-wieser
none
18-49055
18 days ago
18-49055
18 days ago
61-3850
61 days
39162 anovickis
author:anovickis
feat(Topology/PartitionOfUnity): add pointwise_decomposition_finsum + companions Add three short lemmas to `Mathlib/Topology/PartitionOfUnity.lean` extending the existing `PartitionOfUnity` API: - `pointwise_decomposition_finsum` — for `f : X → ℝ` and `x ∈ s`, `f x = ∑ᶠ i, ρ i x · f x`. This is the pointwise step that lifts to integral linearity in measure-theoretic PoU integration: `∫_s f dμ = ∑ᶠ i, ∫_s (ρ i · f) dμ`. - `one_minus_sum_nonneg` — `0 ≤ 1 - ∑ᶠ i, ρ i x`. Direct rearrangement of the existing `sum_le_one` field; useful as a complement-mass remainder bound in chart-by-chart estimates. - `abs_le_one` — `|ρ i x| ≤ 1`. Combines the existing `nonneg` and `le_one`; convenience for absolute-value bounds. All three are short proofs using existing structure fields (`sum_eq_one`, `sum_le_one`, `nonneg`, `le_one`). These came up while writing chart-by-chart Stokes-on-manifold estimates where one wants to decompose `∫_M f` into chart-supported pieces using a partition of unity. The pointwise identity is the obvious first step; the other two are complementary algebraic bounds that show up in remainder estimates. --- 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-topology new-contributor LLM-generated 27/0 Mathlib/Topology/PartitionOfUnity.lean 1 2 ['github-actions'] urkud
assignee:urkud
none
18-36793
18 days ago
19-32714
19 days ago
19-32677
19 days
36202 vihdzp
author:vihdzp
feat: more theorems on the Cantor normal form We also remove some redundant assumptions. Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 68/17 Mathlib/SetTheory/Ordinal/CantorNormalForm.lean 1 21 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] YaelDillies
assignee:YaelDillies
1
17-7910
17 days ago
66-7459
66 days ago
84-85783
84 days
38114 javgomzar
author:javgomzar
feat(FinitelyPresentedGroup): add finite groups instance Add IsFinitelyPresented instance for finite groups. Co-authored-by: Hang Lu Su , Thomas Browning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor large-import 31/2 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 33 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] mattrobball
assignee:mattrobball
1
16-61418
16 days ago
16-61454
16 days ago
39-59154
39 days
38816 tb65536
author:tb65536
refactor(GroupTheory/Finiteness): make duplicate definitions into abbrevs The definitions `Submonoid.FG`, `Group.FG`, and `Subgroup.FG` are all equivalent to `Monoid.FG`, so I've made them into abbrevs. In the future we might even want to consider deprecating all but one to avoid having four ways to write the same thing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
140/122 Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/MonoidLocalization/Finite.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Defs.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean 9 5 ['eric-wieser', 'github-actions', 'j-loreaux', 'tb65536'] mattrobball
assignee:mattrobball
none
16-36420
16 days ago
28-59343
28 days ago
28-59307
28 days
38199 vihdzp
author:vihdzp
chore: add items to set theory overview --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-set-theory maintainer-merge 11/2 docs/overview.yaml 1 5 ['SnirBroshi', 'github-actions', 'joneugster', 'vihdzp'] alreadydone
assignee:alreadydone
none
15-78270
15 days ago
42-10646
42 days ago
42-10708
42 days
36541 BGuillemet
author:BGuillemet
feat(CategoryTheory): define internal equivalence relations Define internal equivalence relations in any category `C`, as a structure on parallel pairs of morphisms. Prove that equivalence relations on types are equivalence relations in the category of types. Prove that kernel pairs are equivalence relations. Define (universally) effective equivalence relations, and a associated class for categories in which every equivalence relation is effective universal. Prove that an effective equivalence relation yields a coequalizer diagram, and that the associated projection on the "quotient" of the relation is a regular epimorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 320/0 Mathlib.lean,Mathlib/CategoryTheory/EquivalenceRelation.lean,Mathlib/CategoryTheory/Limits/Shapes/RegularMono.lean 3 26 ['BGuillemet', 'chrisflav', 'dagurtomas', 'github-actions', 'robin-carlier'] b-mehta
assignee:b-mehta
1
15-50466
15 days ago
15-81632
15 days ago
37-7859
37 days
36218 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory): Add exact sequences for Sheaf Cohomology In this PR, I add the long exact sequence for sheaf cohomology as well as prove that it is functorial. Since sheaf cohomology is defined in terms of `Ext`, this is done using the covariant sequence for `Ext`. --- - [x] depends on: #34742 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 229/1 Mathlib.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean 4 29 ['Brian-Nugent', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
none
14-64968
14 days ago
14-64968
14 days ago
17-4184
17 days
38731 martinwintermath
author:martinwintermath
feat(LinearAlgebra/AffineSpace/AffineSubspace): using `AffineSubspace.direction` to reinterpret `AffineSubspace` as `Submodule` * add `AffineSubspace.vsub_self_of_zero_mem` that states `s -ᵥ s = s ` if `0 ∈ s` * add `AffineSubspace.direction_eq_self_of_zero_mem` that states that if `0 ∈ s`, then the directions coerce back to the affine subspace. * add corresponding `CanLift` instance. * modify doc-string of `AffineSubspace.direction` to state that this can be used for reinterpretation of an affine subspace as a submodule. * add `Coe` instance based on `Submodule.toAffineSubspace` and adds corresponding @[coe] attribute. The PR also performs a slight cleanup of the file: statements about `SetLike` or `Submodule.toAffineSubspace` have been moved closer to their respective definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
56/26 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean 1 3 ['github-actions', 'wwylele'] themathqueen
assignee:themathqueen
1
14-36857
14 days ago
30-61608
30 days ago
30-62722
30 days
38317 WenrongZou
author:WenrongZou
feat(Date/Choose): add some lemmas about choose of prime pow In this PR, I add some lemma about choose of prime pow. 1) For primes `p` and positive integer `n`, assume that for all `i ∈ Icc 1 (n - 1)`, `choose n i` congruent to `0` module `p`, then `n = p ^ multiplicity p n`. 2) For a prime power `n`, the greatest common divisor of `choose n 1, ⋯, choose n (n - 1)` is actually the minimal prime factor of `n`. 3) For a natural number `n` greater than `1`, assume that `n` is not a prime power, then the greatest common divisor of `choose n 1, ⋯, choose n (n - 1)` is `1`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 98/0 Mathlib/Data/Nat/Choose/Lucas.lean 1 5 ['WenrongZou', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
none
14-9548
14 days ago
14-9348
14 days ago
39-46399
39 days

PRs with just failing CI, but only often-spurious jobs

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
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
269-41583
8 months ago
277-79137
277 days ago
0-20585
5 hours
34875 banrovegrie
author:banrovegrie
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap. - Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}` - Add `Matrix.inv_sub_vecMulVec`: subtraction variant - Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses ## Test plan - [x] `lake build` passes - [x] Lines within 100 char limit - [x] All declarations have docstrings **Any specific AI usage?**: Used Copilot for review purposes. t-algebra new-contributor awaiting-author
label:t-algebra$
135/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean 2 14 ['Xxxjdjdid', 'banrovegrie', 'chrisflav', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
89-68572
2 months ago
44-65661
44 days ago
69-6728
69 days
30451 kckennylau
author:kckennylau
feat(HomogeneousIdeal): generalize to homogeneous submodule Continuation of #30437 with permission from @jjaassoonn, which is a continuation of #9820 . The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to homogeneous submodules. Let `R` be a graded ring and `M` be a graded `R`-module. Say an `R`-submodule `N` of `M` is homogeneous if for every `x` in `N`, each projection of `x` to `M_i` is in `N`. None of this file's results depends on the grading on `R`, but we include the grading on `R` for technical reasons. We define the "homogeneous core" of a not necessarily homogeneous submodule N to be the biggest homogeneous submodule contained within N, and the "homogeneous hull" to be the smallest homogeneous submodule that contains N. All definitions/constructions/theorems are then copied for ideals/homogeneous ideals. The motivation of this generalization is graded quotient module. (#18716) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author merge-conflict 581/185 Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean 10 23 ['github-actions', 'mariainesdff', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] mariainesdff
assignee:mariainesdff
79-74091
2 months ago
79-74091
79 days ago
22-61538
22 days
33466 Shreyas4991
author:Shreyas4991
refactor(Combinatorics/Digraph): add vertex sets --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics merge-conflict please-adopt 382/55 Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Digraph/Orientation.lean 2 83 ['IvanRenison', 'Shreyas4991', 'SnirBroshi', 'YaelDillies', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp', 'vlad902'] awainverse
assignee:awainverse
78-19400
2 months ago
78-19400
78 days ago
27-54087
27 days
37556 edwin1729
author:edwin1729
feat(Topology/Order): Locale.localePointOfSpacePoint if we have a Scott Topology from an Algebraic DCPO (3/4) in a series of PRs proving that "Scott Topologies over Algebraic DCPOs are Sober" We prove here that the unit of the adjunction from `TopCat` to `Locale` defined in `Topology/Order/Category/FrameAdjunction.lean` is a surjective mapping, under the following condition: The underlying TopologicalSpace must be a Scott Topology generated with an underlying Algebraic DCPO structure. - [ ] depends on: #37445 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor blocked-by-other-PR merge-conflict 393/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
32-42788
1 month ago
57-67288
57 days ago
0-1300
21 minutes
36896 PieterCuijpers
author:PieterCuijpers
feat (Algebra/Order/Quantale): isMulLeftsided, isMulRightsided, isMulTwosided and strict versions * Adding definitions of quantale elements being leftsided, rightsided, and twosided, and strict versions Should we include these definitions in the main Algebra/Order/Quantale.lean file, or start a separate file for them? I have a few basic theorems I would like to include on these notions, but invite suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
81/1 Mathlib/Algebra/Order/Quantale.lean 1 5 ['NoahW314', 'PieterCuijpers', 'chrisflav', 'github-actions'] mariainesdff
assignee:mariainesdff
24-79281
24 days ago
31-71536
31 days ago
39-18222
39 days
39108 idontgetoutmuch
author:idontgetoutmuch
feat(Geometry/Manifold/GroupLieAlgebra): Add mfderiv_mul_left_mul and left-translate for integral curves Add the following: `mfderiv_mul_left_mul`: the derivative of left-multiplication satisfies a chain rule: $$d(L_{g \cdot h})_x = d(L_g)_{h \cdot x} \circ d(L_h)_x$$ `mulInvariantVectorField_mul`: the vector field at the translated point is the push forward of the vector field: $$V(g \cdot h) = d(L_g)_h(V(h))$$ `IsMIntegralCurve.left_translate`: using these, if $\gamma$ is an integral curve of $V$, then so is $t \mapsto g \bullet \gamma(t)$ for any $g \in G$, since: $$\frac{d}{dt}(g \bullet \gamma(t)) = d(L_g)_{\gamma(t)}\left(\frac{d\gamma}{dt}(t)\right) = d(L_g)_{\gamma(t)}(V(\gamma(t))) = V(g \bullet \gamma(t))$$ I argue (*) all the time with LLMs so this PR will certainly have had some input from them. Is that enough of a disclosure? (*) Like Lewis Carroll: In my youth said the sage I took to the law and argued each case with wife And the muscular strength that it gave to my jaw has lasted the rest of my life t-differential-geometry new-contributor awaiting-author LLM-generated 73/0 Mathlib/Geometry/Manifold/GroupLieAlgebra.lean 1 8 ['github-actions', 'grunweg'] nobody
20-63003
20 days ago
20-63068
20 days ago
0-37992
10 hours
38649 chrisflav
author:chrisflav
chore(RingTheory): equality of linear map with values in finite module spreads out We add some corollaries of `Module.Finite.exists_smul_of_comp_eq_of_isLocalizedModule`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 75/1 Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Module.lean 3 2 ['github-actions'] alreadydone
assignee:alreadydone
19-36417
19 days ago
31-75566
31 days ago
31-75529
31 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
13-34645
13 days ago
127-71068
127 days ago
40-42357
40 days
39820 samuelchassot
author:samuelchassot
Add proof of the existence of an Eulerian walk if all vertices have even degree or if exactly vertices have odd degree As per the TODO open in `Trails.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 671/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Eulerian.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean 3 8 ['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions'] nobody
4-81046
4 days ago
4-82277
4 days ago
4-82240
4 days
39877 kim-em
author:kim-em
feat(ci): cross-reference tag review via post-build dump + workflow_run shim This PR adds the cross-reference tag review pipeline on the mathlib4 side. Three new steps in `post_steps` of [build_template.yml](.github/workflows/build_template.yml) run `scripts/dump_crossref_tags.lean`, upload its TSV unconditionally as a plain `crossref-tags-baseline` artifact (30-day retention), and on PR builds also emit a privileged `crossref-tags-bridge` via [`privilege-escalation-bridge`](https://github.com/leanprover-community/privilege-escalation-bridge). A new [crossref_review.yml](.github/workflows/crossref_review.yml) workflow_run listener consumes the bridge, caches and pre-builds `crossref-render` from a pinned [external-tags](https://github.com/leanprover-community/external-tags) ref, and invokes the orchestrator in [mathlib-ci #44](https://github.com/leanprover-community/mathlib-ci/pull/44). Trust model: the privileged job runs only code from `mathlib-ci@` (which in turn only runs `external-tags@`). The TSV is parsed as untrusted data; user-controllable fields are escaped before going into the bot comment. - [ ] depends on: #39876 🤖 Prepared with [Claude Code](https://claude.com/claude-code) CI blocked-by-other-PR 265/0 .github/workflows/build_template.yml,.github/workflows/crossref_review.yml,scripts/README.md,scripts/dump_crossref_tags.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
2-75786
2 days ago
3-74555
3 days ago
0-111
1 minute
38169 tb65536
author:tb65536
chore(GroupTheory/Finiteness): make `Subgroup.FG` a class This PR refactors `Subgroup.FG` to be a class to match `Group.FG`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
37/20 Mathlib/GroupTheory/Commutator/Finite.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/Rank.lean,Mathlib/GroupTheory/Schreier.lean 4 10 ['JovanGerb', 'github-actions', 'mathlib-bors', 'riccardobrasca', 'tb65536'] mattrobball
assignee:mattrobball
1-36107
1 day ago
28-75188
28 days ago
42-63310
42 days
39347 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): refactor of Pattern and shift-invariance of shape languages for subshifts ## Summary This PR refactors Pattern.mulShift in Mathlib/Dynamics/SymbolicDynamics/Basic.lean and uses the cleaner definition to prove shift-invariance of the language of a subshift on a finite shape. ## Changes Pattern.mulShift now returns a Pattern instead of a configuration (more natural). - Old type: Pattern.mulShift : Pattern A G → G → (G → A) - New type: Pattern.mulShift : Pattern A G → G → Pattern A G - The result carries its support (p.support.image (v * ·)) and the default-outside-support proof, so callers don't have to re-derive them. The [IsLeftCancelMul G] hypothesis is moved to the lemmas that actually use it. - The definition Pattern.mulShift itself no longer needs left-cancellation (it only chooses a preimage noncomputably). - The hypothesis is now stated on mulShift_config_apply_mul_left_of_mem and mulOccursInAt_eq_cylinder directly, instead of being a section-level variable. Renames following the type change. - mulShift_apply_mul_left_of_mem → mulShift_config_apply_mul_left_of_mem (because we now write (p.mulShift v).config instead of p.mulShift v). New @[simp] and @[ext] lemmas for Pattern. - Pattern.ext: two patterns are equal iff their supports agree and their configurations agree on the support. - Pattern.mulShift_support: the support of p.mulShift v is p.support.image (v * ·). - Pattern.fromConfig_support: the support of fromConfig x U is U. - Pattern.fromConfig_config_of_mem: on its support, fromConfig x U agrees with x. New lemma Pattern.fromConfig_mulShift. For a left inverse g' * g = 1, shifting the pattern fromConfig x U by g equals fromConfig (mulShift g' x) (U.image (g * ·)). New theorem MulSubshift.languageOn_image_mulShift. For a subshift Y and elements g, g' with g * g' = 1 and g' * g = 1: (fun p => p.mulShift g) '' Y.languageOn U = Y.languageOn (U.image (g * ·)) i.e. the language on the translated shape is exactly the image of the language on U under the pattern-shift map. This gives a bijection between Y.languageOn U and Y.languageOn (U.image (g * ·)), with inverse p ↦ p.mulShift g'. Stated for left-cancellative monoids with an invertible element. Updated docstrings for Pattern.mulShift and the renamed lemma to reflect the bundled-Pattern return type and clarify which results need [IsLeftCancelMul G]. t-dynamics new-contributor 142/48 Mathlib/Dynamics/SymbolicDynamics/Basic.lean 1 3 ['github-actions'] sgouezel
assignee:sgouezel
1-36100
1 day ago
16-31392
16 days ago
16-31355
16 days
40020 kbuzzard
author:kbuzzard
wip --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
38/27 Mathlib/Algebra/Group/Pi/Basic.lean 1 4 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
0-68202
18 hours ago
0-69046
19 hours ago
0-69009
19 hours
40025 artie2000
author:artie2000
chore(Data/SetLike/Basic): generalise instance * Generalise the standard `IsConcreteLE` instance from `PartialOrder.ofSetLike` to `LE.ofSetLike` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 8/4 Mathlib/Data/SetLike/Basic.lean 1 2 ['github-actions'] nobody
0-64656
17 hours ago
0-64881
18 hours ago
0-64844
18 hours
37623 IvanRenison
author:IvanRenison
feat(Order/RelIso): add theorems about `RelHom.comp` and `RelEmbedding.trans` Co-authored-by: SnirBroshi <26556598+SnirBroshi@users.noreply.github.com> --- Missing of this theorems noticed by @SnirBroshi in #37598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order ready-to-merge 18/0 Mathlib/Order/RelIso/Basic.lean 1 15 ['IvanRenison', 'Komyyy', 'SnirBroshi', 'Vierkantor', 'dagurtomas', 'eric-wieser', 'github-actions', 'mathlib-bors', 'plp127'] nobody
0-49155
13 hours ago
0-86371
23 hours ago
55-4225
55 days
39388 marcelolynch
author:marcelolynch
chore: remove @[expose] from def-free public sections Strip `@[expose]` from `public section` headers in 100 modules where no declaration needs its body visible downstream. A new sweep in the style of #38480 Found using the linter-in-progress: #39387 Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230 merge-conflict 100/100 Mathlib/Algebra/Category/Ring/Small.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Field/Opposite.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Field/ULift.lean,Mathlib/Algebra/Field/ZMod.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Sigma.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Order/Floor/Div.lean,Mathlib/Algebra/Order/Group/Action/End.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Ring/Commute.lean,Mathlib/AlgebraicTopology/ModelCategory/Over.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/Normed/Operator/Compact/FiniteDimension.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/OfLocalizedEquivalences.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Normal.lean,Mathlib/CategoryTheory/Monoidal/Functor/Types.lean,Mathlib/CategoryTheory/Monoidal/Types/Coyoneda.lean,Mathlib/CategoryTheory/Sites/CoversTop/Over.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Data/ENNReal/Action.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/Finsupp/Pointwise.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/FunLike/Embedding.lean,Mathlib/Data/FunLike/Equiv.lean,Mathlib/Data/Int/Cast/Pi.lean,Mathlib/Data/List/Monad.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/Data/Rat/Cast/OfScientific.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/GroupTheory/GroupAction/Embedding.lean,Mathlib/GroupTheory/IsPerfect.lean,Mathlib/GroupTheory/ResiduallyFinite.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Star.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Semisimple.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Measure/Sub.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Transform.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/Padics/PadicVal/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Interval/Set/OrdConnected.lean,Mathlib/Order/Quotient.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/Flat/IsBaseChange.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/GoingDown.lean,Mathlib/RingTheory/Ideal/GoingUp.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Localization/Finiteness.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Polynomial.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/Regular/ProjectiveDimension.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/Smooth/Fiber.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeRightExact.lean,Mathlib/RingTheory/Unramified/LocalRing.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/RingTheory/Valuation/IsTrivialOn.lean,Mathlib/SetTheory/Cardinal/Regular.lean,Mathlib/Tactic/Algebra/Lemmas.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/CWComplex/Classical/Subcomplex.lean,Mathlib/Topology/EMetricSpace/Pi.lean,Mathlib/Topology/List.lean,Mathlib/Topology/MetricSpace/Pseudo/Pi.lean 100 7 ['eric-wieser', 'github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts', 'urkud'] nobody
0-36335
10 hours ago
0-36336
10 hours ago
15-23632
15 days

PRs addressing technical debt

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
13791 digama0
author:digama0
refactor: Primrec and Partrec General cleanup of the `Primrec` and `Partrec` files, to better adjust to lean 4 things. The main user-visible change is that `Primrec₂` is no longer a `def` but an `abbrev`, because it was causing inference issues in lean 4. I also removed all the nonterminal `simp`s in `PartrecCode.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability tech debt 585/778 Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Halting.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean 5 2 ['github-actions', 'grunweg'] nobody
649-54441
1 year ago
713-44027
713 days ago
1-84718
1 day
15448 urkud
author:urkud
chore(*): deprecate `Option.elim'` Use `Option.elim` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt 54/50 Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/Option/Defs.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean 17 12 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'grunweg', 'urkud'] nobody
648-64406
1 year ago
658-24168
658 days ago
7-18420
7 days
33138 gasparattila
author:gasparattila
chore(MeasureTheory/Measure/Stieltjes): remove `backward.privateInPublic` In #32482, some definitions in this file were rewritten using private declarations. However, this made `StieltjesFunction.length` unusable, since its API uses private declarations even in statements. This PR fixes this by problem by specializing `length_eq` to `NoMinOrder` and adding a new lemma for the `OrderBot` case. The other lemmas involving the private declarations are made private, except for `length_subadditive_Icc_Ioo`, which is reverted to the previous statement. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability tech debt awaiting-author 35/30 Mathlib/MeasureTheory/Measure/Stieltjes.lean 1 6 ['github-actions', 'grunweg', 'sgouezel', 'vihdzp'] sgouezel
assignee:sgouezel
155-48679
5 months ago
155-48679
155 days ago
5-1594
5 days
12879 grunweg
author:grunweg
feat: port ge_or_gt linter from mathlib3 Code works and is essentially green: next step is to split up into separate PRs. Feedback welcome on whether: - all the test changes are good, or I should simply allow it in more cases - if calc blocks need to be explicitly exempt --- - [ ] depends on: #12933 - [ ] depends on: #12934 - [ ] depends on: #12931 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter tech debt blocked-by-other-PR 736/319 Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/NormedSpace/MStructure.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Int/Lemmas.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Nat/Upto.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/GroupTheory/Coxeter/Length.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/NumberTheory/LegendreSymbol/JacobiSymbol.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Rayleigh.lean,Mathlib/Order/Filter/AtTopBot.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/Adjoin/Basic.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linter/GeOrGt.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/MetricSpace/Cauchy.lean,Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sequences.lean,scripts/lint-style.py,test/Explode.lean,test/GCongr/inequalities.lean,test/GeOrGt.lean,test/LibrarySearch/IsCompact.lean,test/LibrarySearch/basic.lean,test/Recall.lean,test/Rify.lean,test/Use.lean,test/cancel_denoms.lean,test/congr.lean,test/delabLinearIndependent.lean,test/delaborators.lean,test/interval_cases.lean,test/linarith.lean 109 4 ['github-actions', 'grunweg', 'urkud'] nobody
123-52614
4 months ago
744-53608
744 days ago
0-15256
4 hours
24100 eric-wieser
author:eric-wieser
feat: restore some explicit binders from Lean 3 Part of #24099 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt t-topology t-algebra
label:t-algebra$
39/42 Mathlib/Data/FinEnum.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Compactness/CompactlyGeneratedSpace.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/Metrizable/CompletelyMetrizable.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean 10 3 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
118-48679
3 months ago
409-40282
409 days ago
0-954
15 minutes
39386 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: shake --keep-implied --keep-prefix --fix --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt large-import merge-conflict 113346/9457 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/AddConstMap/Equiv.lean,Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/AffineMonoid/Basic.lean,Mathlib/Algebra/AffineMonoid/Embedding.lean,Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/Algebra/AffineMonoid/UniqueSums.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Epi.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Hom/Rat.lean,Mathlib/Algebra/Algebra/IsSimpleRing.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Algebra/Shrink.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Spectrum/Pi.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Matrix.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Order.lean,Mathlib/Algebra/Algebra/Subalgebra/Pi.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Rank.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Subalgebra/Unitization.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/Azumaya/Defs.lean,Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Balance.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Field.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Finsupp/Fin.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Gaps.lean,Mathlib/Algebra/BigOperators/Group/Finset/Indicator.lean,Mathlib/Algebra/BigOperators/Group/Finset/Interval.lean,Mathlib/Algebra/BigOperators/Group/Finset/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Finset/Pi.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Powerset.lean,Mathlib/Algebra/BigOperators/Group/Finset/Preimage.lean,Mathlib/Algebra/BigOperators/Group/Finset/Sigma.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Action.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/ModEq.lean,Mathlib/Algebra/BigOperators/Module.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/BigOperators/Ring/Nat.lean,Mathlib/Algebra/BigOperators/RingEquiv.lean,Mathlib/Algebra/BigOperators/Sym.lean,Mathlib/Algebra/BigOperators/WithTop.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/AlgCat/Monoidal.lean,Mathlib/Algebra/Category/AlgCat/Symmetric.lean,Mathlib/Algebra/Category/BialgCat/Basic.lean,Mathlib/Algebra/Category/BialgCat/Monoidal.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CoalgCat/Basic.lean 7976 3 ['MichaelStollBayreuth', 'github-actions', 'mathlib-merge-conflicts'] nobody
14-68586
14 days ago
15-62418
15 days ago
0-2
2 seconds
39499 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: run `lake shake` successively from the leaves We do the experiment from #39481 in reverse order: starting from the leaves, run `lake shake --force --only --fix` and then `lake build` until something breaks. Then fix the problems manually and continue. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt 8057/0 MS_test/topsort.txt 1 2 ['MichaelStollBayreuth', 'github-actions'] nobody
13-3800
13 days ago
13-16559
13 days ago
0-1
1 second
39481 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: run `lake shake` iteratively and fix problems This adds `-- shake: keep-all` to all modules under `Mathlib.Lean`, `Mathlib.Tactic` and `Mathlib.Util`. Then it goes through the remaining modules in topological order (according to the list in `MS_test/topsort3.txt`) and for each of them, runs `lake shake --force --only --fix`, followed by `lake build `. If there is no error, the changes are commited. Otherwise, the problems are fixed manually; then the changes are committed. This has been done for the first ~400 modules in the list. 38 of them required manual fixes; they are listed in `MS_test/after_shake_fixes.txt`. We note that the import stats bot claims that the number of imports actually *increases* in most files, which somehow runs counter expectations... Discussion: [#mathlib4 > shake without --add-public @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/shake.20without.20--add-public/near/595349216) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt large-import merge-conflict 9178/858 MS_test/after_shake_fixes.txt,MS_test/topsort3.txt,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/Expr.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/FreeMonoid/Count.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Pretransitive.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Commute/Basic.lean,Mathlib/Algebra/Group/Commute/Units.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Equiv/TypeTags.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Idempotent.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/Int/Units.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Invertible/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/ModEq.lean,Mathlib/Algebra/Group/Nat/Hom.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Units.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Semiconj/Basic.lean,Mathlib/Algebra/Group/Semiconj/Defs.lean,Mathlib/Algebra/Group/Semiconj/Units.lean,Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Commute.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Divisibility.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/GroupWithZero/Idempotent.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/NeZero.lean,Mathlib/Algebra/GroupWithZero/Opposite.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/GroupWithZero/Regular.lean,Mathlib/Algebra/GroupWithZero/Semiconj.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/NeZero.lean,Mathlib/Algebra/Notation.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Notation/Lemmas.lean,Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Opposites.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Quotient.lean,Mathlib/Algebra/Regular/Basic.lean,Mathlib/Algebra/Regular/Defs.lean,Mathlib/Algebra/Ring/Basic.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/GrindInstances.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Ring/Hom/InjSurj.lean,Mathlib/Algebra/Ring/Idempotent.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Int/Defs.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/Algebra/Ring/MinimalAxioms.lean 690 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
12-42329
12 days ago
unknown
0-0
0 seconds
38990 Vierkantor
author:Vierkantor
chore(Algebra/DirectSum): workaround for `backward.inferInstanceAs` This PR works around a `backward.inferInstanceAs` compatibility flag introduced by identifying `DirectSum` with `DFinsupp` in our definitions. We introduce a new dsimp lemma `funLike_eq` that transfers the `FunLike` instances, and now we can use `DirectSum`'s `FunLike` instance, instead of the custom `CoeFun` instance. I unsqueezed a few `simp`s, which all ran pretty much instant on my machine so it shouldn't cause much slowdown. Also we fix two porting notes. 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 `DirectSum` and `DFinsupp`, which would mean a substantial rewrite of this corner of Mathlib. We can't make `DirectSum` an `@[implicit_reducible]`, because we need different multiplication on it than `DFinsupp` has. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra tech debt t-ring-theory awaiting-author merge-conflict
label:t-algebra$
36/38 Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean 9 4 ['JovanGerb', 'Vierkantor', 'github-actions', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
6-63809
6 days ago
15-75049
15 days ago
8-19465
8 days
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
5-9612
5 days ago
5-23032
5 days ago
5-22995
5 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
4-85939
4 days ago
5-84690
5 days ago
5-84653
5 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'] nobody
3-37687
3 days ago
23-65751
23 days ago
23-65714
23 days
36911 jjdishere
author:jjdishere
fix(RingTheory/Valuation): change `ValueGroup` from taking HomClass to Hom This PR refactors `MonoidWithZeroHom.valueMonoid`, `MonoidWithZeroHom.valueGroup`, `MonoidWithZeroHom.ValueGroup₀`, and `MonoidWithZeroHom.ValueGroup₀.embedding` to take a concrete `MonoidWithZeroHom` as input instead of a `MonoidWithZeroHomClass` instance, following rules described in [#mathlib4 > Mathlib's morphism hierarchy @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Mathlib.27s.20morphism.20hierarchy/near/554383157) As a result, we are able to remove several `erw` and many `set_option backward.isDefEq.respectTransparency false in`. The trade-off (foreseen by the same zulip thread) is that we now need to write an explicit coercion to `MonoidWithZeroHom` in `ValueGroup₀ (Valued.v (R := R) : R →*₀ Γ₀)`. Additionally, this PR fixes an instance on `NNReal`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #36532 - [ ] depends on: #36777 t-ring-theory tech debt blocked-by-other-PR merge-conflict 559/483 Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/Padics/Complex.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean,Mathlib/RingTheory/Valuation/DiscreteValuativeRel.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean 24 6 ['github-actions', 'jjdishere', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
2-10433
2 days ago
70-59536
70 days ago
0-60
1 minute
36635 Vierkantor
author:Vierkantor
chore(*): turn comments before declarations into docstrings This PR goes through the whole of Mathlib and replaces `/- comments -/` with `/-- docstrings -/` or `/-! module docs -/` whenever they appear before a declaration. A lot of these appear to be simple typos, where a docstring was actually intended. Where a comment was originally intended, I would argue it is still a good idea include the comments in the generated documentation, or at least it does not hurt anyone. These instances were found by a linter, in an upcoming PR: #36636. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt delegated 214/221 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Subgroup/MulOppositeLemmas.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/Group/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Morphisms/WeaklyEtale.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Synonym.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Fourier/Convolution.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/LConvolution.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Normed/Algebra/GelfandMazur.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryBiproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Monoidal/Closed/Ideal.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Counting.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Finset/Sym.lean,Mathlib/Data/Fintype/Sets.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Set/Pointwise/Support.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/MaximalSubgroups.lean,Mathlib/LinearAlgebra/CliffordAlgebra/SpinGroup.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Isomorphisms.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/UnivLE.lean,Mathlib/MeasureTheory/Function/ConditionalLExpectation.lean,Mathlib/MeasureTheory/Function/JacobianOneDim.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/Measure/Haar/NormedSpace.lean,Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/Heyting/Boundary.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/RingTheory/AdicCompletion/AsTensorProduct.lean,Mathlib/RingTheory/AdicCompletion/Exactness.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/DividedPowers/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/MvPowerSeries/Evaluation.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/RingTheory/Valuation/Minpoly.lean,Mathlib/RingTheory/WittVector/Defs.lean,Mathlib/RingTheory/ZMod/UnitsCyclic.lean,Mathlib/Tactic/TFAE.lean 118 97 ['JovanGerb', 'Vierkantor', 'github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-71712
19 hours ago
0-71712
19 hours ago
2-31887
2 days
40015 SnirBroshi
author:SnirBroshi
chore: replace some `omega`s None of these had any noticable slowdown. --- Is it time to add `omega` to the technical debt counters? There are ~250 left. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt 7/7 Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Int/Interval.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Infix.lean 5 6 ['SnirBroshi', 'chenson2018', 'github-actions', 'grunweg'] nobody
0-65231
18 hours ago
0-65233
18 hours ago
0-69578
19 hours
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 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 3 ['github-actions', 'mathlib-dependent-issues'] nobody
0-55800
15 hours ago
0-57776
16 hours ago
0-57795
16 hours
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
0-37135
10 hours ago
6-59793
6 days ago
6-59756
6 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
0-37123
10 hours ago
4-36532
4 days ago
18-28445
18 days
39983 grunweg
author:grunweg
chore: remove `Dynamics` dependency from `Data` A handful of files remain, which might need more thought. (For instance, some remaining `Data/Matrix` files would need to be *merged* with their `LinearAlgebra/Matrix` file, which is more effort than a mere rename.) --- - [ ] depends on: #39984 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt file-removed blocked-by-other-PR merge-conflict 91/84 Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2024Q1.lean,Archive/Sensitivity.lean,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/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Algebra/Order/Archimedean/Real/Hom.lean,Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Algebra/Order/Star/Real.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/Ball/Homeomorph.lean,Mathlib/Analysis/NormedSpace/Alternating/Basic.lean,Mathlib/Analysis/NormedSpace/Alternating/Curry.lean,Mathlib/Analysis/NormedSpace/Alternating/Uncurry/Fin.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean,Mathlib/Analysis/NormedSpace/HahnBanach/SeparatingDual.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/Normalize.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Rat/NatSqrt/Real.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/Real/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/Combinatorics/Schnirelmann.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rat/NatSqrt/Defs.lean,Mathlib/Data/Real/CompleteField.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Real/Pointwise.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/ClassNumber/AdmissibleAbs.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/Real/Irrational.lean,Mathlib/NumberTheory/Zsqrtd/GaussianInt.lean,Mathlib/NumberTheory/Zsqrtd/ToReal.lean,Mathlib/RingTheory/PowerSeries/GaussNorm.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/SetTheory/Cardinal/Embedding.lean,Mathlib/SetTheory/Cardinal/NatCard.lean,Mathlib/SetTheory/Cardinal/Rat.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/NormNum/RealSqrt.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean,Mathlib/Topology/ContinuousMap/ContinuousSqrt.lean,MathlibTest/Delab/SupInf.lean,MathlibTest/positivity.lean,MathlibTest/sqrt.lean,scripts/noshake.json 79 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-32538
9 hours ago
1-64537
1 day ago
0-1
1 second
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', 'github-actions', 'grunweg'] nobody
0-10143
2 hours ago
1-54253
1 day ago
1-54218
1 day
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'] nobody
0-249
4 minutes ago
3-54279
3 days ago
3-54242
3 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
555-83474
1 year ago
562-76033
562 days ago
33-64877
33 days
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
389-46751
1 year ago
658-69936
658 days ago
0-179
2 minutes
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
329-27100
10 months ago
600-61143
600 days ago
0-66650
18 hours
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
329-25938
10 months ago
362-1055
362 days ago
6-47693
6 days
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
269-41583
8 months ago
277-79137
277 days ago
0-20585
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
226-18793
7 months ago
277-50590
277 days ago
0-1
1 second
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
198-29667
6 months ago
238-8333
238 days ago
1-160
1 day
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
193-46799
6 months ago
612-74187
612 days ago
45-84611
45 days
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
192-63040
6 months ago
538-26570
538 days ago
23-54870
23 days
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
192-13808
6 months ago
389-46737
389 days ago
75-77754
75 days
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
191-72074
6 months ago
667-5956
667 days ago
123-25636
123 days
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
170-53920
5 months ago
223-22773
223 days ago
0-81
1 minute
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
143-22233
4 months ago
143-68966
143 days ago
7-10690
7 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
120-75886
4 months ago
120-75886
120 days ago
42-21618
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
118-1896
3 months ago
143-72428
143 days ago
25-76907
25 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
101-12670
3 months ago
274-8988
274 days ago
66-73556
66 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
98-69689
3 months ago
100-6061
100 days ago
0-3308
55 minutes
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
98-48203
3 months ago
98-48204
98 days ago
0-18707
5 hours
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
93-7042
3 months ago
438-71381
438 days ago
48-67492
48 days
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
93-7026
3 months ago
389-75320
389 days ago
39-60525
39 days
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
92-27055
3 months ago
356-56354
356 days ago
34-10092
34 days
34963 Parcly-Taxel
author:Parcly-Taxel
feat(Archive): proof of the Robbins conjecture Cf. [#mathlib4 > Alternative axiomatization of boolean algebras @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Alternative.20axiomatization.20of.20boolean.20algebras/near/558900960) and #31924. t-algebra awaiting-zulip
label:t-algebra$
610/0 Archive.lean,Archive/Robbins.lean 2 2 ['chrisflav', 'github-actions'] chrisflav
assignee:chrisflav
90-65496
3 months ago
39-65471
39 days ago
71-52253
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
88-9256
2 months ago
184-12596
184 days ago
36-69524
36 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
68-17211
2 months ago
71-3951
71 days ago
0-10825
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
33-52160
1 month ago
33-52171
33 days ago
0-26133
7 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
30-84384
1 month ago
30-84415
30 days ago
30-49603
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
18-54671
18 days ago
158-65393
158 days ago
10-66980
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
13-34645
13 days ago
127-71068
127 days ago
40-42357
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
1-3494
1 day ago
23-5567
23 days ago
0-1
1 second
37298 artie2000
author:artie2000
refactor(Algebra/Order): unbundle group and ring cone * Unbundle `GroupCone` and `RingCone` using `Submonoid.IsMulPointed` The material in `Mathlib.Algebra.Group.Submonoid.Support` was created to treat uniformly * positive cones in groups and rings * pointed cones in vector spaces over an ordered field * orderings in rings This PR deprecates the [GroupCone](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Cone.html#GroupCone) and [RingCone](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Cone.html#RingCone) structures, making use of the predicates `Submonoid.IsMulPointed` and `AddSubmonoid.IsPointed` defined in that file instead. See also #36863 for the analogous change to ring orderings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import awaiting-zulip
label:t-algebra$
136/31 Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Ring/Cone.lean 2 3 ['Vierkantor', 'YaelDillies', 'github-actions', 'joneugster'] YaelDillies
assignee:YaelDillies
1-1145
1 day ago
1-1168
1 day ago
60-63667
60 days
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
0-63829
17 hours ago
17-71507
17 days ago
0-7302
2 hours

PRs with just a merge conflict

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
10721 urkud
author:urkud
feat(Order/FunLike): define `PointwiseLE` - introduce a mixin class `DFunLike.PointwiseLE`, use it to define `DFunLike.instPartialOrder`; - add a generic `DFunLike.orderEmbeddingCoe` - add `DFunLike.PointwiseLE` instances here and there. With this refactor and #13022, I'm going to generalize lemmas like `MeasureTheory.ae_mono` to `OuterMeasureClass`. --- - [x] depends on: #12983 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order t-logic 123/50 Mathlib.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/GroupTheory/Congruence.lean,Mathlib/Order/FunLike.lean,Mathlib/Order/Heyting/Hom.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/Bounded.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Topology/Order/Hom/Basic.lean 13 48 ['YaelDillies', 'dupuisf', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
668-11654
1 year ago
717-76456
717 days ago
64-12984
64 days
8788 FMLJohn
author:FMLJohn
feat(Algebra/Module/GradeZeroModule): if `A` is a graded semiring and `M` is a graded `A`-module, then each grade of `M` is a module over the 0-th grade of `A`. --- - [ ] depends on: #8187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
237/4 Mathlib.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean 6 4 ['FMLJohn', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
908-1549
908 days ago
1-57831
1 day
6777 adomani
author:adomani
chore(Co*variantClass): replace eta-expanded (· * ·), (· + ·), (· ≤ ·), (· < ·) Replace `CovariantClass X X (· * ·) (· ≤ ·)` with -> `CovariantClass X X HMul.hMul LE.le` and similarly for `HAdd`, `LT`, `Contravariant`. This PR is inspired by [Issue #6646](https://github.com/leanprover-community/mathlib4/issues/6646) and, more specifically, [this comment](https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1692792066). Note that https://github.com/leanprover/lean4/pull/2267 would make this unnecessary --- ```bash # First sed command: # the first captured pattern is `Co*variantClass ` # the second captured pattern is `` # the third captured pattern is `+` or `*` # the fourth captured pattern is `<` or `≤` # a match for `Co*variantClass ·) (· ·)` becomes # `Co*variantClass replaceop replaceop` # Second sed command: similar to the first, but looks for `(Function.swap (· ·))` sed -i ' s=\(Co[ntra]*variantClass \(..*\) \2 \)(· *\([+*]\) *·) (· *\([<≤]\) *·)=\1replaceop\3 replaceop\4=g s=\(Co[ntra]*variantClass \(..*\) \2 \)(\([Functio\.swap ]*\)(· *\([+*]\) *·)) (· *\([<≤]\) *·)=\1(\3replaceop\4) replaceop\5=g s=replaceop+=HAdd.hAdd=g s=replaceop\*=HMul.hMul=g s=replaceop<=LT.lt=g s=replaceop≤=LE.le=g s=\(Co[ntra]*variantClass N N\) (· \* ·) r=\1 HMul.hMul r=g s=\(Co[ntra]*variantClass N N (swap μ)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass N N\) (swap (· \* ·)) r=\1 (swap HMul.hMul) r=g s=\(CovariantClass (Filter α) (Filter α)\) (· / ·) (· ≤ ·)=\1 HDiv.hDiv LE.le=g s=\(CovariantClass (Filter α) (Filter α)\) (swap (· / ·)) (· ≤ ·)=\1 (swap HDiv.hDiv) LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· < ·)=\1 LT.lt=g s=\(Co[ntra]*variantClass [^}]*\) (· ≤ ·)=\1 LE.le=g s=\(CovariantClass .* (Filter β)\) (· • ·) LE.le=\1 HSMul.hSMul LE.le=g ' $(git ls-files '*.lean') ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 703/678 Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/Bounds.lean,Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/GroupPower/Order.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/MinMax.lean,Mathlib/Algebra/Order/Group/OrderIso.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/LatticeGroup.lean,Mathlib/Algebra/Order/Module.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Cancel/Defs.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Lemmas.lean,Mathlib/Algebra/Order/Monoid/MinMax.lean,Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithZero/Basic.lean,Mathlib/Algebra/Order/Monoid/WithZero/Defs.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Lemmas.lean,Mathlib/Algebra/Order/Sub/Basic.lean,Mathlib/Algebra/Order/Sub/Canonical.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Order/WithZero.lean,Mathlib/Algebra/Parity.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Normed/Order/Lattice.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/List/BigOperators/Basic.lean,Mathlib/Data/List/BigOperators/Lemmas.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Nat/Cast/Order.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/Real/ENNReal.lean,Mathlib/Data/Real/NNReal.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/VectorMeasure.lean,Mathlib/Order/ConditionallyCompleteLattice/Group.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/PGame.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Topology/ContinuousFunction/Algebra.lean,lean-toolchain,test/Recall.lean,test/propose.lean 81 37 ['adomani', 'alreadydone', 'digama0', 'eric-wieser', 'ericrbg', 'jcommelin', 'leanprover-bot', 'sgouezel', 'vihdzp'] nobody
668-11652
1 year ago
942-63549
942 days ago
35-63136
35 days
7875 astrainfinita
author:astrainfinita
chore: make `SMulCommClass A A B` and `SMulCommClass A B B` higher priority --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
54/48 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/NormedSpace/lpSpace.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/GroupTheory/GroupAction/Prod.lean,Mathlib/GroupTheory/GroupAction/Ring.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/Topology/ContinuousFunction/ContinuousMapZero.lean,Mathlib/Topology/ContinuousFunction/StoneWeierstrass.lean,Mathlib/Topology/ContinuousFunction/ZeroAtInfty.lean 27 15 ['Parcly-Taxel', 'astrainfinita', 'jcommelin', 'leanprover-bot'] nobody
668-11652
1 year ago
722-28160
722 days ago
1-47913
1 day
6491 eric-wieser
author:eric-wieser
chore(Mathlib/Algebra/Hom/GroupAction): add `SMulHomClass.comp_smul` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
24/10 Mathlib/Algebra/Hom/GroupAction.lean 1 0 [] nobody
668-11651
1 year ago
939-84051
939 days ago
83-76369
83 days
10629 madvorak
author:madvorak
feat: List.cons_sublist_append_iff_right --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 11/0 Mathlib/Data/List/Basic.lean 1 1 ['eric-wieser'] nobody
654-5196
1 year ago
780-14033
780 days ago
53-73442
53 days
13791 digama0
author:digama0
refactor: Primrec and Partrec General cleanup of the `Primrec` and `Partrec` files, to better adjust to lean 4 things. The main user-visible change is that `Primrec₂` is no longer a `def` but an `abbrev`, because it was causing inference issues in lean 4. I also removed all the nonterminal `simp`s in `PartrecCode.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability tech debt 585/778 Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Halting.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean 5 2 ['github-actions', 'grunweg'] nobody
649-54441
1 year ago
713-44027
713 days ago
1-84718
1 day
11964 adamtopaz
author:adamtopaz
feat: The functor of points of a scheme We construct the functor of points functor, and prove that it's full and faithful. --- - [x] depends on: #11947 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry t-category-theory 210/0 Mathlib.lean,Mathlib/AlgebraicGeometry/FunctorOfPoints.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean 3 4 ['github-actions', 'grunweg'] nobody
649-54300
1 year ago
777-71241
777 days ago
0-1223
20 minutes
12418 rosborn
author:rosborn
style: replace preimage_val with ↓∩ notation --- This is a rough draft of what the new `↓∩` notation would look like within mathlib. I believe this is an improvement in clarity and would like to have `↓∩` as a standard notation (along with `''`, `⁻¹'`, `↑`, etc...). As `↓∩` is specialized for `Set`s, I have only changed `preimage_val` when the left-hand side of `↓∩` is a `Set`. The introduction of the `↓∩` notation to Data.Set.Image is temporary as it isn't possible to import Data.Set.Subset directly. If we want `↓∩` unscoped, where would be the best place to define it? An option is Data.Set.Defs, but the notation cannot be defined without additional imports as the file does not import `notation3`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 56/61 Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Subset.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Clopen.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/Sober.lean 18 3 ['grunweg', 'rosborn'] nobody
649-54199
1 year ago
735-64183
735 days ago
29-50022
29 days
12751 Command-Master
author:Command-Master
feat: add lemmas for Nat/Bits, Nat/Bitwise and Nat/Size Remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 66/7 Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Size.lean 4 26 ['Command-Master', 'Rida-Hamadani', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'jcommelin'] nobody
648-75353
1 year ago
683-81575
683 days ago
56-40668
56 days
10350 Shamrock-Frost
author:Shamrock-Frost
feat(Data/Setoid): add the operations of taking the equivalence class of an element and of saturating a set wrt an equivalence relation I'm open to suggestions about changing the name "saturate", someone on zulip rightly pointed out this is a very overloaded term in math. That said, I think it's unlikely to cause confusion and that there's only one reasonable interpretation in the context of setoids. --- - [x] depends on: #10347 - [x] depends on: #10348 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 169/3 Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/Order/Closure.lean 3 1 ['leanprover-community-mathlib4-bot'] nobody
646-77627
1 year ago
765-69255
765 days ago
19-74546
19 days
17127 FR-vdash-bot
author:FR-vdash-bot
chore: remove global `Quotient.mk` `⟦·⟧` notation --- Merge this PR when we are ready to migrate to `QuotLike` API (#16421). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 137/2 Counterexamples/Pseudoelement.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Quandle.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Product.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/QPF/Multivariate/Constructions/Fix.lean,Mathlib/Data/QPF/Univariate/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Set/Finite.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Quotients.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RepresentationTheory/Action/Concrete.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/Birthday.lean,Mathlib/SetTheory/Game/Impartial.lean,Mathlib/SetTheory/Game/Ordinal.lean,Mathlib/SetTheory/Game/State.lean,Mathlib/SetTheory/Lists.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/SetTheory/Surreal/Dyadic.lean,Mathlib/SetTheory/Surreal/Multiplication.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/HomotopyGroup.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Homotopy/Product.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean,Mathlib/Topology/UniformSpace/Separation.lean,test/interactiveUnfold.lean 68 1 ['github-actions'] nobody
607-26292
1 year ago
607-26292
607 days ago
4-72805
4 days
13156 erdOne
author:erdOne
refactor(Algebra/Module/LocalizedModule): Redefine `LocalizedModule` in terms of `OreLocalization`. --- - [x] depends on: #13151 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
519/628 Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean,Mathlib/RingTheory/OreLocalization/Ring.lean 8 4 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball'] nobody
592-78574
1 year ago
592-78574
592 days ago
51-84473
51 days
14598 Command-Master
author:Command-Master
chore: add typeclasses to unify various `add_top`, `add_eq_top`, etc. Add the four typeclasses `IsTopAbsorbing`, `IsBotAbsorbing`, `NoTopSum`, `NoBotSum`, as additive equivalents for `MulZeroClass` and `NoZeroDivisors`. Add instances of these for `ENNReal`, `WithTop α`, `WithBot α`, `PUnit`, `EReal`, `PartENat`, `Measure`, `Interval` and `Filter`. Also split `Algebra/Order/AddGroupWithTop` to `Algebra/Order/Group/WithTop` and `Algebra/Order/Monoid/WithTop` --- Previous usages of lemmas with quantified names like `WithTop.add_top` have to be changed to just `add_top`. `add_lt_top` is `@[simp]`, in accordance with `ENNReal.add_lt_top` being `@[simp]`. This affects `WithTop.add_lt_top` which previously hadn't been `@[simp]`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-order new-contributor
label:t-algebra$
264/195 Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib.lean,Mathlib/Algebra/Order/Group/WithTop.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/PUnitInstances/Order.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Analytic/Meromorphic.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/NormedSpace/ENorm.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Log/ENNRealLog.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/Data/Real/EReal.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Integral/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean 57 30 ['Command-Master', 'YaelDillies', 'github-actions'] nobody
570-21758
1 year ago
570-21758
570 days ago
7-45599
7 days
19212 Julian
author:Julian
feat(LinearAlgebra): add a variable_alias for VectorSpace Taken directly from the variable_alias docs. Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/why.20.5Bvariable_alias.5D.20attribute.20is.20not.20used.20in.20Mathlib.3F --- This is the first actual variable alias added to mathlib. I haven't reviewed variable_alias fully, but it seems like there's at least 3 ways they could be distributed in Mathlib: * alongside whatever subfolder they "belong to" (which is what I've tentatively done here) * In a file called `Aliases` somewhere near the thing they alias (which seems less discoverable to me) * In a single file, a la `Mathlib.TrainingWheels` (with some less playful name) which is meant to define a bunch of more "friendly" aliases all in one place. I kind of like the idea of the third thing as a future module but perhaps it can be synthesized if/when there are more aliases? For now as I say I've done the first one, but please let me know if someone prefers something else. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
25/0 Mathlib.lean,Mathlib/LinearAlgebra/VectorSpace.lean,scripts/noshake.json 3 10 ['Julian', 'PieterCuijpers', 'github-actions', 'urkud'] nobody
549-84913
1 year ago
549-84913
549 days ago
7-68089
7 days
19337 zeramorphic
author:zeramorphic
feat(Data/Finsupp): generalise `Finsupp` to any "zero" value Remove the explicit dependence of `Finsupp` on `[Zero M]`, instead defining `Finsupp'` (better name pending) to be functions that are equal to a fixed value `z : M` cofinitely often. This PR is intended to do the initial work of replacing the definition of `Finsupp` with an instantiation of the more general definition, without adding any appropriate API. If accepted, the API development will follow in later PRs. Issues to consider: - Naming of `Finsupp'.` - Where should `Finsupp'` lemmas go? Do they need their own file/folder under `Data/`? Relevant Zulip threads: - https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finsupp.20generalisations - https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finsupp-like.20partial.20function Comments are welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 203/83 Archive/Wiedijk100Theorems/Partition.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean,Mathlib/RingTheory/PowerBasis.lean,scripts/nolints_prime_decls.txt 13 5 ['github-actions', 'vihdzp', 'zeramorphic'] nobody
547-60990
1 year ago
547-60990
547 days ago
4-60621
4 days
18756 astrainfinita
author:astrainfinita
refactor: deprecate `DistribMulActionSemiHomClass` `MulSemiringActionSemiHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
50/28 Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 3 4 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
536-26659
1 year ago
536-26659
536 days ago
31-53021
31 days
16120 awainverse
author:awainverse
feat(ModelTheory/Algebra/Ring/Basic): Ring homomorphisms are a `StrongHomClass` for the language of rings Adds an `IsAlgebraic` instance to the language of rings Adds a `StrongHomClass` instance to the type of ring homomorphisms between rings with `CompatibleRing` structures --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra RFC t-logic
label:t-algebra$
34/13 Mathlib/ModelTheory/Algebra/Ring/Basic.lean 1 10 ['ChrisHughes24', 'YaelDillies', 'awainverse', 'github-actions', 'jcommelin'] nobody
508-42833
1 year ago
508-42833
508 days ago
135-29017
135 days
20527 trivial1711
author:trivial1711
refactor(Topology/UniformSpace/Completion): more descriptive names for `α → Completion α` - We rename the various maps `α → Completion α` in order to make their names more consistent. - Let `α` be a uniform space. We rename the uniformly continuous function `α → Completion α` from `UniformSpace.Completion.coe'` to `UniformSpace.Completion.coe`. - Let `α` be a uniform additive group. We rename the additive group homomorphism `α →+ Completion α` from `UniformSpace.Completion.toCompl` to `UniformSpace.Completion.coeAddHom`. - Let `α` be a uniform ring. The ring homomorphism `α →+* Completion α` is called `UniformSpace.Completion.coeRingHom`; its name is unchanged. - Let `α` be a normed space over a field `𝕜`. We rename the linear isometry `α →ₗᵢ[𝕜] Completion α` from `UniformSpace.Completion.toComplₗᵢ` to `UniformSpace.Completion.coeₗᵢ`. - Let `α` be a normed space over a field `𝕜`. We rename the continuous linear map `α →L[𝕜] Completion α` from `UniformSpace.Completion.toComplL` to `UniformSpace.Completion.coeL`. - Let `α` be a normed additive group. We rename the norm preserving homomorphism `NormedAddGroupHom α (Completion α)` from `NormedAddCommGroup.toCompl` to `UniformSpace.Completion.coeNormedAddGroupHom`. - We analogously rename some other theorems. - We add some trivial theorems (all of which are proved by `rfl`) that state that the functions considered above are equal. We give all of them the `simp` and `norm_cast` attributes. - We add a new theorem `UniformSpace.Completion.coeAddHom_eq_coe` that states that `UniformSpace.Completion.coeAddHom` and `UniformSpace.Completion.coe` are equal as functions. - We similarly add a new theorem `UniformSpace.Completion.coeRingHom_eq_coe`. - We rename the theorem `UniformSpace.Completion.coe_toComplₗᵢ` to `UniformSpace.Completion.coeₗᵢ_eq_coe`. - We rename the theorem `UniformSpace.Completion.coe_toComplL` to `UniformSpace.Completion.coeL_eq_coe`. - We similarly add a new theorem `UniformSpace.Completion.coeNormedAddGroupHom_eq_coe`. - We change all occurrences of the string `((↑) : α → Completion α)` to `(coe : α → Completion α)` or just `coe`. - We put the statements of some theorems into simp normal form by using the plain function `coe` rather than the homomorphisms that carry more structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 130/92 Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Analysis/SpecialFunctions/NonIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/Nonarchimedean.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformRing.lean,Mathlib/Topology/Category/UniformSpace.lean,Mathlib/Topology/MetricSpace/Completion.lean,Mathlib/Topology/UniformSpace/Completion.lean 17 4 ['eric-wieser', 'github-actions', 'trivial1711'] nobody
501-73865
1 year ago
501-73865
501 days ago
6-66637
6 days
18474 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `*WithOne.to*` instances --- From #7873. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra t-data
label:t-algebra$
9/2 Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean 3 7 ['astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-bot'] nobody
499-60895
1 year ago
499-60895
499 days ago
76-66907
76 days
20372 jvlmdr
author:jvlmdr
feat(MeasureTheory/Function): Add ContinuousLinearMap.bilinearCompLp(L) Introduce ContinuousLinearMap.bilinearCompLp and bilinearCompLpL. Generalize eLpNorm_le_eLpNorm_mul_eLpNorm theorems to include constant C in bound condition. --- Expect this may be useful for defining tempered distributions from functions in `L^p`. The definitions more or less follow `ContinuousLinearMap.compLp...`. Names are loosely analogous to `ContinuousLinearMap.bilinearComp` and `SchwartzMap.bilinLeftCLM`. Note: I preferred the spelling `hpqr : p⁻¹ + q⁻¹ = r⁻¹` with `f` in `L^p` and `g` in `L^q` to `hpqr : 1 / p = 1 / q + 1 / r`. It's easier to obtain from `ENNReal.IsConjExponent` too. A few questions: - [ ] I defined `bilinear{Left,Right}LpL` in addition to `bilinearCompLpL` because `LinearMap.mkContinuous₂` is marked as `noncomputable` and `LinearMap.mkContinuous` is not. Is this worth the extra definitions? (Note: This is not visible in the source due to `noncomputable section`.) - [ ] Should I use `C : ℝ` instead of `C : NNReal` for `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'`? - [ ] Is it going to be painful to have `[Fact (1 ≤ p)] [Fact (1 ≤ q)] [Fact (1 ≤ r)]`? I don't think there's a way to avoid it though. Maybe providing specialized versions for `p.IsConjExponent q` with `L^1`? Naming: - [ ] Is it satisfactory to add a `'` to the `eLpNorm_le_eLpNorm_mul_eLpNorm ` definitions in `CompareExp.lean` where `≤ ‖f x‖ * ‖g x‖` has been replaced with `≤ C * ‖f x‖ * ‖g x‖`? These could replace the existing theorems, although I don't want to break backwards compatibility. There are 5 instances: `eLpNorm_le_eLpNorm_top_mul_eLpNorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm_top'`, `eLpNorm'_le_eLpNorm'_mul_eLpNorm''`, `eLpNorm_le_eLpNorm_mul_eLpNorm_of_nnnorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'` (I'm not sure why the existing theorem `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm` has an internal `'`) - [ ] Is `bilinearLeftLpL` a suitable name? Other options: `bilinearCompLpLeftL`, `bilinearCompLeftLpL`, `bilinLeftLpL` (analogous to `SchwartzMap.bilinLeftCLM`) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-measure-probability new-contributor 203/40 Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace.lean 2 1 ['github-actions'] nobody
486-85152
1 year ago
486-85152
486 days ago
27-43617
27 days
21959 BGuillemet
author:BGuillemet
feat(Topology/ContinuousMap): Stone-Weierstrass theorem for MvPolynomial Add the subalgebra of multivariate polynomials and prove it separates points, on the same model as `ContinuousMap/Polynomial.lean`. Prove the Stone-Weierstrass theorem and some variations for multivariate polynomials. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology new-contributor 285/1 Mathlib.lean,Mathlib/Topology/ContinuousMap/MvPolynomial.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 3 1 ['github-actions'] nobody
450-71173
1 year ago
450-71173
450 days ago
16-76141
16 days
18470 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `Normed*.to*` instances --- From #7873. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra t-analysis
label:t-algebra$
28/0 Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean 2 9 ['astrainfinita', 'github-actions', 'jcommelin', 'leanprover-bot'] nobody
446-42600
1 year ago
446-42600
446 days ago
129-16341
129 days
8767 eric-wieser
author:eric-wieser
refactor(Cache): tidy lake-manifest parsing in Cache This now respects local copies of Mathlib dependencies (though in practice these invalidate the *online* cache because to point to local copies of Mathlib, the hash for `lakefile.lean` and `lake-manifest.json` is first invalidated). --- - [x] depends on: #11492 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 49/49 Cache/Hashing.lean,Cache/IO.lean,lake-manifest.json 3 8 ['digama0', 'eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
443-42332
1 year ago
625-8282
625 days ago
119-35643
119 days
22660 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: follow naming convention around Group.IsNilpotent --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
133/67 Mathlib/GroupTheory/Frattini.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean 3 1 ['github-actions'] nobody
439-7028
1 year ago
439-7028
439 days ago
10-48025
10 days
21488 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): premonoidal categories Add support for premonoidal categories --- Still want to add support for: - Premonoidal braided/symmetric categories - The monoidal coherence theorem, which I've already ported in my `discretion` library - The `coherence` tactic, which should work fine for premonoidal categories too but wanted to get this in front of reviewers ASAP to make sure my general approach was alright [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory new-contributor 900/361 Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,MathlibTest/StringDiagram.lean 21 9 ['YaelDillies', 'github-actions', 'grunweg', 'imbrem', 'kim-em', 'leanprover-community-bot-assistant'] nobody
415-79575
1 year ago
415-79576
415 days ago
58-6026
58 days
21525 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Prelim) This PR defines the basic preliminaries for defining locally cartesian closed categories (LCCCs). In particular, using the calculus of mates we define certain natural isomorphisms involving `Over.star` and `Over.pullback` which will be crucial in defining the right adjoint to the pullback functor in the development of LCCCs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory large-import 338/24 Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Galois/Examples.lean 3 13 ['b-mehta', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'sinhp'] nobody
415-79573
1 year ago
415-79575
415 days ago
36-69400
36 days
16314 FR-vdash-bot
author:FR-vdash-bot
chore(Data/Quot): deprecate `ind*'` APIs --- - [x] depends on: #16264 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 247/287 Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Computability/Reduce.lean,Mathlib/Computability/Tape.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Hom.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/PresentedGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RepresentationTheory/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean,Mathlib/Topology/Separation/Basic.lean 65 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
410-18139
1 year ago
410-18141
410 days ago
55-52030
55 days
15483 FR-vdash-bot
author:FR-vdash-bot
chore(GroupTheory/Coset): reduce defeq abuse --- - [x] depends on: #15482 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
114/60 Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/QuotientGroup.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/Topology/Algebra/Group/Compact.lean 6 14 ['astrainfinita', 'eric-wieser', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball', 'mergify', 'urkud'] nobody
409-49432
1 year ago
658-1362
658 days ago
4-79214
4 days
16594 FR-vdash-bot
author:FR-vdash-bot
perf: reorder `extends` and remove some instances in algebra hierarchy --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
240/92 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/Util/NoInstances.lean,scripts/noshake.json 50 8 ['astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
409-49208
1 year ago
614-2355
614 days ago
14-58900
14 days
23859 urkud
author:urkud
feat(Topology/../Order/Field): generalize to `Semifield` .. from a linear ordered field to a linear ordered semifield--- - [ ] depends on: #23857 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 245/219 Mathlib/Algebra/Order/Group/Pointwise/Interval.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Topology/Algebra/Order/Field.lean,Mathlib/Topology/Order/Basic.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
403-6049
1 year ago
416-16690
416 days ago
0-265
4 minutes
23810 b-reinke
author:b-reinke
chore(Order/Interval): generalize succ/pred lemmas to partial orders Many lemmas in `Mathlib/Order/Interval/Set/SuccPred.lean`and `Mathlib/Order/Interval/Finset/SuccPred.lean` also work for partial orders. They are generalized in this PR by introducing different sections for `PartialOrder` and `LinearOrder` assumptions in the respective files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order 231/89 Mathlib/Order/Interval/Finset/SuccPred.lean,Mathlib/Order/Interval/Set/SuccPred.lean 2 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
400-69224
1 year ago
400-69226
400 days ago
16-29623
16 days
24285 madvorak
author:madvorak
chore(Algebra/*-{Category,Homology}): remove unnecessary universe variables Discussions: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Call.20for.20help.3A.20technical.2F.20organisational.20debt/with/513620128 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Algebra.20and.20.60Type*.60/with/513558902 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Task.2026.3A.20Replace.20Type.20u.20by.20Type*.20wherever.20possible/with/513592993 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
542/916 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Central/Basic.lean,Mathlib/Algebra/Central/Defs.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/Algebra/CharP/Pi.lean,Mathlib/Algebra/CharP/Quotient.lean,Mathlib/Algebra/CharP/Subring.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/FreeNonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Finite.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Invertible/Defs.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/TypeTags/Finite.lean,Mathlib/Algebra/Group/TypeTags/Hom.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Pi.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/NeZero.lean,Mathlib/Algebra/Lie/Abelian.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/CartanMatrix.lean,Mathlib/Algebra/Lie/CartanSubalgebra.lean,Mathlib/Algebra/Lie/Character.lean,Mathlib/Algebra/Lie/Classical.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/Ideal.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/Matrix.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TensorProduct.lean,Mathlib/Algebra/Lie/UniversalEnveloping.lean,Mathlib/Algebra/Module/Basic.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/Equiv/Opposite.lean,Mathlib/Algebra/Module/Lattice.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/MinimalAxioms.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/Opposite.lean,Mathlib/Algebra/Module/Pi.lean,Mathlib/Algebra/Module/Presentation/Differentials.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean 182 22 ['erdOne', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'madvorak', 'mattrobball'] nobody
400-57921
1 year ago
400-57922
400 days ago
2-11655
2 days
23349 BGuillemet
author:BGuillemet
feat: add LocallyLipschitzOn.lipschitzOnWith_of_isCompact and two small lemmas about Lipschitz functions Main feat (in Mathlib/Topology/EMetricSpace/Basic.lean): if a function `f` from an extended pseudometric space to a pseudometric space is locally Lipschitz on a compact subset `s`, then `f` is Lipschitz on `s`. The theorem is true only when the codomain of `f` is a pseudometric space, so it needs imports from Mathlib/Topology/MetricSpace. Other small feat (in Mathlib/Analysis/Calculus/ContDiff/RCLike.lean): a function that is continuously differentiable on an open subset is locally Lipschitz on this subset. --- - [ ] depends on: #22890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology large-import new-contributor 59/4 Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean 2 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] PatrickMassot
assignee:PatrickMassot
367-64671
1 year ago
367-64673
367 days ago
35-30364
35 days
16020 adomani
author:adomani
feat: compare PR `olean`s size with `master` Adds two CI steps: * `print the sizes of the oleans` that prints the sizes of all the folders containing `Mathlib` `.olean`s; * `compare oleans` that compares the sizes of the previous step with the corresponding sizes on `master`. In the test runs, the two steps have taken at most 3 seconds combined (the first is virtually instantaneous, the second one depends on `curl` to find a job id and on `gh` to retrieve the logs of a previous CI run -- everything else appears to be negligible). This hopefully helps finding out if some PR is bloating up the `.olean`s. See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Error.3A.20No.20space.20left.20on.20device/near/463792355) for a PR of mine that prompted this check. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict CI 120/0 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh 5 50 ['Vtec234', 'YaelDillies', 'adomani', 'bryangingechen', 'github-actions', 'grunweg', 'kim-em', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
358-28278
11 months ago
555-75700
555 days ago
87-65841
87 days
25340 dupuisf
author:dupuisf
chore(Analysis/Convex): move files pertaining to convex/concave functions to their own folder This PR creates a new folder under `Analysis/Convex` called `Analysis/Convex/Function`, which includes files that are mostly or entirely about convex/concave functions (as opposed to convex sets). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-convex-geometry 4264/4155 Mathlib.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/Deriv.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Convex/Extrema.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Function/Basic.lean,Mathlib/Analysis/Convex/Function/Continuous.lean,Mathlib/Analysis/Convex/Function/Deriv.lean,Mathlib/Analysis/Convex/Function/Extrema.lean,Mathlib/Analysis/Convex/Function/Integral.lean,Mathlib/Analysis/Convex/Function/Jensen.lean,Mathlib/Analysis/Convex/Function/Mul.lean,Mathlib/Analysis/Convex/Function/Piecewise.lean,Mathlib/Analysis/Convex/Function/Quasiconvex.lean,Mathlib/Analysis/Convex/Function/Slope.lean,Mathlib/Analysis/Convex/Function/Strong.lean,Mathlib/Analysis/Convex/Integral.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Convex/Mul.lean,Mathlib/Analysis/Convex/Piecewise.lean,Mathlib/Analysis/Convex/Quasiconvex.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/Convex/Strong.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/Analysis/SpecialFunctions/Pochhammer.lean,Mathlib/MeasureTheory/Measure/Decomposition/IntegralRNDeriv.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean 34 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
357-1098
11 months ago
357-1100
357 days ago
6-38644
6 days
18441 ADedecker
author:ADedecker
refactor(AdicTopology): use new API for algebraic filter bases, and factor some code --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
847/159 Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 3 ['ADedecker', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79239
11 months ago
576-77138
576 days ago
0-679
11 minutes
18439 ADedecker
author:ADedecker
refactor: use new algebraic filter bases API in `FiniteAdeleRing` --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
699/21 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79237
11 months ago
576-78781
576 days ago
0-619
10 minutes
18438 ADedecker
author:ADedecker
refactor: adapt `KrullTopology` to the new algebraic filter bases API --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
771/168 Mathlib.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 5 ['ADedecker', 'AntoineChambert-Loir', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79236
11 months ago
576-79423
576 days ago
0-638
10 minutes
13964 pechersky
author:pechersky
feat(Data/DigitExpansion): begin defining variant of reals without rationals Based on a de Bruijn 1976 paper. This file is just the basic definition of a digit expansion. Will be followed up with further constructions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 518/0 Mathlib.lean,Mathlib/Data/DigitExpansion/Defs.lean,docs/references.bib 3 11 ['eric-wieser', 'github-actions', 'kim-em', 'pechersky'] dupuisf
assignee:dupuisf
341-61527
11 months ago
580-1343
580 days ago
129-57999
129 days
24823 eric-wieser
author:eric-wieser
refactor: add `hom` lemmas for the `MonoidalCategory` structure on `ModuleCat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
148/164 Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Closed.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Rep.lean 11 21 ['101damnations', 'YaelDillies', 'eric-wieser', 'github-actions', 'joelriou', 'kbuzzard', 'leanprover-community-bot-assistant'] 101damnations
assignee:101damnations
329-26187
10 months ago
329-26187
329 days ago
37-56728
37 days
25071 erdOne
author:erdOne
feat(EllipticCurve): basic API for singular cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry 320/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean 3 35 ['Multramate', 'acmepjz', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant'] nobody
329-25941
10 months ago
329-25942
329 days ago
45-4165
45 days
25988 Multramate
author:Multramate
refactor(AlgebraicGeometry/EllipticCurve/*): replace Fin 3 with products This PR continues the work from #24593. Original PR: https://github.com/leanprover-community/mathlib4/pull/24593 merge-conflict t-algebraic-geometry 1000/1022 Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean 6 3 ['Multramate', 'github-actions', 'leanprover-community-bot-assistant'] nobody
329-25629
10 months ago
329-25629
329 days ago
18-21880
18 days
26067 mapehe
author:mapehe
feat(Topology/StoneCech): exists_continuous_surjection_from_StoneCech_to_dense_range This lemma formalises the following version of the maximality property of the Stone–Čech compactification: If `f : α → β` is a continuous map from a topological space `α` to a Hausdorff space `β` with dense range, then there exists a continuous surjection from `StoneCech α` to `β` extending `f`. In particular, `StoneCech α` is the “largest” compact Hausdorff space into which `α` densely embeds, in the sense that any other such space is a continuous image of it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 18/0 Mathlib/Topology/StoneCech.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
326-7007
10 months ago
326-7007
326 days ago
20-8582
20 days
25238 Hagb
author:Hagb
feat(Tactic/ComputeDegree): add support for scalar multiplication with different types It would be able to deal with `a • (X : R[X])` where `a : S` is in a different type `S` with `[SMulZeroClass S R]`. --- - [x] depends on: #25237 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta new-contributor 17/5 Mathlib/Tactic/ComputeDegree.lean,MathlibTest/ComputeDegree.lean 2 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
299-4269
9 months ago
329-25938
329 days ago
38-26044
38 days
18646 jxjwan
author:jxjwan
feat(RingTheory): isotypic components --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory new-contributor 308/0 Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/RingTheory/Isotypic.lean,Mathlib/RingTheory/SimpleModule.lean 3 1 ['github-actions'] nobody
298-6290
9 months ago
550-86283
550 days ago
20-16585
20 days
26200 adomani
author:adomani
fix: add label when landrun fails Adds the `permission-denied` label on PRs that get blocked by landrun. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict CI 68/8 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
297-41622
9 months ago
297-41622
297 days ago
46-52210
46 days
27451 kckennylau
author:kckennylau
feat(RingTheory/Valuation): define ball, closed ball, and sphere *From the 2025 Local Class Field Theory Workshop.* --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 27/0 Mathlib/RingTheory/Valuation/Basic.lean 1 13 ['JovanGerb', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky', 'wwylele'] nobody
291-74125
9 months ago
291-74126
291 days ago
17-52359
17 days
27987 kckennylau
author:kckennylau
feat(RingTheory/Valuation): define ball, closed ball, and sphere --- The pullback PR of #26827 and #27451. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory large-import 73/0 Mathlib/RingTheory/Valuation/Basic.lean 1 4 ['JovanGerb', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
291-73754
9 months ago
291-73755
291 days ago
6-6455
6 days
27003 eric-wieser
author:eric-wieser
chore: use `Simp.ResultQ` more often Also uses `~q` in place of manual `isDefEq` matching. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 18/22 Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/ReduceModChar.lean 3 7 ['JovanGerb', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
290-1978
9 months ago
290-1979
290 days ago
32-70098
32 days
25401 digama0
author:digama0
feat(Util): SuppressSorry option See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 342/0 Mathlib.lean,Mathlib/Util/CommandElabHook.lean,Mathlib/Util/SuppressSorry.lean,MathlibTest/suppressSorry.lean 4 15 ['digama0', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] alexjbest
assignee:alexjbest
289-43174
9 months ago
289-43174
289 days ago
71-27957
71 days
28622 alreadydone
author:alreadydone
chore(Mathlib): replace `=>` by `↦` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 51792/51792 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Hom/Rat.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Spectrum/Pi.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Matrix.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Unitization.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Finsupp/Fin.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Sigma.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/AlgCat/Monoidal.lean,Mathlib/Algebra/Category/BialgCat/Basic.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CoalgCat/Basic.lean,Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/Biproducts.lean,Mathlib/Algebra/Category/Grp/CartesianMonoidal.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/Grp/FilteredColimits.lean,Mathlib/Algebra/Category/Grp/Images.lean,Mathlib/Algebra/Category/Grp/Kernels.lean,Mathlib/Algebra/Category/Grp/LargeColimits.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/Grp/Preadditive.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Category/Grp/Zero.lean,Mathlib/Algebra/Category/GrpWithZero.lean,Mathlib/Algebra/Category/HopfAlgCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Images.lean,Mathlib/Algebra/Category/ModuleCat/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Closed.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Abelian.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Category/ModuleCat/Products.lean 3838 4 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
283-46654
9 months ago
283-46655
283 days ago
0-62065
17 hours
28626 alreadydone
author:alreadydone
chore(Archive, Counterexamples): replace => by ↦ --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 288/288 Archive/Arithcc.lean,Archive/Examples/IfNormalization/Result.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Archive/Examples/PropEncodable.lean,Archive/Imo/Imo1959Q1.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1977Q6.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2019Q1.lean,Archive/Imo/Imo2024Q5.lean,Archive/MiuLanguage/Basic.lean,Archive/MiuLanguage/DecisionSuf.lean,Archive/OxfordInvariants/Summer2021/Week3P1.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/AscendingDescendingSequences.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Archive/Wiedijk100Theorems/Partition.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Counterexamples/AharoniKorman.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CharPZeroNeCharZero.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/DirectSumIsInternal.lean,Counterexamples/GameMultiplication.lean,Counterexamples/Girard.lean,Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Phillips.lean,Counterexamples/Pseudoelement.lean,Counterexamples/QuadraticForm.lean,Counterexamples/SorgenfreyLine.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean 54 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
281-75780
9 months ago
281-75781
281 days ago
2-47136
2 days
27403 MoritzBeroRoos
author:MoritzBeroRoos
fix: replace probably erroneous usage of ⬝ (with old \cdot) by · (with \centerdot) Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot). Currently the abbreviations \cdot and \centerdot resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for center..). This pr replaces instances of ⬝ where · was probably meant. All of the replacement is in comments, except for the file bench_summary.lean which is used for priting the github benchmark results. Since this file is about scientific notation of numbers, sure · was meant to be used, not a rectangle. [Related](https://github.com/leanprover-community/mathlib4/pull/27399) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor 195/195 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Normed/Unbundled/InvariantExtension.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/FieldTheory/PurelyInseparable/PerfectClosure.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,Mathlib/Topology/Instances/Matrix.lean,scripts/bench_summary.lean 49 5 ['eric-wieser', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
280-22416
9 months ago
302-84738
302 days ago
7-54661
7 days
28042 kckennylau
author:kckennylau
feat(Topology/ValuativeRel): a topological basis indexed by pairs of elements --- The pullback PR of #27314 and #27163. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 140/23 Mathlib/RingTheory/Valuation/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 2 3 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
280-22370
9 months ago
289-73814
289 days ago
7-4998
7 days
27399 MoritzBeroRoos
author:MoritzBeroRoos
chore: replace every usage of ⬝ᵥ (with old \cdot) by ·ᵥ (with \centerdot) Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot). Currently the abbreviations `\cdot` and `\centerdot` resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for `center`..): - `\cdot` gives ⬝ [U+2B1D](https://www.compart.com/en/unicode/U+2B1D) "Black Very Small Square" - `\centerdot` gives · [U+00B7](https://www.compart.com/en/unicode/U+00B7) "Middle Dot" Mathlib mostly uses the `\centerdot` variant, except for the dotProduct notation and some probably unsuspecting people wanting \centerdot but getting \cdot in their comments and 6 uses of a notation using the raw `\cdot` without any subscript at `Mathlib\Topology\Homotopy\Product.lean`. This PR replaces the dot product `⬝ᵥ` with its `\centerdot` counterpart `·ᵥ`. The related PR [here](https://github.com/leanprover/vscode-lean4/pull/639) can then overwrite the `\cdot` abbreviation, to produce the same symbol as the `centerdot` abbreviation does. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor 133/133 Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/Topology/Instances/Matrix.lean 25 6 ['MoritzBeroRoos', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
279-70648
9 months ago
302-84739
302 days ago
7-62439
7 days
28148 kckennylau
author:kckennylau
feat(Matrix): Simproc and Rw-proc for Matrix Transpose Co-authored by Aaron Liu. ```lean example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by rw [transpose_of% 2 3] example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by rw [transpose_of] example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by simp only [matrix_transpose] ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 267/8 Mathlib.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/LinearAlgebra/UnitaryGroup.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/Matrix.lean,MathlibTest/Simproc/Matrix.lean,MathlibTest/matrix.lean,scripts/noshake.json 8 32 ['eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'plp127'] eric-wieser
assignee:eric-wieser
275-27582
9 months ago
275-27583
275 days ago
12-78143
12 days
26908 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): alternative ext principle for unitors Currently, our infrastructure for left/right unitors for Day convolution of functors `C ⥤ V` do not have satisfactory extensionality principle: the current way to characterize morphisms out of `U ⊛ F` is the default extensionality principle for Day convolution, which characterizes first such functors via functors out of `U ⊠ F`. Left unitors are then obtained using the fact `U ⊠ F` is a left Kan extension of a functor from `PUnit × C` (which is equivalent to `C`) but we did not record on its own this principle. Using the transitivity of left Kan extensions proved in #26899, we directly exhibit `U ⊛ F` as a left Kan extension of `F ⋙ tensorLeft (𝟙_ V)` along `tensorLeft (𝟙_ C)`. The unit of this Kan extension is composed exactly of the morphisms that appear in the [characterization of left unitors](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/DayConvolution.html#CategoryTheory.MonoidalCategory.DayConvolutionUnit.leftUnitor_hom_unit_app). We also slightly generalize the instances that express that external products with unitors are left Kan extensions, so that they can be used when taking external products with more complicated functors than currently. This is again useful when chaining extensionality lemmas for morphisms out of terms of the form `(F ⊛ U) ⊛ G`. We prove a similar thing for right unitors With this, it should be possible to have a much more satisfactory way of working with Day convolutions: this allows to "elimiinate" units without ending up with terms in an external product. --- - [ ] depends on: #26899 - [ ] depends on: #26906 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 307/18 Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean 2 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
263-73928
8 months ago
263-73929
263 days ago
0-1812
30 minutes
27150 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): constructors for braided and symmetric structure on day convolutions monoidal categories Following the pattern in #27119, we give API to construct `BraidedCategory` and `SymmetricCategory` structures on a monoidal category equipped with a `LawfulDayConvolutionMonoidalCategoryStruct`. To achieve this, we introduce an other type class `LawfulDayConvolutionBraidedCategoryStruct` that bundles an associator isomorphism that behaves like the one constructed for functors in #27067. We provide a noncomputable constructor for this typeclass that takes as input fullness of the "realization" functor to a category of functors, and we show that the typeclasses are sufficient to define the desired structures. --- - [x] depends on: #27067 - [x] depends on: #26820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 826/9 Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean 2 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
263-68967
8 months ago
319-12262
319 days ago
0-1002
16 minutes
27119 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): constructors for closed monoidal day convolution monoidal structures Following the pattern introduced in #26798 and #26820 and using results of #26879, we introduce a typeclass `LawfulDayConvolutionClosedMonoidalCategoryStruct` that encodes the data needed on a `LawfulDayConvolutionMonoidalCategoryStruct` to define well-behaved internal homs. We give a constructor assuming existence of relevant ends, and prove that this data defines a `MonoidalClosed` instance on the monoidal category structures one can deduce from `LawfulDayConvolutionMonoidalCategoryStruct`. --- - [x] depends on: #27079 - [x] depends on: #27091 - [x] depends on: #26879 - [x] depends on: #26820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 900/9 Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Closed.lean 2 6 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
262-82818
8 months ago
320-17730
320 days ago
0-1
1 second
28623 gilesgshaw
author:gilesgshaw
feat(Logic/Basic): minor additions and simplification of proofs Add new theorems and simplify proofs. Specifically, we add the family of related theorems `apply_dite_iff_exists`, `apply_dite_iff_forall`, `apply_ite_iff_and` and `apply_ite_iff_or`. For each other 'family' of theorems in the file that is analogous to the above, we do the following - Simplify proofs where possible, e.g. by appealing to the new theorems - Complete the family, if any of the corresponding four are missing - Rename to ensure consistency with the above pattern --- merge-conflict t-logic new-contributor 83/55 Archive/Examples/IfNormalization/Result.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Notation/Indicator.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/Logic/Basic.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/SetTheory/Ordinal/Notation.lean 9 12 ['eric-wieser', 'gilesgshaw', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] awainverse
assignee:awainverse
262-76679
8 months ago
262-76680
262 days ago
10-61840
10 days
26154 ADedecker
author:ADedecker
refactor: add refactored APIs for algebraic filter bases This PR continues the work from #18437. Original PR: https://github.com/leanprover-community/mathlib4/pull/18437 merge-conflict t-topology 651/0 Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 5 3 ['ADedecker', 'github-actions', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
257-2523
8 months ago
257-2524
257 days ago
87-79752
87 days
29330 plp127
author:plp127
chore: define `Fin.cycleIcc` with conditions Redefine `Fin.cycleIcc` using conditionals instead of composing existing `Fin` operations together. Its worst-case runtime drops from O(n) to O(1). As a bonus, the definition no longer needs explaining. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-group-theory 61/68 Mathlib/GroupTheory/Perm/Fin.lean 1 10 ['JovanGerb', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'tb65536'] nobody
248-14120
8 months ago
248-14121
248 days ago
20-3817
20 days
21950 erdOne
author:erdOne
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-number-theory 253/1 Mathlib.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroMulInt.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean 7 33 ['Ruben-VandeVelde', 'erdOne', 'faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky', 'smmercuri', 'xroblot'] nobody
245-75630
8 months ago
326-75567
326 days ago
73-10873
73 days
27214 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): Categorical pullback squares In this PR, we give the definition and first basic properties of categorical pullback squares. Using our previous work on `CategoricalPullback`, we define a typeclass `CatPullbackSquare T L R B` that asserts that a given `CatCommSq T L R B` is a "pullback square": this is the data of a chosen adjoint equivalence to the canonical functor from the top left corner of the square to the categorical pulback of its leg. Using this equivalence, be derive a universal property for functors from `X`with values in the top left corner of the square: they are equivalent to `CatCommSqOver R B X`, the category of categorical commutative squares over the cospan `R, B` with top left corner `X`. We prove some coherence result for this equivalence, most notably an isomorphism that, given `S : CatCommSqOver R B X`, bundles the two commutative triangles formed by the induced functor, and the coherence between the squares that these isomorphisms satisfy: this is conveniently bundled in the data of a single isomorphisms of `CatCommSqOver R B X`. Finally, we provide a `Prop`-class `IsCatPullbackSquare` that merely asserts the existence (via `Nonempty`) of the relevant data: we show that it is tautotogically equivalent to the propopsition that the canonical functor to the categorical pullback is an equivalence. --- - [ ] depends on: #26679 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 786/1 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65712
8 months ago
242-65713
242 days ago
0-4464
1 hour
26466 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory/Augmented): the canonical monoid object in the augmented simplex category Show that in the augmented simplex category, `⦋0⦌` is an internal monoid object. Future work will show that this is in fact the universal monoid object: for any monoidal category `C`, evaluation at `⦋0⦌` induces an equivalence of categories between `Mon_ C` and the category of monoidal functors from `AugmentedSimplexCategory` to `C`. The resulting augmented cosimplicial object one gets from this construction is sometimes called the "monoidal bar construction" attached to a monoid. This PR was split from #25743. --- - [ ] depends on: #25743 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-topology t-category-theory 571/111 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Mon_.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Monoidal.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean 6 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
241-85114
7 months ago
337-5998
337 days ago
0-1708
28 minutes
26578 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Pullbacks/Categorical/CatCospanTransform): adjunctions of categorical cospans We build upon the bicategory-like structure developed in #26447 and #26412 to define the notion of adjunctions of categorical cospans. This is a structure encoding the data of two `CatCospanTransform`s, along with the usual unit and counit morphisms as part of the data, satisfying the usual left and right triangle identities. We provide basic API for these, such as extracting adjunctions between individual components. We also provide a proof that the notion satisfies a "coherence": with our chosen constructor, the forward direction of the structure `CatCommSq` on the left adjoints correspond to the inverse of the square for the right adjoints through `mateEquiv`. These adjunctions will be used as a substrate for defining equivalences of categorical cospans in a future PR: such an equivalence will be a structure extending a `CatCospanAdjunction` with isomorphisms data on the unit and co-unit (we will however provide alternative constructors in sync with the constructor for equivalences of categories). --- - [x] depends on: #26447 - [x] depends on: #26547 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory large-import 205/0 Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean 1 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
241-1939
7 months ago
333-11111
333 days ago
0-625
10 minutes
23621 astrainfinita
author:astrainfinita
chore: deprecate `LinearOrderedComm{Monoid, Group}WithZero` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #20676 merge-conflict t-algebra t-order
label:t-algebra$
261/205 Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/Integral.lean,Mathlib/RingTheory/Valuation/Minpoly.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValExtension.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/UnitInterval.lean,MathlibTest/instance_diamonds.lean,scripts/noshake.json 44 24 ['YaelDillies', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] kbuzzard
assignee:kbuzzard
237-70054
7 months ago
408-42427
408 days ago
5-42380
5 days
27990 kckennylau
author:kckennylau
feat(Counterexamples): a nontrivial valuation with discrete topology This file constructs a valuation on `K[X]` satisfying `IsValuativeTopology K[X] ∧ Nonempty (valuation K[X]).RankOne ∧ IsNontrivial K[X] ∧ DiscreteTopology K[X]`, and proves that `IsValuativeTopology F ∧ IsNontrivial F ∧ DiscreteTopology F` is not possible if `F` is a field. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 172/0 Counterexamples.lean,Counterexamples/DiscreteTopologyWithNontrivialValuation.lean 2 14 ['github-actions', 'grunweg', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky'] nobody
229-72185
7 months ago
229-72186
229 days ago
67-79609
67 days
28132 dupuisf
author:dupuisf
feat: preliminary `grind` tags for `IsUnit` This PR adds preliminary `grind` tags for the `IsUnit` predicate. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
61/17 Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Ring/Units.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean 6 3 ['github-actions', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
206-48783
6 months ago
206-48784
206 days ago
80-71575
80 days
26827 pechersky
author:pechersky
feat(Analysis/Normed/ValuativeRel): helper instance for NormedField --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26713 - [x] depends on: #26826 merge-conflict t-algebra t-number-theory t-analysis
label:t-algebra$
211/27 Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 3 34 ['ADedecker', 'adamtopaz', 'erdOne', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] kbuzzard
assignee:kbuzzard
198-77387
6 months ago
198-77387
198 days ago
122-64394
122 days
22662 plp127
author:plp127
feat: Localization.Away.lift (computably) This PR adds `Localization.Away.lift'` and `Localization.Away.lift`, computable alternatives to `Localization.awayLift`. --- - [x] depends on: #24791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
74/0 Mathlib/RingTheory/Localization/Away/Basic.lean 1 18 ['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] kim-em
assignee:kim-em
192-13646
6 months ago
192-13647
192 days ago
257-28368
257 days
24850 pechersky
author:pechersky
feat(Topology/UniformSpace/Ultra): uniform spaces induced by pseudometrics are ultra if system is ultra Any uniform space has a natural system of pseudometrics definable on it, comprised of those pseudometrics constructed from a descending chain of equivalence relation entourages. In a nonarchimedean uniformity, this pseudometric system induces the uniformity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #23111 merge-conflict t-topology 509/1 Mathlib.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Ultra/Pseudometrizable.lean 3 9 ['ADedecker', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] urkud
assignee:urkud
192-13474
6 months ago
192-13475
192 days ago
177-43034
177 days
26914 quangvdao
author:quangvdao
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence. We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute Some things I'm not clear on: - I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level? - Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation. - Need a double-check on the priority of notation. Some future definitions to add: - Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`. - Definitions of Lenses and Charts (each of them will be a file or even a folder) - Exponential objects (corresponding to both `prod` and `tensor`) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 144/5 Mathlib/Data/PFunctor/Univariate/Basic.lean 1 20 ['alexkeizer', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao'] eric-wieser
assignee:eric-wieser
192-12952
6 months ago
192-12953
192 days ago
133-23955
133 days
28125 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics): basic definition of simplicial complexes This PR introduces the basic definition of a finite (abstract) simplicial complex, located in Mathlib/Combinatorics/SimplicialComplex/Basic.lean. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this is a small stepping stone in that direction. Some other commits will shortly depend on this one. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. We would also like to thank our group members Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. merge-conflict t-combinatorics new-contributor 374/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
192-12647
6 months ago
192-12648
192 days ago
99-64548
99 days
28871 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Tournaments Define orientations and tournaments. Related to #26771. Co-authored-by: Rida Hamadani --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 62/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean 3 6 ['JaafarTanoukhi', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib4-merge-conflict-bot'] kmill
assignee:kmill
192-12494
6 months ago
192-12495
192 days ago
55-54919
55 days
29526 llllvvuu
author:llllvvuu
feat: `Multiset.map f` identifies `f` up to permutation Motivation: Reason about `Fintype`-indexed families via `Multiset` equality. Example use case 1: ```lean theorem Matrix.IsHermitian.cfc_eigenvalues {d : Type*} [Fintype d] [DecidableEq d] {M : Matrix d d 𝕜} (hM : M.IsHermitian) (f : ℝ → ℝ) (hcfc : Matrix.IsHermitian (cfc f M) := cfc_predicate f M) : ∃ (e : d ≃ d), hcfc.eigenvalues = f ∘ hM.eigenvalues ∘ e := by have := hcfc.roots_charpoly_eq_eigenvalues.symm rw [hM.charpoly_cfc_eq f, Polynomial.roots_prod] at this; swap · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this have he := (Multiset.compTriple_equivOfMapUnivEq this).comp_eq simp_rw [← Function.comp_def RCLike.ofReal, ← Function.comp_def f, Function.comp_assoc] at he exact ⟨_, RCLike.ofReal_injective.comp_left he.symm⟩ ``` Example use case 2 (on top of https://github.com/leanprover-community/mathlib4/pull/29610): ```lean theorem LinearMap.Eigenbasis.μ_equiv {ι ι' R G : Type*} [Fintype ι] [Fintype ι'] [CommRing R] [IsDomain R] [AddCommGroup G] [Module R G] [Module.Free R G] [Module.Finite R G] {f : Module.End R G} (B₁ : f.Eigenbasis ι) (B₂ : f.Eigenbasis ι') : ∃ e : ι ≃ ι', B₁.μ = B₂.μ ∘ e := by classical have := congr(Polynomial.roots $(B₁.charpoly_eq.symm.trans B₂.charpoly_eq)) rw [Polynomial.roots_prod, Polynomial.roots_prod] at this; rotate_left · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this exact ⟨Multiset.equivOfMapUnivEq this, (Multiset.compTriple_equivOfMapUnivEq this).comp_eq.symm⟩ ``` Co-authored-by: Aristotle Harmonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 35/0 Mathlib/Data/Multiset/Fintype.lean 1 9 ['Ruben-VandeVelde', 'github-actions', 'llllvvuu', 'mathlib4-merge-conflict-bot', 'vihdzp', 'wwylele'] pechersky
assignee:pechersky
192-12456
6 months ago
192-12457
192 days ago
69-23034
69 days
29947 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Maps Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 476/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Maps.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
192-11860
6 months ago
192-11861
192 days ago
54-82760
54 days
31356 adomani
author:adomani
feat: add inspect-like functions Produces a tree-like formatting for `Syntax`, `Expr` and `InfoTree`. Especially for the `InfoTree`s, there are *many* parts of it that do not get printed. For instance, this is how the `InfoTree`s of `set_option linter.missingDocs true` get printed: ```lean inspectIT set_option linter.missingDocs true /- commandCtx |-Info.ofCommandInfo: Lean.Elab.Command.elabSetOption, 'set_option…gDocs true' | |-Info.ofCompletionInfo.CompletionInfo.option 'set_option…issingDocs' | |-Info.ofOptionInfo: linter.missingDocs, Linter.linter.missingDocs -/ ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 720/0 Mathlib.lean,Mathlib/Util/Inspect.lean,MathlibTest/Inspect.lean 3 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] kim-em
assignee:kim-em
192-6881
6 months ago
192-6882
192 days ago
11-61697
11 days
6993 jjaassoonn
author:jjaassoonn
feat: lemmas about `AddMonoidAlgebra.{divOf, modOf}` --- - [x] depends on: #7582 - [x] depends on: #8975 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
147/3 Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/MvPolynomial/Basic.lean,Mathlib/Data/MvPolynomial/CommRing.lean,Mathlib/Data/MvPolynomial/Division.lean 5 42 ['YaelDillies', 'alreadydone', 'digama0', 'eric-wieser', 'github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
191-72205
6 months ago
861-76958
861 days ago
103-330
103 days
9339 FMLJohn
author:FMLJohn
feat(RingTheory/GradedAlgebra/HomogeneousIdeal): given a finitely generated homogeneous ideal of a graded semiring, construct a finite spanning set for the ideal which only contains homogeneous elements --- - [ ] depends on: #8187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 402/4 Mathlib.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousIdeal.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean 8 11 ['FMLJohn', 'github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
191-72158
6 months ago
875-77136
875 days ago
6-63597
6 days
10349 Shamrock-Frost
author:Shamrock-Frost
refactor(CategoryTheory/MorphismProperty): some clean-ups We make explicit some of the galois connections/closure operators in the existing MorphismProperty file, rewrite some proofs to take advantage of these structures, and change map/inverseImage by (1) swapping their argument order, for consistency with Set.range and Set.preimage and (2) making "map" perform the strict, evil map while "essMap" (previously called map) forms the closure of the image under isomorphisms. Finally we add `IsMultiplicative` instances for isos/epis/monos, with an eye towards constructing the wide subcategory on these classes of maps. --- - [x] depends on: #10347 - [x] depends on: #10348 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 474/318 Mathlib/CategoryTheory/Localization/Composition.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean,Mathlib/CategoryTheory/MorphismProperty.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Order/Closure.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Order/RelIso/Basic.lean 8 1 ['leanprover-community-mathlib4-bot'] nobody
191-72116
6 months ago
842-40860
842 days ago
0-418
6 minutes
26890 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): more API for `DayFunctor` We provide some lemmas that helps characterizing the monoidal structure on `DayFunctor`, they are special cases of the lemmas for `LawfulDayConvolutionMonoidalCategoryStruct`. --- - [x] depends on: #26824 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 1372/19 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean 4 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
191-71508
6 months ago
326-10117
326 days ago
0-517
8 minutes
24016 plp127
author:plp127
feat: fine uniformity Adds the fine uniformity, and proves some properties. --- - [ ] depends on: #24096 for showing the induced topology is equal on completely regular spaces [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 283/0 Mathlib.lean,Mathlib/Topology/UniformSpace/FineUniformity.lean,Mathlib/Topology/UniformSpace/Uniformizable.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
186-31875
6 months ago
408-40625
408 days ago
2-85308
2 days
26912 pechersky
author:pechersky
chore(Algebra/Ring/Subring): simp tag `Subring.smul_def` s-multiplying by a subtype is easiest to manipulate when both terms are in the ambient type. Many places that had to use the _def lemma for a rewrite, or to include it in a simp set, no longer have to. Ported from #25308 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) I found this being not-simp frustrating when talking about submodules over a valuation subring. merge-conflict t-algebra
label:t-algebra$
67/66 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Exact.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Ring/Periodic.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean,Mathlib/RingTheory/OreLocalization/Basic.lean 25 26 ['artie2000', 'eric-wieser', 'github-actions', 'j-loreaux', 'kckennylau', 'leanprover-bot', 'leanprover-radar', 'linesthatinterlace', 'mathlib4-merge-conflict-bot', 'pechersky'] joelriou
assignee:joelriou
165-44659
5 months ago
186-80608
186 days ago
63-23787
63 days
33434 astrainfinita
author:astrainfinita
chore: redefine `Finsupp.indicator` using `Finsupp.onFinset` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 6/17 Mathlib/Data/Finsupp/Indicator.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
142-77598
4 months ago
50-54754
50 days ago
5-35275
5 days
33126 CoolRmal
author:CoolRmal
feat: function composition preserves boundedness This PR adds the following theorem: if the range of a function `g` is bounded above, then `g ∘ f` is bounded above for all functions `f`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 12/0 Mathlib/Order/Bounds/Basic.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] bryangingechen
assignee:bryangingechen
133-75511
4 months ago
133-75512
133 days ago
27-6197
27 days
29587 uniwuni
author:uniwuni
feat(GroupTheory/Finiteness): define finitely generated semigroups We define finitely generated semigroups and basics similarly to monoids and groups and prove that semigroups and monoids remain finitely generated when a congruence is quotiented out. This will be important when further developing semigroup theory. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-group-theory 259/14 Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/GroupTheory/Finiteness.lean 2 4 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'uniwuni'] dupuisf
assignee:dupuisf
132-680
4 months ago
234-5584
234 days ago
25-78230
25 days
29014 ShreckYe
author:ShreckYe
feat(Data/List/Scan): some theorems that relate `scanl` with `foldl` I am not sure which is the best form of `getElem_scanl_eq_foldl_take` here, so I added several alternative forms. Feel free to remove any of them if necessary. merge-conflict t-data 35/0 Mathlib/Data/List/Scan.lean 1 15 ['ShreckYe', 'github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] pechersky
assignee:pechersky
127-66304
4 months ago
201-31349
201 days ago
74-59834
74 days
9820 jjaassoonn
author:jjaassoonn
feat(RingTheory/GradedAlgebra/HomogeneousIdeal): generalize to homogeneous submodule The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to a homogeneous submodules. So say $R$ is a ring and $M \cong \bigoplus_{i} M_i$ is an $R$-module. Then a homogeneous $R$-submodule of $M$ is an $R$-submodule $N$ such that for all $i$ and $n \in N$, $n_i \in N$. Note that this notion doesn't actually require $R$ to be graded and $M$ is a graded module. But for more interesting lemmas, we do need that $M$ is graded $R$-module. We bake the fact $R$ is graded into the definition of homogeneous submodule, otherwise, `CompleteLattice HomogeneousSubmodule` cannot find the order of synthesis (the proof depends on that $R$ is graded) All definitions/constructions/theorems have a copy for ideals as well, this is to make sure dot notation still works. The motivation of this generalization is graded quotient module --- - [x] depends on:#18728 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 516/185 Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,scripts/nolints_prime_decls.txt 7 3 ['github-actions', 'leanprover-community-bot-assistant'] nobody
110-6333
3 months ago
329-29574
329 days ago
52-59768
52 days
34931 eric-wieser
author:eric-wieser
perf: make TensorProduct.lift irreducible with a unification hint --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
6/2 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 7 ['eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] erdOne
assignee:erdOne
106-60753
3 months ago
106-60754
106 days ago
5-66655
5 days
33020 FormulaRabbit81
author:FormulaRabbit81
chore(Topology): Deprecate file --- - [x] depends on: #30851 deprecation [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import merge-conflict 82/49 Mathlib/Topology/Compactness/HilbertCubeEmbedding.lean,Mathlib/Topology/MetricSpace/HausdorffAlexandroff.lean,Mathlib/Topology/MetricSpace/PiNat.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
104-37364
3 months ago
163-24753
163 days ago
0-14835
4 hours
33281 michelsol
author:michelsol
feat(Analysis/SpecialFunctions/Integrals): integral of 1/sqrt(1-x^2) and its integrability. Add the integral of the derivative of arcsin and its integrability. --- - [ ] depends on: #33280 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict t-analysis 59/0 Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
104-6158
3 months ago
155-60383
155 days ago
0-2872
47 minutes
34156 zcyemi
author:zcyemi
feat(Analysis/Convex/Between): add lemmas on convex combination of mem simplex interior --- I add three lemmas of convex combinations preserving membership in the interior of a simplex. And also open a zulip thread [#mathlib4 > Best place for convex combination and simplex interior](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Best.20place.20for.20convex.20combination.20and.20simplex.20interior/with/568558406) deps: - [ ] depends on: #33852 t-analysis merge-conflict 170/0 Mathlib/Analysis/Convex/Between.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
103-68475
3 months ago
103-68475
103 days ago
0-3761
1 hour
32918 michelsol
author:michelsol
feat: define `supEdist` and `supDist` Create a new file Topology.MetricSpace.SupDistance and define the supremal distance in (extended) metric spaces. The defined `supEdist` and `supDist` will have similar theory to the already existing `infEdist` and `infDist`. The motivation is to be able to define the radius of a minimal bounding sphere as the infimum of the supDist later. [zulip discussion here](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalizing.20Jung's.20theorem.20and.20minimal.20bounding.20spheres) t-topology new-contributor merge-conflict 75/0 Mathlib.lean,Mathlib/Topology/MetricSpace/SupDistance.lean 2 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'michelsol', 'urkud'] nobody
102-62657
3 months ago
144-55042
144 days ago
21-3598
21 days
25980 Multramate
author:Multramate
refactor(Algebra/Group/Submonoid/Operations): rename restrict to domRestrict and add restrict And update the documentation for consistency t-group-theory merge-conflict 145/123 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Maps.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 14 10 ['Multramate', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts'] nobody
101-42603
3 months ago
101-42604
101 days ago
5-9216
5 days
25981 Multramate
author:Multramate
feat(GroupTheory/GroupAction/Basic): define homomorphisms of fixed subgroups induced by homomorphisms of groups This PR continues the work from #10126. Original PR: https://github.com/leanprover-community/mathlib4/pull/10126 t-group-theory large-import merge-conflict 218/144 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Ring/Action/Submonoid.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Maps.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 16 8 ['copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts'] nobody
101-42602
3 months ago
101-42602
101 days ago
4-78395
4 days
33795 alreadydone
author:alreadydone
feat(Topology/Sheaves): LocalPredicate prerequisite for étalé spaces --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology merge-conflict 418/143 Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean 6 12 ['adamtopaz', 'alreadydone', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] adamtopaz
assignee:adamtopaz
101-20236
3 months ago
101-20237
101 days ago
34-21636
34 days
34674 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): replace ENNReal lemmas with WithTop versions * Add `WithTop` versions of basic multiplicative order lemmas. * Use the new `WithTop` lemmas to replace `ENNReal` proofs and address six TODOs. * Fix a typo in the `pos_of_ne_zero` alias name. new-contributor t-algebra merge-conflict
label:t-algebra$
46/15 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/ENNReal/Operations.lean 3 5 ['Citronhat', 'Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] Ruben-VandeVelde
assignee:Ruben-VandeVelde
101-106
3 months ago
101-107
101 days ago
17-1225
17 days
33746 ster-oc
author:ster-oc
feat(Algebra/Module/ZLattice): align `ZSpan.floor` to `Int.floor` API This PR adds some of the existent lemmas about `Int.floor`, `Int.ceil` and `Int.fract` to the `ZSpan` namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor merge-conflict
label:t-algebra$
353/145 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Topology/Algebra/Order/Floor.lean 3 8 ['github-actions', 'joelriou', 'mathlib-merge-conflicts', 'ster-oc'] joelriou
assignee:joelriou
96-17004
3 months ago
96-17004
96 days ago
30-23357
30 days
31595 astrainfinita
author:astrainfinita
chore: redefine `Ideal.IsPrime` Redefine `Ideal.IsPrime` to make it correct for non-commutative cases --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
333/100 Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Noetherian.lean,Mathlib/RingTheory/Ideal/Oka.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Ideal/Prime.lean,Mathlib/RingTheory/Ideal/Prod.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IsPrimary.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/Valuation/Basic.lean 22 33 ['alreadydone', 'artie2000', 'astrainfinita', 'erdOne', 'github-actions', 'leanprover-bot', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
93-26566
3 months ago
62-23222
62 days ago
59-66521
59 days
33791 PhoenixIra
author:PhoenixIra
feat: Generalization of FixedPointApproximants to CompletePartialOrder --- This PR provides a generalization of FixedPointApproximants to CompletePartialOrder. Not every theorem can be generalized, as sometimes we require additional conditions (namely `x ≤ f x`) in order to guarantee that the set is directed and thus the supremum is well-defined. This is not necessary in a CompleteLattice. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 223/100 Mathlib/Order/CompletePartialOrder.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean 2 21 ['PhoenixIra', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] PhoenixIra and vihdzp
assignee:PhoenixIra assignee:vihdzp
91-53738
3 months ago
91-53738
91 days ago
44-16098
44 days
26942 pechersky
author:pechersky
feat(RingTheory/Valuation/ValueGroupIso): isomorphism of value groups when compatible and also to the ValuativeRel's value group by request from comment in https://github.com/leanprover-community/mathlib4/pull/26754#issuecomment-3051770901 - [ ] depends on: #26588 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26939 - [x] depends on: #26940 - [x] depends on: #26941 merge-conflict t-ring-theory t-order 299/3 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/RingTheory/Valuation/ValueGroupIso.lean 6 10 ['faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'pechersky'] faenuccio
assignee:faenuccio
88-84319
2 months ago
288-69729
288 days ago
10-67838
10 days
14712 astrainfinita
author:astrainfinita
perf: change instance priority and order about `OfNat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
49/20 Mathlib/Algebra/Group/Nat.lean,Mathlib/Algebra/Group/ZeroOne.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/UInt.lean,Mathlib/NumberTheory/ArithmeticFunction.lean 9 26 ['MichaelStollBayreuth', 'astrainfinita', 'eric-wieser', 'fpvandoorn', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mathlib-bors'] nobody
84-83424
2 months ago
659-61594
659 days ago
20-15089
20 days
17627 hrmacbeth
author:hrmacbeth
feat: universal properties of vector bundle constructions Characterizations for the smoothness of maps into the total spaces of (1) the direct sum of two vector bundles; (2) the pullback of a vector bundle. This gap in the library was exposed by #17358. --- - [x] depends on: #22804 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry 311/9 Mathlib/Data/Bundle.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/Pullback.lean,Mathlib/Topology/FiberBundle/Constructions.lean 4 26 ['PatrickMassot', 'fpvandoorn', 'github-actions', 'grunweg', 'hrmacbeth', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'sgouezel'] grunweg
assignee:grunweg
84-83412
2 months ago
344-83151
344 days ago
91-68302
91 days
36165 Parcly-Taxel
author:Parcly-Taxel
chore: deprecate `Nat.strongRec(On)'` In favour of Batteries's `Nat.strongRec` for definitions and `Nat.strong_induction_on` for proofs. t-data merge-conflict 34/66 Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/Nat/Factorization/Induction.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Topology/EMetricSpace/Paracompact.lean 8 6 ['JovanGerb', 'MichaelStollBayreuth', 'Parcly-Taxel', 'Vierkantor', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
82-82018
2 months ago
70-67078
70 days ago
15-53464
15 days
35042 JovanGerb
author:JovanGerb
chore: remove `meta` form `import Mathlib.Tactic...` This PR cleans up some imports of the form `import Mathlib.Tactic...`, by either removing them entirely, or removing the `meta` keyword. It should never be necessary to `meta import` a file from `Mathlib.Tactic`, because the relevant definitions should already have been marked as `meta`. The motivation is to reduce the amount of files that are `meta` imported when writing e.g. `import Mathlib`, hence reducing the amount of stuff that needs to be loaded. There are more other `meta import`s that need to be removed, but this PR is a good start. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 61/142 Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/Data/List/ChainOfFn.lean,Mathlib/Dynamics/OmegaLimit.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/Tactic/Algebraize.lean,Mathlib/Tactic/ApplyFun.lean,Mathlib/Tactic/ArithMult.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/CategoryTheory/Coherence/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/CategoryTheory/Coherence/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Elementwise.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Tactic/Choose.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/DefEqTransformations.lean,Mathlib/Tactic/DeriveCountable.lean,Mathlib/Tactic/DeriveFintype.lean,Mathlib/Tactic/DeriveTraversable.lean,Mathlib/Tactic/ENatToNat.lean,Mathlib/Tactic/Explode.lean,Mathlib/Tactic/Explode/Pretty.lean,Mathlib/Tactic/FinCases.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRewrite/Elab.lean,Mathlib/Tactic/Group.lean,Mathlib/Tactic/IrreducibleDef.lean,Mathlib/Tactic/Lift.lean,Mathlib/Tactic/Linarith.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/Gauss.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Linarith/Verification.lean,Mathlib/Tactic/LinearCombination/Lemmas.lean,Mathlib/Tactic/Linter/DeprecatedSyntaxLinter.lean,Mathlib/Tactic/Linter/DocPrime.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/EmptyLine.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/Linter/GlobalAttributeIn.lean,Mathlib/Tactic/Linter/HashCommandLinter.lean,Mathlib/Tactic/Linter/Multigoal.lean,Mathlib/Tactic/Linter/OldObtain.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/MinImports.lean,Mathlib/Tactic/MoveAdd.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/NormNum/DivMod.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Prime.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/CollectFacts.lean,Mathlib/Tactic/Order/Graph/Tarjan.lean,Mathlib/Tactic/PNatToNat.lean,Mathlib/Tactic/Peel.lean,Mathlib/Tactic/ProdAssoc.lean,Mathlib/Tactic/ProxyType.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Qify.lean,Mathlib/Tactic/RSuffices.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/Common.lean,Mathlib/Tactic/Ring/Compare.lean,Mathlib/Tactic/Ring/PNat.lean,Mathlib/Tactic/Simproc/Divisors.lean,Mathlib/Tactic/Simproc/FinsetInterval.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Subsingleton.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Tactic/TautoSet.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/TagUnfoldBoundary.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CommDiag.lean,Mathlib/Tactic/Widget/CongrM.lean 107 9 ['JovanGerb', 'dupuisf', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
79-73368
2 months ago
75-10261
75 days ago
26-69911
26 days
36495 AlexKontorovich
author:AlexKontorovich
chore(Finset/NatDivisors): refactor `card_divisors_mul` and `sum_divisors_mul` to not rely on `ArithmeticFunction` `Nat.Coprime.card_divisors_mul` and `Nat.Coprime.sum_divisors_mul` are moved to not rely on `ArithmeticFunction`. See zulip discussion here: [#mathlib4 > Library design question, e.g.`Nat.Coprime.card_divisors_mul` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Library.20design.20question.2C.20e.2Eg.2E.60Nat.2ECoprime.2Ecard_divisors_mul.60/near/577769899) Co-authored-by: Ziyan Wei and Aayush Rajasekaran --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-number-theory t-algebra merge-conflict
label:t-algebra$
45/14 Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Data/Finset/NatDivisors.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean 3 6 ['AlexKontorovich', 'arajasek', 'github-actions', 'mathlib-merge-conflicts'] riccardobrasca
assignee:riccardobrasca
79-56885
2 months ago
21-53249
21 days ago
53-21240
53 days
27534 PierreQuinton
author:PierreQuinton
feat: a typeclass for `sSup`/`sInf` to be lawful Adds lawful infima and suprema type classes. A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set. A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order 121/8 Mathlib.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/LawfulSupInf.lean 3 26 ['PierreQuinton', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] nobody
76-68115
2 months ago
192-12790
192 days ago
114-37921
114 days
37530 mcdoll
author:mcdoll
fix(Topology/Algebra): fix bad simps and make arguments implicit for `PointwiseConvergenceCLM` We delete all `simps` calls in the definitions of operators on `PointwiseConvergenceCLM` and replace them with `apply_apply` lemmas that do not abuse the defeq between `SLₚₜ` and `SL`. This made the linter discover some typeclass duplications, which we remove by restructuring the file. As a consequence of the new `simp` lemmas, we can remove all `set_option backward.isDefEq.respectTransparency false in` in `Analysis.Distribution.TemperedDistribution`. Moreover, we make several arguments implicit, which can be inferred in almost all practical situations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) not-ready-to-merge merge-conflict 88/69 Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Topology/Algebra/Module/Spaces/PointwiseConvergenceCLM.lean 2 5 ['github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mcdoll'] nobody
41-16958
1 month ago
41-16959
41 days ago
14-59669
14 days
37593 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename set-based defs to `set*Antidiagonal` Renames set-based `Finset.mulAntidiagonal` → `setMulAntidiagonal` (and SMul/VAdd variants) to free the `mulAntidiagonal` name for the planned `HasMulAntidiagonal` typeclass. Deprecation aliases added. Supersedes #34551 t-ring-theory new-contributor merge-conflict 178/96 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
41-16957
1 month ago
41-16958
41 days ago
15-61521
15 days
37444 vihdzp
author:vihdzp
feat: typeclass for zero-dimensional spaces --- - [ ] depends on: #37317 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import merge-conflict 151/110 Mathlib/Topology/Algebra/ClopenNhdofOne.lean,Mathlib/Topology/Category/LightProfinite/Basic.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/Category/Profinite/CofilteredLimit.lean,Mathlib/Topology/Category/Stonean/Basic.lean,Mathlib/Topology/ClopenBox.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/WithTop.lean,Mathlib/Topology/Separation/CompletelyRegular.lean,Mathlib/Topology/Separation/DisjointCover.lean,Mathlib/Topology/Separation/Lemmas.lean,Mathlib/Topology/Separation/Profinite.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean 13 17 ['ADedecker', 'FernandoChu', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
38-82641
1 month ago
38-83713
38 days ago
0-5306
1 hour
38239 vihdzp
author:vihdzp
chore(Order/SuccPred/Limit): reorganize sections In an effort to keep the file better organized, we move theorems which use `SuccOrder`/`PredOrder` as an assumption to a new section. No theorems have been changed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 95/110 Mathlib/Order/SuccPred/Limit.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
38-46535
1 month ago
38-46536
38 days ago
2-48556
2 days
37461 grunweg
author:grunweg
chore: golf using the field tactic --- In the spirit of #31314. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 32/43 Counterexamples/NowhereDifferentiable.lean,Mathlib/Analysis/Calculus/Monotone.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Integral/MeanValue.lean,Mathlib/NumberTheory/ModularForms/Discriminant.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Defs.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/MDifferentiable.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/PowerSeries/Exp.lean,Mathlib/Topology/UnitInterval.lean 20 5 ['github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
36-46239
1 month ago
36-46240
36 days ago
22-59925
22 days
37774 weisbrja
author:weisbrja
fix: change variables in `bicompl` to `Sort*` and add missing theorem mentioned in `bicompl` docs [#mathlib4 > Why does Mathlib use Type* instead of Sort* in some places?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Why.20does.20Mathlib.20use.20Type.2A.20instead.20of.20Sort.2A.20in.20some.20places.3F/with/583882342) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic merge-conflict 6/1 Mathlib/Logic/Function/Basic.lean 1 8 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'weisbrja'] nobody
32-59867
1 month ago
32-59868
32 days ago
19-76858
19 days
36740 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): * `AlgebraicGeometry.Scheme.isBasis_affineOpens`: unchanged 🎉 * `SimpleGraph.Walk.takeUntil_eq_take`: 263 ms before, 180 ms after 🎉 * `SimpleGraph.Walk.dropUntil_eq_drop`: 382 ms before, 261 ms after 🎉 * `Int.image_Ico_emod`: unchanged 🎉 * `Equiv.Perm.ofSubtype_swap_eq`: 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/) merge-conflict 7/33 Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Data/Int/Interval.lean,Mathlib/GroupTheory/Perm/Support.lean 4 8 ['artie2000', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] nobody
30-49330
1 month ago
30-49331
30 days ago
43-5868
43 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
30-40720
1 month ago
30-40721
30 days ago
22-62470
22 days
38329 jcommelin
author:jcommelin
chore: tighten down public/exposed API of AlgebraicClosure This PR tightens down the API of AlgebraicClosure, by making few parts of FieldTheory/IsAlgClosed/AlgebraicClosure.lean public and/or exposed. We still need to expose the main definition. It would be great if we can unexpose it in the future. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
73/53 Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/FieldTheory/Differential/Liouville.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/RingTheory/Discriminant.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/RingTheory/Trace/Basic.lean 9 26 ['eric-wieser', 'github-actions', 'jcommelin', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'plp127', 'riccardobrasca'] nobody
30-40703
1 month ago
30-40704
30 days ago
7-41851
7 days
37819 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `WithBot` with basic `ωScottContinuous` lemmas This is a modification of #34093. See #34093 for details. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 337/10 Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/TypeTags.lean,Mathlib/Order/WithBot.lean 6 5 ['Komyyy', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Komyyy
assignee:Komyyy
29-23928
29 days ago
29-23928
29 days ago
22-11204
22 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
18-48933
18 days ago
18-48934
18 days ago
46-71615
46 days
37553 grunweg
author:grunweg
chore: golf using .ne and friends ne_of_gt -> .ne' ne_of_lt -> .ne le_of_lt -> .le Drive-by golfs using gcongr and positivity and been split into separate PRs. --- - [x] depends on: #37462 - [x] depends on: #37715 - [x] depends on: #37554 - [x] depends on: #37845 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 302/321 Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/NowhereDifferentiable.lean,Counterexamples/TopologistsSineCurve.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Finite.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Interval/Set/Instances.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/DenomsClearable.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/QuadraticDiscriminant.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/Asymptotics/LinearGrowth.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Tagged.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/DerivativeTest.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean,Mathlib/Analysis/Calculus/LHopital.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/OpenMapping.lean,Mathlib/Analysis/Complex/Poisson.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convex/Caratheodory.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/Radon.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/MellinInversion.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Field/Approximation.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/Analysis/Normed/Unbundled/IsPowMulFaithful.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/Real/Hyperreal.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/IntegralRepresentation.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Int/Interval.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Log.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Real/ConjExponents.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean 114 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-40219
16 days ago
16-40219
16 days ago
13-66876
13 days
39229 grunweg
author:grunweg
dev: towards `fun_prop` on manifolds --- - [ ] depends on: #39226 Rebased version of #31580. Meant to be a prototype that demonstrate how this could possibly work. Not functional yet; waiting on cache to continue. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 305/1 Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Tactic/FunProp/Core.lean,MathlibTest/DifferentialGeometry/FunPropM.lean,MathlibTest/fun_prop_dev.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
14-21109
14 days ago
18-34681
18 days ago
0-12
12 seconds
39287 xgenereux
author:xgenereux
feat(Localization/AtPrime/Basic): upgrade `equivQuotMaximalIdeal` to an AlgEquiv The definition [IsLocalization.AtPrime.equivQuotMaximalIdealPow](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Localization/AtPrime/Basic.html#IsLocalization.AtPrime.equivQuotMaximalIdealPow) was added in #36783. The case with `n = 1` is still important and interesting. I have upgraded it to an AlgEquiv using `equivQuotMaximalIdealPow`. This did break a few small things, because we need to bridge back to a `RingEquiv` in some places. I took the liberty to add some missing `apply` lemmas to ease fixing these proofs. Disclaimer: I used Claude to suggest the first shot and refined it from there. María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 45/68 Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean 3 2 ['github-actions', 'mathlib-merge-conflicts', 'wwylele'] nobody
12-42332
12 days ago
12-42333
12 days ago
4-53165
4 days
39329 lecopivo
author:lecopivo
feat(fun_prop): eager application of transition theorems for fun_prop For properties like Integrable we want to apply transition theorems(like Continuous -> Integrable) eagerly --- This is a change necessary in preparation for making `fun_prop` work for integrability. --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 93/30 Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,MathlibTest/FunPropMinimal.lean 4 14 ['b-mehta', 'github-actions', 'lecopivo', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
11-67927
11 days ago
13-81875
13 days ago
1-47071
1 day
37584 kennethgoodman
author:kennethgoodman
feat(Data/Nat/Fib): formalize Lamé's theorem ## Summary Formalize [Lamé's theorem](https://en.wikipedia.org/wiki/Lam%C3%A9%27s_theorem) (1844), the founding result of computational complexity theory. **Lamé's Theorem:** If the Euclidean algorithm on inputs `(a, b)` with `b ≤ a` takes `n + 1` division steps, then `b ≥ fib(n + 1)` and `a ≥ fib(n + 2)`. ### New definitions - `Nat.euclidSteps`: counts the number of division steps in the Euclidean algorithm on natural number inputs. ### New theorems - `Nat.fib_le_of_euclidSteps`: the main Lamé bound — Fibonacci lower bound on inputs given a step count. - `Nat.euclidSteps_le_of_lt_fib`: the contrapositive — step count upper bound given a Fibonacci bound on the smaller input. - `Nat.add_mod_le`: helper lemma that `b + a % b ≤ a` when `b ≤ a` and `0 < b`. ### Proof strategy Induction on `n`, tracking both elements of the pair. The key insight is that each Euclidean step replaces `(a, b)` with `(b, a % b)`, and since `a ≥ b + a % b` (because `a / b ≥ 1`), the Fibonacci recurrence `fib(n+3) = fib(n+2) + fib(n+1)` matches the structure of the algorithm. ### References - Gabriel Lamé, *Note sur la limite du nombre des divisions dans la recherche du plus grand commun diviseur entre deux nombres entiers*, Comptes rendus de l'Académie des sciences, 1844. --- ### AI usage disclosure Per the [Mathlib AI guidelines](https://leanprover-community.github.io/contribute/index.html#use-of-ai): Claude Code (Claude Opus 4.6) was used to assist with writing the Lean 4 proof code, fixing tactic errors, and drafting this PR description. The mathematical proof (induction on step count, tracking both pair elements through the Fibonacci recurrence) was designed by hand and verified on paper before formalization. I have reviewed and understand every line of the resulting Lean code and can explain all proof steps. --- - [x] builds cleanly (`lake build Mathlib.Data.Nat.Fib.Lame`) - [x] no `sorry` - [x] lines ≤ 100 characters, no trailing whitespace - [x] `autoImplicit false` - [x] docstrings on all public declarations new-contributor LLM-generated t-data merge-conflict 121/0 Mathlib.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Fib/Lame.lean,docs/1000.yaml 5 25 ['euprunin', 'github-actions', 'kennethgoodman', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] TwoFX
assignee:TwoFX
11-56600
11 days ago
11-56601
11 days ago
44-66371
44 days
38036 JovanGerb
author:JovanGerb
feat: `NSMul`/`NPow` type class This PR is adds `NSMul`, `NPow`, `ZSMul` and `ZPow` classes for the `nsmul`, `npow`, `zsmul`, `zpow` data fields. This has a few advantages: - If you first declare a `SMul` instance, then you don't need to manually write `nsmul := (· • ·)` and `zsmul := (· • ·)` . For `Pow`, the extra benefit is that inferring the instance is preferred over the default field `npowRecAuto`. So this helps avoid accidental diamonds. - If you first declare a `SMul` instance on a type synonym, then `inferInstanceAs` will infer the `nsmul` field from the `SMul` instance. This makes it easier to avoid diamonds on type synonyms like `Matrix` and `MonoidAlgebra`. - The not-yet-merged instance diamond linter will be able to detect cases where the `NSMul` and `SMul` classes do not agree. In the process of making this PR, I have identified two existing `NPow` diamonds: - In `Mathlib.Algebra.Order.Positive.Field`, there were two conflicting `NPow` instances. - For `Fin`, there are two conflicting `NPow` instances. I have overwritten the one in core lean with the one from mathlib that is more computationally efficient. TODO: the same for `QSMul` and `NNQSMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 276/273 Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Group/Action/Opposite.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Opposite.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/MinimalAxioms.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/ZPow.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,MathlibTest/instance_diamonds.lean 41 17 ['JovanGerb', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-merge-conflicts', 'vihdzp'] nobody
9-40163
9 days ago
9-40164
9 days ago
29-38312
29 days
39102 yuanyi-350
author:yuanyi-350
chore: reduce imports in 50 files --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 70/81 Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Distribution/DerivNotation.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean,Mathlib/Analysis/Distribution/Sobolev.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Barrelled.lean,Mathlib/Analysis/LocallyConvex/ContinuousOfBounded.lean,Mathlib/Analysis/LocallyConvex/Montel.lean,Mathlib/Analysis/LocallyConvex/PointwiseConvergence.lean,Mathlib/Analysis/LocallyConvex/SeparatingDual.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Normed/Affine/AddTorsor.lean,Mathlib/Analysis/Normed/Affine/AddTorsorBases.lean,Mathlib/Analysis/Normed/Affine/Convex.lean,Mathlib/Analysis/Normed/Algebra/Basic.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/Analysis/Normed/Algebra/QuaternionExponential.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Field/Instances.lean,Mathlib/Analysis/Normed/Field/Ultra.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Group/Bounded.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/Normed/Group/FunctionSeries.lean,Mathlib/Analysis/Normed/Group/Indicator.lean,Mathlib/Analysis/Normed/Group/NullSubmodule.lean,Mathlib/Analysis/Normed/Group/Tannery.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Normed/MulAction.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/PSeriesComplex.lean,Mathlib/Analysis/SpecificLimits/Fibonacci.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Analysis/Subadditive.lean,Mathlib/Analysis/SumIntegralComparisons.lean 48 13 ['JovanGerb', 'YaelDillies', 'bryangingechen', 'github-actions', 'j-loreaux', 'leanprover-radar', 'mathlib-merge-conflicts', 'yuanyi-350'] j-loreaux
assignee:j-loreaux
9-40156
9 days ago
9-40157
9 days ago
11-63042
11 days
39509 mcdoll
author:mcdoll
chore(Topology): add `push/pull_end` tags for CLMs Simpsets were introduced in #38359, see also #39508 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology merge-conflict 2/0 Mathlib/Topology/Algebra/Module/LinearMap.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
9-36100
9 days ago
9-40148
9 days ago
3-40182
3 days
35043 winstonyin
author:winstonyin
refactor(Analysis/ODE): restate existence and uniqueness using integral curve API * Create `Mathlib/Analysis/ODE/ExistUnique.lean` to collect existence and uniqueness results for ODEs stated in terms of the integral curve API (`IsIntegralCurve`, `IsIntegralCurveOn`, `IsIntegralCurveAt`). * Move and restate the Picard-Lindelöf existence theorems from `PicardLindelof.lean` and the $C^1$ vector field results using `IsIntegralCurveOn`/`IsIntegralCurveAt` instead of raw `HasDerivWithinAt`/`HasDerivAt`. * Move and restate the Grönwall-based uniqueness theorems from `Gronwall.lean` using `IsIntegralCurveOn` with half-open intervals (`Ico`/`Ioc`) instead of `HasDerivWithinAt … (Ici t)`/`HasDerivWithinAt … (Iic t)`. * Rename uniqueness theorems to use dot notation on the integral curve types (e.g. `ODE_solution_unique_of_mem_Icc_right` becomes `IsIntegralCurveOn.eqOn_Icc_right`). * Add `IsIntegralCurveOn.eqOn_inter`: if two integral curves on preconnected sets `I` and `J` agree at a point in both sets, they agree on `I ∩ J`. * Add deprecation aliases for all renamed lemmas. - [ ] depends on: #29186 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 421/308 Mathlib.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/Analysis/ODE/Gronwall.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,docs/1000.yaml,docs/undergrad.yaml 7 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll', 'winstonyin'] sgouezel
assignee:sgouezel
6-65791
6 days ago
6-65791
6 days ago
43-39495
43 days
36774 euprunin
author:euprunin
chore: replace long terminal `rw […]`:s (≥4 lemmas) with bare `simp`:s 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): * `Finset.lcm_union`: unchanged 🎉 * `Finset.gcd_union`: unchanged 🎉 * `Polynomial.derivative_eval₂_C`: unchanged 🎉 * `Polynomial.expand_pow`: unchanged 🎉 * `Cardinal.mk_real`: unchanged 🎉 * `Real.log_zpow`: unchanged 🎉 * `Matroid.eRank_le_encard_add_eRk_compl`: unchanged 🎉 * `DFinsupp.single_tsub`: unchanged 🎉 * `EReal.inv_neg`: unchanged 🎉 * `Finsupp.toMultiset_map`: unchanged 🎉 * `Finsupp.single_tsub`: unchanged 🎉 * `Multiset.countP_map`: unchanged 🎉 * `Nat.ascFactorial_eq_factorial_mul_choose'`: unchanged 🎉 * `Real.sign_intCast`: unchanged 🎉 * `Real.volume_eball`: unchanged 🎉 * `Real.volume_closedEBall`: unchanged 🎉 * `LFunction_ne_zero_of_not_quadratic_or_ne_one`: 295 ms before, 152 ms after 🎉 * `hasSum_one_div_nat_pow_mul_cos`: unchanged 🎉 * `inv_eq_of_aeval_divX_ne_zero`: unchanged 🎉 * `AlgebraicIndependent.aeval_comp_mvPolynomialOptionEquivPolynomialAdjoin`: unchanged 🎉 * `Ordinal.deriv_mul_eq_opow_omega0_mul`: 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/) merge-conflict 22/24 Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Combinatorics/Matroid/Rank/ENat.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Real/Sign.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean,Mathlib/NumberTheory/ZetaValues.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean 19 3 ['artie2000', 'euprunin', 'github-actions', 'mathlib-merge-conflicts'] nobody
6-65537
6 days ago
6-65538
6 days ago
67-395
67 days
38018 matthewjasper
author:matthewjasper
feat(Algebra): expand Subalgebra.restrictScalars API Add an instance for the original algebra structure, the implied scalar tower instances, and the algebra equivalence with the original subalgebra. Use this to remove some `set_option backward.isDefEq.respectTransparency`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 53/14 Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean 4 6 ['eric-wieser', 'github-actions', 'leanprover-radar', 'mariainesdff', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
6-64211
6 days ago
6-64211
6 days ago
39-73389
39 days
38882 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/AEMeasurableOrder` - replaces the manual `μ t = 0` to `ae` conversion with `measure_eq_zero_iff_ae_notMem` - rewrites the two density arguments in `aemeasurable_of_exist_almost_disjoint_supersets` using `s_dense.exists_between` and `mem_iUnion₂` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability merge-conflict 7/18 Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean 1 3 ['github-actions', 'mathlib-merge-conflicts', 'yuanyi-350'] kex-y
assignee:kex-y
6-63819
6 days ago
6-63820
6 days ago
20-13865
20 days
39311 felixpernegger
author:felixpernegger
refactor: redefine `eLpNorm` at `p = 0` For Zulip discussion see https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/eLpNorm.20junk.20value/with/576356442. In partuclar this change is suggestion 2 in [#mathlib4 > eLpNorm junk value @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/eLpNorm.20junk.20value/near/576340531) This redefined [MeasureTheory.eLpNorm](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Function/LpSeminorm/Defs.html#MeasureTheory.eLpNorm) at `p = 0`. Previously it was always `0` but now it is the measure of the support of the function (technical detail: In order to avoid having to add additional arguments to `eLpNorm`, we define it as the measure of the support of the norm of the function, but this is almost always the same) The motivation for this comes from the counting measure, in particular this then unifies with https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Lp/lpSpace.html#Mem%E2%84%93p. In any case, it is "closer" to the actual mathematical definition Unfortunately, since `eLpNorm` is widely used, the diff is very large and a lot of theorems break (i.e. now require `p != 0`). Oftentimes `p != 0` is still not required (sometimes with nontrivial arguments), I tried to avoid adding extra hypothesis whenever I could but I almost certainly missed some. There now may also be places where we dont need `p != 0` as a hypothesis anymore (i.e. for `[Memℓp](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Lp/lpSpace.html#Mem%E2%84%93p)`), but this is not included in this PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 915/576 Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Fourier/LpSpace.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Lp/SmoothApprox.lean,Mathlib/Data/ENNReal/Holder.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Holder.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Indicator.lean,Mathlib/MeasureTheory/Function/LpSeminorm/LpNorm.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Monotonicity.lean,Mathlib/MeasureTheory/Function/LpSeminorm/SMul.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Trim.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/Distributions/Gaussian/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Fernique.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/IdentDistrib.lean,Mathlib/Probability/Kernel/Disintegration/CDFToKernel.lean,Mathlib/Probability/Kernel/Disintegration/Density.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/Probability/Moments/IntegrableExpMul.lean,Mathlib/Probability/Moments/SubGaussian.lean,Mathlib/Probability/Process/Filtration.lean,MathlibTest/congr.lean 45 27 ['felixpernegger', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] nobody
6-62435
6 days ago
6-62436
6 days ago
1-52732
1 day
16074 Rida-Hamadani
author:Rida-Hamadani
feat: combinatorial maps and planar graphs We define combinatorial maps, then we define planar graph using combinatorial maps. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics 243/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Planar.lean,Mathlib/Data/CombinatorialMap.lean 3 30 ['MrBrain295', 'Parcly-Taxel', 'Rida-Hamadani', 'github-actions', 'lambda-fairy', 'leanprover-community-bot-assistant'] kmill
assignee:kmill
4-30670
4 days ago
329-27103
329 days ago
72-50365
72 days
37956 artie2000
author:artie2000
feat(Algebra/Polynomial): lemmas about polynomial degree * Add various small lemmas about polynomial degree --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
28/5 Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,MathlibTest/hintAll.lean 5 8 ['artie2000', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] kim-em
assignee:kim-em
4-27229
4 days ago
4-27230
4 days ago
43-39219
43 days
39395 marcelolynch
author:marcelolynch
chore(Tactic/Linter): reword PrivateLinter suggestion This matches the granular-by-default philosophy of the new module system and produces files without superfluous `@[expose] public`, which we also want to flag as undesirable: we steer to making every @[expose] is per-decl and intentional, rather than section-wide Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230 t-linter merge-conflict 11/8 Mathlib/Tactic/Linter/PrivateModule.lean,MathlibTest/PrivateModuleLinter/hasOnlyPrivate.lean,MathlibTest/PrivateModuleLinter/notation3.lean,MathlibTest/PrivateModuleLinter/reservedName2.lean 4 4 ['github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
4-27214
4 days ago
4-27215
4 days ago
11-19868
11 days
38989 grunweg
author:grunweg
chore: remove `(d)simp only []` Either remove them (when they were unnecessary), or replace by something more low-level. --- I'm happy to make them `simp only` instead, if that is preferred. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 10/17 Counterexamples/AharoniKorman.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RE.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Computability/TuringMachine/StackTuringMachine.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/ModelTheory/Encoding.lean 11 5 ['b-mehta', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
3-40345
3 days ago
3-40346
3 days ago
20-56482
20 days
37723 xgenereux
author:xgenereux
feat(Adjoin/Polynomial/Transcendental): Adjoining transcendental elements This PR establishes some basic properties about `A[y]` when `y` is transcendental over `A`. These are mostly just carried over from `A[X]`. - Move `algEquivOfTranscendental` in the newly created file `Mathlib.RingTheory.Adjoin.Polynomial.Transcendental` - Add `Algebra.adjoin.evalOfTranscendental`. This is technically very similar to `Algebra.adjoin.liftSingleton` but the definition is much simpler. It is also currently more general in the sense that it doesn't require `A` to be a field. - Some basic instances from `Polynomial`. Note that these are actually theorems because of the hypothesis `(h : Transcendental R s)` everywhere. I've also added a `Fact` version to allow the possibility of instances. Last note : I initially considered adding some results in `RingTheory.Polynomial.Quotient` where I golfed the file a tiny bit. I removed the unused results but kept the golf. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- - [ ] depends on: #36439 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 135/65 Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean,Mathlib/RingTheory/Adjoin/Polynomial/Transcendental.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean 8 5 ['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
2-82807
2 days ago
53-31912
53 days ago
0-1922
32 minutes
38622 mariainesdff
author:mariainesdff
feat(RingTheory/PowerSeries/ExponentialModule): add exponential module Let `R` be a commutative ring. The exponential module of `R` is the set of all power series `f : R⟦X⟧` that are of exponential type : `f (X + Y) = f X * f Y` where `X` and `Y` are two indeterminates. It is an abelian group under multiplication, and an `R`-module under rescaling. Co-authored by: @AntoineChambert-Loir --- - [ ] depends on: #38615 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 425/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finsupp/Fin.lean,Mathlib/Data/Nat/Choose/Sum.lean,Mathlib/RingTheory/PowerSeries/ExponentialModule.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 5 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
2-33769
2 days ago
2-33770
2 days ago
28-45867
28 days
39676 joneugster
author:joneugster
chore: move test files and recapitalise filennames Continuation of #39674. Renames all test files to use UpperCamelCase. Moves a few files to a folder according to the location of the tested file. --- While fixing capitalisation on all filenames, this PR makes no effort to sort all test files into according folders. This will be happening in follow-ups. - [x] depends on: #39681 - [x] depends on: #39682 - [ ] depends on: #39683 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed merge-conflict 22/22 MathlibTest/AesopCat.lean,MathlibTest/Algebra/Algebra/Rat.lean,MathlibTest/Algebra/Polynomial.lean,MathlibTest/Algebra/Quaternion.lean,MathlibTest/Data/DFinsupp/DFinsuppMultiLinear.lean,MathlibTest/Data/DFinsupp/Notation.lean,MathlibTest/Data/Fin/VecNotation.lean,MathlibTest/Data/FunLike.lean,MathlibTest/Data/Real.lean,MathlibTest/Data/ZMod.lean,MathlibTest/DeriveCountable.lean,MathlibTest/DeriveCountableModule.lean,MathlibTest/DeriveEncodable.lean,MathlibTest/ENatToNat.lean,MathlibTest/EvalElab.lean,MathlibTest/FailIfNoProgress.lean,MathlibTest/FastInstance.lean,MathlibTest/FinsetBuilder.lean,MathlibTest/FinsetRepr.lean,MathlibTest/FinsuppNotation.lean,MathlibTest/FormatTable.lean,MathlibTest/ImportAll.lean,MathlibTest/InstanceDiamonds.lean,MathlibTest/InstanceDiamonds/Analysis/Normed/Field/WithAbs.lean,MathlibTest/InstanceDiamonds/Data/Complex/Module.lean,MathlibTest/InstanceDiamonds/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,MathlibTest/InstanceDiamonds/FieldTheory/SplittingField/Construction.lean,MathlibTest/InstanceDiamonds/Normed.lean,MathlibTest/JacobiSymbol.lean,MathlibTest/Lean/Tactic/Grind/AC.lean,MathlibTest/Lean/Tactic/Grind/CC.lean,MathlibTest/Lean/Tactic/Grind/Field.lean,MathlibTest/Lean/Tactic/Grind/FieldInstance.lean,MathlibTest/Lean/Tactic/Grind/Grobner.lean,MathlibTest/Lean/Tactic/Grind/Linarith.lean,MathlibTest/Lean/Tactic/Grind/Lint.lean,MathlibTest/Lean/Tactic/Grind/NatCastInstance.lean,MathlibTest/Lean/Tactic/Grind/OrderedRing.lean,MathlibTest/Lean/Tactic/Grind/PairwiseDisjoint.lean,MathlibTest/Lean/Tactic/Grind/Panic.lean,MathlibTest/Lean/Tactic/Grind/Ring.lean,MathlibTest/Lean/Tactic/Grind/Set.lean,MathlibTest/Lean/Tactic/Grind/Trig.lean,MathlibTest/Lean/Tactic/Rewrites.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModule.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleAllTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleMetaTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleNew.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModulePublicMetaTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModulePublicTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleTest.lean,MathlibTest/Linter/DeprecatedSyntaxLinter.lean,MathlibTest/Linter/DocPrime.lean,MathlibTest/Linter/DocString.lean,MathlibTest/Linter/EmptyLine.lean,MathlibTest/Linter/FlexibleLinter.lean,MathlibTest/Linter/ForbiddenModuleNames.lean,MathlibTest/Linter/HaveLetLinter.lean,MathlibTest/Linter/ImportHeavyFlexibleLinter.lean,MathlibTest/Linter/Lint.lean,MathlibTest/Linter/ModuleCasing.lean,MathlibTest/Linter/OldObtain.lean,MathlibTest/Linter/PrivateModuleLinter/HasOnlyPrivate.lean,MathlibTest/Linter/PrivateModuleLinter/HasPublic.lean,MathlibTest/Linter/PrivateModuleLinter/ImportOnly.lean,MathlibTest/Linter/PrivateModuleLinter/Initialize.lean,MathlibTest/Linter/PrivateModuleLinter/NonModule.lean,MathlibTest/Linter/PrivateModuleLinter/Notation3.lean,MathlibTest/Linter/PrivateModuleLinter/ReservedName1.lean,MathlibTest/Linter/PrivateModuleLinter/ReservedName2.lean,MathlibTest/Linter/Style/LintStyle.lean,MathlibTest/Linter/Style/LongFile.lean,MathlibTest/Linter/UnusedTactic/AesopUnusedTactic.lean,MathlibTest/Linter/UnusedTactic/UnusedTactic.lean,MathlibTest/Linter/ValidatePRTitle.lean,MathlibTest/Linter/VersoHeader.lean,MathlibTest/Linter/Whitespace.lean,MathlibTest/NormCast.lean,MathlibTest/RegisterTryTactic.lean,MathlibTest/RightActions.lean,MathlibTest/SetLike.lean,MathlibTest/SimpConfluence.lean,MathlibTest/SlimCheck.lean,MathlibTest/SlowInstances.lean,MathlibTest/SlowSimp.lean,MathlibTest/Tactic/ApplyCongr.lean,MathlibTest/Tactic/ApplyFun.lean,MathlibTest/Tactic/ApplyRules.lean,MathlibTest/Tactic/ApplyWith.lean,MathlibTest/Tactic/Bound/Attribute.lean,MathlibTest/Tactic/Bound/Bound.lean,MathlibTest/Tactic/ByContra.lean,MathlibTest/Tactic/CancelDenoms.lean,MathlibTest/Tactic/Cases.lean,MathlibTest/Tactic/CasesM.lean,MathlibTest/Tactic/Change.lean,MathlibTest/Tactic/Check.lean,MathlibTest/Tactic/Choose/Choose.lean,MathlibTest/Tactic/Choose/Reduction.lean,MathlibTest/Tactic/Clean.lean 192 5 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-28631
2 days ago
2-28632
2 days ago
1-38699
1 day
35136 joelriou
author:joelriou
feat(AlgebraicGeometry): points of the small étale site The main definition in this PR is `Scheme.pointSmallEtale`. Given a morphism `Spec (.of Ω) ⟶ S` where `Ω` is a separably closed field, we define the corresponding point of the small étale site of `S`. We show that these points form a conservative family. (This PR also removes the definition `Scheme.geometricFiber` which was not correct.) Co-authored-by: Christian Merten --- - [x] depends on: #35141 - [x] depends on: #35175 - [x] depends on: #35240 - [x] depends on: #34976 - [x] depends on: #33958 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry large-import merge-conflict 301/6 Mathlib.lean,Mathlib/AlgebraicGeometry/Fiber.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Sites/Etale.lean,Mathlib/AlgebraicGeometry/Sites/EtalePoint.lean,Mathlib/CategoryTheory/Elements.lean,Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/Limits/FinallySmall.lean,Mathlib/CategoryTheory/Limits/MorphismProperty.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean,Mathlib/CategoryTheory/ObjectProperty/Small.lean 11 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40667
11 hours ago
0-40668
11 hours ago
9-10949
9 days
35569 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): deprecate `injectiveSeminorm` This PR: * Deprecates `PiTensorProduct.injectiveSeminorm` and supporting lemmas. * Moves the theory of `liftEquiv` from InjectiveSeminorm.lean to ProjectiveSeminorm.lean. No changes are introduced beyond adding deprecation notices, adapting docstrings, and moving material between files. The PR leaves InjectiveSeminorm.lean almost empty. A new implementation of `injectiveSeminorm`, one which reflects the common mathematical definition, is to be done. This is the third in a series of three PRs with the goal to [deprecate `PiTensorProuduct.injectiveSeminorm`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798633). --- - [ ] depends on: #35567 - [ ] depends on: #35568 Deprecations: - injectiveSeminorm - dualSeminorms_bounded - injectiveSeminorm_apply - norm_eval_le_injectiveSeminorm - injectiveSeminorm_le_projectiveSeminorm - injectiveSeminorm_tprod_le Preliminary work toward a reimplementation is at #33969. I've added Davood and myself to the "Authors" field, as we have now significantly refactored this module. Co-authored-by: Davood H. T. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 222/233 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean 2 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40663
11 hours ago
0-40664
11 hours ago
59-23938
59 days
36236 kim-em
author:kim-em
chore: add module keyword to Archive and Counterexamples files This PR converts 105 Archive and Counterexamples files to module format, adding `module`, `public import`, and `@[expose] public section`. Eight files are left unconverted for now: - Seven files containing `private` declarations that need further work (`Imo1962Q1`, `MiuLanguage/Basic`, `MiuLanguage/DecisionSuf`, `AscendingDescendingSequences`, `BallotProblem`, `AharoniKorman`, `TopologistsSineCurve`) - `Counterexamples/InvertibleModuleNotIdeal` which needs an import path update For `Archive/Examples/PropEncodable`, the `private` declarations were removed as part of this conversion. 🤖 Prepared with Claude Code IMO LLM-generated merge-conflict 738/310 Archive/Arithcc.lean,Archive/Examples/Eisenstein.lean,Archive/Examples/Kuratowski.lean,Archive/Examples/PropEncodable.lean,Archive/Hairer.lean,Archive/Imo/Imo1959Q1.lean,Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo1961Q3.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1963Q5.lean,Archive/Imo/Imo1964Q1.lean,Archive/Imo/Imo1969Q1.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1977Q6.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo1985Q2.lean,Archive/Imo/Imo1986Q5.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1997Q3.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2001Q3.lean,Archive/Imo/Imo2001Q4.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2001Q6.lean,Archive/Imo/Imo2002Q3.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2005Q4.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2010Q5.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2015Q6.lean,Archive/Imo/Imo2019Q1.lean,Archive/Imo/Imo2019Q2.lean,Archive/Imo/Imo2019Q4.lean,Archive/Imo/Imo2020Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Imo/Imo2024Q2.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q6.lean,Archive/Imo/Imo2025Q3.lean,Archive/Kuratowski.lean,Archive/MinimalSheffer.lean,Archive/OxfordInvariants/Summer2021/Week3P1.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Archive/Wiedijk100Theorems/InverseTriangleSum.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Archive/Wiedijk100Theorems/SolutionOfCubicQuartic.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CharPZeroNeCharZero.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/Cyclotomic105.lean,Counterexamples/DimensionPolynomial.lean,Counterexamples/DirectSumIsInternal.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/EulerSumOfPowers.lean,Counterexamples/Girard.lean,Counterexamples/HeawoodUnitDistance.lean,Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/IrrationalPowerOfIrrational.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Motzkin.lean,Counterexamples/NowhereDifferentiable.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Counterexamples/PeanoCurve.lean,Counterexamples/Phillips.lean,Counterexamples/PolynomialIsDomain.lean,Counterexamples/Pseudoelement.lean,Counterexamples/QuadraticForm.lean,Counterexamples/SeminormLatticeNotDistrib.lean,Counterexamples/SeparableNotSecondCountable.lean,Counterexamples/SorgenfreyLine.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean 97 11 ['JovanGerb', 'github-actions', 'grunweg', 'kim-em', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
0-40534
11 hours ago
0-40535
11 hours ago
13-62459
13 days
36239 plp127
author:plp127
feat(FieldTheory/KrullTopology): define uniform group structure on galois group Endow the galois group of a field extension `Gal(L/K)` with the structure of a uniform group. Use this to prove some properties of the galois group earlier, for example, that the galois group is compact is immediate, and in more generality than the version proved in `FieldTheory/Galois/Profinite`. Deprecate some material which used to be used to define the krull topology, but is now unused since the krull topology comes out of the uniform structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
295/220 Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean 4 24 ['acmepjz', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] mattrobball
assignee:mattrobball
0-40533
11 hours ago
0-40533
11 hours ago
61-51013
61 days
37501 xgenereux
author:xgenereux
feat(DedekindDomain/AdicValuation): `intValuation` on uniformizers is `exp (-1)` This PR add the lemma `intValuation_val_uniformizer_eq` which is an application of #37497. Note that I've had to reorganize the files a little bit: 1. I wanted to import `Valuation.Discrete.Basic` in `AdicValuation` but this was not possible since there was a dependency in the other direction (`Valuation.Discrete.Basic` depended on `AdicValuation`). I don't think this makes sense - we want to have access to basic definitions on general valuation in an application file like `AdicValuation`. ~~The reorganization consist of moving the `IsDiscreteValuationRing` of `Valuation.Discrete.Basic` to `AdicValuation`.~~ The reorganization consist of moving the `IsDiscreteValuationRing` section to a new file. 2. I moved some lemmas out of `Mathlib.RingTheory.Valuation.Discrete.RankOne` to the parent file `Mathlib.RingTheory.Valuation.Discrete.Basic.`. These lemmas do not need the richer imports from `RankOne` and are needed in my application. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- - [x] depends on: #37497 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 203/167 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/IsDiscreteValuationRing.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean 8 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
0-40282
11 hours ago
0-40283
11 hours ago
49-51888
49 days
37682 SabrinaJewson
author:SabrinaJewson
refactor(Order/OrdContinuous): redefine left and right order continuity to not require preserving ⊥/⊤ `LeftOrdContinuous` currently requires that `f ⊥ = ⊥`, but this means that many functions that are perhaps intuitively left-continuous (like `f x = x + 1` on `ℝ≥0`) are not. In particular, this change means that functions between conditionally complete lattices are `LeftOrdContinuous` iff they are monotone and topologically left continuous (see `MonotoneOn.map_csSup_of_continuousWithinAt` for the reverse direction). If one wants the concept that existed before, one can either accept the `f ⊥ = ⊥` hypothesis separately or, if the function is between complete lattices, use the left side of a `GaloisConnection` (which is equivalent, although I think this is not yet in Mathlib). This removes the definitional equality of the type in favour of a structure. Since most of the time users will be working with the `sSup` versions and not with `IsLUB`, I think this is justified. As a consequence, this removes the definitional equality between `LeftOrdContinuous` and `RightOrdContinuous` of the dual – the latter could be redefined to re-add this, but we do have conversion functions. `LeftOrdContinuous.continuousWithinAt_Iic` is rewritten to accomodate these changes; the superfluous `DenselyOrdered` assumption is also removed. [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/LeftOrdContinuous.20requires.20f.28.E2.8A.A5.29.20.3D.20.E2.8A.A5/near/582932491) --- - [x] depends on: #37735 - [x] depends on: #37772 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 52/38 Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Topology/Order/Basic.lean 3 11 ['SabrinaJewson', 'astrainfinita', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] Komyyy
assignee:Komyyy
0-40280
11 hours ago
0-40281
11 hours ago
52-2543
52 days
38127 riccardobrasca
author:riccardobrasca
feat: add ClassGroup.extendedHom --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-algebra t-ring-theory merge-conflict
label:t-algebra$
198/6 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/NumberTheory/ClassNumber/Finite.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/RingTheory/ClassGroup/Basic.lean,Mathlib/RingTheory/ClassGroup/ExtendedHom.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/RingTheory/UniqueFactorizationDomain/ClassGroup.lean 9 31 ['faenuccio', 'github-actions', 'mathlib-merge-conflicts', 'riccardobrasca'] mattrobball
assignee:mattrobball
0-40151
11 hours ago
0-40151
11 hours ago
39-65429
39 days
38393 staroperator
author:staroperator
refactor(ModelTheory): add typeclasses for algebraic symbols `Language.ring` and `Language.presburger` share the same symbols `0`, `1` and `+` and have duplicated instances on `Term` and `realize` simp lemmas. This PR makes these symbols certain typeclasses (similar to [`Language.IsOrdered`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/ModelTheory/Order.html#FirstOrder.Language.IsOrdered)) and removes the duplication. It also adds certain definability lemmas that `fun_prop` can use. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic merge-conflict 332/201 Mathlib.lean,Mathlib/ModelTheory/Algebra/Classes.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Algebra/Ring/Basic.lean,Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Definability.lean 7 2 ['github-actions', 'mathlib-merge-conflicts'] fpvandoorn
assignee:fpvandoorn
0-36735
10 hours ago
0-36735
10 hours ago
36-80727
36 days
38431 joelriou
author:joelriou
refactor(Topology): redefine Delta-generated spaces Delta-generated spaces are made particular cases of `X`-generated spaces, where `X` is a family of topological spaces. --- - [x] depends on: #38080 - [x] depends on: #37799 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import merge-conflict 144/211 Mathlib/Topology/Category/DeltaGenerated.lean,Mathlib/Topology/Compactness/DeltaGeneratedSpace.lean,Mathlib/Topology/Convenient/Category.lean,Mathlib/Topology/Convenient/GeneratedBy.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] PatrickMassot
assignee:PatrickMassot
0-36732
10 hours ago
0-36733
10 hours ago
23-29045
23 days
38589 vlad902
author:vlad902
feat(SimpleGraph): add universal vertex predicate Add the predicate `G.IsUniversal v` to indicate that `v` is a universal vertex, i.e. connected to all other vertices in `G`. This matches the recently added `G.IsIsolated v` predicate for isolated vertices. Co-authored-by: Justin Lai --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics merge-conflict 61/10 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Combinatorics/SimpleGraph/UniversalVerts.lean 5 15 ['8e7', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] nobody
0-36729
10 hours ago
0-36730
10 hours ago
32-17772
32 days
39029 felixpernegger
author:felixpernegger
chore: remove redundant `unfold`s This PR removed roughly (estimated by files I went through) half of the `unfold`'s in mathlib which can be removed such that the proof still works (found by searching `unfold ` in VSCode in manually going through ~600/1100 occurences). I originally planned to replace all, but I couldn't find any relevant discussion if this is actually a good practice, so to save potentially wasted time, I make this PR now. (similarly with the `clear` tactic) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 63/108 Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q5.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Coskeletal.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/Strict.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Orthogonality.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/CategoryTheory/Functor/FullyFaithful.lean,Mathlib/CategoryTheory/Monoidal/Closed/Functor.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Graph/Delete.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Computability/TuringMachine/PostTuringMachine.lean,Mathlib/Computability/TuringMachine/StackTuringMachine.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/List/Intervals.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/Nat/ChineseRemainder.lean,Mathlib/Data/Nat/Digits/Div.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Prime.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/Data/Stream/Init.lean,Mathlib/Data/WSeq/Basic.lean,Mathlib/Data/ZMod/Basic.lean 44 5 ['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
0-36472
10 hours ago
0-36473
10 hours ago
22-8291
22 days
39388 marcelolynch
author:marcelolynch
chore: remove @[expose] from def-free public sections Strip `@[expose]` from `public section` headers in 100 modules where no declaration needs its body visible downstream. A new sweep in the style of #38480 Found using the linter-in-progress: #39387 Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230 merge-conflict 100/100 Mathlib/Algebra/Category/Ring/Small.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Field/Opposite.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Field/ULift.lean,Mathlib/Algebra/Field/ZMod.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Sigma.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Order/Floor/Div.lean,Mathlib/Algebra/Order/Group/Action/End.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Ring/Commute.lean,Mathlib/AlgebraicTopology/ModelCategory/Over.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/Normed/Operator/Compact/FiniteDimension.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/OfLocalizedEquivalences.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Normal.lean,Mathlib/CategoryTheory/Monoidal/Functor/Types.lean,Mathlib/CategoryTheory/Monoidal/Types/Coyoneda.lean,Mathlib/CategoryTheory/Sites/CoversTop/Over.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Data/ENNReal/Action.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/Finsupp/Pointwise.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/FunLike/Embedding.lean,Mathlib/Data/FunLike/Equiv.lean,Mathlib/Data/Int/Cast/Pi.lean,Mathlib/Data/List/Monad.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/Data/Rat/Cast/OfScientific.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/GroupTheory/GroupAction/Embedding.lean,Mathlib/GroupTheory/IsPerfect.lean,Mathlib/GroupTheory/ResiduallyFinite.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Star.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Semisimple.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Measure/Sub.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Transform.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/Padics/PadicVal/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Interval/Set/OrdConnected.lean,Mathlib/Order/Quotient.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/Flat/IsBaseChange.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/GoingDown.lean,Mathlib/RingTheory/Ideal/GoingUp.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Localization/Finiteness.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Polynomial.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/Regular/ProjectiveDimension.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/Smooth/Fiber.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeRightExact.lean,Mathlib/RingTheory/Unramified/LocalRing.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/RingTheory/Valuation/IsTrivialOn.lean,Mathlib/SetTheory/Cardinal/Regular.lean,Mathlib/Tactic/Algebra/Lemmas.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/CWComplex/Classical/Subcomplex.lean,Mathlib/Topology/EMetricSpace/Pi.lean,Mathlib/Topology/List.lean,Mathlib/Topology/MetricSpace/Pseudo/Pi.lean 100 7 ['eric-wieser', 'github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts', 'urkud'] nobody
0-36335
10 hours ago
0-36336
10 hours ago
15-23632
15 days
39449 Paul-Lez
author:Paul-Lez
doc: add library note about scoping simp lemmas with weak keys In PR #39262 I noticed that some `simp` lemmas were scoped for a reason that is not immediately obvious, so I figured that adding a library note would be nice in case anyone else runs into this in the future (this pattern is quite common in Mathlib!) In case it's helpful for review, here are links to a few of the PRs that added this scoping initially: - #14233 - #15620 - #15631 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 71/4 Mathlib.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/CharZero.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimpLibraryNote.lean 8 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36204
10 hours ago
0-36205
10 hours ago
13-7752
13 days
39489 Paul-Lez
author:Paul-Lez
fix: defeq abuse in HasFTaylorSeriesUpToOn.comp Removes a `set_option backward.isDefEq.respectTransparency false`. The fix isn't as nice as I would have hoped (I tried to make it smaller but to no avail). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 5/2 Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
0-36201
10 hours ago
0-36201
10 hours ago
12-82083
12 days
39582 plp127
author:plp127
chore: unsimp `Set.coe_setOf` See [#mathlib4 > `Set.coe_setOf` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Set.2Ecoe_setOf.60/near/579579409) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 52/55 Archive/Imo/Imo1987Q1.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Sites/Coherent/RegularSheaves.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/LinearAlgebra/RootSystem/OfBilinear.lean,Mathlib/NumberTheory/KummerDedekind.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean 15 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36197
10 hours ago
0-36198
10 hours ago
6-13316
6 days
39773 kbuzzard
author:kbuzzard
perf: add some fast_instance% This PR adds some `fast_instance%`s, which tidies up some terms. See [#mathlib4 > fast_instance% plans](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/fast_instance.25.20plans/with/597402311) for explicit descriptions of what every change in this PR actually does to the terms in question. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
6/4 Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean 2 4 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
0-32673
9 hours ago
0-32674
9 hours ago
5-46079
5 days
39857 plp127
author:plp127
chore(Order/CompleteLattice/Basic): `Sort*` polymorphism Generalize some theorems from `Type*` to `Sort*`. Also make type-variables explicitly either `Type*` or `Sort*`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 15/31 Mathlib/Order/CompleteLattice/Basic.lean 1 4 ['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-32545
9 hours ago
0-32545
9 hours ago
4-715
4 days
39928 Vierkantor
author:Vierkantor
feat(Tactic): `convert` discharges side goals reducibly This PR implements the main behaviour change from #39039: `convert` now discharges side goals at reducible transparency. `convert!`, which we previously switched all calls inside Mathlib to, keeps the old behaviour of working at default transparency. (Everything discussed in this PR holds analogously for the other tactics in the family: `convert_to` and `ac_change`). The main trick in this PR is in allowing `convert!` to have different configuration options than `convert`, but still allow the user to override those options too. So `convert! (postTransparency := .instances)` will have transparency set to `.instances`, not `.default`. We achieve this by having two new structures that copy `Congr!.Config` but set different default values, and choosing between the corresponding elaborators for those configs based on the presence of an `!`. I got this trick from Jovan's #38071 which also changes settings in `Convert.Config`. This PR should be mostly compatible with #38071 and I'd like to get both this one and #38071 in before wrapping up #39039 by replacing unnecessary calls to `convert!` with `convert`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 165/47 Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyOpen.lean,Mathlib/AlgebraicGeometry/Normalization.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/PointsPi.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/PUnit.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nerve.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/CategoryTheory/Galois/Decomposition.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/FieldTheory/IntermediateField/ExtendRight.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/Filter/AtTopBot/Finite.lean,Mathlib/RepresentationTheory/Action.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Polynomial/GaussNorm.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Tactic/CongrExclamation.lean,Mathlib/Tactic/Convert.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,MathlibTest/Tactic/Convert/Basic.lean,MathlibTest/Tactic/Convert/Bugfix7945.lean,MathlibTest/ValuedCSP.lean 33 2 ['github-actions', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
0-32543
9 hours ago
0-32543
9 hours ago
1-39934
1 day
39966 chrisflav
author:chrisflav
chore(Algebra/Exact): relate surjectivity / injectivity and exactness This came up while reviewing #39520, but ended up unnecessary. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
8/0 Mathlib/Algebra/Exact.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-32540
9 hours ago
0-32541
9 hours ago
1-54778
1 day
40004 jcommelin
author:jcommelin
doc: add wikidata attributes This PR adds a batch of wikidata attributes to concepts from overview.yaml. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 45/21 Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Ring/Subring/Defs.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Category/Basic.lean,Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/NatTrans.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Real/Basic.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/Perm/Subgroup.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/Subgroup/Simple.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/Prime.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/LocalRing/Defs.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean 38 53 ['SnirBroshi', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] nobody
0-32416
9 hours ago
0-32417
8 hours ago
0-67351
18 hours

Stale new contributor 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
14563 awueth
author:awueth
feat: if-then-else of exclusive or statement --- If `¬(P ∧ Q)` then `ite (P ∨ Q) a 1 = (ite P a 1) * (ite Q a 1)` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
5/0 Mathlib/Algebra/Group/Basic.lean 1 3 ['eric-wieser', 'github-actions', 'kim-em'] nobody
653-4044
1 year ago
683-51026
683 days ago
6-38745
6 days
12751 Command-Master
author:Command-Master
feat: add lemmas for Nat/Bits, Nat/Bitwise and Nat/Size Remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 66/7 Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Size.lean 4 26 ['Command-Master', 'Rida-Hamadani', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'jcommelin'] nobody
648-75353
1 year ago
683-81575
683 days ago
56-40668
56 days
14669 Command-Master
author:Command-Master
feat(Data/Nat/PartENat): add lemmas for PartENat Add some missing lemmas for `PartENat`, as well as the additive homomorphism from it to `WithTop Int`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor merge-conflict 90/0 Mathlib/Data/Nat/PartENat.lean 1 4 ['erdOne', 'github-actions', 'mathlib-merge-conflicts', 'urkud'] nobody
636-843
1 year ago
687-8365
687 days ago
0-6775
1 hour
15121 Eloitor
author:Eloitor
feat: iff theorems for IsSplitEpi and IsSplitMono in opposite category --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-category-theory new-contributor 40/0 Mathlib/CategoryTheory/EpiMono.lean 1 3 ['github-actions', 'joelriou', 'mattrobball'] nobody
635-50188
1 year ago
667-9447
667 days ago
7-3203
7 days
14242 js2357
author:js2357
feat: Prove equivalence of `isDedekindDomain` and `isDedekindDomainDvr` Prove that `isDedekindDomainDvr` is equivalent to both `isDedekindDomain` and `isDedekindDomainInv`. Specifically, prove `isDedekindDomainDvr A → isDedekindDomainInv A`, because `isDedekindDomain A → isDedekindDomainDvr A` and `IsDedekindDomain A ↔ IsDedekindDomainInv A` are already in Mathlib. - [x] depends on: #14099 - [x] depends on: #14216 - [ ] depends on: #14237 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR new-contributor
label:t-algebra$
269/1 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean 4 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
612-61247
1 year ago
700-50194
700 days ago
0-273
4 minutes
16887 metinersin
author:metinersin
feat(ModelTheory/Complexity): define conjunctive and disjunctive formulas Defines `FirstOrder.Language.BoundedFormula.IsConjunctive` and `FirstOrder.Language.BoundedFormula.IsDisjunctive`. --- - [ ] depends on: #16885 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 300/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57225
1 year ago
619-85299
619 days ago
0-1299
21 minutes
16888 metinersin
author:metinersin
feat(ModelTheory/Complexity): Define conjunctive and disjunctive normal forms Define `FirstOrder.Language.BoundedFormula.IsDNF` and `FirstOrder.Language.BoundedFormula.IsCNF`. --- - [ ] depends on: #16887 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 415/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57225
1 year ago
619-85300
619 days ago
0-1045
17 minutes
16889 metinersin
author:metinersin
feat(ModelTheory/Complexity): Normal forms Defines `FirstOrder.Language.BoundedFormula.toDNF` and `FirstOrder.Language.BoundedFormula.toCNF` - given a quantifier-free formula, these construct a semantically equivalent formula in disjunctive normal form and conjunctive normal form, respectively. --- - [ ] depends on: #16888 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 525/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57224
1 year ago
619-81050
619 days ago
0-613
10 minutes
14619 Command-Master
author:Command-Master
chore: Merge `Trunc` to `Squash` Remove `Trunc` and use `Squash` instead --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP new-contributor 197/211 Mathlib/CategoryTheory/EpiMono.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/Data/DFinsupp/Basic.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Fintype/Option.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Semiquot.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/Logic/Equiv/List.lean 13 3 ['Command-Master', 'github-actions', 'vihdzp'] nobody
595-17375
1 year ago
unknown
0-0
0 seconds
12750 Command-Master
author:Command-Master
feat: define Gray code --- Define binary reflected gray code, both as a permutation of `Nat` and as a permutation of `BitVec n`, and prove some theorems about them. Additionally, remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. - [ ] depends on: #12751 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-data new-contributor merge-conflict awaiting-author 226/0 Mathlib.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/GrayCode.lean,Mathlib/Data/Nat/Size.lean 5 5 ['Rida-Hamadani', 'alreadydone', 'github-actions', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
586-79882
1 year ago
735-61980
735 days ago
16-49744
16 days
14598 Command-Master
author:Command-Master
chore: add typeclasses to unify various `add_top`, `add_eq_top`, etc. Add the four typeclasses `IsTopAbsorbing`, `IsBotAbsorbing`, `NoTopSum`, `NoBotSum`, as additive equivalents for `MulZeroClass` and `NoZeroDivisors`. Add instances of these for `ENNReal`, `WithTop α`, `WithBot α`, `PUnit`, `EReal`, `PartENat`, `Measure`, `Interval` and `Filter`. Also split `Algebra/Order/AddGroupWithTop` to `Algebra/Order/Group/WithTop` and `Algebra/Order/Monoid/WithTop` --- Previous usages of lemmas with quantified names like `WithTop.add_top` have to be changed to just `add_top`. `add_lt_top` is `@[simp]`, in accordance with `ENNReal.add_lt_top` being `@[simp]`. This affects `WithTop.add_lt_top` which previously hadn't been `@[simp]`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-order new-contributor
label:t-algebra$
264/195 Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib.lean,Mathlib/Algebra/Order/Group/WithTop.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/PUnitInstances/Order.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Analytic/Meromorphic.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/NormedSpace/ENorm.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Log/ENNRealLog.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/Data/Real/EReal.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Integral/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean 57 30 ['Command-Master', 'YaelDillies', 'github-actions'] nobody
570-21758
1 year ago
570-21758
570 days ago
7-45599
7 days
16885 metinersin
author:metinersin
feat(ModelTheory/Complexity): define literals Defines `FirstOrder.Language.BoundedFormula.IsLiteral` and `FirstOrder.Language.BoundedFormula.simpleNot` - an auxiliary operation that takes the negation of a formula and does some simplification. --- - [x] depends on: #16800 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-logic 148/5 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 4 20 ['YaelDillies', 'awainverse', 'github-actions', 'mathlib4-dependent-issues-bot', 'metinersin'] nobody
567-64279
1 year ago
603-53591
603 days ago
0-19926
5 hours
13248 hcWang942
author:hcWang942
feat: basic concepts of auction theory ## Description Formalise some core concepts and results in auction theory: this includes definitions for first-price and second-price auctions, as well as several fundamental results and helping lemmas. This is the very first PR of the project formalizing core concepts and results in auction theory. Our group is working on more contributions on the formalization of game theory prefix. Co-authored-by: Ma Jiajun ## Reference Roughgarden, Tim. ***Twenty Lectures on Algorithmic Game Theory***. Cambridge University Press, 2020. [Link](https://www.cambridge.org/core/books/twenty-lectures-on-algorithmic-game-theory/A9D9427C8F43E7DAEF8C702755B6D72B) --- - [x] Will depend on #14163 once that PR is merged. The Fintype lemmas introduced by this PR have been added in that PR and will be removed from here once that PR gets merged ## Current plan for formalization of Game Theory The current plan for the formalizing of Game Theory include: #### 1. Auction Theory. 🎉 _(200+ lines, this PR)_ - Essential definitions of Sealed-bid auction, First-price auction and Second-price auction. - First-price auction has no dominant strategy. - Second-price auction has dominant strategy. (Second-price auction is DSIC) #### 2. Mechanism design & Myerson's Lemma. 🎉 (400+ lines, pending for modification to Mathlib Standard) - Mechanism design An allocation rule is implementable if there exists - Dominant Strategy Incentive Compatible (DSIC) payment rule - An allocation rule is monotone if for every bidder’s gain is nondecreasing w.r.t. her/his bid - Myerson's Lemma Implementable ⇔ Monotone In the above case, the DSIC payment rule is unique. #### 3. von Neumann‘s Minimax Theorem. 🎉 (800+ lines, pending for modification to Mathlib Standard) - Equilibrium in zero sum game - Formalization strategy: via Loomis’s theorem. #### 4. Nash Equilibrium. 🎉 (pending for modification to Mathlib Standard) #### 5. Brouwer fixed-point theorem. (Work in Progress) #### 6. More Mechanism design. (Planning) merge-conflict awaiting-author new-contributor t-logic 204/0 Mathlib.lean,Mathlib/GameTheory/Auction/Basic.lean,docs/references.bib 3 148 ['Shreyas4991', 'YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'grunweg', 'hcWang942', 'tb65536', 'urkud', 'vihdzp'] hcWang942
assignee:hcWang942
563-16711
1 year ago
577-2899
577 days ago
109-82807
109 days
19125 yhtq
author:yhtq
feat: add theorems to transfer `IsGalois` between pairs of fraction rings feat: add theorems to transfer `IsGalois` between pairs of fraction rings. - [x] depends on: #18404 - [x] depends on: #19124 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra new-contributor
label:t-algebra$
121/0 Mathlib.lean,Mathlib/FieldTheory/Galois/IsFractionRing.lean,Mathlib/RingTheory/Localization/FractionRing.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'tb65536'] nobody
533-39128
1 year ago
560-510
560 days ago
0-1980
33 minutes
17739 Aaron1011
author:Aaron1011
feat(Topology/Order/DenselyOrdered): prove Not (IsOpen) for intervals Prove that Iic/Ici/Ioc/Ico/Icc intervals are not open in densely ordered topologies with no min/max element --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology new-contributor 27/0 Mathlib/Topology/Order/DenselyOrdered.lean 1 8 ['github-actions', 'vihdzp'] nobody
499-61140
1 year ago
592-52710
592 days ago
0-4704
1 hour
15711 znssong
author:znssong
feat(Combinatorics/SimpleGraph): Some lemmas about walk, cycle and Hamiltonian cycle --- These lemmas are separated from the `meow-sister/BondyChvatal` branch and will be needed for the proof of the Bondy-Chvátal theorem. - [x] depends on: #15536 - [x] depends on: #16294 merge-conflict awaiting-author t-combinatorics new-contributor 407/3 Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 4 22 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'znssong'] nobody
498-80226
1 year ago
620-4987
620 days ago
9-13962
9 days
15720 znssong
author:znssong
feat(SimpleGraph): The Bondy-Chvátal theorem The proof of the Bondy-Chvátal theorem, with Dirac's theorem and Ore's theorem as its corollary. - [x] depends on: #15536 - [ ] depends on: #15711 - [ ] depends on: #15578 merge-conflict blocked-by-other-PR t-combinatorics new-contributor 903/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/BondyChvatal.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Increasing.lean 8 3 ['github-actions', 'grunweg'] nobody
498-80226
1 year ago
656-11180
656 days ago
0-1791
29 minutes
18629 tomaz1502
author:tomaz1502
feat(Computability.Timed): Formalization of runtime complexity of List.merge This PR adds the formalization of the runtime complexity of the merge function, defined in `Data/List/Sort`. Requires: https://github.com/leanprover-community/mathlib4/pull/15450 References: - Previous PR on mathlib3: https://github.com/leanprover-community/mathlib3/pull/14494/ - First discussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/BSc.20Final.20Project/near/220647062 - Second disussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Formalization.20of.20Runtime.20Complexity.20of.20Sorting.20Algorithms/near/284184450 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 186/0 Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean 3 2 ['github-actions', 'trivial1711'] nobody
498-46145
1 year ago
538-45758
538 days ago
33-11262
33 days
18461 hannahfechtner
author:hannahfechtner
feat: left and right common multiples mixins add mixins for left and right common multiples. These carry the data of what factors are used to create the common multiples --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
78/0 Mathlib/Algebra/Group/Defs.lean 1 13 ['github-actions', 'hannahfechtner', 'jcommelin', 'kbuzzard', 'kim-em', 'trivial1711'] nobody
495-7325
1 year ago
495-7325
495 days ago
69-35596
69 days
19291 PieterCuijpers
author:PieterCuijpers
feat(Algebra/Order/Hom): add quantale homomorphism Definition of quantale homomorphisms as functions that are both semigroup homomorphisms and complete lattice homomorphisms. --- - [x] depends on: #19810 - [x] depends on: #19811 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
209/0 Mathlib.lean,Mathlib/Algebra/Order/Hom/Quantale.lean,scripts/noshake.json 3 29 ['PieterCuijpers', 'YaelDillies', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot'] nobody
493-67804
1 year ago
499-35205
499 days ago
29-51482
29 days
20372 jvlmdr
author:jvlmdr
feat(MeasureTheory/Function): Add ContinuousLinearMap.bilinearCompLp(L) Introduce ContinuousLinearMap.bilinearCompLp and bilinearCompLpL. Generalize eLpNorm_le_eLpNorm_mul_eLpNorm theorems to include constant C in bound condition. --- Expect this may be useful for defining tempered distributions from functions in `L^p`. The definitions more or less follow `ContinuousLinearMap.compLp...`. Names are loosely analogous to `ContinuousLinearMap.bilinearComp` and `SchwartzMap.bilinLeftCLM`. Note: I preferred the spelling `hpqr : p⁻¹ + q⁻¹ = r⁻¹` with `f` in `L^p` and `g` in `L^q` to `hpqr : 1 / p = 1 / q + 1 / r`. It's easier to obtain from `ENNReal.IsConjExponent` too. A few questions: - [ ] I defined `bilinear{Left,Right}LpL` in addition to `bilinearCompLpL` because `LinearMap.mkContinuous₂` is marked as `noncomputable` and `LinearMap.mkContinuous` is not. Is this worth the extra definitions? (Note: This is not visible in the source due to `noncomputable section`.) - [ ] Should I use `C : ℝ` instead of `C : NNReal` for `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'`? - [ ] Is it going to be painful to have `[Fact (1 ≤ p)] [Fact (1 ≤ q)] [Fact (1 ≤ r)]`? I don't think there's a way to avoid it though. Maybe providing specialized versions for `p.IsConjExponent q` with `L^1`? Naming: - [ ] Is it satisfactory to add a `'` to the `eLpNorm_le_eLpNorm_mul_eLpNorm ` definitions in `CompareExp.lean` where `≤ ‖f x‖ * ‖g x‖` has been replaced with `≤ C * ‖f x‖ * ‖g x‖`? These could replace the existing theorems, although I don't want to break backwards compatibility. There are 5 instances: `eLpNorm_le_eLpNorm_top_mul_eLpNorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm_top'`, `eLpNorm'_le_eLpNorm'_mul_eLpNorm''`, `eLpNorm_le_eLpNorm_mul_eLpNorm_of_nnnorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'` (I'm not sure why the existing theorem `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm` has an internal `'`) - [ ] Is `bilinearLeftLpL` a suitable name? Other options: `bilinearCompLpLeftL`, `bilinearCompLeftLpL`, `bilinLeftLpL` (analogous to `SchwartzMap.bilinLeftCLM`) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-measure-probability new-contributor 203/40 Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace.lean 2 1 ['github-actions'] nobody
486-85152
1 year ago
486-85152
486 days ago
27-43617
27 days
20248 peabrainiac
author:peabrainiac
feat(Topology/Compactness): first-countable locally path-connected spaces are delta-generated Shows that all first-countable locally path-connected spaces are delta-generated (so in particular all normed spaces and convex subsets thereof are), and that delta-generated spaces are equivalently generated by the unit interval or standard simplices. --- - [ ] depends on: #21616 In principle, this should be close to all that's required to show that all simplicial complexes and CW-complexes are delta-generated; I just haven't done it yet because I'm not sure which file to best do it in. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import new-contributor merge-conflict awaiting-author t-topology 1189/813 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/Compactness/DeltaGeneratedSpace.lean,Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/Homotopy/HSpaces.lean,Mathlib/Topology/Path.lean 9 22 ['YaelDillies', 'github-actions', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'peabrainiac'] nobody
474-42462
1 year ago
481-6979
481 days ago
39-21495
39 days
19943 AlexLoitzl
author:AlexLoitzl
feat(Computability): Add Chomsky Normal Form Grammar and translation - Define Chomsky normal form grammars - Add language-preserving translation between context-free grammars and Chomsky normal form grammars Co-authored-by: Martin Dvorak martin.dvorak@matfyz.cz --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 3151/0 Mathlib.lean,Mathlib/Computability/ChomskyNormalForm/Basic.lean,Mathlib/Computability/ChomskyNormalForm/EmptyElimination.lean,Mathlib/Computability/ChomskyNormalForm/LengthRestriction.lean,Mathlib/Computability/ChomskyNormalForm/TerminalRestriction.lean,Mathlib/Computability/ChomskyNormalForm/Translation.lean,Mathlib/Computability/ChomskyNormalForm/UnitElimination.lean,Mathlib/Computability/ContextFreeGrammar.lean 8 59 ['AlexLoitzl', 'YaelDillies', 'github-actions', 'kim-em', 'madvorak'] nobody
469-76561
1 year ago
477-1783
477 days ago
37-29014
37 days
21501 sksgurdldi
author:sksgurdldi
feat(List): add sum_zipWith_eq_finset_sum ### **Description:** This PR adds the lemma `List.sum_zipWith_eq_finset_sum` to `Mathlib.Algebra.BigOperators.Group.Finset.Basic`. #### **Statement:** The sum of the `zipWith` operation on two lists equals the sum of applying the operation to corresponding elements of the two lists, indexed over the minimum of their lengths. #### **Formal Statement:** ```lean lemma sum_zipWith_eq_finset_sum [Inhabited α] [Inhabited β] [AddCommMonoid γ] {op : α → β → γ} (l : List α) (m : List β) : (List.zipWith op l m).sum = ∑ x ∈ (Finset.range (Nat.min l.length m.length)), op (l[x]!) (m[x]!) ``` #### **Remarks:** - This lemma provides a useful equivalence between `List.zipWith` and summation over a `Finset.range` indexed by `Nat.min l.length m.length`. - It can be helpful in algebraic manipulations involving list-based summations. #### **Dependencies:** No additional dependencies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
43/0 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 1 ['github-actions', 'j-loreaux'] nobody
464-45332
1 year ago
464-45332
464 days ago
13-33168
13 days
21959 BGuillemet
author:BGuillemet
feat(Topology/ContinuousMap): Stone-Weierstrass theorem for MvPolynomial Add the subalgebra of multivariate polynomials and prove it separates points, on the same model as `ContinuousMap/Polynomial.lean`. Prove the Stone-Weierstrass theorem and some variations for multivariate polynomials. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology new-contributor 285/1 Mathlib.lean,Mathlib/Topology/ContinuousMap/MvPolynomial.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 3 1 ['github-actions'] nobody
450-71173
1 year ago
450-71173
450 days ago
16-76141
16 days
15578 znssong
author:znssong
feat(Function): Fixed points of function `f` with `f(x) >= x` We added some lemmas of fixed points of function `f` with `f(x) >= x`, where `f : α → α` is a function on a finite type `α`. This will be needed in proof of Bondy-Chvátal theorem. --- See also branch `meow-sister/BondyChvatal`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis new-contributor 82/0 Mathlib.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Increasing.lean 3 32 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'urkud', 'vihdzp', 'znssong'] nobody
442-66999
1 year ago
625-70228
625 days ago
29-48368
29 days
21018 markimunro
author:markimunro
feat(Data/Matrix): add file with key definitions and theorems about elementary row operations Prove that each elementary row operation is equivalent to a multiplication by an elementary matrix, has another row operation which inverts it, and that each elementary matrix has a left inverse. This is a very large PR and I understand it will take time. This is my first one and will likely have issues but I will be ready to answer questions/fix them as soon as possible. Co-authored-by: Christopher Lynch --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data enhancement new-contributor merge-conflict awaiting-author 1230/0 Mathlib.lean,Mathlib/Data/Matrix/ElementaryRowOperations.lean,Mathlib/Data/Matrix/GaussianElimination.lean,Mathlib/Data/Matrix/GaussianEliminationOld,Mathlib/Data/Matrix/oldnames,et --hard 18533caba32,lean-toolchain 7 17 ['chrisflav', 'eric-wieser', 'github-actions', 'j-loreaux', 'markimunro'] nobody
424-15998
1 year ago
449-44954
449 days ago
23-22681
23 days
15212 victorliu5296
author:victorliu5296
feat: Add fundamental theorem of calculus-2 for Banach spaces add the Mean Value Theorem for Banach spaces to the library and include reference for the theorem statement This theorem states that if `f : X → Y` is differentiable along the line segment from `a` to `b`, then the change in `f` equals the integral of its derivative along this path. This extends the mean value theorem to Banach spaces. This can be used for the eventual proof of the Newton-Kantorovich theorem with 1 constant contained inside the added reference. Here is the discussion on Zulipchat: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Contributing.20FTC-2.20for.20Banach.20spaces t-measure-probability new-contributor merge-conflict awaiting-author t-analysis 60/1 Mathlib/MeasureTheory/Integral/FundThmCalculus.lean 1 3 ['github-actions', 'hrmacbeth', 'victorliu5296'] nobody
419-10987
1 year ago
612-74758
612 days ago
51-85104
51 days
22308 plp127
author:plp127
feat (Analysis/Convex): Generalize `Convex` lemmas to `StarConvex` This PR generalizes many lemmas assuming `Convex 𝕜 s` to assume `StarConvex 𝕜 0 s`. --- - [x] depends on: #22421 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis new-contributor 30/18 Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/GaugeRescale.lean,Mathlib/Analysis/Convex/Star.lean,Mathlib/Analysis/LocallyConvex/AbsConvexOpen.lean 4 5 ['Paul-Lez', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
415-83307
1 year ago
unknown
0-0
0 seconds
21488 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): premonoidal categories Add support for premonoidal categories --- Still want to add support for: - Premonoidal braided/symmetric categories - The monoidal coherence theorem, which I've already ported in my `discretion` library - The `coherence` tactic, which should work fine for premonoidal categories too but wanted to get this in front of reviewers ASAP to make sure my general approach was alright [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory new-contributor 900/361 Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,MathlibTest/StringDiagram.lean 21 9 ['YaelDillies', 'github-actions', 'grunweg', 'imbrem', 'kim-em', 'leanprover-community-bot-assistant'] nobody
415-79575
1 year ago
415-79576
415 days ago
58-6026
58 days
20873 vbeffara
author:vbeffara
feat(Topology/Covering): path lifting and homotopy lifting This proves the existence and uniqueness of path and homotopy lifts through covering maps. --- I tried to separate as much of the proof as possible into separate PRs (which are already in Mathlib now), but the proof here relies on a monolithic construction of an explicit lift along a well-chosen subdivision, in `partial_lift`, with associated definitions. Only one standalone lean file added. An older WIP PR #10084 by Junyan Xu @alreadydone proves similar results using a very similar construction for path lifting, with a different argument to obtain continuity for homotopy lifting. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology new-contributor 281/1 Mathlib.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/Covering/Lift.lean 3 9 ['alreadydone', 'github-actions', 'grunweg', 'vbeffara'] nobody
414-82303
1 year ago
489-75063
489 days ago
5-5648
5 days
20313 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Data/Complex/Exponential): prove some useful results about the complex exponential. This PR proves two basic results about the complex exponential: * `abs_exp_mul_I (x : ℂ) : abs (Complex.exp (I * x)) = Real.exp (-x.im)` * `one_sub_rexp_re_le_abs_one_sub_cexp (x : ℂ) : 1 - Real.exp x.re ≤ Complex.abs (1 - Complex.exp x)` Both results were proved as part of the sphere packing project. There's a chance they're too specific for mathlib, but I thought they were worth PRing anyway. Would it also be a good idea to tag `abs_exp_mul_I` with `simp`? Feedback/suggestions welcome. Note: `one_sub_rexp_re_le_abs_one_sub_cexp` was proved by Bhavik Mehta @b-mehta --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis new-contributor 167/141 Mathlib.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/ERealExp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev.lean,Mathlib/Data/Complex/Exponential/Defs.lean,Mathlib/Data/Complex/Exponential/Lemmas.lean,Mathlib/Data/Complex/ExponentialBounds.lean,Mathlib/Tactic/FunProp.lean,MathlibTest/Recall.lean,MathlibTest/positivity.lean 10 12 ['b-mehta', 'github-actions', 'kim-em', 'thefundamentaltheor3m', 'trivial1711'] nobody
407-53501
1 year ago
490-64748
490 days ago
8-42257
8 days
20730 kuotsanhsu
author:kuotsanhsu
feat(LinearAlgebra/Matrix/SchurTriangulation): prove Schur decomposition/triangulation `Matrix.schur_triangulation` shows that a matrix over an algebraically closed field is unitarily similar to an upper triangular matrix --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
317/2 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean,Mathlib/Logic/Equiv/Basic.lean 4 14 ['eric-wieser', 'github-actions', 'kim-em', 'kuotsanhsu'] nobody
407-49633
1 year ago
487-40606
487 days ago
13-56244
13 days
22809 b-reinke
author:b-reinke
feat: Category algebras and path algebras This PR defines the category algebra of a linear category and path algebras of quivers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory new-contributor
label:t-algebra$
218/0 Mathlib/Algebra/Ring/Assoc.lean,Mathlib/CategoryTheory/Linear/CategoryAlgebra.lean,Mathlib/Combinatorics/Quiver/PathAlgebra.lean,Mathlib/Data/DFinsupp/BigOperators.lean 4 2 ['b-reinke', 'github-actions'] nobody
392-14072
1 year ago
unknown
0-0
0 seconds
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
389-46751
1 year ago
658-69936
658 days ago
0-179
2 minutes
24008 meithecatte
author:meithecatte
chore(EpsilonNFA): replace manual lemmas with @[simps] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability awaiting-author new-contributor 2/24 Mathlib/Computability/EpsilonNFA.lean 1 2 ['YaelDillies', 'github-actions', 'urkud'] nobody
384-5930
1 year ago
384-5930
384 days ago
27-52316
27 days
23349 BGuillemet
author:BGuillemet
feat: add LocallyLipschitzOn.lipschitzOnWith_of_isCompact and two small lemmas about Lipschitz functions Main feat (in Mathlib/Topology/EMetricSpace/Basic.lean): if a function `f` from an extended pseudometric space to a pseudometric space is locally Lipschitz on a compact subset `s`, then `f` is Lipschitz on `s`. The theorem is true only when the codomain of `f` is a pseudometric space, so it needs imports from Mathlib/Topology/MetricSpace. Other small feat (in Mathlib/Analysis/Calculus/ContDiff/RCLike.lean): a function that is continuously differentiable on an open subset is locally Lipschitz on this subset. --- - [ ] depends on: #22890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology large-import new-contributor 59/4 Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean 2 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] PatrickMassot
assignee:PatrickMassot
367-64671
1 year ago
367-64673
367 days ago
35-30364
35 days
12799 jstoobysmith
author:jstoobysmith
feat(LinearAlgebra/UnitaryGroup): Add properties of Special Unitary Group Add properties of the special unitary group, mirroring the properties of found in Algebra/Star/Unitary.lean. In particular, I add an instance of `specialUnitaryGroup` as a `Group`, `Star`, `InvolutiveStar`, and `StarMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-algebra new-contributor merge-conflict awaiting-author
label:t-algebra$
78/0 Mathlib/LinearAlgebra/UnitaryGroup.lean 1 8 ['chrisflav', 'jcommelin', 'leanprover-community-bot-assistant'] nobody
357-36624
11 months ago
740-64277
740 days ago
9-22045
9 days
20334 miguelmarco
author:miguelmarco
feat: allow polyrith to use a local Singular/Sage install Try to call a local install of Singular (either standalone or inside Sage) to find the witness for polyrith before trying to call the online sage cell server. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-meta 171/48 Mathlib/Tactic/Polyrith.lean,scripts/polyrith_sage.py 2 16 ['eric-wieser', 'github-actions', 'hanwenzhu', 'kim-em', 'miguelmarco', 'mkoeppe'] nobody
350-29177
11 months ago
488-67158
488 days ago
27-61498
27 days
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
329-25938
10 months ago
362-1055
362 days ago
6-47693
6 days
10190 jstoobysmith
author:jstoobysmith
feat(AlgebraicTopology): add Augmented Simplex Category - Added the definition of the category FinLinOrd of finite linear ordered sets. - Added the definition of the augmented simplex category `AugmentedSimplexCategory`, and showed it is the Skeleton of FinLinOrd. - Showed that the category of augmented simplicial objects defined as a comma category is equivalent to the category of functors from `AugmentedSimplexCategory^\op` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP t-category-theory new-contributor merge-conflict 720/0 Mathlib.lean,Mathlib/AlgebraicTopology/AugmentedSimplexCategory.lean,Mathlib/AlgebraicTopology/SimplicialObject.lean,Mathlib/Order/Category/FinLinOrd.lean 4 5 ['TwoFX', 'YaelDillies', 'joelriou', 'jstoobysmith'] nobody
302-84478
9 months ago
839-77404
839 days ago
7-63253
7 days
25238 Hagb
author:Hagb
feat(Tactic/ComputeDegree): add support for scalar multiplication with different types It would be able to deal with `a • (X : R[X])` where `a : S` is in a different type `S` with `[SMulZeroClass S R]`. --- - [x] depends on: #25237 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta new-contributor 17/5 Mathlib/Tactic/ComputeDegree.lean,MathlibTest/ComputeDegree.lean 2 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
299-4269
9 months ago
329-25938
329 days ago
38-26044
38 days
18646 jxjwan
author:jxjwan
feat(RingTheory): isotypic components --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory new-contributor 308/0 Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/RingTheory/Isotypic.lean,Mathlib/RingTheory/SimpleModule.lean 3 1 ['github-actions'] nobody
298-6290
9 months ago
550-86283
550 days ago
20-16585
20 days
20671 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Asymptotics/SpecificAsymptotics): Proving that 𝛔ₖ(n) = O(nᵏ⁺¹) This PR proves a result about the $\sigma_k(n)$ arithmetic function, namely, that it is $O\left(n^{k+1}\right)$. Main theorem: `theorem sigma_asymptotic (k : ℕ) : (fun n ↦ (σ k n : ℝ)) =O[atTop] (fun n ↦ (n ^ (k + 1) : ℝ))` This result was proved as part of the sphere packing project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor large-import merge-conflict awaiting-author 29/0 Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean 1 3 ['b-mehta', 'github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
293-9831
9 months ago
493-71046
493 days ago
9-59130
9 days
20722 ctchou
author:ctchou
feat(Counterexamples): the Vitali set is non-measurable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-measure-probability new-contributor merge-conflict awaiting-author 258/3 Counterexamples.lean,Counterexamples/VitaliSetNotMeasurable.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,docs/1000.yaml 4 76 ['ctchou', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'vihdzp'] vihdzp
assignee:vihdzp
286-85915
9 months ago
500-77885
500 days ago
0-47663
13 hours
28502 gilesgshaw
author:gilesgshaw
feat(Logic/Basic): avoid unnecessary uses of choice Certain proofs are modified to remove a dependence on the axoim of choice --- - [ ] depends on: #28623 blocked-by-other-PR new-contributor merge-conflict awaiting-author t-logic 83/74 Mathlib/Logic/Basic.lean 1 7 ['Ruben-VandeVelde', 'eric-wieser', 'gilesgshaw', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
284-21327
9 months ago
287-6856
287 days ago
0-35689
9 hours
19582 yu-yama
author:yu-yama
feat(GroupExtension/Abelian): define `OfMulDistribMulAction.equivH2` Mainly defines: - `structure GroupExtension.OfMulDistribMulAction N G [MulDistribMulAction G N]`: group extensions of `G` by `N` where the multiplicative action of `G` on `N` is the conjugation - `structure GroupExtension.OfMulDistribMulActionWithSection N G [MulDistribMulAction G N]`: group extensions with specific choices of sections - `def GroupExtension.OfMulDistribMulAction.equivH2`: a bijection between the equivalence classes of group extensions and $H^2 (G, N)$ --- - [x] depends on: #20802 (split PR: contains changes to the `Defs` file) - [x] depends on: #20998 (split PR: mainly adds the `Basic` file) - [ ] depends on: #26670 (split PR: adds the first part of the `Abelian` file) Here is a relevant TODO in Mathlib: https://github.com/leanprover-community/mathlib4/blob/4e9fa40d7c480937e09cd6e47a591bd6f3b8be42/Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean#L46-L48 I would appreciate your comments. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR new-contributor
label:t-algebra$
750/14 Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Abelian.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,docs/references.bib 4 5 ['YaelDillies', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
281-57835
9 months ago
504-28394
504 days ago
43-22586
43 days
27403 MoritzBeroRoos
author:MoritzBeroRoos
fix: replace probably erroneous usage of ⬝ (with old \cdot) by · (with \centerdot) Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot). Currently the abbreviations \cdot and \centerdot resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for center..). This pr replaces instances of ⬝ where · was probably meant. All of the replacement is in comments, except for the file bench_summary.lean which is used for priting the github benchmark results. Since this file is about scientific notation of numbers, sure · was meant to be used, not a rectangle. [Related](https://github.com/leanprover-community/mathlib4/pull/27399) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor 195/195 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Normed/Unbundled/InvariantExtension.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/FieldTheory/PurelyInseparable/PerfectClosure.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,Mathlib/Topology/Instances/Matrix.lean,scripts/bench_summary.lean 49 5 ['eric-wieser', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
280-22416
9 months ago
302-84738
302 days ago
7-54661
7 days
27399 MoritzBeroRoos
author:MoritzBeroRoos
chore: replace every usage of ⬝ᵥ (with old \cdot) by ·ᵥ (with \centerdot) Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot). Currently the abbreviations `\cdot` and `\centerdot` resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for `center`..): - `\cdot` gives ⬝ [U+2B1D](https://www.compart.com/en/unicode/U+2B1D) "Black Very Small Square" - `\centerdot` gives · [U+00B7](https://www.compart.com/en/unicode/U+00B7) "Middle Dot" Mathlib mostly uses the `\centerdot` variant, except for the dotProduct notation and some probably unsuspecting people wanting \centerdot but getting \cdot in their comments and 6 uses of a notation using the raw `\cdot` without any subscript at `Mathlib\Topology\Homotopy\Product.lean`. This PR replaces the dot product `⬝ᵥ` with its `\centerdot` counterpart `·ᵥ`. The related PR [here](https://github.com/leanprover/vscode-lean4/pull/639) can then overwrite the `\cdot` abbreviation, to produce the same symbol as the `centerdot` abbreviation does. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor 133/133 Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/Topology/Instances/Matrix.lean 25 6 ['MoritzBeroRoos', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
279-70648
9 months ago
302-84739
302 days ago
7-62439
7 days
27479 iu-isgood
author:iu-isgood
feat: Abel's Binomial Theorem We have formalized Abel's Binomial Theorem as part of an REU project. There are a few remaining sorrys, but we will finish them soon. I will edit this PR message later according to community rules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor 326/0 Mathlib/Data/Nat/Choose/AbelBinomial.lean 1 28 ['ElifUskuplu', 'FrankieNC', 'github-actions', 'iu-isgood'] nobody
279-70409
9 months ago
308-68106
308 days ago
0-237
3 minutes
26462 PSchwahn
author:PSchwahn
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`. We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification). Co-authored by: - [Viviana del Barco](https://github.com/vdelbarc) - [Gustavo Infanti](https://github.com/GuQOliveira) - [Exequiel Rivas](https://github.com/erivas) --- I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
10/0 Mathlib/LinearAlgebra/Projection.lean 1 7 ['PSchwahn', 'github-actions', 'joelriou', 'kckennylau'] joelriou
assignee:joelriou
263-41777
8 months ago
263-72880
263 days ago
73-43082
73 days
28623 gilesgshaw
author:gilesgshaw
feat(Logic/Basic): minor additions and simplification of proofs Add new theorems and simplify proofs. Specifically, we add the family of related theorems `apply_dite_iff_exists`, `apply_dite_iff_forall`, `apply_ite_iff_and` and `apply_ite_iff_or`. For each other 'family' of theorems in the file that is analogous to the above, we do the following - Simplify proofs where possible, e.g. by appealing to the new theorems - Complete the family, if any of the corresponding four are missing - Rename to ensure consistency with the above pattern --- merge-conflict t-logic new-contributor 83/55 Archive/Examples/IfNormalization/Result.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Notation/Indicator.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/Logic/Basic.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/SetTheory/Ordinal/Notation.lean 9 12 ['eric-wieser', 'gilesgshaw', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] awainverse
assignee:awainverse
262-76679
8 months ago
262-76680
262 days ago
10-61840
10 days
25778 thefundamentaltheor3m
author:thefundamentaltheor3m
feat: Monotonicity of `setIntegral` for nonnegative functions This PR makes it easier to prove monotonicity of the Bochner integral on sets for nonnegative functions by removing the stronger assumption required by the general monotonicity lemma that both of the functions being compared must be integrable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-measure-probability new-contributor 8/0 Mathlib/MeasureTheory/Integral/Bochner/Set.lean 1 6 ['RemyDegenne', 'github-actions', 'sgouezel', 'thefundamentaltheor3m'] nobody
260-72401
8 months ago
351-80239
351 days ago
0-11893
3 hours
29588 Periecle
author:Periecle
feat(Analysis/Complex/Residue): Implement residue theory for complex functions at isolated singularities # Add basic residue theory for complex functions This PR introduces the residue theory implementation in mathlib. ## Main additions - **`HasIsolatedSingularityAt f c`**: Predicate for functions with isolated singularities at point `c` - **`residue f c hf`**: The residue of `f` at isolated singularity `c`, defined via circle integrals - **Radius independence**: `residue_eq_two_pi_I_inv_smul_circleIntegral` - residue equals normalized circle integral for any valid radius - **Holomorphic residues**: `residue_of_holomorphic` - functions holomorphic in a neighborhood have zero residue - **Simple pole formula**: `residue_simple_pole` - for `f(z) = (z-c)⁻¹ * g(z)`, residue equals `g(c)` ## Implementation notes - Builds on existing circle integral infrastructure in `CauchyIntegral.lean` - Uses `Classical.choose` to extract witness radius from isolated singularity condition - Comprehensive documentation with mathematical context and examples - Establishes foundation for residue theorem, argument principle, and other applications ## Examples included - `residue(1/z, 0) = 1` (canonical simple pole) - Radius independence demonstration - Zero residues for holomorphic functions This provides the essential building blocks for complex analysis and first step to formalize residue theory. awaiting-author t-analysis new-contributor 383/0 Mathlib/Analysis/Complex/Residue/Basic.lean 1 17 ['Periecle', 'github-actions', 'hrmacbeth', 'llllvvuu', 'loefflerd'] nobody
247-75879
8 months ago
259-82261
259 days ago
0-976
16 minutes
26178 ppls-nd-prs
author:ppls-nd-prs
feat(CategoryTheory/Limits): Fubini for products We show that the product of products is a product indexed by the sigma type. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 17/0 Mathlib/CategoryTheory/Limits/Shapes/Products.lean 1 6 ['chrisflav', 'github-actions', 'leanprover-community-bot-assistant', 'ppls-nd-prs', 'robin-carlier'] nobody
243-4523
8 months ago
344-13923
344 days ago
0-47665
13 hours
28630 Antidite
author:Antidite
feat(Archive/Imo): right isosceles configuration in the complex plane feat(Archive/Imo): right isosceles configuration in the complex plane This adds `Archive/Imo/Imo1975Q3.lean`, formalizing a triangle configuration with points A=0, B=1, C=z and auxiliary points R, P, Q built via complex rotations and sine-based scale factors. Main results: * `angle_and_distance`: ∠QRP = π/2 and dist Q R = dist R P. * Key identity `QRP_rot90`: (Q z).z − R.z = e^{iπ/2} · ((P z).z − R.z). Design/Style: * Minimal imports; module docstring; semantic lemma names; all definitions and theorems live under the namespace `IMO.TriangleConfig`. Moves: - (none) Deletions: - (none) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO awaiting-author new-contributor 196/0 Archive.lean,Archive/Imo/Imo1975Q3.lean 2 36 ['Antidite', 'LLaurance', 'github-actions', 'jsm28'] jsm28
assignee:jsm28
237-56669
7 months ago
237-56669
237 days ago
46-25852
46 days
16773 arulandu
author:arulandu
feat(Probability/Distributions): formalize Beta distribution Formalize Beta distribution, using Gamma distribution as a reference. Added real-valued beta wrapper, in the manner of gamma. Thanks to @EtienneC30 for help with casting real <-> complex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability 286/1 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Probability/Distributions/Beta.lean 3 50 ['EtienneC30', 'arulandu', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] arulandu
assignee:arulandu
231-65974
7 months ago
622-7123
622 days ago
1-21124
1 day
30460 janithamalith
author:janithamalith
feat(Nat): add lemma nat_card_orbit_mul_card_stabilizer_eq_card_group Added a lemma `nat_card_orbit_mul_card_stabilizer_eq_card_group` which is the Nat.card version of MulAction.card_orbit_mul_card_stabilizer_eq_card_group --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-group-theory new-contributor 6/0 Mathlib/GroupTheory/GroupAction/CardCommute.lean 1 17 ['github-actions', 'kckennylau', 'plp127', 'tb65536'] tb65536
assignee:tb65536
221-76224
7 months ago
221-76224
221 days ago
8-8414
8 days
25225 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 16/0 Mathlib/Combinatorics/SimpleGraph/Trails.lean 1 6 ['IvanRenison', 'github-actions', 'vlad902'] kmill
assignee:kmill
220-39756
7 months ago
220-39756
220 days ago
148-3286
148 days
30828 DeVilhena-Paulo
author:DeVilhena-Paulo
feat: implementation of `Finmap.merge` The main contribution of this pull request is the implementation of a `merge` function for finite maps (`Finmap`). The construction relies on the definition of a `merge` function for association lists (`AList`). There is also a side (unrelated) contribution on `Mathlib/Data/List/Permutation.lean`: the addition of a theorem about the permutation of a list with a head element (that is, a list of the form `a :: l`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 449/3 Mathlib/Data/Finmap.lean,Mathlib/Data/List/AList.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/List/Sigma.lean 4 1 ['github-actions'] nobody
218-63188
7 months ago
218-63259
218 days ago
0-80
1 minute
28676 sun123zxy
author:sun123zxy
feat(NumberTheory/ArithmeticFunction): wrap `Nat.totient` as an `ArithmeticFunction` This wraps the Euler's totient function `Nat.totient` into a new `ArithmeticFunction` `ϕ`, with some basic identities such as `ϕ * ζ = id` and `μ * id = ϕ.` --- We use the notation `ϕ` to distinguish from `Nat.totient`'s notation `φ`, however this might be controversial. Suggestions are welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor large-import merge-conflict awaiting-author 45/5 Mathlib/NumberTheory/ArithmeticFunction.lean 1 19 ['MichaelStollBayreuth', 'SnirBroshi', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'riccardobrasca', 'sun123zxy'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
214-9227
7 months ago
229-70303
229 days ago
47-58311
47 days
30299 franv314
author:franv314
feat(Topology/Instances): Cantor set Prove that the Cantor set has empty interior and the cardinality of the continuum as discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/A.20few.20results.20about.20the.20Cantor.20set/with/543560670) Moves: - Mathlib.Topology.Instances.CantorSet -> Mathlib.Topology.Instances.CantorSet.Basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict file-removed awaiting-author t-topology 355/2 Mathlib.lean,Mathlib/Topology/Instances/CantorSet/Basic.lean,Mathlib/Topology/Instances/CantorSet/Cardinality.lean,Mathlib/Topology/Instances/CantorSet/Lemmas.lean 4 5 ['github-actions', 'grunweg', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
214-957
7 months ago
234-69986
234 days ago
0-2409
40 minutes
30303 franv314
author:franv314
chore(Topology/Instances): add deprecated module Add deprecated module to moved Cantor set file. --- - [ ] depends on: #30299 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor 486/124 Mathlib.lean,Mathlib/Topology/Instances/CantorSet.lean,Mathlib/Topology/Instances/CantorSet/Basic.lean,Mathlib/Topology/Instances/CantorSet/Cardinality.lean,Mathlib/Topology/Instances/CantorSet/Lemmas.lean 5 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
214-955
7 months ago
234-67855
234 days ago
0-340
5 minutes
29871 zach1502
author:zach1502
feat(Matrix/Transvection): Gauss pivot determinant identity and pivot preservation This PR adds two lemmas formalizing standard Gaussian pivot identities: * `Matrix.Transvection.listTransvecCol_mul_mul_listTransvecRow_pivot`: After applying the canonical left/right transvection products that clear the last column and row, the pivot (bottom-right) entry of a matrix is unchanged. Marked `@[simp]`. * `Matrix.Transvection.det_eq_detTopLeft_mul_pivot`: If the pivot entry is nonzero, then the determinant of the matrix factors as the determinant of the top-left block times the pivot entry, after performing the canonical transvections. This is the usual Gauss–pivot determinant identity. * Added simple usage tests in `MathlibTest/matrix.lean` to check that the new lemmas are usable by `simp`/`simpa`. --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
94/0 Mathlib/LinearAlgebra/Matrix/Transvection.lean,MathlibTest/matrix.lean 2 3 ['github-actions', 'riccardobrasca', 'zach1502'] nobody
208-478
6 months ago
208-478
208 days ago
41-53449
41 days
30158 nicolaviolette
author:nicolaviolette
feat: combinatorics simplegraph basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 9/4 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 3 ['b-mehta', 'github-actions'] b-mehta
assignee:b-mehta
207-20009
6 months ago
207-20009
207 days ago
31-69826
31 days
26901 5hv5hvnk
author:5hv5hvnk
feat: a simproc version of `compute_degree` Wrap `compute_degree` in a simproc for use by simp. Closes #22219. --- awaiting-CI new-contributor merge-conflict awaiting-author t-meta 198/0 Mathlib.lean,Mathlib/Tactic/Simproc/PolynomialDegree.lean,MathlibTest/polynomial_degree_simproc.lean 3 19 ['5hv5hvnk', 'YaelDillies', 'adomani', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
204-66677
6 months ago
322-83671
322 days ago
2-71043
2 days
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
198-29668
6 months ago
238-8334
238 days ago
1-160
1 day
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
193-46800
6 months ago
612-74188
612 days ago
45-84611
45 days
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
192-63041
6 months ago
538-26571
538 days ago
23-54870
23 days
5919 MithicSpirit
author:MithicSpirit
feat: implement orthogonality for AffineSubspace Define `AffineSubspace.orthogonal` and `AffineSubspace.IsOrtho`, as well as develop an API emulating that of `Submodule.orthogonal` and `Submodule.IsOrtho`, respectively. Additionally, provide some relevant lemmas exclusive to affine subspaces, which are mostly to do with the relationship between orthogonality and `AffineSubspace.Parallel`. Closes #5539 --- Still WIP as I need to add more docstrings as well as notations for the new definitions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor merge-conflict help-wanted t-analysis 287/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/AffineSubspace.lean 2 7 ['MithicSpirit', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] MithicSpirit
assignee:MithicSpirit
192-14498
6 months ago
875-39393
875 days ago
0-433
7 minutes
13442 dignissimus
author:dignissimus
feat: mabel tactic for multiplicative abelian groups Mabel tactic for multiplicative abelian groups (#10361) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict modifies-tactic-syntax awaiting-author help-wanted t-meta 439/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MAbel.lean,MathlibTest/mabel.lean 4 11 ['BoltonBailey', 'dignissimus', 'github-actions', 'joneugster', 'kbuzzard', 'mathlib4-merge-conflict-bot'] joneugster
assignee:joneugster
192-14234
6 months ago
642-6320
642 days ago
0-16
16 seconds
14237 js2357
author:js2357
feat: Define the localization of a fractional ideal at a prime ideal Define the localization of a fractional ideal at a prime ideal, and prove some basic properties. --- This PR is part 3 out of 4 of a proof of `isDedekindDomain_iff_isDedekindDomainDvr`. Part 4 is available here: #14242 - [x] depends on: #14099 Part 1 - [x] depends on: #14216 Part 2 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
230/0 Mathlib.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean 3 22 ['Vierkantor', 'YaelDillies', 'github-actions', 'js2357', 'kbuzzard', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
192-14232
6 months ago
640-74455
640 days ago
6-3525
6 days
15224 AnthonyBordg
author:AnthonyBordg
feat(CategoryTheory/Sites): covering families and their associated Grothendieck topology Define covering families on a category and their associated Grothendieck topology by using the API for `Coverage`. Give an explicit characterization of the covering sieves of the said topology. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 112/0 Mathlib.lean,Mathlib/CategoryTheory/Sites/CoveringFamilies.lean 2 21 ['AnthonyBordg', 'adamtopaz', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] nobody
192-14103
6 months ago
667-66734
667 days ago
1-48443
1 day
17587 kmill
author:kmill
feat: Sym2-as-Finset theory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 105/3 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/RingTheory/Polynomial/Vieta.lean 4 11 ['FordUniver', 'YaelDillies', 'github-actions', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
192-13949
6 months ago
unknown
0-0
0 seconds
18630 tomaz1502
author:tomaz1502
feat(Computability.Timed): Formalization of runtime complexity of List.mergeSort This PR adds the formalization of the runtime complexity of the merge sort algorithm, defined in `Data/List/Sort`. Requires: https://github.com/leanprover-community/mathlib4/pull/15451 References: - Previous PR on mathlib3: https://github.com/leanprover-community/mathlib3/pull/14494/ - First discussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/BSc.20Final.20Project/near/220647062 - Second disussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Formalization.20of.20Runtime.20Complexity.20of.20Sorting.20Algorithms/near/284184450 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability new-contributor 526/0 Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean,Mathlib/Computability/Timed/MergeSort.lean,Mathlib/Computability/Timed/Split.lean 5 9 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13947
6 months ago
570-65750
570 days ago
0-77273
21 hours
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
192-13809
6 months ago
389-46738
389 days ago
75-77754
75 days
21903 yhtq
author:yhtq
feat: add from/toList between `FreeSemigroup` and `List` with relative theorems Add from/toList between `FreeSemigroup` and `List` with relative theorems, as well as an incidental definition of lexicographic order on `FreeSemigroup`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-CI large-import merge-conflict
label:t-algebra$
169/0 Mathlib/Algebra/Free.lean 1 12 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13669
6 months ago
418-84024
418 days ago
50-9294
50 days
22159 shetzl
author:shetzl
feat: add definition of pushdown automata Add the definition of pushdown automata and their two acceptance conditions: acceptance based on empty stack and acceptance based on final state. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 70/0 Mathlib.lean,Mathlib/Computability/PDA.lean 2 35 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody
192-13663
6 months ago
439-7676
439 days ago
20-81245
20 days
22302 658060
author:658060
feat: add `CategoryTheory.Topos.Power` This is a continuation of #21281 with the end goal of defining topoi in Mathlib. It introduces the notion of a power object in a category with a subobject classifier, which is a special case of an internal hom. The definition `HasPowerObjects C` contained in this PR is all that remains before `IsTopos C` can be defined. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 312/0 Mathlib.lean,Mathlib/CategoryTheory/Topos/Power.lean 2 3 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
192-13654
6 months ago
458-47656
458 days ago
0-1528
25 minutes
22790 mhk119
author:mhk119
feat: Extend `taylor_mean_remainder_lagrange` to `x < x_0` The `taylor_mean_remainder_lagrange` theorem has the assumption that $x_0 < x$. In many applications, we need $x < x_0$ and one cannot use the current version to obtain this (see [zulip](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Taylor's.20theorem)). This PR introduces a set of theorems that push negations through Taylor expansions so that one can extend `taylor_mean_remainder_lagrange` to the case when $x < x_0$. These theorems should also be useful elsewhere since they are quite general. merge-conflict awaiting-author t-analysis new-contributor 111/1 Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/Taylor.lean 3 13 ['Paul-Lez', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'mhk119'] nobody
192-13641
6 months ago
420-28758
420 days ago
23-16830
23 days
24333 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): cycle graph implementation for generic vertex types The existing `cycleGraph` implementation under Combinatorics/SimpleGraph/Circulant.lean only operates over `Fin n`. This PR implements a cycle graph implementation over any generic vertex type. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics new-contributor 187/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean 2 42 ['IvanRenison', 'github-actions', 'mathlib4-merge-conflict-bot', 'vlad902'] kmill
assignee:kmill
192-13488
6 months ago
278-12069
278 days ago
123-18878
123 days
25739 literandltx
author:literandltx
feat(NumberTheory/LegendreSymbol): Add sqrt‐of‐residue theorems for p=4k+3 and p=8k+5 Add a new file `QuadraticResidueRoots.lean` under `Mathlib/NumberTheory/LegendreSymbol/` that proves two explicit “square-root of quadratic residue” theorems for primes of the specific form. - **`exists_sqrt_of_residue_mod4_eq3`** for primes `p = 4*k + 3` - **`exists_sqrt_of_residue_mod8_eq5`** for primes `p = 8*k + 5` It also introduces the helper lemmas `euler_criterion_traditional` and `legendreSym.at_two_mod8_eq_5`. Import lines in `Mathlib.lean` and `Mathlib/NumberTheory/LegendreSymbol/Basic.lean` have been updated accordingly. merge-conflict awaiting-author t-number-theory new-contributor 217/0 Mathlib.lean,Mathlib/NumberTheory/LegendreSymbol/Basic.lean,Mathlib/NumberTheory/LegendreSymbol/QuadraticReciprocity.lean,Mathlib/NumberTheory/LegendreSymbol/QuadraticResidueRoots.lean 4 3 ['github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] literandltx
assignee:literandltx
192-13339
6 months ago
334-36902
334 days ago
17-63153
17 days
26165 oliver-butterley
author:oliver-butterley
feat(MeasureTheory.VectorMeasure): add lemma which shows that variation of a `ℝ≥0∞` VectorMeasure is equal to itself Add a lemma for the variation of a VectorMeasure which tells that if `μ` is `VectorMeasure X ℝ≥0∞` then ``μ.ennrealVariation = μ`. Co-authored-by: @yoh-tanimoto --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author merge-conflict blocked-by-other-PR new-contributor 467/0 Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/Order/Partition/Finpartition.lean 3 9 ['github-actions', 'leanprover-radar', 'mathlib4-merge-conflict-bot', 'oliver-butterley', 'yoh-tanimoto'] nobody
192-13150
6 months ago
329-8105
329 days ago
15-66224
15 days
26300 igorkhavkine
author:igorkhavkine
feat(Analysis/Calculus/FDeriv): continuous differentiability from continuous partial derivatives on an open domain in a product space If a function `f : E × F → G` is continuously differentiable, then its partial derivatives along `E` and `F` are also continuous. The non-trivial converse implication holds when the partial derivatives are continuous on an open domain, and they can be added together to give the total derivative of `f`. See this [#mathlib4 > Partial derivatives @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Partial.20derivatives/near/520995477) and the containing thread for some discussion. The PR creates a new import (`Mathlib.Analysis.Calculus.FDeriv.Partial`), where other results about partial derivatives could go in the future. --- *this is the migration of #25304 to the PR-from-fork workflow* - [x] depends on: #25564 - [x] depends on: #26273 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor awaiting-author t-analysis merge-conflict 468/0 Mathlib/Analysis/Calculus/FDeriv/Partial.lean 3 23 ['YaelDillies', 'agjftucker', 'github-actions', 'igorkhavkine', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
192-13127
6 months ago
288-61517
288 days ago
44-77029
44 days
26594 metakunt
author:metakunt
feat(Algebra/Polynomial/ZMod): Add Polynomial.equiv_of_nat_of_polynomial_zmod This adds an explicit bijection between the naturals and $$\mathbb{Z}/n\mathbb{Z}[X]$$ in a canonical way. --- I feel that some API is missing to make the theorem shorter, I have no idea what lemmas to extract though. Also I don't know when to use spaces and when not, so I did it best effort. merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
465/0 Mathlib.lean,Mathlib/Algebra/Polynomial/ZMod.lean 2 3 ['Ruben-VandeVelde', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-12979
6 months ago
307-56737
307 days ago
25-5233
25 days
26757 fweth
author:fweth
feat(CategoryTheory/Topos): define elementary topos This commit begins the formalization of the notion of an *elementary topos*, following the definition in \[Mac Lane & Moerdijk, *Sheaves in Geometry and Logic* (1992), Ch. IV, Section 1]. It introduces the file `Mathlib/CategoryTheory/Topos/Basic.lean`, which currently includes: * The definition of an elementary topos. * Proof that the power object map is a functor * Theorem about pullbacks of characterstic maps Subobject classifiers, which are used in the definition, have already been defined in `CategoryTheory/Topos/Classifier.lean` Work in progress: further formalization of the section is planned. Questions: * Should the definition of power objects be separated into its own file/module, perhaps under `CategoryTheory/Topos/PowerObject.lean`? * Is the notation `P` / `P_morph` / `P_functor` for the power object functor on objects / morphisms / total acceptable? * Should the comments and docstrings rather use the notation from the book, where `g ∘ f` denotes arrow composition from righ to left, or the Lean variant `f ≫ g`? Klaus Gy klausgy@gmail.com --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 401/66 Mathlib.lean,Mathlib/CategoryTheory/Closed/PowerObjects.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/CommSq.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Equalizer.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean 9 17 ['fweth', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
192-12974
6 months ago
221-65993
221 days ago
62-6838
62 days
27155 Pjotr5
author:Pjotr5
feat: Shearer's bound on the independence number of triangle free graphs I added the file IndependenceNumber.lean to the Mathlib.Combinatorics.SimpleGraph.Triangle folder. It contains a proof of a theorem by Shearer on the independence number of triangle-free graphs . I was told this might be useful to add to Mathlib a Zullip thread linked [here](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Convexity.20of.20a.20specific.20function/with/510469526). I tried to comply as much as I could with the Mathlib style guide, but I realise that there is probably still a significant amount of editing to be done. For one thing: there are probably some lemmas and theorems in there that might be better suited in other files, but since this is my first PR I though I would all put it in one file before starting to edit a bunch of files. I was also advised to split up the file into multiple smaller PRs, but since everything is basically serving this one proof I could not really find a natural way to do that. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics new-contributor 1266/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/IndependenceNumber.lean 2 10 ['Pjotr5', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
192-12937
6 months ago
279-69646
279 days ago
39-17587
39 days
27753 YunkaiZhang233
author:YunkaiZhang233
feat(CategoryTheory): implemented proofs for factorisation categories being equivalent to iterated comma categories in two ways --- Completed one of the tasks in TODOs, shown and implemented the details for (X/C)/f ≌ Factorisation f ≌ f/(C/Y). This is migrated from my previous PR #22390 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 70/1 Mathlib/CategoryTheory/Category/Factorisation.lean 1 13 ['YunkaiZhang233', 'b-mehta', 'github-actions', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
192-12782
6 months ago
302-70345
302 days ago
0-3448
57 minutes
27850 fyqing
author:fyqing
feat: 0-dimensional manifolds are discrete and countable This is the converse direction of the classification of 0-dimensional manifolds. The other direction was shown in #22105. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-differential-geometry new-contributor 80/0 Mathlib.lean,Mathlib/Geometry/Manifold/ZeroDim.lean 2 14 ['fyqing', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'tb65536'] grunweg
assignee:grunweg
192-12780
6 months ago
301-45007
301 days ago
0-5718
1 hour
28125 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics): basic definition of simplicial complexes This PR introduces the basic definition of a finite (abstract) simplicial complex, located in Mathlib/Combinatorics/SimplicialComplex/Basic.lean. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this is a small stepping stone in that direction. Some other commits will shortly depend on this one. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. We would also like to thank our group members Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. merge-conflict t-combinatorics new-contributor 374/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
192-12648
6 months ago
192-12649
192 days ago
99-64548
99 days
28530 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics/SimplicialComplex/Topology): add standard simplices and geometric realisation (colimit + functoriality) Introduce the standard simplex on a finite vertex set and build the geometric realisation |X| of a simplicial complex. Prove that |X| is the colimit of the face diagram δ_X : X.faces ⥤ TopCat, and define the induced map on realisations |φ| : |X| ⟶ |Y| for a simplicial map φ. Show that the abstract map from colimit functoriality agrees with the concrete push-forward of barycentric coordinates. Package these into a functor SimplicialComplexCat ⥤ TopCat. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this lays the groundwork to do this. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. I would also like to thank our group members Sebastian Kumar, Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. - [ ] depends on: #28125 merge-conflict blocked-by-other-PR t-combinatorics new-contributor 1826/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Colimit.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Diagram.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Functor.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Map.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/Simplex.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/SimplexMap.lean 12 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-12634
6 months ago
286-52862
286 days ago
0-591
9 minutes
28871 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Tournaments Define orientations and tournaments. Related to #26771. Co-authored-by: Rida Hamadani --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 62/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean 3 6 ['JaafarTanoukhi', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib4-merge-conflict-bot'] kmill
assignee:kmill
192-12495
6 months ago
192-12496
192 days ago
55-54919
55 days
29947 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Maps Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 476/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Maps.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
192-11861
6 months ago
192-11862
192 days ago
54-82760
54 days
14704 Command-Master
author:Command-Master
feat(FieldTheory): define typeclass for simple extensions, and prove some properties Define `SimpleExtension F K`, which says that `K` is a simple field extension of `F`, and show that together with transcendentality it implies `IsFractionRing F[X] K`. --- - [x] depends on: #14710 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra new-contributor merge-conflict awaiting-author
label:t-algebra$
120/0 Mathlib.lean,Mathlib/FieldTheory/SimpleExtension.lean 2 19 ['Command-Master', 'acmepjz', 'github-actions', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] nobody
192-8693
6 months ago
636-1807
636 days ago
48-65595
48 days
31590 SuccessMoses
author:SuccessMoses
chore: tag `commutatorElement_def` with `simp` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor merge-conflict
label:t-algebra$
1/0 Mathlib/Algebra/Group/Commutator.lean 1 3 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
191-72968
6 months ago
191-72968
191 days ago
6-8213
6 days
11021 jstoobysmith
author:jstoobysmith
feat(AlgebraicTopology): add join of augmented SSets This pull-request adds the definition of the join of augmented SSets defined as contravariant functors from `WithInitial SimplexCategory` to `Type u`. In addition it shows that the join of two standard augmented SSets is again an augmented SSets. From this the definition of the join of simplicial sets should follow easily. To aid the above theory, an api for `WithInitial SimplexCategory` has been created, with the notion of the `join` and `split` (forming a sort of inverse to join) of objects in this category are defined. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebraic-topology new-contributor 2137/1 .gitignore,Mathlib.lean,Mathlib/AlgebraicTopology/Join.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SimplexCategoryWithInitial.lean,Mathlib/AlgebraicTopology/SimplicialSet.lean 6 47 ['github-actions', 'jcommelin'] nobody
191-72109
6 months ago
821-39554
821 days ago
1-20227
1 day
18626 hannahfechtner
author:hannahfechtner
feat: define Artin braid groups Define the Artin braid group on infinitely many strands. Includes a toGroup function which defines a function out of the braid group to any other group (given a function which satisfies the braid relations) (more to come in this file; next up: Artin braid groups on finitely many strands) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
91/0 Mathlib.lean,Mathlib/GroupTheory/SpecificGroups/BraidGroup/Basic.lean 2 22 ['github-actions', 'hannahfechtner', 'jcommelin', 'joelriou'] nobody
191-71956
6 months ago
554-78835
554 days ago
15-38478
15 days
20029 FrederickPu
author:FrederickPu
feat(Tactic/simps): allow for Config attributes to be set directly Allow for Config attributes to be set directly when using initialize_simp_projection as per issue #19895 Basically modified initialize_simp_projection so that the user has the option of specifying a tuple of config option values. Ex: ``` initialize_simp_projection MulEquiv (toFun → apply, invFun → symm_apply) (fullyApplied := false) ``` These config options are then converted into projections.  --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP new-contributor t-meta 34/4 Mathlib/Tactic/Simps/Basic.lean 1 11 ['FrederickPu', 'YaelDillies', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant'] nobody
191-71893
6 months ago
528-2742
528 days ago
0-34081
9 hours
21269 658060
author:658060
feat(CategoryTheory/Topos): basic definitions and results in topos theory This code contains basic definitions and results in topos theory, including the definition of a subobject classifier, power objects, and topoi. It is proved that every topos has exponential objects, i.e. "internal homs". The mathematical content follows chapter IV sections 1-2 of Mac Lane and Moerdijk's text "Sheaves in Geometry and Logic". --- - [x] depends on: #21281 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory new-contributor merge-conflict awaiting-author 1269/0 Mathlib.lean,Mathlib/CategoryTheory/Topos/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean,Mathlib/CategoryTheory/Topos/Exponentials.lean,Mathlib/CategoryTheory/Topos/Power.lean 5 10 ['658060', 'gio256', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
191-71866
6 months ago
484-50680
484 days ago
0-13879
3 hours
23990 robertmaxton42
author:robertmaxton42
feat(Types.Colimits): Quot is functorial and colimitEquivQuot is natural Add `Functor.quotFunctor` to parallel `Functor.sectionsFunctor`, witnessing that `Quot` is functorial; add `colimNatIsoQuotFunctor` to parallel `limNatIsoSectionsFunctor`, witnessing that `colimitEquivQuot` is natural in the diagram $F$. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 33/0 Mathlib/CategoryTheory/Limits/Types/Colimits.lean 1 5 ['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'robertmaxton42'] nobody
191-71749
6 months ago
403-70684
403 days ago
8-27136
8 days
27991 sinianluoye
author:sinianluoye
feat(Rat): add Rat.den_eq_of_add_den_eq_one and its dependent lemmas ```lean4 example {q r : ℚ} (h : (q + r).den = 1) : q.den = r.den := by ``` It is so simple, but I couldn't find it in current mathlib repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor 22/0 Mathlib/Data/Rat/Lemmas.lean 1 33 ['github-actions', 'kim-em', 'mathlib-bors', 'pechersky', 'sinianluoye', 'themathqueen'] pechersky
assignee:pechersky
191-71432
6 months ago
223-8626
223 days ago
74-56654
74 days
28215 5hv5hvnk
author:5hv5hvnk
feat: strong and Weak connectivity for Digraphs strong and weak connectivity in Digraphs --- Should resolve a part of issue #26771 Main additions in the PR: 1. Walks in Digraphs (Walk.lean) - Basic walk structure with start and end vertices - Support for walk operations: append, reverse, length - Support functions: getVert, copy, support 2. Walk Decompositions (WalkDecomp.lean) - takeUntil and dropUntil functions to split walks - rotate operation for loop walks - Theorems relating to walk decomposition properties 3. Subgraphs (subgraph.lean) - Subgraph structure for digraphs - Induced and spanning subgraph predicates - Lattice structure (sup, inf, top, bot) - Coercion to standalone digraphs 4. Paths (Paths.lean) - Trail, Path, Circuit, Cycle definitions - Path structure with no repeating vertices - Theorems relating different path types - Basic connectivity definitions (reachable, weakly/strongly connected) 5. Connectivity (Connected.lean) - Reachability relations and properties - Strong and weak connectivity definitions - Connected component types: - StronglyConnectedComponent - WeaklyConnectedComponent - ConnectedComponent - Component properties and equivalence relations --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor merge-conflict awaiting-author t-combinatorics 1266/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Connected.lean,Mathlib/Combinatorics/Digraph/Paths.lean,Mathlib/Combinatorics/Digraph/Subgraph.lean,Mathlib/Combinatorics/Digraph/Walk.lean,Mathlib/Combinatorics/Digraph/WalkDecomp.lean 6 4 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
191-71411
6 months ago
279-68993
279 days ago
12-41939
12 days
29574 JarodAlper
author:JarodAlper
feat: regular local rings are domains We have added three new files in Mathlib/RingTheory/LocalRing * EmbeddingDimension.lean * LocalRingDimension.lean * RegularLocalRings.lean We have added two lemmas and an instance in Mathlib/RingTheory/LocalRing/RingHom/Basic.lean This work was done by Jarod Alper and Brian Nugent. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory new-contributor 910/3 Mathlib.lean,Mathlib/RingTheory/LocalRing/EmbeddingDimension.lean,Mathlib/RingTheory/LocalRing/LocalRingDimension.lean,Mathlib/RingTheory/LocalRing/RegularLocalRings.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,lake-manifest.json 6 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71300
6 months ago
258-72555
258 days ago
1-50449
1 day
28718 imbrem
author:imbrem
feat: class for chosen finite coproducts Added basic `ChosenFiniteCoproducts` class, and started porting some of the lemmas about `ChosenFiniteProducts` suitably translated --- This, combined with #20182 modified to use chosen finite coproducts and premonoidal categories (#21488), should be enough for me to formalize strong Elgot categories, and hence a lot of categorical iteration theory for my PhD thesis. Re-done from #21603 to deal with changes in #24399 and #24390 Eventually, if we really want to harmonize approaches, we could introduce an `AddMonoidalCategory` struct and do the analogous to #24399 and #24390 for additive monoidal structure, but that seems like a massive overcomplication for now. It would allow formalizing fun things like rig categories, though. - [ ] depends on: #30150 blocked-by-other-PR t-category-theory new-contributor merge-conflict awaiting-author 290/0 Mathlib.lean,Mathlib/CategoryTheory/ChosenFiniteCoproducts.lean 2 9 ['YaelDillies', 'github-actions', 'imbrem', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
191-71212
6 months ago
282-21366
282 days ago
0-24930
6 hours
26765 KiringYJ
author:KiringYJ
feat(MeasureTheory/PiSystem): add π-λ theorem and SetLike instance Add two small features to `MeasureTheory/PiSystem`: 1. SetLike instance `instance : SetLike (DynkinSystem α) (Set α)` This lets us write `s ⊆ d` and `t ∈ d` for a DynkinSystem `d`, matching usual mathlib style. 2. `DynkinSystem.pi_lambda` lemma Classical π‑λ theorem: if a π‑system `s` is contained in a Dynkin system `d`, every set measurable for `σ(s)` is also in `d`. Currently, mathlib exposes this result only indirectly (e.g. via `generateFrom_eq`). Although logically equivalent, it is not obvious at first glance that those lemmas are the π‑λ theorem. The new lemma states the result in its familiar textbook form, so users can recognise and cite it immediately. Both pieces are under 10 lines, term‑mode only, and do not modify existing APIs. No breaking changes. No dependencies. awaiting-author t-measure-probability new-contributor 13/0 Mathlib/MeasureTheory/PiSystem.lean 1 14 ['EtienneC30', 'KiringYJ', 'dagurtomas', 'github-actions', 'ocfnash'] RemyDegenne
assignee:RemyDegenne
191-57608
6 months ago
191-57608
191 days ago
138-3922
138 days
30637 strihanje01
author:strihanje01
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions add Lindstrom's theorem and its strengthening for equal intersections --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 209/0 Mathlib/Combinatorics/SetFamily/Lindstrom.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
188-79757
6 months ago
192-11516
192 days ago
31-61152
31 days
32169 saodimao20
author:saodimao20
feat: add convolution_comp_add_right This PR adds a lemma `convolution_comp_translation_right` showing that convolution commutes with translation on the right operand. Specifically, it proves that for an additive commutative group $G$, the convolution of a function $f$ with a translated function $x \mapsto g(a + x)$ is equal to the convolution of $f$ and $g$ evaluated at $x + a$. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor awaiting-author 14/0 Mathlib/Analysis/Convolution.lean 1 3 ['github-actions', 'urkud'] nobody
183-13779
6 months ago
183-13779
183 days ago
0-82278
22 hours
32126 nielsvoss
author:nielsvoss
feat(Analysis/Normed/Operator): definition of singular values for linear maps This PR defines a generalization of singular values, the approximation numbers, for continuous linear maps between normed vector spaces. It proves basic lemmas about the approximation numbers and shows that for finite-dimensional vector spaces, the approximation numbers coincide with the standard definition of singular values. See the discussion on Zulip: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Singular.20Value.20Decomposition/with/558914024 Co-authored-by: Arnav Mehta Co-authored-by: Rawad Kansoh --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis new-contributor 331/0 Mathlib/Analysis/Normed/Operator/SingularValues.lean 1 2 ['github-actions', 'nielsvoss'] nobody
182-51320
6 months ago
unknown
0-0
0 seconds
30525 515801431
author:515801431
feat(Mathlib/Combinatorics/Enumerative/Polya): Add Polya Counting This PR introduces basic definitions and results about colorings under permutation group actions. A coloring is defined as a function X → Y, and the permutation group Equiv.Perm X acts on colorings by precomposition: (g • c) x = c (g⁻¹ • x) This formalizes the natural action of relabeling the elements of X. Main definitions MulAction (Equiv.Perm X) (X → Y): The action of the permutation group on colorings via precomposition. coloringEquiv (c₁ c₂ : X → Y) : Prop: Two colorings are equivalent if they lie in the same orbit under this action, i.e. ∃ f : Equiv.Perm X, f • c₁ = c₂. Main results smul_eq_iff_mem_stabilizer: Characterizes when two group actions on the same coloring are equal, showing that g • c = f • c ↔ f⁻¹ * g ∈ stabilizer c. coloringEquiv_equivalence: Proves that coloringEquiv defines an equivalence relation on X → Y. orbit_size_eq_index: Reformulates the orbit–stabilizer theorem in the context of colorings: |orbit c| = |Perm X| / |stabilizer c| Motivation These results provide foundational infrastructure for studying Burnside’s lemma and Pólya’s enumeration theorem in Mathlib, where the enumeration of distinct colorings up to symmetry plays a central role. t-combinatorics new-contributor awaiting-author merge-conflict 113/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean 2 8 ['IvanRenison', 'alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
175-58918
5 months ago
184-16061
184 days ago
39-43570
39 days
31113 515801431
author:515801431
feat(Mathlib/Combinatorics/Enumerative/Polya.lean): Add additional theorem in `Polya.lean` --- - [ ] depends on: #30525 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor blocked-by-other-PR merge-conflict 302/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean 2 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
175-58794
5 months ago
184-81220
184 days ago
16-78251
16 days
24441 MrSumato
author:MrSumato
feat(Data/List): add Lyndon-Schutzenberger theorem on list commutativity Add Lyndon-Schutzenberger theorem on list commutativity. Included definition for List.repeatSelf that returns list repeated n times. --- This is my first mathlib PR, so any comments are highly appreciated. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data new-contributor 129/1 Mathlib.lean,Mathlib/Data/List/Commutativity.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Lemmas.lean 4 38 ['MrSumato', 'github-actions', 'grunweg', 'madvorak', 'mathlib4-merge-conflict-bot', 'plp127'] grunweg
assignee:grunweg
175-54396
5 months ago
357-80740
357 days ago
29-59355
29 days
31147 daefigueroa
author:daefigueroa
feat(Dynamics): point transitive monoid actions and transitive points We define point transitivity for a monoid action on a topological space and define the set of transitive points. We add some basic lemmas and implications between topological transitivity and point transitivity. --- - [x] depends on: #28001 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor awaiting-author 114/6 Mathlib/Dynamics/Transitive.lean 1 6 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
172-79629
5 months ago
172-79629
172 days ago
18-38983
18 days
31987 saodimao20
author:saodimao20
feat: add monotonicity and relation lemmas for mgf and cgf Add two lemmas about moment-generating and cumulant-generating functions: - `mgf_mono_in_t_of_nonneg`: For nonnegative random variables, the mgf is monotone in the parameter `t` - `cgf_zero_of_mgf_one`: The cgf equals zero iff the mgf equals one These lemmas are useful for studying properties of mgf and cgf in probability theory. Contributed by sequential-intelligence-lab(SIL), University of Virginia --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor awaiting-author 21/0 Mathlib/Probability/Moments/Basic.lean 1 5 ['DavidLedvinka', 'github-actions'] RemyDegenne
assignee:RemyDegenne
166-71735
5 months ago
166-71735
166 days ago
21-31799
21 days
32938 0xTerencePrime
author:0xTerencePrime
feat(Order/LocallyFinite): prove DenselyOrdered and LocallyFiniteOrder are incompatible ## Summary This PR proves that a nontrivial densely ordered linear order cannot be locally finite. ## Main results * `not_locallyFiniteOrder`: A densely ordered locally finite linear order must be subsingleton. * `not_locallyFiniteOrder_of_nontrivial`: The main theorem - incompatibility of the two properties. Note: This implementation imports `Mathlib.Order.Interval.Set.Infinite` to reuse the existing `Set.Icc_infinite` theorem, ensuring standard library consistency. ## Mathematical content The key insight is that in a densely ordered type, we can always find a new element between any two distinct elements. This means any nontrivial interval contains infinitely many elements. However, `LocallyFiniteOrder` requires intervals to be finite. This contradiction implies that such a type cannot exist (unless it is trivial). ## Motivation This resolves a TODO mentioned in #7987 (Data/Finset/LocallyFinite entry). ## Verification - [x] `lake build Mathlib.Order.LocallyFinite.Basic` passes - [x] `lake exe runLinter Mathlib.Order.LocallyFinite.Basic` passes t-order new-contributor awaiting-author 28/0 Mathlib/Order/Interval/Finset/Basic.lean 1 10 ['0xTerencePrime', 'CoolRmal', 'github-actions', 'jcommelin', 'plp127'] nobody
162-8737
5 months ago
162-8777
162 days ago
3-22290
3 days
32698 farruhx
author:farruhx
feat(List): add aesop / simp annotations to selected lemmas for improved automation This PR adds `@[aesop safe]` and `@[simp]` annotations to a set of List lemmas whose proofs are routine and benefit from standardized automation. No statements or definitions are changed; only proof annotations are added. The lemmas updated in this PR are: * `or_exists_of_exists_mem_cons` * `append_subset_of_subset_of_subset` * `map_subset_iff` * `append_eq_has_append` * `append_right_injective` * `append_left_injective` * `reverse_surjective` * `reverse_bijective` * `mem_getLast?_append_of_mem_getLast?` * `mem_dropLast_of_mem_of_ne_getLast` * `idxOf_eq_length_iff` * `idxOf_append_of_mem` * `length_eraseP_add_one` The goal is to make these commonly used lemmas easier for `aesop`-based automation to resolve, while avoiding any interference with simp-normal-form lemmas or canonical rewrite rules. There are no API changes and no new theorems—only improved automation behavior. t-data new-contributor awaiting-author 18/1 Mathlib/Data/List/Basic.lean 1 8 ['artie2000', 'euprunin', 'farruhx', 'github-actions'] pechersky
assignee:pechersky
161-43506
5 months ago
161-43506
161 days ago
7-31364
7 days
27817 zhuyizheng
author:zhuyizheng
feat: add IMO2025P1 Add a solution to IMO2025P1, the original problem statement from https://github.com/jsm28/IMOLean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO awaiting-author new-contributor merge-conflict 1310/0 Archive.lean,Archive/Imo/Imo2025Q1.lean 2 9 ['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot', 'zhuyizheng'] dwrensha
assignee:dwrensha
160-75703
5 months ago
220-40271
220 days ago
59-36769
59 days
33218 Blackfeather007
author:Blackfeather007
feat(Algebra): Define the associated graded ring to filtered ring Define the associated graded ring to a filtered ring. --- - [ ] depends on: #33217 migrated from https://github.com/leanprover-community/mathlib4/pull/26858 t-ring-theory new-contributor blocked-by-other-PR 450/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-21968
5 months ago
158-27253
158 days ago
0-132
2 minutes
33219 Blackfeather007
author:Blackfeather007
feat(Algebra): Define associated graded algebra Define the associated graded algebra of a filtered algebra, constructed from a special case of associated graded ring. --- - [ ] depends on: #33218 migrated from #26859 t-ring-theory new-contributor blocked-by-other-PR 563/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-21860
5 months ago
158-27027
158 days ago
0-133
2 minutes
33220 Blackfeather007
author:Blackfeather007
feat(Algebra): Define associated graded module Define the associated graded module to a filtered module. --- - [ ] depends on: #33218 migrated from #26860 t-ring-theory new-contributor blocked-by-other-PR 669/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-21776
5 months ago
158-26839
158 days ago
0-137
2 minutes
33227 Blackfeather007
author:Blackfeather007
feat(Algebra): exact of associated graded exact We proved that a chain complex is exact if its associated graded complex is exact. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33226 migrated from #26869 t-ring-theory new-contributor blocked-by-other-PR 728/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/Exactness.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19448
5 months ago
158-19449
158 days ago
0-1208
20 minutes
33226 Blackfeather007
author:Blackfeather007
feat(Algebra): associated graded exact of exact and strict In this file, we define the concept of exhaustive filtrations. We also prove a AssociatedGradedRingHom sequence is exact iff each GradedPieceHom is exact. And when a sequence is strict exact, the corresponding AssociatedGradedRingHom sequence is also exact. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33222 migrated from #26868 t-ring-theory new-contributor blocked-by-other-PR 529/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/Exactness.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19446
5 months ago
158-19447
158 days ago
0-1307
21 minutes
33225 Blackfeather007
author:Blackfeather007
feat(Algebra): filtered module hom In this PR we defined the filtered semi-linear map for filtered module and the associated graded module hom. --- - [ ] depends on: #33220 - [ ] depends on: #33223 migrated from #26867 t-ring-theory new-contributor blocked-by-other-PR 1205/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19445
5 months ago
158-19446
158 days ago
0-1805
30 minutes
33224 Blackfeather007
author:Blackfeather007
feat(Algebra): define filtered alghom In this PR, we define the filtered algebra homomorphisms on algebras and prove some basic properties of them. --- - [ ] depends on: #33219 - [ ] depends on: #33223 migrated from #26863 t-ring-theory new-contributor blocked-by-other-PR 1055/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19443
5 months ago
158-19444
158 days ago
0-2046
34 minutes
33223 Blackfeather007
author:Blackfeather007
feat(Algebra): define filtered ring homomorphism In this PR, we define the filtered ring morphisms on rings and prove some basic properties of them. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33218 - [ ] depends on: #33222 migrated from #26862 t-ring-theory new-contributor blocked-by-other-PR 824/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19440
5 months ago
158-19443
158 days ago
0-2257
37 minutes
33222 Blackfeather007
author:Blackfeather007
feat(Algebra): define filtered add group hom In this file we define filtered hom and the corresponding associated graded hom for abelian groups. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33217 migrated from #26861 new-contributor t-ring-theory blocked-by-other-PR 368/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19439
5 months ago
158-19440
158 days ago
0-2249
37 minutes
32264 jjtowery
author:jjtowery
feat(Bicategory): add lax slice bicategory --- In this PR, I define the lax slice bicategory for a lax functor over an object. I also give the change of slice strict pseudofunctor. These are from Section 7.1 of Johnson & Yau and are essential for their Whitehead theorem for bicategories (lax functor biequivalence iff essentially surjective, essentially full, and fully faithful), which I'd like to prove at some point. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author 527/0 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/LaxSlice.lean 2 12 ['dagurtomas', 'github-actions', 'jjtowery', 'robin-carlier'] dagurtomas
assignee:dagurtomas
154-47925
5 months ago
177-51382
177 days ago
3-47959
3 days
32960 dleijnse
author:dleijnse
feat(FieldTheory): adjoin pth roots For a field `k` of exponential characteristic `p` and a subset `S` of `k`, we define the extension of `k` obtained by adjoining all `p`-th roots of elements of `S`. We prove that this is a purely inseparable extension, and provide some basic API. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
131/0 Mathlib.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean 2 13 ['artie2000', 'chrisflav', 'dleijnse', 'erdOne', 'github-actions', 'leanprover-radar'] erdOne
assignee:erdOne
153-64577
5 months ago
153-64577
153 days ago
10-12739
10 days
33163 Aaron1011
author:Aaron1011
feat: prove subgroup of (M -> Z) is finitely generated --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 5/0 Mathlib/RingTheory/DedekindDomain/Dvr.lean 1 2 ['erdOne', 'github-actions'] alreadydone
assignee:alreadydone
153-57527
5 months ago
153-57527
153 days ago
5-81520
5 days
33133 0xTerencePrime
author:0xTerencePrime
feat(Algebra/Group/Center): add Decidable (IsMulCentral a) instance This PR adds a `Decidable` instance for `IsMulCentral a`. ### Summary The structure `IsMulCentral` was missing a `Decidable` instance. This PR provides the instance by leveraging `isMulCentral_iff`, enabling decidability for both multiplicative and additive (via `to_additive`) structures. ### Verification - `lake build Mathlib.Algebra.Group.Center` passed. - `lake exe runLinter Mathlib.Algebra.Group.Center` passed. t-algebra new-contributor awaiting-author
label:t-algebra$
7/0 Mathlib/Algebra/Group/Center.lean 1 3 ['github-actions', 'robin-carlier'] ocfnash
assignee:ocfnash
147-85718
4 months ago
147-85718
147 days ago
12-60805
12 days
33502 MrQubo
author:MrQubo
fix(Tactic/ProxyType): Pass params explicitly in proxy_equiv% implementation Fix [#mathlib4 > `deriving Fintype` with Prop](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60deriving.20Fintype.60.20with.20Prop/with/566118621) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta WIP 12/2 Mathlib/Tactic/ProxyType.lean,MathlibTest/DeriveFintype.lean 2 7 ['MrQubo', 'github-actions', 'kmill'] kmill
assignee:kmill
146-52642
4 months ago
146-52643
146 days ago
0-60133
16 hours
17176 arulandu
author:arulandu
feat: integrals and integrability with .re Lemmas for swapping order of .re and integration/integrability. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability please-adopt 49/0 Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean 4 32 ['EtienneC30', 'arulandu', 'github-actions', 'loefflerd'] nobody
144-55640
4 months ago
592-16477
592 days ago
9-73631
9 days
33330 michael-novak-math
author:michael-novak-math
feat: add arc-length reparametrization of parametrized curves add new definitions of arc-length reparametrization and its corresponding parameter transformation and a theorem establishing the desired properties. t-analysis new-contributor awaiting-author merge-conflict 311/0 Mathlib.lean,Mathlib/Analysis/Calculus/ArcLengthReparametrization.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib 5 57 ['SnirBroshi', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'michael-novak-math'] j-loreaux
assignee:j-loreaux
142-36595
4 months ago
67-11322
67 days ago
6-69934
6 days
33756 dleijnse
author:dleijnse
feat(FieldTheory): root of polynomial with p power coefficients This PR proves the results in https://stacks.math.columbia.edu/tag/031V, which gives a criterion for a root of a polynomial over a field `k` of characteristic `p` to be a `p`-th power. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
88/0 Mathlib.lean,Mathlib/FieldTheory/PthPowerCoeffPoly.lean 2 1 ['github-actions'] nobody
141-74140
4 months ago
unknown
0-0
0 seconds
33299 kingiler
author:kingiler
feat: Add decidable membership for Interval Implemented membership and corresponding decidable instance for `Interval`. Related [#mathlib4 > Proposal: Add decidable membership for Interval](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Proposal.3A.20Add.20decidable.20membership.20for.20Interval/with/565438009). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author new-contributor t-order 16/1 Mathlib/Order/Interval/Basic.lean 1 5 ['Vierkantor', 'eric-wieser', 'github-actions', 'kingiler'] Vierkantor
assignee:Vierkantor
141-65946
4 months ago
141-65946
141 days ago
13-42146
13 days
30142 shalliso
author:shalliso
feat(Topology/Baire): define IsNonMeagre non-meagre sets (also known as "of the second category") are worthy of their own definition and API. This was useful to me for formalizing a result of "automatic continuity", that is, a Baire-measurable homomorphism between Polish groups must be continuous. Simply working with the negation of IsMeagre quickly became cumbersome, and non-meagre sets have an important role in the study of Polish (e.g. locally compact) groups. From https://github.com/shalliso/automatic_continuity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor merge-conflict awaiting-author 83/1 Mathlib/Topology/Baire/NonMeagre.lean,Mathlib/Topology/GDelta/Basic.lean 2 6 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
140-75630
4 months ago
140-75631
140 days ago
98-58846
98 days
32880 0xTerencePrime
author:0xTerencePrime
feat(Analysis/Asymptotics): define subpolynomial growth ## Main definitions * `Asymptotics.IsSubpolynomial l f g`: A function `f` has subpolynomial growth with respect to `g` along filter `l` if `f = O(1 + ‖g‖^k)` for some natural `k`. ## Main results * `IsSubpolynomial.const`: Constant functions have subpolynomial growth * `IsSubpolynomial.id`: Identity has subpolynomial growth * `IsSubpolynomial.add`: Closure under addition * `IsSubpolynomial.neg`: Closure under negation * `IsSubpolynomial.sub`: Closure under subtraction * `IsSubpolynomial.mul`: Closure under multiplication * `IsSubpolynomial.pow`: Closure under powers * `isSubpolynomial_iff_one_add`: Equivalence with `(1 + ‖g‖)^k` formulation * `IsSubpolynomial.uniform`: Uniform bounds for finite families ## Implementation notes The definition uses `1 + ‖g‖^k` rather than `(1 + ‖g‖)^k` as the primary form, with the equivalence established in `isSubpolynomial_iff_one_add`. Four private auxiliary lemmas handle the key inequalities needed for closure proofs. Closes #32658 awaiting-author t-analysis new-contributor 185/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/Subpolynomial.lean 2 29 ['0xTerencePrime', 'ADedecker', 'github-actions', 'j-loreaux'] ADedecker
assignee:ADedecker
137-58714
4 months ago
138-40172
138 days ago
22-14560
22 days
33948 anivegesana
author:anivegesana
feat(Analysis/Normed/Algebra): matrix exponential of nilpotent matrix Where the matrix exponential and nilpotent elements are defined, both the matrix exponential and the nilpotent element exponential. I had to add a different theorem for normed space exponential and the matrix exponential since the right instances wouldn't be synthesized. Help with golfing would be appreciated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 34/0 Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean 2 1 ['github-actions'] nobody
136-23299
4 months ago
136-23371
136 days ago
136-23333
136 days
30391 rudynicolop
author:rudynicolop
feat(Data/List): list splitting definitions and lemmas This PR continues the work from #24395. Original PR: https://github.com/leanprover-community/mathlib4/pull/24395 t-data new-contributor awaiting-author 108/2 Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/TakeDrop.lean 2 50 ['BoltonBailey', 'IlPreteRosso', 'TwoFX', 'Vierkantor', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'rudynicolop'] TwoFX
assignee:TwoFX
133-77045
4 months ago
133-85567
133 days ago
93-10043
93 days
29282 Jlh18
author:Jlh18
feat(CategoryTheory): HasColimits instance on Grpd Show that the category of groupoids has all small colimits, as a coreflective subcategory of `Cat`, which has all small colimits. The right adjoint of the forgetful functor is the core functor `CategoryTheory.Core.functor`. - [ ] depends on: #29283 [Core of a category as a functor] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-category-theory 140/4 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/CategoryTheory/Category/Grpd.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Colimit.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Core.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
132-725
4 months ago
269-32509
269 days ago
0-396
6 minutes
32745 LTolDe
author:LTolDe
feat(Topology/Algebra): add MulActionConst.lean add Topology/Algebra/MulActionConst.lean introduce class `ContinuousSMulConst` for a scalar multiplication that is continuous in the first argument, in analogy to `ContinuousConstSMul` define `MulAction.ball x U` as the set `U • {x}` given `[SMul G X] (x : X) (U : Set G)` The lemmas shown here will be useful to prove the **Effros Theorem**, see [zulip](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/) awaiting-author new-contributor t-topology 117/0 Mathlib.lean,Mathlib/Topology/Algebra/MulActionConst.lean 2 8 ['LTolDe', 'github-actions', 'urkud'] nobody
130-72991
4 months ago
137-52521
137 days ago
16-33128
16 days
33478 anishrajeev
author:anishrajeev
feat(ModelTheory): define a subset of the topology over complete types Define a subset of the Stone Space over a language expanded with countably many constants. Define the proposition to indicate if a language is countable. The subset's density and openness is a future goal to prove (have a branch where it is almost finished), in pursuit of formalizing the proof of the Omitting Types Theorem via properties of Baire spaces. - [ ] depends on: #32215 - [ ] depends on: #32546 t-logic merge-conflict new-contributor blocked-by-other-PR 160/1 Mathlib.lean,Mathlib/ModelTheory/Topology/Types.lean,Mathlib/ModelTheory/Types.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 4 8 ['NoneMore', 'anishrajeev', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'tb65536'] nobody
129-66510
4 months ago
137-80334
137 days ago
10-38484
10 days
31092 FlAmmmmING
author:FlAmmmmING
feat(Algebra/Group/ForwardDiff.lean): Add theorem `sum_shift_eq_fwdDiff_iter`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor delegated
label:t-algebra$
17/1 Mathlib/Algebra/Group/ForwardDiff.lean 1 20 ['BeibeiX0', 'FlAmmmmING', 'Ruben-VandeVelde', 'dagurtomas', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] nobody
127-74010
4 months ago
127-74010
127 days ago
54-22055
54 days
34141 gululu996-ui
author:gululu996-ui
feat(Combinatorics/SimpleGraph/Acyclic): finite trees have at least two degree-one vertices Add a lemma showing that a finite tree with at least two vertices has at least two vertices of degree 1. - Introduce a helper lemma `SimpleGraph.Connected.one_le_degree` for connected graphs on a nontrivial finite type. - Prove the leaf-count lower bound via the degree-sum identity and a counting argument. --- awaiting-author new-contributor t-combinatorics 72/2 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 9 ['IvanRenison', 'SnirBroshi', 'github-actions', 'vlad902'] nobody
127-70268
4 months ago
129-51704
129 days ago
1-23617
1 day
29953 slashbade
author:slashbade
feat: add reap for experiment --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 40/3 Cache/IO.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,lake-manifest.json,lakefile.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
122-62793
4 months ago
unknown
0-0
0 seconds
31377 CoolRmal
author:CoolRmal
feat: a series of smooth functions that converges (locally) uniformly is smooth The main theorem is the proof that an infinite sum of $C^n$ functions on a one-dimensional domain which converges locally uniformly is $C^n$ and related results. This should be compared with [contDiff_tsum](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Calculus/SmoothSeries.html#contDiff_tsum) where the same result is proved for functions on an arbitrary domain but with a slightly stronger convergence assumption. The main motivation for this PR is the [#mathlib4 > Tychonov's Counterexample for the Heat Equation](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tychonov's.20Counterexample.20for.20the.20Heat.20Equation/with/547367912). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor awaiting-author merge-conflict 110/18 Mathlib/Analysis/Calculus/SmoothSeries.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/Topology/Algebra/InfiniteSum/TsumUniformlyOn.lean,Mathlib/Topology/Algebra/InfiniteSum/UniformOn.lean 5 20 ['CoolRmal', 'github-actions', 'mathlib4-merge-conflict-bot', 'ocfnash', 'sgouezel'] ocfnash
assignee:ocfnash
121-52366
4 months ago
182-69331
182 days ago
8-14942
8 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
120-75887
4 months ago
120-75887
120 days ago
42-21618
42 days
34130 FlAmmmmING
author:FlAmmmmING
feat(Combinatorics/SimpleGraph/Acyclic): Add new theorem `isTree_iff_uniqueShortest_path` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 28/1 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 9 ['IvanRenison', 'github-actions', 'metakunt', 'vlad902'] nobody
120-11894
4 months ago
128-82309
128 days ago
2-6389
2 days
34487 martinwintermath
author:martinwintermath
feat(LinearAlgebra/SesquilinearForm): add instances for SeparatingLeft, SeparatingRight and Nondegenerate Add typeclass instances for `Fact B.SeparatingLeft`, `Fact B.SeparatingRight`, `Fact B.Nondegenerate`: * inferring `Fact B.flip.SeparatingLeft` from `Fact B.SeparatingRight` and vice versa * inferring `Fact B.SeparatingLeft` and `Fact B.SeparatingRight` from `Fact B.Nondegenerate` * inferring `Fact B.SeparatingLeft` and `Fact B.Nondegenerate` for `.id` and `Dual.eval` * inferring `Fact B.Nondegenerate` from `B.IsPerfPair` I also updated `PointedCone.dual_univ` to demonstrate the usefulness of these additions. Note that I needed to add an import to `Cone/Dual.lean` which somehow imports cardinals. So I needed to remove cardinals from `assert_not_exists`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor large-import merge-conflict
label:t-algebra$
67/12 Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean 2 4 ['github-actions', 'martinwintermath', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
119-84948
3 months ago
60-71285
60 days ago
13-75766
13 days
34028 floor-licker
author:floor-licker
feat(SimpleGraph): add max-flow/min-cut weak duality This PR introduces a basic s–t flow setup for undirected SimpleGraphs and proves the standard weak-duality inequality: for any feasible flow f and any s–t cut S, value f ≤ cutCapacity S. This is a small, self-contained lemma I extracted while working on larger graph-theoretic formalizations, in particular, results that will ultimately rely on a full max-flow/min-cut theorem. The full MFMC equality/existence statement is not included here. This is the weak-duality direction (∀ f S, value f ≤ cutCapacity S). t-combinatorics new-contributor 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/MaxFlowMinCut.lean 2 14 ['SnirBroshi', 'floor-licker', 'github-actions', 'mathlib-merge-conflicts'] kmill
assignee:kmill
119-37588
3 months ago
70-61117
70 days ago
61-8543
61 days
32609 PrParadoxy
author:PrParadoxy
feat(LinearAlgebra/PiTensorProduct): Relation between nested tensor products and tensor products indexed by dependent sums Product tensors in `⨂ j : (Σ i, β i), s j.fst j.snd` can be mapped to product tensors in `⨂ i, ⨂ b : β i, s i b`. If the outer index type is finite, the two types are equivalent. This allows the definition of endomorphisms on PiTensorProducts by specifying them on disjoint subsets of the index set. Such constructions are common e.g. in quantum circuits, quantum cellular automata, and renormalization procedures. --- WIP. This PR contains two "requests for comments". Essentially: * Is a single complex-to-define linear equivalence preferable over several less complex ones, which might however be of limited interest by themselves? * Which trade-offs are appropriate to make things computable? - [ ] depends on: #32608 - [x] depends on: #32600 - [x] depends on: #32598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR merge-conflict t-algebra
label:t-algebra$
683/0 Mathlib.lean,Mathlib/Data/Sigma/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Nested.lean,Mathlib/LinearAlgebra/PiTensorProduct/Set.lean 5 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-49699
3 months ago
172-50137
172 days ago
0-2004
33 minutes
30260 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): added CocartesianMonoidalCategory As discussed in #21603 and #28718; this implements chosen finite coproducts on top of `AddMonoidalCategory` as defined in #30150 --- - [ ] depends on: #30150 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR large-import new-contributor t-category-theory 839/125 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Cocartesian/Basic.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 5 4 ['github-actions', 'imbrem', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-2130
3 months ago
236-39099
236 days ago
0-1234
20 minutes
30258 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): to_additive for proofs using `monoidal` Building on #30150, this allows us to use `@[to_additive]` on proofs containing `monoidal`, by tagging the lemmas `monoidal` outputs with `@[to_additive]` as appropriate. Testing on my branch [`additive-monoidal-coherence`](https://github.com/imbrem/mathlib4/tree/additive-monoidal-coherence) shows that this works. It is still future work to have either the `monoidal` tactic or a new `add_monoidal` tactic work for `AddMonoidalCategory` instances directly. --- - [ ] depends on: #30150 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR large-import new-contributor t-category-theory 524/140 Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-2123
3 months ago
236-44752
236 days ago
0-241
4 minutes
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
118-1897
3 months ago
143-72429
143 days ago
25-76907
25 days
31102 JOSHCLUNE
author:JOSHCLUNE
feat: require LeanHammer Experimenting with adding LeanHammer as a mathlib dependency --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor t-meta 61/4 Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,MathlibTest/Hammer.lean,lake-manifest.json,lakefile.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-79005
3 months ago
211-51144
211 days ago
0-6852
1 hour
33431 gululu996-ui
author:gululu996-ui
feat(Combinatorics/SimpleGraph/Bipartite): characterize bipartite simple graphs by even cycles Add the classical characterization of bipartite simple graphs: a simple graph is bipartite if and only if every cycle has even length. Previously, mathlib has the definition of `IsBipartite` for `SimpleGraph` and various lemmas about bipartite graphs, but it does not provide this equivalence in a single theorem, so users have to reprove or reassemble it from existing results. Prove the forward direction by showing a 2-coloring alternates along any walk, so every cycle must have even length. Prove the converse by showing that if an odd cycle exists then no bipartition is possible, hence if all cycles are even the graph admits a bipartition. new-contributor t-combinatorics awaiting-author merge-conflict 186/1 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean 1 6 ['NickAdfor', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] kmill
assignee:kmill
117-78737
3 months ago
119-79634
119 days ago
26-3983
26 days
34007 martinwintermath
author:martinwintermath
feat(Algebra/Module/Submodule/Dual): dual operator for submodules Add new file `Dual.lean` that defines the dual operator for submodules. The main definition is * `Submodule.dual`: given a bilinear pairing `p` between two modules `M₁` and `M₂` and a submodule `S` in `M₁`, `Submodule.dual p S` is the submodule in `M₂` consisting of all points `y` such that `0 = p x y` for all `x ∈ S`. For reasons of generality, `p` is actually a general sesqui-bilinear map, that is, of the form `p : M₁ →ₛₗ[I₁] M₂ →ₛₗ[I₂] M`. This implementation of the `dual` operator for submodules is written to parallel the implementation of `PointedCone.dual`. Include some additional results: * theorems that represent the dual as the kernel of a linear map * theorems for the relation between dual and the `dualAnnihilator` and `dualCoannihilator` of a submodule. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
236/0 Mathlib.lean,Mathlib/Algebra/Module/Submodule/Dual.lean 2 7 ['github-actions', 'joelriou', 'martinwintermath', 'mathlib-bors'] joelriou
assignee:joelriou
117-74774
3 months ago
119-57233
119 days ago
14-81283
14 days
34291 YellPika
author:YellPika
feat(Data): a monad for partial computations This is the code corresponding to [mathlib4 > A monad for partial computations](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/A.20monad.20for.20partial.20computations/with/569619800). Not currently intended to be merged. This PR depends on #33941. The only changes relevant to this discussion are in `OmegaPart.lean`, `OmegaProp.lean`, and `Quot.lean`. # Original Message Inspired by @**Aaron Liu**'s comments in #**mathlib4>deprecate Mathlib.Data.Nat.PartENat?@538009243** and #**Is there code for X?>Divergence monad@538020049** I made an attempt at constructing a monad for partial computations with a computable `OmegaCompletePartialOrder` instance (neither `Option` nor `Part` support this use case). My solution consists of three parts. **A computable version of `Quotient.choice`.** As mentioned in #**lean4>Quot.lift for dependent products@467436416** , the "obvious" computational interpretation of `Quotient.choice : (∀i:I, @Quotient (A i) …) → @Quotient (∀i:I, A i)` is not sound. However, we _can_ provide a sound computational interpretation when we restrict `I` to `ℕ`: ```lean unsafe def Quotient.countableChoice_impl {α : Nat → Type*} {S : ∀ i, Setoid (α i)} (f : ∀ i, Quotient (S i)) : @Quotient (∀ i, α i) (by infer_instance) := Quotient.lift₂ (fun z s ↦ ⟦fun | .zero => z | .succ n => s n⟧) (fun z₁ s₁ z₂ s₂ h₁ h₂ ↦ by apply sound rintro ⟨_|n⟩ · apply h₁ · apply h₂) (f 0) (countableChoice_impl (fun n ↦ f n.succ)) @[implemented_by Quotient.countableChoice_impl] def Quotient.countableChoice {α : Nat → Type*} {S : ∀ i, Setoid (α i)} (f : ∀ i, Quotient (S i)) : @Quotient (∀ i, α i) (by infer_instance) := Quotient.choice f ``` My justification for the soundness of this implementation comes from the fact that only uses existing (sound and computable) functions + general recursion. The implementation is found [here](https://github.com/YellPika/mathlib4/blob/99d38f164a97c7aa225283ef6016f0279419a994/Mathlib/Data/Quot.lean#L430) (it uses `unquot` instead of recursion for performance reasons, but should be equivalent). **A type of semi-computable propositions.** Next, I define a type of semi-computable propositions `ΩProp` as a quotient of the type of boolean sequences `(ℕ → Bool) / ≈`, where `p ≈ q ≝ (∃n, p n) ↔ (∃n, q n)`. A sequence is interpreted as "true" if at least one element in the sequence is `true`, and the quotient relation ensures that we cannot observe the difference between different "true" sequences. The `ΩProp` type has a (computable) `OmegaCompletePartialOrder`, and `Quotient.countableChoice` is used in the implementation of `ωSup`. The implementation of this type is [here](https://github.com/YellPika/mathlib4/blob/quot-choice-compute/Mathlib/Data/OmegaProp.lean). **A type of semi-computable computations.** Finally, I define the type `ΩPart A` of semi-computable computations returning a value of type `A`. The definition of `ΩPart` is the same as `Part` with `ΩProp` swapped for `Prop`. Again, `ΩPart A` has a (computable) `OmegaCompletePartialOrder` instance. The implementation can be found [here](https://github.com/YellPika/mathlib4/blob/quot-choice-compute/Mathlib/Data/OmegaPart.lean). This was mainly just a fun experiment and the code is not ready to be (or perhaps should not be) put in mathlib. I thought I should post it here to see if 1) there is any interest or 2) an implementation already exists that has escaped my notice. new-contributor large-import merge-conflict 1157/40 Mathlib/Data/OmegaPart.lean,Mathlib/Data/OmegaProp.lean,Mathlib/Data/Quot.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
115-57258
3 months ago
unknown
0-0
0 seconds
34053 christian-oudard
author:christian-oudard
feat: Add error function (erf) and complementary error function (erfc) ## Summary I was doing some finance math and needed the Error Function, so I thought I'd contribute it. ### Main definitions * `Real.erf`: The error function, defined as `(2/√π) ∫₀ˣ e^(-t²) dt` * `Real.erfc`: The complementary error function, defined as `1 - erf x` ### Main results * `Real.erf_zero`: `erf 0 = 0` * `Real.erf_neg`: `erf` is an odd function: `erf (-x) = -erf x` * `Real.erf_tendsto_one`: `erf x → 1` as `x → ∞` * `Real.erf_tendsto_neg_one`: `erf x → -1` as `x → -∞` * `Real.erf_le_one`: `erf x ≤ 1` for all `x` * `Real.neg_one_le_erf`: `-1 ≤ erf x` for all `x` * `Real.deriv_erf`: `deriv erf x = (2/√π) * exp(-x²)` * `Real.differentiable_erf`: `erf` is differentiable * `Real.continuous_erf`: `erf` is continuous * `Real.strictMono_erf`: `erf` is strictly monotone Also adds `erf` to `docs/overview.yaml` under Special Functions. --- - [x] Builds successfully - [x] `lake exe runLinter` passes - [x] `lake exe mk_all --check` passes t-analysis new-contributor awaiting-author 333/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Erf.lean,docs/overview.yaml 3 18 ['SnirBroshi', 'christian-oudard', 'github-actions', 'j-loreaux', 'plp127'] j-loreaux
assignee:j-loreaux
115-30034
3 months ago
115-66887
115 days ago
14-69133
14 days
33601 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): Concatenation of CFGs is CFG --- - [ ] depends on: #33599 - [ ] depends on: #33592 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor blocked-by-other-PR 941/0 Mathlib/Computability/ContextFreeGrammar.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
115-7747
3 months ago
144-78010
144 days ago
0-412
6 minutes
34726 GrigorenkoPV
author:GrigorenkoPV
feat(Analysis/SpecialFunctions/Trigonometric/Basic): sin and cos of multiples of π / 3 --- Merge of https://github.com/leanprover-community/mathlib4/pull/26349 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 159/0 Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Data/Nat/Cast/Defs.lean,MathlibTest/trigonometry.lean 4 1 ['github-actions'] nobody
113-53172
3 months ago
113-53172
113 days ago
3-20994
3 days
34394 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): add constructors for linear ordered rings Add constructors for ordered rings from `mul_nonneg` / `mul_pos` that derive `ZeroLEOneClass` from a linear order. new-contributor t-algebra awaiting-author
label:t-algebra$
31/14 Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/RingTheory/HahnSeries/Lex.lean 2 6 ['Citronhat', 'Vierkantor', 'github-actions', 'leanprover-radar'] Vierkantor
assignee:Vierkantor
113-109
3 months ago
113-109
113 days ago
12-25418
12 days
33493 michelsol
author:michelsol
feat(RingTheory/Polynomial): An explicit formula for the Chebyshev polynomials of the first kind Adds the following explicit formula on the Chebyshev polynomial of the first kind of order n. ${ T_{n}(x)\ =\ \sum \limits _{k=0}^{\lfloor {\frac {n}{2}}\rfloor } {\binom {n}{2k}} \left(\ X^{2}-1\ \right)^{k}\ X^{n-2k}}$ This explicit formula can be found [here](https://en.wikipedia.org/wiki/Chebyshev_polynomials#Explicit_expressions). There is a proof using complex numbers but it only works if the ring R = ℂ. The proof here is by induction and works in a commutative ring R. Mathlib seems to extend the definition of Chebyshev polynomials for $n \in \mathbb{Z}$ but this would make the formula more cumbersome with `n.natAbs` in place of `n`'s, so I expressed it on `n : ℕ` directly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 51/1 Mathlib/RingTheory/Polynomial/Chebyshev.lean 1 8 ['YuvalFilmus', 'erdOne', 'github-actions', 'metakunt', 'michelsol'] chrisflav
assignee:chrisflav
111-36348
3 months ago
111-36348
111 days ago
35-16105
35 days
34815 Deep0Thinking
author:Deep0Thinking
feat(Analysis/SpecialFunctions/ImproperIntegrals): Frullani integral - [x] depends on: #34966 --- Add a proof of **Frullani integral**. Main theorems: - `Frullani.integral_Ioi` - `IntegrableOn.tendsto_integral_Ioi` - `exists_integral_div_eq_mul_log` Supporting lemmas: - `Frullani.comp_mul_left_div` - `Frullani.intervalIntegrable_div` - `Frullani.exists_integral_div_eq_mul_log` - `Ioi_diff_Ioc` - `ContinuousOn.comp_mul_left_div`, `ContinuousOn.comp_mul_right_div` - `ContinuousOn.comp_mul_left`, `ContinuousOn.comp_mul_right` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-analysis awaiting-author blocked-by-other-PR 270/2 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean,Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Monoid.lean 6 17 ['CoolRmal', 'Deep0Thinking', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sgouezel'] urkud
assignee:urkud
111-20063
3 months ago
34-56513
34 days ago
11-36072
11 days
26986 WangYiran01
author:WangYiran01
feat(Partition): add bijection for partitions with max part ≤ r This PR adds a new theorem `partition_max_equals_bound` to `Mathlib.Combinatorics.Enumerative.Partition`. It constructs a bijection between: - The set of partitions of `n` in which `r ∈ π.parts` and all parts are `≤ r`, and - The set of partitions of `n - r` whose largest part is at most `r`. This provides a constructive proof via removing/adding `r` from/to the partition multiset, in line with classical enumerative combinatorics. Contributed by Yiran Wang. awaiting-author t-combinatorics new-contributor merge-conflict 92/0 Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Data/Multiset/Lattice.lean 2 20 ['WangYiran01', 'github-actions', 'jcommelin', 'kckennylau', 'kim-em', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
108-71222
3 months ago
142-7690
142 days ago
120-67067
120 days
26168 oliver-butterley
author:oliver-butterley
feat(MeasureTheory.VectorMeasure): variation defined as a supremum is equal to variation defined using the Hahn-Jordan decomposition Add `signedMeasure_totalVariation_eq`: if `μ` is a `SignedMeasure` then variation defined as a supremum is equal to variation defined using the Hahn-Jordan decomposition. Co-authored-by: @yoh-tanimoto --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author merge-conflict blocked-by-other-PR new-contributor 916/0 Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Jordan.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Equiv.lean 5 7 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'yoh-tanimoto'] nobody
108-52211
3 months ago
329-8078
329 days ago
15-65390
15 days
34722 GrigorenkoPV
author:GrigorenkoPV
feat(Data/Finset/RangeDistance): bound distance between elements of `Finset.range` --- Rebase of https://github.com/leanprover-community/mathlib4/pull/26347 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data awaiting-author 34/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 7 ['GrigorenkoPV', 'Vierkantor', 'github-actions', 'joneugster', 'mathlib-splicebot', 'plp127'] pechersky
assignee:pechersky
108-37500
3 months ago
64-61262
64 days ago
52-18954
52 days
33969 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): Currently, injectiveSeminorm = projectiveSeminorm **WIP / RFC!** Arguably, `injectiveSeminorm` should be re-defined in Mathlib. See #34137 and [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798261) for context. In this file, we collect some results about the current definition and a possible alternative. Contents: * A theorem `injectiveSeminorm_eq_projectiveSeminorm` formalizing the equality of the current definitions. However, I think it is unlikely that keeping the alternative characterization would be worth the effort. The interesting direction `(L2') ≤ (L1)` follows from `norm_eval_le_projectiveSeminorm` which is still present. The converse direction is [somewhat tautological](https://github.com/leanprover-community/mathlib4/pull/34137). A proof of `(L2) = (L1)` (probably requiring Hahn-Banach) might be more interesting. * A preliminary implementation of the injective seminorm as commonly understood. * Sufficient conditions for the multiplicativity property `‖⨂ m i‖_∧ = ∏ ‖m i‖` to hold. This implements a TBD item. --- Co-authored-by: Davood H. H. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis new-contributor large-import merge-conflict 774/387 Mathlib.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/LeastReasonable.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean 8 3 ['github-actions', 'goliath-klein', 'mathlib-merge-conflicts'] nobody
107-54572
3 months ago
135-69676
135 days ago
0-23
23 seconds
33233 jazzits
author:jazzits
feat(GroupTheory): add chosen group presentations and Tietze transformations (1) and (2) Defines a notion of group presentation for G compatible with Mathlib.GroupTheory.PresentedGroup: generators `ι → G` whose range generates G, and relators `rels : Set (FreeGroup ι)` whose normal closure equals the kernel of `FreeGroup ι →* G`. Provides the canonical map `PresentedGroup P.rels →* G` and equivalences showing `PresentedGroup P.rels ≃* G` and invariance under changing presentations. Also formalizes Tietze moves (1)–(2) as equivalences of PresentedGroups: adding/removing a relator that lies in the normal closure of the others. TODO: moves (3)–(4) (add/remove generator with a defining relation). No existing definitions are modified t-group-theory new-contributor awaiting-author 328/0 Mathlib.lean,Mathlib/GroupTheory/Presentation.lean 2 15 ['github-actions', 'homeowmorphism', 'jazzits', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] tb65536
assignee:tb65536
106-83105
3 months ago
151-75652
151 days ago
5-47944
5 days
34725 GrigorenkoPV
author:GrigorenkoPV
feat(RingTheory/RootsOfUnity/LowDegree): quadratic, cubic, quartic, quintic roots of unity Closes https://github.com/leanprover-community/mathlib4/pull/25907 --- Merge of https://github.com/leanprover-community/mathlib4/pull/25907 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory awaiting-author 247/0 Mathlib.lean,Mathlib/Algebra/CharP/Invertible.lean,Mathlib/Algebra/QuadraticDiscriminant.lean,Mathlib/RingTheory/RootsOfUnity/LowDegree.lean 4 22 ['GrigorenkoPV', 'LLaurance', 'erdOne', 'github-actions', 'joneugster'] nobody
106-47795
3 months ago
111-37115
111 days ago
5-38408
5 days
33032 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph): Konig’s theorem on bipartite graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor blocked-by-other-PR merge-conflict 832/251 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Konig/Auxillary.lean,Mathlib/Combinatorics/SimpleGraph/Konig/Konig.lean,Mathlib/Combinatorics/SimpleGraph/Konig/KonigFin.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean 12 9 ['SnirBroshi', 'github-actions', 'ksenono', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody
106-31705
3 months ago
163-14361
163 days ago
0-136
2 minutes
34159 wangying11123
author:wangying11123
feat(Geometry/Euclidean/Similarity): Add Triangle similarity on oangle Add theorems about triangles similarity on oangle t-euclidean-geometry new-contributor awaiting-author 154/1 Mathlib/Geometry/Euclidean/Similarity.lean 1 8 ['LLaurance', 'github-actions', 'jsm28', 'wangying11123'] jsm28
assignee:jsm28
105-81872
3 months ago
106-42701
106 days ago
7-49555
7 days
33050 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem Lemmas missing for the formalisation of the proof of the Gelfond–Schneider theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor WIP 238/0 Mathlib.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart2.lean 6 113 ['SnirBroshi', 'github-actions', 'j-loreaux', 'mkaratarakis', 'riccardobrasca', 'vihdzp'] riccardobrasca
assignee:riccardobrasca
104-64252
3 months ago
114-83509
114 days ago
6-26337
6 days
34814 GrigorenkoPV
author:GrigorenkoPV
feat(Tactic/ClearUnneeded): add `clear_unneeded` tactic --- The simplest version suggested in https://github.com/leanprover-community/mathlib4/issues/25319 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor please-merge-master awaiting-author 94/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ClearUnneeded.lean,Mathlib/Tactic/Common.lean,MathlibTest/ClearUnneeded.lean,scripts/noshake.json 6 12 ['BoltonBailey', 'GrigorenkoPV', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
104-51316
3 months ago
112-74689
112 days ago
2-23785
2 days
34876 GrigorenkoPV
author:GrigorenkoPV
feat(Tactic/AssumptionQuestion): add `assumption?` tactic --- As requested in #10361 TODO: maybe add some tests? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor awaiting-author 85/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/AssumptionQuestion.lean,Mathlib/Tactic/Common.lean,MathlibTest/AssumptionQuestion.lean,scripts/noshake.json 6 5 ['GrigorenkoPV', 'SnirBroshi', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
104-49891
3 months ago
112-72879
112 days ago
0-83167
23 hours
33217 Blackfeather007
author:Blackfeather007
feat(Algebra): define associated graded structure for abelian group In this PR we define the associated graded structure for abelian group when given a filtration and only give some basic lemmas about it. --- migrated from https://github.com/leanprover-community/mathlib4/pull/26857 new-contributor t-ring-theory awaiting-author 144/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 13 ['Blackfeather007', 'chrisflav', 'erdOne', 'eric-wieser', 'github-actions', 'urkud'] erdOne
assignee:erdOne
104-37472
3 months ago
153-51868
153 days ago
4-58698
4 days
23791 SEU-Prime
author:SEU-Prime
Create AmiceTrans.lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-number-theory new-contributor 2963/0 Mathlib.lean,Mathlib/Analysis/Normed/Ring/Lemmas2.lean,Mathlib/NumberTheory/Padics/AmiceTrans.lean,Mathlib/NumberTheory/Padics/PSAC.lean,Mathlib/NumberTheory/Padics/PSAC2.lean,Mathlib/NumberTheory/Padics/PSAC3.lean,Mathlib/NumberTheory/Padics/PiGammainPS.lean,Mathlib/NumberTheory/Padics/PsiandVar.lean,Mathlib/RingTheory/AdicCompletion/Lemma.lean,Mathlib/RingTheory/PowerSeries/Comp.lean,Mathlib/Topology/ContinuousMap/ZeroAtBot.lean 11 5 ['SEU-Prime', 'github-actions', 'leanprover-community-bot-assistant', 'urkud'] nobody
104-36536
3 months ago
417-69202
417 days ago
0-38
38 seconds
33281 michelsol
author:michelsol
feat(Analysis/SpecialFunctions/Integrals): integral of 1/sqrt(1-x^2) and its integrability. Add the integral of the derivative of arcsin and its integrability. --- - [ ] depends on: #33280 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict t-analysis 59/0 Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
104-6159
3 months ago
155-60384
155 days ago
0-2872
47 minutes
32918 michelsol
author:michelsol
feat: define `supEdist` and `supDist` Create a new file Topology.MetricSpace.SupDistance and define the supremal distance in (extended) metric spaces. The defined `supEdist` and `supDist` will have similar theory to the already existing `infEdist` and `infDist`. The motivation is to be able to define the radius of a minimal bounding sphere as the infimum of the supDist later. [zulip discussion here](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalizing.20Jung's.20theorem.20and.20minimal.20bounding.20spheres) t-topology new-contributor merge-conflict 75/0 Mathlib.lean,Mathlib/Topology/MetricSpace/SupDistance.lean 2 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'michelsol', 'urkud'] nobody
102-62658
3 months ago
144-55043
144 days ago
21-3598
21 days
26413 michaellee94
author:michaellee94
feat: existence of maximal solutions for ODEs meeting Picard-Lindelöf conditions Add existence proof for maximal solution of ODE using Picard-Lindelöf and a uniqueness theorem using Grönwall's lemma. --- - [x] depends on: #26382 - [x] depends on: #29186 - [ ] depends on: #35043 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR new-contributor t-analysis merge-conflict 1300/431 Mathlib.lean,Mathlib/Analysis/ODE/Basic.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/Analysis/ODE/Gronwall.lean,Mathlib/Analysis/ODE/MaximalSolution.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/UniformTime.lean,docs/1000.yaml,docs/undergrad.yaml 13 95 ['botbaki-review', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'michaellee94', 'winstonyin'] nobody
102-3793
3 months ago
333-75979
333 days ago
0-5139
1 hour
33712 wangying11123
author:wangying11123
feat(Geometry/Euclidean/Angle/Unoriented/Projection): Add sameray_orthogonalProjection_vsub_of_angle_lt Add sameray_orthogonalProjection_vsub_of_angle_lt `sameray_orthogonalProjection_vsub_of_angle_lt` When an angle is acute, the vector to the orthogonal projection lies in the same ray as the given direction vector. new-contributor t-euclidean-geometry awaiting-author 20/0 Mathlib/Geometry/Euclidean/Angle/Unoriented/Projection.lean 1 4 ['JovanGerb', 'github-actions', 'j-loreaux'] JovanGerb
assignee:JovanGerb
101-72489
3 months ago
101-72589
101 days ago
39-6778
39 days
30667 FrederickPu
author:FrederickPu
feat(‎Mathlib/Algebra/Group/Subgroup/Pointwise): subgroup mul Title: feat: pointwise products for subgroups Description: showed the point-wise product of disjoint subgroups is equivalent to their Cartesian product. Based on https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/useful.20group.20theory.20lemmas/with/546738566. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
28/0 Mathlib/Algebra/Group/Subgroup/Pointwise.lean 1 23 ['FrederickPu', 'eric-wieser', 'github-actions', 'plp127', 'tb65536'] nobody
101-70998
3 months ago
101-75632
101 days ago
1-21290
1 day
33793 LTolDe
author:LTolDe
feat(MeasureTheory/Constructions/Polish/Basic): add lemma AnalyticSet.inter_nonempty_of_nowhereMeagre add lemma AnalyticSet.inter_nonempty_of_nowhereMeagre, the main ingredient for the proof of the **Effros' Theorem**, see [#mathlib4 > Effros Theorem](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Effros.20Theorem/with/566543328) introduce definition of a nowhere meagre set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor awaiting-author 37/0 Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/GDelta/Basic.lean 3 8 ['MichaelStollBayreuth', 'erdOne', 'github-actions', 'j-loreaux'] kex-y
assignee:kex-y
101-66755
3 months ago
101-66961
101 days ago
39-9555
39 days
35313 LexinonCraft
author:LexinonCraft
feat: IMO 2025 Q4 This adds a solution for problem 4 from the International Math Olympiad 2025. --- IMO new-contributor awaiting-author 631/0 Archive.lean,Archive/Imo/Imo2025Q4.lean 2 4 ['LexinonCraft', 'github-actions', 'jsm28'] jsm28
assignee:jsm28
101-36629
3 months ago
101-36629
101 days ago
3-30421
3 days
33276 NicolaBernini
author:NicolaBernini
feat: Rename List.reverse_perm to List.reverse_perm_self and List.reverse_perm' to List.reverse_perm_iff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author t-data merge-conflict 17/15 Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/NumberTheory/Divisors.lean 8 5 ['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] kim-em
assignee:kim-em
101-20373
3 months ago
151-85046
151 days ago
4-4467
4 days
34674 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): replace ENNReal lemmas with WithTop versions * Add `WithTop` versions of basic multiplicative order lemmas. * Use the new `WithTop` lemmas to replace `ENNReal` proofs and address six TODOs. * Fix a typo in the `pos_of_ne_zero` alias name. new-contributor t-algebra merge-conflict
label:t-algebra$
46/15 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/ENNReal/Operations.lean 3 5 ['Citronhat', 'Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] Ruben-VandeVelde
assignee:Ruben-VandeVelde
101-107
3 months ago
101-108
101 days ago
17-1225
17 days
28246 Sebi-Kumar
author:Sebi-Kumar
feat(AlgebraicTopology/FundamentalGroupoid): the n-sphere is simply connected for n > 1 Prove that the `n`-dimensional sphere (i.e., the unit sphere centered at the origin in `(n + 1)`-dimensional real Euclidean space) is a simply connected space for `n > 1`. This proof follows Hatcher's "Algebraic Topology"; we first prove a general lemma about decomposing loops and then exploit the fact that non-surjective loops in the sphere are homotopically trivial. Note: To get this file to build, I edited `Mathlib/Tactic/Linter/DirectoryDependency.lean` to remove the restrictions on AlgebraicTopology files importing Geometry, NumberTheory, and FieldTheory files. Thank you to those who shared their expertise [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Warning.20that.20AlgebraicTopology.20can't.20import.20SetTheory/with/533833638). As I understand it, this is just a short-term solution, so I would appreciate feedback on what to do about this situation. Note: I am unsure where exactly the file `SimplyConnectedSphere.lean` should go or whether that is an appropriate name for the file, so feedback there would be appreciated. --- To provide additional context, this code was written as a part of the Fields Undergraduate Summer Research Program at the University of Western Ontario under the supervision of Chris Kapulkin and Daniel Carranza. - [x] depends on: #28208 - [x] depends on: #28198 - [x] depends on: #28185 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor awaiting-author 343/3 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnectedSphere.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 17 ['dagurtomas', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] robin-carlier
assignee:robin-carlier
98-84293
3 months ago
98-84293
98 days ago
13-72199
13 days
33746 ster-oc
author:ster-oc
feat(Algebra/Module/ZLattice): align `ZSpan.floor` to `Int.floor` API This PR adds some of the existent lemmas about `Int.floor`, `Int.ceil` and `Int.fract` to the `ZSpan` namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor merge-conflict
label:t-algebra$
353/145 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Topology/Algebra/Order/Floor.lean 3 8 ['github-actions', 'joelriou', 'mathlib-merge-conflicts', 'ster-oc'] joelriou
assignee:joelriou
96-17005
3 months ago
96-17005
96 days ago
30-23357
30 days
31766 SuccessMoses
author:SuccessMoses
feat(Topology/EMetricSpace): continuity of arc length fixes half of #31751 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology awaiting-author merge-conflict 396/0 Mathlib.lean,Mathlib/Topology/EMetricSpace/ArcLength.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean 3 40 ['SnirBroshi', 'SuccessMoses', 'alreadydone', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
95-48702
3 months ago
171-49572
171 days ago
2-77113
2 days
33257 NickAdfor
author:NickAdfor
feat(Combinatorics/SimpleGraph/Bipartite): Odd Cycle Theorem (A Solution to TODO) Prove bipartite iff all cycles are even This PR formalizes the classical graph theory theorem: a graph is bipartite if and only if all its cycles have even length. Co-authored-by: Nick Adfor Co-authored-by: Yue Sun Co-authored-by: Aristotle AI --- ## Main results - `SimpleGraph.bipartite_iff_all_cycles_even` : the main equivalence theorem ## Key supporting lemmas - `SimpleGraph.even_length_iff_same_color` : parity lemma for 2-colorings - `SimpleGraph.even_length_iff_even_bypass_length` : bypass length parity - `SimpleGraph.even_cycle_length_of_path` : cycle construction lemma - `SimpleGraph.bypass_eq_nil_of_closed` : closed path properties ## Proof outline 1. For bipartite graphs: use the 2-coloring to show that in a 2-coloring, a walk has even length iff its endpoints have the same color. 2. For cycles (start = end), this forces even length. 3. For the converse: if all cycles are even, construct a 2-coloring using the `two_colorable_iff_forall_loop_even` characterization. 4. Show this coloring is valid using bypass operations and path properties. ## Technical notes - Uses `SimpleGraph.Walk` for path/cycle representation - Handles both `IsPath` and `IsCycle` predicates - Uses bypass operations (`takeUntil`, `dropUntil`, `bypass`) to analyze walks - Requires `DecidableEq V` for some lemmas - Uses classical logic for case analysis ## Reviewer notes - The proof uses induction on walks and case analysis on colorings - Some lemmas (like `even_length_iff_same_color`) could be extracted to more general locations - All theorems are in the `SimpleGraph` namespace - The `bipartite_iff_all_cycles_even` theorem provides the complete characterization t-combinatorics new-contributor awaiting-author LLM-generated merge-conflict 164/8 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 2 80 ['IvanRenison', 'NickAdfor', 'Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'euprunin', 'github-actions', 'kmill', 'mathlib-merge-conflicts', 'mitchell-horner', 'vihdzp', 'vlad902'] YaelDillies
assignee:YaelDillies
95-37676
3 months ago
67-9964
67 days ago
52-32521
52 days
34419 ster-oc
author:ster-oc
feat(RCLike): add `Continuous.re` and similar This PR adds dot notation for `re`, `im`, `conj` and `ofReal` for `Continuous`, `LipschitzWith` and `Memℓp`. Given `hf : Continuous f` it allows to use `hf.re` to express `Continuous (fun x ↦ (f x).re)`, similarly to the usual `hf.add hg`. I also can add the same features for `Summable` but I am not sure where to place them, suggestions are appreciated! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor awaiting-author merge-conflict 186/41 Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/RCLike/Basic.lean 3 15 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'ster-oc'] j-loreaux
assignee:j-loreaux
94-60800
3 months ago
94-60800
94 days ago
8-29654
8 days
33247 sun123zxy
author:sun123zxy
feat(Mathlib/RingTheory/Ideal/Cotangent): dimension of cotangent spaces It is shown that the span rank of the maximal ideal of a local ring equals the dimension of the cotangent space if the maximal ideal is finitely generated. To avoid unnecessary imports, the original `Mathlib/RingTheory/Nakayama` is now moved to `Mathlib/RingTheory/Nakayama/Basic`. --- - [ ] depends on: #33359 - [ ] depends on: #33361 - [ ] depends on: #35651 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed new-contributor t-ring-theory WIP blocked-by-other-PR merge-conflict 140/27 Mathlib.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/LocalRing/Module.lean,Mathlib/RingTheory/LocalRing/Quotient.lean,Mathlib/RingTheory/Nakayama/Basic.lean,Mathlib/RingTheory/Nakayama/SpanRank.lean,Mathlib/RingTheory/Regular/RegularSequence.lean,Mathlib/RingTheory/Support.lean 10 13 ['erdOne', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sun123zxy'] nobody
94-45038
3 months ago
153-52186
153 days ago
3-72713
3 days
34853 GrigorenkoPV
author:GrigorenkoPV
feat(Combinatorics/Enumerative/Catalan): ratio of subsequent Catalan numbers --- Should I split this into 2 PRs? Otherwise it'll get squashed & be less concise. UPD: ok, I've opened #34854 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 305/195 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Catalan/Ratio.lean,Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean 7 6 ['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
94-44661
3 months ago
112-72346
112 days ago
1-62439
1 day
35735 mkaratarakis
author:mkaratarakis
feat(NumberTheory): analytical properties and lower bounds for Gelfond-Schneider auxiliary function This PR is the third component in the formalization of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem). It connects the algebraically constructed auxiliary function `R(x)` to its analytical properties, establishing the exact order of vanishing and the fundamental lower bound on the norm of its non-zero derivative evaluation. Following the argument in Loo-Keng Hua's *Introduction to Number Theory* (Chapter 17.9, equations (4) and (5)), we define the minimal non-vanishing derivative order $r$ and scale the evaluation to an algebraic integer to compute its norm. 1. (`iteratedkDeriv_R_eq_zero` & `order_geq_n`): We verify that the coefficient vector $\eta$ (chosen via Siegel's lemma in the previous PR) forces the first $n$ derivatives of the auxiliary function $R(x)$ to vanish at the points $x \in \{1, 2, \dots, m\}$. Consequently, the analytical order of $R(x)$ at these points is at least $n$. 2. We extract $r$, the exact minimal order of vanishing of $R(x)$ among all points $1 \le l \le m$, and prove that $n \le r$. 3. We define the non-zero algebraic number $\rho = (\log \alpha)^{-r} R^{(r)}(l_0)$. 4. We prove the crucial textbook step that scaling $\rho$ by $c_1^{r+2mq}$ (formalized here as `cρ`) results in an algebraic integer in $\mathcal{O}_K$. 5. Because $c_1^{r+2mq} \rho$ is a non-zero algebraic integer, the absolute value of its norm is at least $1$. We use this to formally prove the strict lower bound on the absolute norm of the unscaled $\rho$: $|N(\rho)| > c_1^{-h(r+2mq)} > c_5^{-r}$. --- - [ ] depends on: #35734 [optional extra text] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor blocked-by-other-PR 1141/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlgSetup.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainOrder.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
94-32119
3 months ago
94-54575
94 days ago
0-362
6 minutes
35755 Vilin97
author:Vilin97
feat(Analysis/ODE): forward Euler method convergence WIP Prove the convergence of the Forward Euler Method. This is the first theorem in most textbooks on numerical analysis for ODEs. --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was then iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code (Claude Opus 4.6). * [ ] depends on: #35753 new-contributor WIP LLM-generated merge-conflict 297/0 Mathlib.lean,Mathlib/Analysis/ODE/EulerMethod.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 4 7 ['Vilin97', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
94-9108
3 months ago
94-11319
94 days ago
0-674
11 minutes
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
93-7043
3 months ago
438-71382
438 days ago
48-67492
48 days
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
93-7027
3 months ago
389-75321
389 days ago
39-60525
39 days
30872 rudynicolop
author:rudynicolop
feat(Computability/NFA): NFA closure under concatenation This PR proves that regular languages are closed under concatenation via a direct construction on `NFA`s without `εNFA` nor ε-transitions. The main new definitions and results include: - `M1.concat M2`, the concatenation of `NFA`s `M1` and `M2`, a direct construction without ε-transitions. - Theorem `accepts_concat : (M1.concat M2).accepts = M1.accepts * M2.accepts`, showing the correctness of the construction. - Theorem `IsRegular.mul`, showing that regular languages are closed under concatenation. --- - [x] depends on: #31038 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor awaiting-author 104/7 Mathlib/Computability/NFA.lean 1 67 ['YaelDillies', 'ctchou', 'eric-wieser', 'github-actions', 'lambda-fairy', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'rudynicolop'] nobody
92-73298
3 months ago
120-56707
120 days ago
59-63565
59 days
35746 ThomasMoulin-hub
author:ThomasMoulin-hub
feat (Algebra/Endomorphisms): add kernels lemma from the missing undergraduate mathematics in mathlib Add helper theorem inside Mathlib.Algebra.Polynomial.Smeval.lean and created a new file Mathlib/RingTheory/Polynomial/KernelDecomposition.lean that implements the kernels lemma from the missing undergraduate mathematics in mathlib list. This file also contains intermediate results needed for the main lemma. new-contributor 75/0 Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/RingTheory/Polynomial/Basic.lean 2 2 ['github-actions'] nobody
92-44867
3 months ago
unknown
0-0
0 seconds
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
92-27056
3 months ago
356-56355
356 days ago
34-10092
34 days
35128 DAE123456
author:DAE123456
feat : Define anti_pascal --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
81/0 Archive.lean,Archive/Imo/Imo2018Q3.lean 2 5 ['DAE123456', 'github-actions', 'grunweg', 'vihdzp'] nobody
92-24582
3 months ago
107-79146
107 days ago
0-1613
26 minutes
8102 miguelmarco
author:miguelmarco
feat(Tactic): add `unify_denoms` and `collect_signs` tactics This PR adds four new tactics: - `unify_denoms` tries to put expressions with several divisions in a form with only one division. In the case of fields, it works similarly to `field_simp`, but if the hypothesis about denominators being nonzero are not present, it assumes them, and leaves them as new goals to prove. In that sense, it is an "unsafe" tactic (but can be useful nevertheless, for example when you can't find which exact hypothesis is missing). It also works with expressions of naturals and Euclidean domains, assuming the corresponding hypothesis about the denominators dividing the numerators. - `unify_denoms!` extends `unify_denoms` to work with (in)equalities, assuming also that the denominators, once in normal form, are positive. - `collect_signs` works similarly with expressions using sums and substractions: it tries to put them in a form of one sum minus other sum. In the case of working with naturals, it assumes that we never substract a bigger number from a smaller one. Both are implemented essentially as a macro that combines several rewriting rules. Some new lemmas with the corresponding rules are added. --- please-adopt new-contributor merge-conflict modifies-tactic-syntax good first issue t-meta 407/0 Mathlib.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CollectSigns.lean,Mathlib/Tactic/UnifyDenoms.lean,MathlibTest/unify_denoms.lean,scripts/noshake.json 7 55 ['Paul-Lez', 'YaelDillies', 'github-actions', 'joneugster', 'kbuzzard', 'mathlib4-merge-conflict-bot', 'miguelmarco'] nobody
91-77754
3 months ago
380-60226
380 days ago
17-14109
17 days
35603 2500223210-max
author:2500223210-max
feat(GroupTheory/Frattini): add more theorems Add some contents about frattini subgroup into Mathlib GroupTheory Frattini.lean,including * (convenient lemma)A subgroup contained in all maximal subgroup is contained in the FRattini subgroup * A subgroup (say H) has a proper complement (meaning for some proper subgroup K, K and H generate the whole group)if and only if it is not contained in the Frattini subgroup. * A group is cyclic iff its Frattini factor(the quotient group wrt Frattini subgroup) is cyclic. * The Frattini factor of a finite p-group is elementary abelian(that is,an abelian group G with Gᵖ={1}) * A finite p-group has trivial Frattini subgroup iff the group is elementary abelian. * Burnside theorem of Frattini factor of finite p-group. --- new-contributor t-group-theory large-import awaiting-author 764/1 Mathlib/GroupTheory/Frattini.lean 1 3 ['github-actions', 'tb65536'] nobody
91-75435
3 months ago
91-75435
91 days ago
5-73876
5 days
33791 PhoenixIra
author:PhoenixIra
feat: Generalization of FixedPointApproximants to CompletePartialOrder --- This PR provides a generalization of FixedPointApproximants to CompletePartialOrder. Not every theorem can be generalized, as sometimes we require additional conditions (namely `x ≤ f x`) in order to guarantee that the set is directed and thus the supremum is well-defined. This is not necessary in a CompleteLattice. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 223/100 Mathlib/Order/CompletePartialOrder.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean 2 21 ['PhoenixIra', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] PhoenixIra and vihdzp
assignee:PhoenixIra assignee:vihdzp
91-53739
3 months ago
91-53739
91 days ago
44-16098
44 days
35857 AlexeyMilovanov
author:AlexeyMilovanov
feat(Logic.Equiv.BijectiveBase2): add bijective base-2 numeration This PR introduces a formalization of the bijective base-2 numeration system. Unlike standard binary representation, bijective base-2 avoids the "leading zeros" problem, providing a strict mathematical bijection between natural numbers (`ℕ`) and lists of booleans (`List Bool`). **Main additions:** * `Equiv.BijectiveBase2.toBits`: Encodes `ℕ` to `List Bool`. * `Equiv.BijectiveBase2.ofBits`: Decodes `List Bool` to `ℕ`. * `equivBijectiveBase2`: The formal `ℕ ≃ List Bool` equivalence. --- Zulip: [#PR reviews > PR #35857: Bijective Base-2 Numeration](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PR.20.2335857.3A.20Bijective.20Base-2.20Numeration/with/576336540) Zulip: [#batteries > Upstreaming Nat.Bits](https://leanprover.zulipchat.com/#narrow/channel/348111-batteries/topic/Upstreaming.20Nat.2EBits/with/580736051) *(Note: This replaces my previously closed PR to avoid the terminology clash between "Dyadic" and dyadic rationals. The namespace and definitions have been updated accordingly).* *(Note: Used AI to assist with standardizing proof structures).* t-logic new-contributor LLM-generated blocked-by-batt-PR 95/0 Mathlib.lean,Mathlib/Logic/Equiv/ListNatBijective.lean 2 6 ['AlexeyMilovanov', 'SnirBroshi', 'github-actions', 'joneugster'] nobody
91-49810
3 months ago
63-86033
63 days ago
27-59600
27 days
35376 michaellee94
author:michaellee94
feat(Geometry/Manifold): orientable manifolds --- - [x] depends on: #33189 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor WIP t-differential-geometry merge-conflict awaiting-author 2116/11 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/MoebiusBand.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/Geometry/Manifold/Orientation.lean,Mathlib/Topology/Closure.lean 7 8 ['Rida-Hamadani', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
90-44015
3 months ago
103-63461
103 days ago
0-100
1 minute
35734 mkaratarakis
author:mkaratarakis
feat(NumberTheory): matrix bounds and Siegel's lemma application for Gelfond-Schneider This PR is the second component in the formalization of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), establishing the transcendence of $\alpha^\beta$. Building on the algebraic setup from the previous PR #35733, this file establishes analytical bounds on the linear system matrix and applies Siegel's Lemma (Lemma 8.2) to extract a bounded, non-trivial integer solution vector. We establish the exact upper bounds required to construct the auxiliary integer function $R(x)$. `c₃` and Matrix Bounds (`house_matrixA_le`)**: We define the bounding constant $c_3$, which aggregates the base bounds $c_2$ and the maximal houses of the algebraic preimages $\alpha', \beta', \gamma'$. Through extensive algebraic manipulation, we formally prove that the house of the entries in our linear system matrix $A$ is strictly bounded by $c_3^n * n^{(n - 1) / 2}$. Using the bounds established above, we apply `house.exists_ne_zero_int_vec_house_le` (a formalization of Lemma 8.2, p. 490) to guarantee the existence of a non-trivial vector of algebraic integers $\eta$ in the kernel of $A$. We define the solution bounding constant $c_4$ and prove the textbook bound that the house of our resulting coefficient vector $\eta$ satisfies $\forall k, \|\eta_k\| \leq c_4^n * n^{(n + 1) / 2}$. - [ ] depends on: #35733 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-number-theory blocked-by-other-PR 872/5 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlgSetup.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
89-80945
2 months ago
94-55160
94 days ago
0-306
5 minutes
34875 banrovegrie
author:banrovegrie
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap. - Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}` - Add `Matrix.inv_sub_vecMulVec`: subtraction variant - Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses ## Test plan - [x] `lake build` passes - [x] Lines within 100 char limit - [x] All declarations have docstrings **Any specific AI usage?**: Used Copilot for review purposes. t-algebra new-contributor awaiting-author
label:t-algebra$
135/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean 2 14 ['Xxxjdjdid', 'banrovegrie', 'chrisflav', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
89-68573
2 months ago
44-65662
44 days ago
69-6728
69 days
26013 tsuki8
author:tsuki8
feat(Data/Finset/Card,Data/Set/Finite/Basic): TODO needs a better title add `card_bijOn` and `finset_subset_preimage_of_finite_image` Add `card_bijOn`: proves that for a bijection between finsets, their cardinalities are equal Add `finset_subset_preimage_of_finite_image`: constructs a finset subset preserving image cardinality Co-authored-by: Junyu Guo --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor 15/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Set/Finite/Basic.lean 2 6 ['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] nobody
89-28750
2 months ago
333-8483
333 days ago
13-85893
13 days
35805 adrianmartir
author:adrianmartir
feat(NumberTheory/Divisors): Add `infinite_setOf_divisors_iff` This proves that the set of divisors `{ m | m | n }` of a natural number `n` is infinite if and only if `n` is zero. The first proof draft was by @Aristotle-Harmonic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor awaiting-author 10/0 Mathlib/NumberTheory/Divisors.lean 1 6 ['adrianmartir', 'alexjbest', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
89-6076
2 months ago
65-71816
65 days ago
27-18698
27 days
35442 dhyan-aranha
author:dhyan-aranha
feat: Affine line with doubled origin counter example --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author t-algebraic-geometry 305/0 Counterexamples.lean,Counterexamples/AffineLineWithDoubledOrigin.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean 4 21 ['BryceT233', 'chrisflav', 'dhyan-aranha', 'github-actions'] nobody
89-1680
2 months ago
101-76085
101 days ago
0-5488
1 hour
29713 jessealama
author:jessealama
feat(Algebra/Homology): add Euler–Poincaré formula This PR builds on the generalized Euler characteristic framework from #31121 to prove the Euler-Poincaré formula for chain complexes. PR #31121 defines the Euler characteristic for general homological complexes. This PR specializes those definitions to ℤ-indexed chain complexes and proves the main Euler-Poincaré theorem. ### Main result (in `EulerPoincare.lean`) * `ChainComplex.eulerChar_eq_homologyEulerChar`: For ℤ-indexed bounded chain complexes of finite-dimensional modules over a division ring, the alternating sum of chain dimensions equals the alternating sum of homology dimensions. ### Supporting lemmas The file also provides dimension lemmas generalized to arbitrary `HomologicalComplex (ModuleCat k) c` (not just ℤ-indexed chain complexes): * `HomologicalComplex.dFrom_zero_range` / `dTo_zero_range`: zero range when the target/source object is zero * `HomologicalComplex.dFrom_range_finrank_eq_d` / `dTo_range_finrank_eq_d`: range of `dFrom`/`dTo` has the same dimension as the underlying differential * `HomologicalComplex.range_dTo_le_ker_dFrom`: range of `dTo` is contained in the kernel of `dFrom` --- - [ ] depends on: #38483 (`Antiperiodic.sum_Ico_shift` and bilinear cancellation lemma) Builds on: #31121 Related to: #29639, #29643, #29646 awaiting-author t-algebra new-contributor blocked-by-other-PR
label:t-algebra$
428/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Periodic.lean,Mathlib/Algebra/Homology/EulerPoincare.lean 2 26 ['github-actions', 'jessealama', 'joelriou', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
88-83404
2 months ago
217-12176
217 days ago
35-45800
35 days
28286 bwangpj
author:bwangpj
feat(Geometry/Manifold/ContMDiff): basic lemmas for analytic (`C^ω`) functions Add basic lemmas relating `ContMDiff` in the `C^ω` case to being `Analytic` on charts. This is upstreamed from [https://github.com/girving/ray](https://github.com/girving/ray). Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry new-contributor 36/0 Mathlib/Geometry/Manifold/ContMDiff/Defs.lean 1 14 ['bwangpj', 'girving', 'github-actions', 'grunweg', 'kbuzzard', 'mathlib-merge-conflicts', 'sgouezel'] sgouezel
assignee:sgouezel
88-14218
2 months ago
263-10568
263 days ago
27-52841
27 days
34138 pfaffelh
author:pfaffelh
feat(MeasureTheory): Introduce `DiscreteMeasure α` giving rise to a `Measure α` as a sum of `dirac`s Define `DiscreteMeasure α` as a structure with `weight : α → ℝ≥0∞` Define `toMeasure (w : DiscreteMeasure α) : Measure α` as a sum of diracs Show properties of the resulting objects This PR intends to start a more userfriendly interaction with discrete probability (measure) theory, in contrast to probability mass functions (`PMF`). There are two main differences between `DiscreteMeasure` and `PMF`: * Every `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `DiscreteMeasure`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.) * The `toMeasure` function of `MassFunction` defines the measure as a sum of diracs, which immediately makes computations possible. Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change) - depends on: #37060 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 224/0 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/DiscreteMeasure.lean 4 27 ['DavidLedvinka', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'metakunt', 'ocfnash', 'pfaffelh'] ocfnash
assignee:ocfnash
86-84848
2 months ago
39-44700
39 days ago
82-19320
82 days
34940 michaellee94
author:michaellee94
feat: the graph of a continuous function on a $C^n$ manifold is a $C^n$ manifold --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor awaiting-author merge-conflict 536/0 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/Instances/Graph.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Topology/Constructions/Graph.lean 5 80 ['botbaki-review', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'michaellee94', 'ocfnash'] ocfnash
assignee:ocfnash
85-70878
2 months ago
87-51073
87 days ago
15-5284
15 days
35193 Brian-Nugent
author:Brian-Nugent
feat(Topology/Closeds): implement category of closed sets in topological spaces I copied over the nice API for working with `TopologicalSpace.Opens` as a category over for `TopologicalSpace.Closeds`. The only thing that did not immediately transfer was `Topology.IsInducing.functorObj` so I omitted it. Based on work of @kim-em --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor please-adopt merge-conflict awaiting-author 385/0 Mathlib.lean,Mathlib/Topology/Category/TopCat/Closeds.lean,Mathlib/Topology/Category/TopCat/Opens.lean 2 24 ['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
85-70024
2 months ago
70-70097
70 days ago
17-64811
17 days
35332 yisiox
author:yisiox
feat(Computability): regular expressions match a regular language This PR adds a proof that the language matched by a regular expression is a regular language. This is achieved by the following constructions and proofs of their correctness - A DFA `epsilon` which accepts the empty language - A DFA `char (a : α)` which accepts the language containing only a single symbol - An Epsilon-NFA `concat (M₁ : εNFA α σ₁) (M₂ : εNFA α σ₂)` which accepts the concatenation of the languages of two Epsilon-NFAs - An Epsilon-NFA `kstar (M : εNFA α σ)` which accepts the Kleene star of a language of an Epsilon-NFA The following theorems on closure are added - `IsRegular.zero` - `IsRegular.one` - `IsRegular.top` - `IsRegular.singleton` - `IsRegular.mul` - `IsRegular.kstar` which demonstrates - `IsRegular.matches` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor 475/0 Mathlib/Computability/DFA.lean,Mathlib/Computability/EpsilonNFA.lean 2 2 ['github-actions'] nobody
85-59985
2 months ago
unknown
0-0
0 seconds
36210 vbeffara
author:vbeffara
feat(Combinatorics/SimpleGraph): definitions of graph contraction and graph minor A contraction is the image of a graph through a surjective function with connected fibers, and a minor is a contraction of a subgraph. This PR shows that being a contraction is transitive, but does not show the same for minors because the proof is more involved, it will be in a subsequent PR. The definitions are in `Prop` and do not contain data, but I'm not sure if that was the right choice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 151/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Contraction.lean,Mathlib/Combinatorics/SimpleGraph/Minor.lean 3 8 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'robin-carlier', 'vbeffara'] b-mehta
assignee:b-mehta
85-42555
2 months ago
31-71218
31 days ago
53-33900
53 days
14313 grhkm21
author:grhkm21
feat(RepresentationTheory/FdRep): FdRep is a full subcategory of Rep ``` /-- Equivalence between `FDRep` and the full subcategory of finite dimensional `Rep`. -/ def equivFiniteDimensional : FDRep k G ≌ FullSubcategory (fun V : Rep k G ↦ FiniteDimensional k V) ``` merge-conflict t-algebra t-category-theory new-contributor
label:t-algebra$
47/8 Mathlib/RepresentationTheory/FDRep.lean 1 21 ['fpvandoorn', 'github-actions', 'grhkm21', 'joelriou', 'kim-em', 'mathlib-bors'] nobody
84-83444
2 months ago
677-49468
677 days ago
4-83177
4 days
33592 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols This PR picks up https://github.com/leanprover-community/mathlib4/pull/15895 and resolves the failing lemma by redefining Good symbols. --- I checked that https://github.com/leanprover-community/mathlib4/pull/13514 builds correctly when based on this build. PR for that is #33599 This is my first contribution please let me know of any changes I should outline. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-computability new-contributor 160/0 Mathlib/Computability/ContextFreeGrammar.lean 1 34 ['YaelDillies', 'github-actions', 'madvorak', 'nielstron'] nobody
84-72412
2 months ago
134-14539
134 days ago
10-68503
10 days
35144 daniel-carranza
author:daniel-carranza
feat(CategoryTheory/Enriched): tensor product of enriched categories For a braided monoidal category `V`, defines the tensor product of `V`-categories `C` and `D`, and shows that the type of `V`-functors out of the tensor product `C \times D` is equivalent to the type of "enriched bifunctors" `EnrichedBifunctor V C D`. --- This work originates from infinity-cosmos project, where it is used to formalize the notion of cotensors in an enriched category. There are some additional coherence lemmas in a braided monoidal category which have been added. Currently, line 209 violates the style guideline that terminal simp calls should not be squeezed. When I tried to replace this with a single `simp`, I get an error message: `maximum recursion depth has been reached`. Any suggestions (either with this or anything else) are greatly appreciated - thank you! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory infinity-cosmos awaiting-author 333/0 Mathlib.lean,Mathlib/CategoryTheory/Enriched/TensorProductCategory.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean 3 12 ['daniel-carranza', 'emilyriehl', 'github-actions', 'joelriou', 'robin-carlier'] nobody
84-68119
2 months ago
107-57214
107 days ago
0-145
2 minutes
34236 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FinitelyPresentedGroup): add finitely presented groups Formulation of finitely presented groups feat(GroupTheory/FinitelyPresentedGroup): add finitely presented groups We define the notion of `IsFinitelyPresented` with equivalent datatype notions, what it means for a subgroup to be finitely generated in the normal closure, and some instances of finitely presented groups. This started as an ItaLean2025 project. The related Zulip thread is here: https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Finitely.20Presented.20Groups/with/567565752. Use of AI: * Aristotle was used for giving a preliminary proof of some statements as this is my first contribution and I wanted to understand how to prove things; they have since been changed. * GPT-5.2 was used to generate some of the proof sub-statements for efficiency once the mathematical blueprints of the proofs have been worked out. * GPT-5.3 was used to rapidly refactor the code. Human review by PR author in-progress, but got to a point where it would be good to get external input. * GPT-5.4 was used to refactor the variables. Human PR author then rewrote the whole thing. --- - [x] depends on: #34580 - [x] depends on: #34624 - [x] depends on: #35033 - [x] depends on: #35029 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor merge-conflict blocked-by-other-PR 459/3 Mathlib.lean,Mathlib/GroupTheory/FinitelyPresentedGroup.lean 5 72 ['copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'grunweg', 'homeowmorphism', 'kbuzzard', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] nobody
84-66405
2 months ago
71-49298
71 days ago
0-4650
1 hour
27226 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Add Subgraph.inclusion_edge_apply_coe and inclusion_edgeSet_apply_coe This PR continues the work from #25248. Original PR: https://github.com/leanprover-community/mathlib4/pull/25248 awaiting-author t-combinatorics new-contributor merge-conflict 14/0 Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 1 4 ['b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'xcloudyunx'] b-mehta
assignee:b-mehta
84-59512
2 months ago
291-39658
291 days ago
25-83942
25 days
33688 Citronhat
author:Citronhat
feat(PMF): add expectation lemmas for Poisson PMF This PR adds some basic results about the Poisson distribution, its `PMF`, and its expectation. **New lemmas:** * `poissonPMF_apply` — an unfolding lemma for `poissonPMF`. * `poissonPMFReal_mul_eq_succ_mul` — the standard recursion identity for the Poisson mass function. * `poissonPMFReal_hasSum_nmul` — shows that `fun n ↦ poissonPMFReal r n * n` has sum `r`. * `poissonPMF_tsum_nmul` — the corresponding identity at the level of the `PMF`. * `poissonPMF_coe_tsum_nmul` — the same result after coercion to `ℝ`. Both `ℝ`-valued and `ℝ≥0∞`-valued formulations are included so that these results can be used conveniently in both Lebesgue and Bochner integration contexts. new-contributor t-measure-probability awaiting-author merge-conflict 21/0 Mathlib/Probability/Distributions/Poisson.lean 1 11 ['Citronhat', 'DavidLedvinka', 'github-actions', 'mathlib-merge-conflicts', 'urkud'] urkud
assignee:urkud
84-41492
2 months ago
95-56141
95 days ago
47-76876
47 days
34005 MSpill
author:MSpill
feat: inverse function theorem for manifolds (concrete version) Proves the inverse function theorem for manifolds: given manifolds $M, N$ and a $C^n$ map $f : M \to N$ whose differential is a linear isomorphism at $p \in M$, then $f$ is a local diffeomorphism at $p$, provided that both $p$ and its image are interior points. The proof proceeds in 4 main steps: 1. Define composition of partial diffeomorphisms 2. Show that the extended chart at an interior point can be restricted to an open set on which it is a partial diffeomorphism, viewing the model vector space as a manifold modelled on itself trivially 3. Use the inverse function theorem (applied to $f$ written in coordinates) to obtain a partial diffeomorphism between model vector spaces 4. Compose with chart diffeomorphisms to obtain a partial diffeomorphism between the manifolds. ------ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry new-contributor merge-conflict 232/3 Mathlib/Geometry/Manifold/LocalDiffeomorph.lean 1 12 ['MSpill', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
84-41247
2 months ago
134-66760
134 days ago
0-1082
18 minutes
34830 parabamoghv
author:parabamoghv
feat(CategoryTheory/Monoidal): add definition of categorical groups This PR defines of categorical groups, also known as coherent 2-groups, in mathlib. Motivation: Categorical groups are well-studied structures in monoidal category theory, but are not currently available in mathlib. The definitions in this PR follow the existing design patterns used for Category, MonoidalCategory, and BraidedCategory. This PR focuses on setting up the core structure and notation. Basic lemmas and further developments will be provided in a subsequent PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor WIP merge-conflict 163/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/CategoricalGroups/Basic.lean 2 27 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'parabamoghv', 'robin-carlier'] robin-carlier
assignee:robin-carlier
84-29967
2 months ago
99-12007
99 days ago
5-13145
5 days
36313 SproutSeeds
author:SproutSeeds
feat(Inversion): cobounded tendsto near center Part of #5939 Add `tendsto_inversion_nhdsNE_center_cobounded` in `Mathlib/Geometry/Euclidean/Inversion/Basic.lean`, proving `Tendsto (inversion c R) (𝓝[≠] c) (Bornology.cobounded P)` for `R ≠ 0`. Tools used: Codex 5.3 extra high --- Happy to adjust naming, placement, or proof style based on maintainer preference. t-euclidean-geometry new-contributor LLM-generated awaiting-author 42/0 Mathlib/Geometry/Euclidean/Inversion/Basic.lean 1 11 ['SproutSeeds', 'euprunin', 'github-actions', 'jsm28', 'kbuzzard', 'ocfnash'] jsm28
assignee:jsm28
84-4682
2 months ago
67-1621
67 days ago
6-36700
6 days
36323 SproutSeeds
author:SproutSeeds
feat(Inversion): discontinuity and center/global fderiv formulas Part of #5939 Adds the discontinuity-at-center lemma for inversion and derives the center/global `fderiv` formulas from it. This draft currently builds on the preceding cobounded-tendsto lemma from #36313 while that earlier slice is under review. Scope is limited to `Mathlib/Geometry/Euclidean/Inversion/Calculus.lean`. Tools used: Codex 5.3 extra high --- Happy to adjust naming, placement, or proof style based on maintainer preference. t-euclidean-geometry new-contributor LLM-generated 65/0 Mathlib/Geometry/Euclidean/Inversion/Basic.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean 2 2 ['github-actions'] nobody
83-67293
2 months ago
unknown
0-0
0 seconds
36326 Arnav-panjla
author:Arnav-panjla
Feat/gaussian schwartz map feat(Analysis/SpecialFunctions/Gaussian): define the Gaussian as a Schwartz function in 1D Define the Gaussian function `x ↦ exp (-x^2)` as a `SchwartzMap` in the one-dimensional case. The proof establishes the Schwartz decay conditions by showing that polynomially weighted expressions of the form `(1 + x^2)^m * exp (-x^2)` are bounded. This allows the Gaussian to be packaged using the `SchwartzMap` API. During the implementation a few adjustments were required to match the current Mathlib API. In particular: * replace the non-existent `IsBigO.mul_right` with `IsBigO.of_bound` applied to the full product `(1 + x^2)^m * exp (-x^2)` * fix `mem_cocompact` usage by replacing `(hh_tendsto.eventually ...).mem_cocompact` with `mem_cocompact.mp (hh_tendsto ...)` * adjust the `hb_bound` step using `gcongr` with exact bounds so that both goals close * remove the unused declaration `hf_nonpos` * register the required import in `Mathlib.lean` This implements the one-dimensional case mentioned in the issue. The generalization to Gaussians associated with arbitrary positive-definite bilinear forms can be added in a follow-up PR. Closes #33072 t-analysis new-contributor 235/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/SchwartzMap.lean 2 4 ['CoolRmal', 'github-actions'] nobody
83-60620
2 months ago
83-64031
83 days ago
83-63993
83 days
33668 Citronhat
author:Citronhat
feat(PMF): add lintegral formulas for PMF This PR introduces two lemmas describing the `lintegral` of a function with respect to the measure induced by a probability mass function: - `PMF.lintegral_eq_tsum` - `PMF.lintegral_eq_sum` These are the `ℝ≥0∞` analogues of the existing Bochner `integral` formulas `integral_eq_tsum` and `integral_eq_sum`. They could be useful for reasoning about expectations and integrability. In addition, the proof of `integral_eq_sum` is simplified by deriving it directly from `integral_eq_tsum` using `tsum_fintype`. t-measure-probability new-contributor awaiting-author merge-conflict 14/5 Mathlib/Probability/ProbabilityMassFunction/Integrals.lean 1 3 ['DavidLedvinka', 'github-actions', 'mathlib-merge-conflicts'] nobody
81-54422
2 months ago
88-2765
88 days ago
55-73479
55 days
36387 FrankieeW
author:FrankieeW
feat(NumberTheory/QuadraticField): parameter uniqueness for quadratic fields ## Summary Prove that every quadratic field `ℚ(√d)` can be normalized to have a squarefree integer parameter, and that this parameter is unique. ## Main Results - `Qsqrtd.rescale`: rescaling isomorphism `ℚ(√d) ≃ₐ[ℚ] ℚ(√(a²d))` for `a ≠ 0` - `Qsqrtd_iso_int_param`: every `ℚ(√d)` is isomorphic to one with an integer parameter - `Qsqrtd_iso_squarefree_int_param`: every `ℚ(√d)` is isomorphic to one with a squarefree integer parameter - `Qsqrtd.param_unique`: if `ℚ(√d₁) ≃ₐ[ℚ] ℚ(√d₂)` with both `d₁, d₂` squarefree and `≠ 1`, then `d₁ = d₂` ## Helper Lemmas - `squarefree_eq_of_rat_sq_mul`: if `d₁ = d₂ · r²` with both squarefree, then `d₁ = d₂` - `int_dvd_of_ratio_square`: if `d₁/d₂` is a rational square and `d₂` is squarefree, then `d₂ ∣ d₁` - `not_isSquare_neg_one_rat`: `-1` is not a square in `ℚ` --- - [ ] depends on: #36347 WIP t-number-theory blocked-by-other-PR new-contributor large-import LLM-generated 400/0 Mathlib.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/NumberTheory/QuadraticField/Basic.lean 4 4 ['FrankieeW', 'github-actions', 'mathlib-dependent-issues'] nobody
81-31029
2 months ago
82-25299
82 days ago
0-2
2 seconds
35058 GrigorenkoPV
author:GrigorenkoPV
chore: move tendsto_{floor,ceil}_at{Top,Bot} Moves: - Topology.Algebra.Order.Floor.tendsto_floor_atTop -> Order.Filter.AtTopBot.Floor.tendsto_floor_atTop - Topology.Algebra.Order.Floor.tendsto_floor_atBot -> Order.Filter.AtTopBot.Floor.tendsto_floor_atBot - Topology.Algebra.Order.Floor.tendsto_ceil_atTop -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atTop - Topology.Algebra.Order.Floor.tendsto_ceil_atBot -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atBot --- Tracked in #7987 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import awaiting-author 22/25 Mathlib/Order/Filter/AtTopBot/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean 2 3 ['GrigorenkoPV', 'github-actions', 'j-loreaux'] nobody
80-46250
2 months ago
80-46250
80 days ago
27-45743
27 days
31670 edwin1729
author:edwin1729
feat(Topology/Order): Scott Topology is Sober over Algebraic DCPO --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20Algebraic.20complete.20partial.20order.20and.20domain.20theory/with/536359313) here (2/2) PR to prove result in Stone Duality. Here we prove that Scott Topologies over Algebraic DCPOs are sober. - [ ] depends on: #31662 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR new-contributor merge-conflict 510/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
80-44132
2 months ago
unknown
0-0
0 seconds
36463 AlexeyMilovanov
author:AlexeyMilovanov
feat(Data.Nat.Bits): add Nat.ofBits and prove bits_injective This PR introduces `Nat.ofBitsList` for `List Bool` and provides the missing proofs that the standard binary representation `Nat.bits` is injective (`Nat.bits_injective`) and possesses a right inverse for normalized lists (`Nat.bits_ofBitsList`). `ofBitsList` is implemented as an `abbrev` using `foldr` (keeping it transparent to tactics like `simp`). It serves as the exact left inverse to `bits`. Furthermore, `bits_ofBitsList` establishes that `bits` and `ofBitsList` form a bijection between `ℕ` and the set of lists with no trailing `false` values. This avoids the name collision with `Nat.ofBits` from `Batteries` and aligns with previous Zulip discussions (see [here](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PR.20.2335857.3A.20Bijective.20Base-2.20Numeration)) regarding the utility of having a complete list-based API for `Nat.bits` in the library. CC: @linesthatinterlace - Adds `Nat.ofBitsList` (as an `abbrev`) - Adds `Nat.ofBitsList_bits` (left inverse property) - Adds `Nat.bits_injective` - Adds `Nat.ofBitsList_eq_zero_iff` (helper lemma for lists without trailing zeros) - Adds `Nat.bits_ofBitsList` (right inverse property) --- Zulip: [#PR reviews > PR #35857: Bijective Base-2 Numeration](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PR.20.2335857.3A.20Bijective.20Base-2.20Numeration/with/576336540) Zulip: [#batteries > Upstreaming Nat.Bits](https://leanprover.zulipchat.com/#narrow/channel/348111-batteries/topic/Upstreaming.20Nat.2EBits/with/580736051) t-data new-contributor awaiting-author blocked-by-batt-PR 68/1 Mathlib/Data/Nat/Bits.lean 1 5 ['github-actions', 'joneugster', 'linesthatinterlace'] nobody
80-29368
2 months ago
70-67688
70 days ago
9-58085
9 days
35684 spitters
author:spitters
feat(CategoryTheory/MarkovCategory): Kleisli PMF is a Markov category Add `Mathlib/CategoryTheory/MarkovCategory/KleisliPMF.lean` showing that `KleisliCat PMF` is a `MarkovCategory`. Uses `Prod` as tensor and `PUnit` as unit; reuses Mathlib's existing `KleisliCat`, `LawfulMonad PMF`, and `MarkovCategory` infrastructure. Builds the full instance stack: MonoidalCategory → BraidedCategory → SymmetricCategory → CopyDiscardCategory → MarkovCategory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author merge-conflict 323/1 Mathlib.lean,Mathlib/CategoryTheory/MarkovCategory/KleisliPMF.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 6 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'spitters'] nobody
80-19248
2 months ago
92-51493
92 days ago
2-36419
2 days
35738 GrigorenkoPV
author:GrigorenkoPV
perf: remove some `aesop`s and `grind`s --- Needs benchmarking. After that I can split it into several smaller portions, if needed. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author merge-conflict 236/92 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Set/Lattice/Image.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Logic/Equiv/Prod.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/SupIndep.lean 8 7 ['github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'vihdzp'] nobody
80-19247
2 months ago
94-927
94 days ago
0-45583
12 hours
36503 Mrigna01
author:Mrigna01
Add false theorem test file --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 135/0 Mathlib/FalseBench/FalseTheorems.lean 1 3 ['github-actions'] nobody
79-42530
2 months ago
79-42620
79 days ago
79-42582
79 days
14603 awueth
author:awueth
feat: degree is invariant under graph isomorphism --- Mathlib has the definition `SimpleGraph.Iso.mapNeighborSet` which is an equivalence between neighbor sets induced by an isomorphism. Would it be beneficial to add the same equivalence for `neighborFinset`? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-combinatorics new-contributor 24/0 Mathlib/Combinatorics/SimpleGraph/Map/Finite.lean 1 12 ['SnirBroshi', 'awueth', 'github-actions', 'jcommelin', 'kim-em', 'urkud'] nobody
79-23928
2 months ago
655-70767
655 days ago
31-44440
31 days
33599 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): closure under union --- This PR picks up https://github.com/leanprover-community/mathlib4/pull/13514 and resolves the outstanding errors. - [ ] depends on: #33592 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-computability new-contributor 498/0 Mathlib/Computability/ContextFreeGrammar.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
79-7365
2 months ago
134-16224
134 days ago
10-65787
10 days
9605 davikrehalt
author:davikrehalt
feat(Data/Finset & List): Add Lemmas for Sorting and Filtering This PR includes several useful lemmas to the Data/Finset and Data/List modules in Lean's mathlib: 1. `toFinset_filter` (List): Shows that filtering commutes with toFinset. 2. `toFinset_is_singleton_implies_replicate` (List): Shows a list with a singleton toFinset is a List.replicate. 3. `filter_sort_commute` (Finset): Sorting and filtering can be interchanged in Finsets. 4. `Sorted.filter` (List): A sorted list stays sorted after filtering. 5. `Sorted.append_largest` (List): Appending the largest element keeps a list sorted. 6. `sort_monotone_map` (Finset): Relates sorting of a Finset after mapping to sorting of a list. 7. `sort_insert_largest` (Finset): Sorting a Finset with an inserted largest element. 8. `sort_range` (Finset): Sorting a range in a Finset equals the corresponding range list. 9. ~~`filter_eval_true` (List): Filtering a list with a predicate always true keeps the list unchanged.~~ 10. ~~`filter_eval_false` (List): Filtering with an always-false predicate gives an empty list.~~ 11. ~~`pairwise_concat` (List): Iff condition for Pairwise relation in concatenated lists (similar to pairwise_join).~~ 12. `list_map_toFinset` (Finset): toFinset commutes with map under injection --- - [x] depends on: #15952 This is my first PR to mathlib, so I'm not too familiar with etiquette's and more specifically there are two proofs in the PR which uses aesop, and I am not sure if it's frowned upon. I kept the aesop in there for now as I couldn't construct very short proofs otherwise. The sort_range function proof was suggested in https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Computing.20Finset.20sort.20of.20Finset.20range/near/410346731 by Ruben Van de Velde. Thanks for your time for improving this PR. please-adopt t-data new-contributor merge-conflict awaiting-author 71/0 Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/List/Sort.lean 4 30 ['YaelDillies', 'davikrehalt', 'eric-wieser', 'github-actions', 'jcommelin', 'urkud', 'vihdzp'] nobody
79-6821
2 months ago
858-64709
858 days ago
12-48883
12 days
35652 dennj
author:dennj
feat(LinearAlgebra/Matrix): add `Matrix.mul_eq_smul_one_symm` Adds three lemmas: - IsLeftRegular.mul_eq_of_comm (Algebra/Group/Defs.lean): if a is left-regular, a * b = c, and c commutes with a, then b * a = c. Generalises IsLeftRegular.mul_eq_one_symm from the c = 1 case. - IsRightRegular.mul_eq_of_comm: symmetric version. - mul_eq_smul_one_symm (Algebra/Group/Action/Defs.lean): scalar variant of mul_eq_one_symm. For a monoid β with a compatible scalar action by α, if a * b = c • 1 and a is left-regular, then b * a = c • 1. Proven in one line via IsLeftRegular.mul_eq_of_comm, since c • 1 is central thanks to IsScalarTower α β β and SMulCommClass α β β. The additive analogues are produced by to_additive. The general mul_eq_of_comm helpers capture the underlying pattern: "a left/right-regular element can be cancelled when the conclusion commutes with it" and are reusable beyond this PR's specialisation. Human made PR t-algebra new-contributor LLM-generated awaiting-author
label:t-algebra$
28/0 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Defs.lean 1 7 ['dagurtomas', 'dennj', 'eric-wieser', 'github-actions', 'grunweg'] ocfnash
assignee:ocfnash
78-73464
2 months ago
26-42867
26 days ago
24-65258
24 days
36587 yhx-12243
author:yhx-12243
feat(Algebra/GCDMonoid): Distributive lattice structure for Associates in GCDMonoid Add a distributive lattice structure for `Associates α` in `GCDMonoid`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
60/3 Mathlib.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/GCDMonoid/DistribLattice.lean 2 2 ['github-actions'] nobody
78-15642
2 months ago
74-72617
74 days ago
3-29502
3 days
35662 FrankieeW
author:FrankieeW
feat(NumberTheory/Zsqrtd): add Archimedean instance via le_arch This PR follows a suggestion made in #35606 , #35481 - add `Zsqrtd.le_arch_smul` in `Mathlib/NumberTheory/Zsqrtd/Basic.lean` - use it to provide `instance : Archimedean (ℤ√d)` in the `Nonsquare` section - refactor the proof using symmetry to reduce duplication while keeping checks clean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor awaiting-author merge-conflict LLM-generated 46/4 Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean 2 13 ['FrankieeW', 'MichaelStollBayreuth', 'euprunin', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
78-15378
2 months ago
80-79894
80 days ago
15-50475
15 days
36119 Ruizsolveall
author:Ruizsolveall
feat(Topology/Covering): fundamental group of the circle is ℤ - Proves that the fundamental group of the circle `π₁(S¹, 0)` is isomorphic to `ℤ`, via covering space theory. - Constructs the winding number map `nLoop : ℤ → Path 0 0` on `AddCircle 1`, and proves it is surjective (`nLoop_surjective`), injective (`nLoop_homotopic_iff`), and additive (`nLoop_add`). - Assembles these into the group isomorphism `windingNumberIso : Multiplicative ℤ ≃* FundamentalGroup (AddCircle 1) 0`. ## Approach Uses the covering map `ℝ → AddCircle 1` and unique path lifting to establish the bijection between homotopy classes of loops and integers (winding numbers). Homotopy invariance of lifted endpoints gives injectivity; surjectivity follows from lifting arbitrary loops. Additivity uses path concatenation of lifts in the simply connected total space `ℝ`. ## AI disclosure I used Claude (Anthropic) to write the PR description, code comments, and to help refine code style. The proof strategy and all Lean code are my own. I understand and can vouch for all the code in this PR. t-topology new-contributor awaiting-author LLM-generated 236/0 Mathlib.lean,Mathlib/Topology/Covering/FundamentalGroupCircle.lean 2 26 ['Ruizsolveall', 'SnirBroshi', 'b-mehta', 'dagurtomas', 'github-actions', 'grunweg', 'vihdzp'] nobody
77-64005
2 months ago
78-56537
78 days ago
8-31258
8 days
36347 FrankieeW
author:FrankieeW
feat(NumberTheory/QuadraticField): define quadratic number fields as QuadraticAlgebra ℚ d 0 Define `Qsqrtd d` as `QuadraticAlgebra ℚ d 0`, representing the quadratic number field `ℚ(√d)`. Prove trace and norm results, show `Qsqrtd d` is a number field and a quadratic extension when `d` is not a perfect square, and prove that `ℚ(√0)` and `ℚ(√1)` are not fields. Include `IsQuadraticField` as a predicate for quadratic extensions of `ℚ`, and bridge lemmas connecting squarefree integer parameters to the non-square condition. This PR is part of a series upstreaming the [QuadraticNumberFields](https://github.com/FrankieeW/QuadraticNumberFields) project. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/quadratic.20number.20fields) --- ### PRs - #36347 (this PR) - #36387 --- t-number-theory new-contributor large-import awaiting-author LLM-generated 191/0 Mathlib.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/NumberTheory/QuadraticField/Basic.lean 4 29 ['FrankieeW', 'eric-wieser', 'github-actions', 'riccardobrasca', 'tb65536', 'wwylele'] tb65536
assignee:tb65536
77-37672
2 months ago
74-74067
74 days ago
7-9258
7 days
35651 sun123zxy
author:sun123zxy
feat(Mathlib/RingTheory/Ideal/Cotangent): `Submodule.map` definition of cotangent spaces This PR adds an alternative definition of the cotangent space as an image under the R-module quotient map. --- Split from PR #33247 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 47/20 Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean 2 20 ['chrisflav', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'sun123zxy'] chrisflav
assignee:chrisflav
76-81116
2 months ago
74-62815
74 days ago
16-12398
16 days
22314 shetzl
author:shetzl
feat: add leftmost derivations for context-free grammars Leftmost derivations are often easier to reason about than arbitrary derivations. This PR adds leftmost variants of Rewrites, Produces and Derives to the existing definition of context-free grammars and proves that a string of terminals can be derived iff it can be leftmost derived. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 383/0 Mathlib.lean,Mathlib/Computability/LeftmostDerivation.lean 2 55 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody
76-68171
2 months ago
386-5067
386 days ago
72-2714
72 days
31610 rudynicolop
author:rudynicolop
feat(Computability/NFA): Kleene star closure for Regular Languages via NFA This PR constructs a Kleene star closure for non-epsilon NFAs, and proves that regular languages are closed under Kleene star. The NFA construction is `NFA.kstar`. The main theorems are: - `NFA.accepts_kstar`: demonstrates that `M.kstar` accepts the Kleene star closure of the language of `M`. - `IsRegular.kstar`: demonstrates that regular languages are closed under Kleene star. There is an onging zulip discussion about regular languages in Mathlib: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Regular.20languages.3A.20the.20review.20queue/with/553759136 This discussion is also tracked at #24205. Furthermore, the construction and proofs in this PR are heavily inspired by @TpmKranz from his #15651. #15651 supersedes this PR, so if it is accepted then this PR is not needed. --- - [x] depends on: #31038 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor awaiting-author awaiting-CI 405/7 Mathlib/Computability/NFA.lean 1 16 ['YaelDillies', 'ctchou', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
76-68070
2 months ago
135-60452
135 days ago
43-77831
43 days
36757 alok
author:alok
feat(Order/Filter): add Filter.IsFree and Filter.IsNonprincipal ## Summary Adds two filter predicates and their basic API: - **`Filter.IsFree`**: no point belongs to every set (`f.ker = ∅`), equivalently `f ≤ cofinite` - **`Filter.IsNonprincipal`**: not equal to `𝓟 s` for any set `s` Every free `NeBot` filter is non-principal (`IsFree.isNonprincipal`), but the converse fails for general filters (e.g. `𝓝 x` in a non-discrete T₁ space is non-principal but not free). For ultrafilters the two notions coincide (`Ultrafilter.isNonprincipal_iff_isFree`). On finite types, no `NeBot` filter is free (`not_isFree_of_neBot`). ## Test plan - [x] `lake build Mathlib.Order.Filter.Cofinite` passes - [x] `lake build Mathlib.Order.Filter.Ultrafilter.Basic` passes 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-order new-contributor 98/1 Mathlib/Order/Filter/Cofinite.lean,Mathlib/Order/Filter/Ultrafilter/Basic.lean 2 2 ['github-actions'] nobody
74-28341
2 months ago
74-26941
74 days ago
0-3928
1 hour
36825 danlyng
author:danlyng
feat(MeasureTheory/Integral/IntegralEqImproper): add Iic variants of nonneg/nonpos derivative integrability and FTC-2 Add the `Iic` counterparts of the existing `Ioi` results for automatic integrability of derivatives on semi-infinite intervals and the corresponding corollaries computing the integral value. Additionally, apply minor fixes to existing docstrings. New declarations: - `integrableOn_Iic_deriv_of_nonneg` / `integrableOn_Iic_deriv_of_nonneg'` - `integrableOn_Iic_deriv_of_nonpos` / `integrableOn_Iic_deriv_of_nonpos'` - `integral_Iic_of_hasDerivAt_of_nonneg` / `integral_Iic_of_hasDerivAt_of_nonneg'` - `integral_Iic_of_hasDerivAt_of_nonpos` / `integral_Iic_of_hasDerivAt_of_nonpos'` These mirror `integrableOn_Ioi_deriv_of_nonneg`, `integrableOn_Ioi_deriv_of_nonpos`, `integral_Ioi_of_hasDerivAt_of_nonneg`, `integral_Ioi_of_hasDerivAt_of_nonpos` and their primed variants. t-measure-probability new-contributor awaiting-author 107/9 Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean 1 7 ['EtienneC30', 'github-actions'] EtienneC30
assignee:EtienneC30
69-78471
2 months ago
69-78471
69 days ago
2-67942
2 days
36719 NoneMore
author:NoneMore
feat(ModelTheory): add `PartialType` for first-order theories This PR adds the definitions of partial types over theories and over parameter sets, and proves several equivalent characterizations. --- - [ ] depends on: #36667 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-logic new-contributor 468/0 Mathlib.lean,Mathlib/ModelTheory/PartialTypes.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 4 5 ['NoneMore', 'github-actions', 'mathlib-dependent-issues', 'vihdzp'] nobody
66-10946
2 months ago
75-10300
75 days ago
0-322
5 minutes
37101 fsefzig
author:fsefzig
feat: definition of kummer polynomials and prove that AdjoinRoot (KummerPolynomial n s) is etale This defines the Kummer polynomial ` KummerPolynomial n s := X^n - s` over a ring R and constructs the following instances for `AdjoinRoot (KummerPolynomial n s)`: · Faithfullyflat · SmoothOfRelativeDimension 0 · Etale t-ring-theory new-contributor awaiting-author 345/0 Mathlib.lean,Mathlib/RingTheory/AdjoinRootKummer.lean 2 24 ['acmepjz', 'chrisflav', 'fsefzig', 'github-actions', 'vihdzp'] nobody
58-62930
1 month ago
unknown
0-0
0 seconds
37585 cascone26
author:cascone26
feat: formal statements of Robin's and Lagarias' inequalities equivalent to RH ## Summary This PR adds `Mathlib/NumberTheory/LSeries/RobinInequality.lean`, which contains formal Lean 4 statements of two classical equivalences of the Riemann Hypothesis: **Robin's theorem (1984):** RH ↔ σ₁(n) < e^γ · n · ln(ln(n)) for all n > 5040 **Lagarias' theorem (2002):** RH ↔ σ₁(n) ≤ H_n + exp(H_n) · ln(H_n) for all n ≥ 1 ### New declarations - `robinBound (n : ℕ) : ℝ` — the Robin bound e^γ · n · ln(ln(n)) - `lagariasBound (n : ℕ) : ℝ` — the Lagarias bound H_n + exp(H_n) · ln(H_n) - `robin_iff_RH : RiemannHypothesis ↔ ∀ n > 5040, σ₁(n) < robinBound n` - `lagarias_iff_RH : RiemannHypothesis ↔ ∀ n ≥ 1, σ₁(n) ≤ lagariasBound n` ### Status The **statements** are complete and use existing Mathlib primitives: - `ArithmeticFunction.sigma` for σ₁ - `Real.eulerMascheroniConstant` for γ - `harmonic` for H_n (with ℚ → ℝ coercion) - `RiemannHypothesis` from `Mathlib.NumberTheory.LSeries.RiemannZeta` The **proofs** are currently `sorry`. The Robin direction (RH → inequality) requires analytic number theory following Robin's original 1984 paper. The converse uses Gronwall's theorem on superior highly composite numbers. Both are substantial Mathlib projects in their own right. This PR establishes the formal statements as a foundation for future proof work. These equivalences are not currently formalized anywhere in Mathlib. ### References - G. Robin, *Grandes valeurs de la fonction somme des diviseurs et hypothèse de Riemann*, J. Math. Pures Appl. **63** (1984), 187–213. - J. Lagarias, *An elementary problem equivalent to the Riemann hypothesis*, Amer. Math. Monthly **109** (2002), 534–543. ### Note on `sorry` I'm aware Mathlib does not merge `sorry`-laden PRs in general. I'm submitting this as a draft to: 1. Get feedback on whether the statement formulation is idiomatic 2. Establish that these statements don't already exist in Mathlib under a different name 3. Invite collaboration on completing the proofs t-number-theory new-contributor 98/0 Mathlib/NumberTheory/LSeries/RobinInequality.lean 1 2 ['github-actions'] nobody
57-21695
1 month ago
unknown
0-0
0 seconds
36937 Yaohua-Leo
author:Yaohua-Leo
feat(Algebra/Jordan): add first linearization lemmas for IsCommJordan [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) AI assistance disclosure: I used AI assistance for CI/debugging and module-structure fixes in this PR. The mathematical content and main lemmas were written by me, with help from @pelicanhere. This PR adds a new file `Mathlib/Algebra/Jordan/Linearization.lean` containing linearization lemmas for the commutative Jordan identity. Main declarations: * `IsCommJordan.four_nsmul_associator_mul_add` * `IsCommJordan.associator_mul_add` These lemmas formalize a first linearization of the commutative Jordan identity using `associator`, following McCrimmon, Proposition 1.8.5. --- I put these lemmas in a separate file because I expect follow-up linearization lemmas to belong naturally in the same place. I am also happy to rename declarations or move the file if reviewers would prefer. t-algebra new-contributor awaiting-author
label:t-algebra$
60/0 Mathlib.lean,Mathlib/Algebra/Jordan/Linearization.lean 2 6 ['Yaohua-Leo', 'github-actions', 'grunweg', 'ocfnash'] ocfnash
assignee:ocfnash
57-1042
1 month ago
57-1042
57 days ago
13-10710
13 days
36813 AlexeyMilovanov
author:AlexeyMilovanov
feat(Computability.Encoding): add self-delimiting unary and pair encodings Adds `unaryPrefix` (a self-delimiting $1^n 0$ code) and `prefixPair` to `Mathlib.Computability.Encoding`. **Key changes:** * **`unaryPrefix`**: A prefix-free unary encoding for $\mathbb{N}$, distinct from the existing `unaryEncodeNat`. * **`unaryPrefix_append_inj`**: A basic cancellation lemma that allows unique extraction of a unary prefix from a concatenated list. * **`prefixPair`**: A self-delimiting pairing function for boolean lists, defined as $\text{unaryPrefix } |x| \frown x \frown y$. * **`prefixPair_inj`**: A concise proof of pair injectivity leveraging the new prefix lemmas. t-computability new-contributor awaiting-author 56/1 Mathlib/Computability/Encoding.lean 1 2 ['Komyyy', 'github-actions'] Komyyy
assignee:Komyyy
56-28463
1 month ago
56-28463
56 days ago
16-42277
16 days
37644 matthunz
author:matthunz
feat(Order/Causal): add `Causal` ordering for stream functions Adds `Causal` ordering for stream functions and related theorems: ```lean def Causal (f : Stream' α → Stream' β) : Prop := ∀ (x y : Stream' α) (t : ℕ), (∀ s, s ≤ t → x s = y s) → f x t = f y t ``` A stream function is causal if the output at time `t` depends only on inputs up to time `t`. Causal stream functions are commonly used in signal processing, reactive systems, and semantics of stateful computations, where outputs cannot depend on future inputs. ## Future work - Mealy machines: define Mealy machines as causal stream functions with state, and relate them to standard automata-theoretic constructions. - Feedback and delay operators: formalize feedback loops and delayed composition, enabling modeling of stateful and recursive stream definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 79/0 Mathlib.lean,Mathlib/Order/Causal/Basic.lean,Mathlib/Order/Causal/Defs.lean 3 2 ['github-actions'] nobody
55-53926
1 month ago
unknown
0-0
0 seconds
37695 Morten-Ness
author:Morten-Ness
refactor(GroupTheory/Complement): simplify complement proofs Simplifies the proofs of: - `Subgroup.IsComplement'.symm` - `Subgroup.isComplement_singleton_left` - `Subgroup.isComplement_singleton_right` No API changes. AI assistance: I used Codex/LLM suggestions as a starting point, then manually checked the proofs, and verified the final version locally. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor awaiting-author 15/17 Mathlib/GroupTheory/Complement.lean 1 4 ['github-actions', 'tb65536'] tb65536
assignee:tb65536
53-9216
1 month ago
53-9216
53 days ago
0-68801
19 hours
37489 michael-novak-math
author:michael-novak-math
feat: add the fundamental theorem of plane curves We add to the PlaneCurves file created in PR #36731 a classical result in the subject of differential geometry of plane curves: the fundamental theorem of plane curves. --------- - [ ] depends on: #36731 new-contributor t-differential-geometry t-analysis blocked-by-other-PR 651/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Geometry/PlaneCurves.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib 5 5 ['github-actions', 'mathlib-dependent-issues', 'michael-novak-math'] nobody
52-86196
1 month ago
58-71052
58 days ago
0-13581
3 hours
37281 AltSoKoly
author:AltSoKoly
Update EdgeConnectivity.lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 123/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Data/Int/GCD.lean 2 5 ['github-actions', 'grunweg', 'themathqueen'] nobody
51-74807
1 month ago
63-65570
63 days ago
0-432
7 minutes
37111 tannerduve
author:tannerduve
feat(Computability): add Nat.PrimrecIn and PrimrecIn - Add `Nat.PrimrecIn`: primitive recursive functions relative to a set of oracles - Add `PrimrecIn`: lifts `Nat.PrimrecIn` to `Primcodable` types A `PrimrecIn` version of `RecursiveIn.iff_nat` (i.e., `PrimrecIn O (f : ℕ → ℕ) ↔ Nat.PrimrecIn O f`) is left as future work as it requires proving `Nat.PrimrecIn O Nat.pred`, which needs additional API for `Nat.PrimrecIn`. --- Split out from #34937 as requested in review. - [x] depends on: #37061 t-computability new-contributor awaiting-author 24/0 Mathlib/Computability/RecursiveIn.lean 1 14 ['Komyyy', 'bryangingechen', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tannerduve'] nobody
49-53320
1 month ago
50-66179
50 days ago
1-79421
1 day
37954 jdhart81
author:jdhart81
feat(Data/ENNReal/Inv): add ENNReal.div_mul_div_cancel Proves a / b * (b / c) = a / c for b ≠ 0, b ≠ ∞ in ENNReal. Proof via mul_div_assoc and existing div_mul_cancel. AI Disclosure: This PR was developed with assistance from an LLM (Claude, Anthropic) for proof exploration and text drafting. The proof was compiled and verified locally by the contributor, who understands the mathematical content. This lemma is extracted from a larger formalization of information-theoretic bounds (Zenodo DOI: 10.5281/zenodo.19317983). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 5/0 Mathlib/Data/ENNReal/Inv.lean 1 2 ['github-actions'] nobody
47-76179
1 month ago
47-76177
47 days ago
0-75
1 minute
36770 Xmask19
author:Xmask19
feat: invariance of domain via Brouwer's fixed point theorem Continuous and injective maps from Rn to Rn are open mappings. This is shown given Brouwer's fixed point theorem. The specific version of Brouwer's theorem assumed is that a continuous map from the closed unit ball to itself has a fixed point. It is used to show a lemma in this proof. Then assuming that invariance of domain isn't true gives a contradiction with this lemma. --- My supervisor has code for studying topological manifolds which relies on invariance of domain that can be found here: https://github.com/stevensivek/TopologicalManifolds and is planned to be submitted to Mathlib. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 617/5 Mathlib.lean,Mathlib/AlgebraicTopology/InvarianceOfDomain.lean,Mathlib/Analysis/Convex/GaugeRescale.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Order.lean 5 2 ['github-actions'] nobody
44-60441
1 month ago
44-60417
44 days ago
0-6926
1 hour
38050 WilliamCoram
author:WilliamCoram
feat: Define Newton polygons In this file we construct a method to define newton polygons using a Stream' of `Step`'s which correspond to what you would obtain via the 'algorithm' of rotating half-planes as described in Gouvea's p-adic numbers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 620/0 Mathlib.lean,Mathlib/NumberTheory/NewtonPolygon.lean 2 3 ['github-actions', 'jcommelin'] nobody
44-50487
1 month ago
unknown
0-0
0 seconds
38113 robo7179
author:robo7179
feat(SimpleGraph/PerfectGraph): add lemma graph is perfect iff all su… Perfect graph theorem , discussion on zulip thread: [#graph theory > Second Order Monadic Logic](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775) - [ ] depends on: #37680 - [ ] depends on: #37598 t-combinatorics new-contributor blocked-by-other-PR 54/0 Mathlib/Combinatorics/SimpleGraph/PerfectGraph.lean 1 3 ['github-actions', 'mathlib-dependent-issues'] nobody
43-85206
1 month ago
44-165
44 days ago
0-69
1 minute
37938 SamuelSchlesinger
author:SamuelSchlesinger
feat(Probability/Posterior): Posterior PMFs and Various Lemmas Upstreaming the probability lemmas needed in https://github.com/leanprover/cslib/pull/464. t-measure-probability new-contributor awaiting-author 130/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Posterior.lean 2 6 ['EtienneC30', 'SamuelSchlesinger', 'github-actions'] RemyDegenne
assignee:RemyDegenne
43-46549
1 month ago
44-79990
44 days ago
0-4092
1 hour
38139 sidbedi
author:sidbedi
chore(Algebra/MvPolynomial/Variables): golf MvPolynomial.vars_0 to rfl --- The classical qualifier and explicit rewrite chain are unnecessary — the result holds definitionally. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra awaiting-author
label:t-algebra$
1/2 Mathlib/Algebra/MvPolynomial/Variables.lean 1 3 ['github-actions', 'grunweg'] nobody
43-4609
1 month ago
43-4609
43 days ago
0-34567
9 hours
38140 sidbedi
author:sidbedi
chore(Data/Analysis/Filter): golf CFilter.ofEquiv_val to rfl --- cases F is unnecessary, the result holds definitionally. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor awaiting-author 1/2 Mathlib/Data/Analysis/Filter.lean 1 3 ['github-actions', 'grunweg'] nobody
43-4565
1 month ago
43-4565
43 days ago
0-34488
9 hours
36731 michael-novak-math
author:michael-novak-math
feat: Frénet moving frame and Frénet equation for plane curves We define the curvature function, normal vector function and the Frénet moving frame for plane curve. We also prove the Frénet equations for plane curves. A separate PR (#37489) will prove the fundamental theorem of plane curves. new-contributor t-differential-geometry t-analysis awaiting-author 321/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Geometry/PlaneCurves.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib 5 114 ['Ruben-VandeVelde', 'github-actions', 'grunweg', 'michael-novak-math', 'scholzhannah'] nobody
42-84946
1 month ago
55-62569
55 days ago
12-40134
12 days
37683 SabrinaJewson
author:SabrinaJewson
feat(Order/OrdContinuous): every map between complete lattices that preserves sSup is a left adjoint of some Galois connection It is already proven that the left side of a Galois connection is left-continuous; this provides the converse. --- - [ ] depends on: #37682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR merge-conflict t-order 90/136 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Tactic/Translate/ToDual.lean,Mathlib/Topology/Order/Basic.lean 6 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65573
1 month ago
54-34465
54 days ago
0-1447
24 minutes
37684 SabrinaJewson
author:SabrinaJewson
feat(Topology/Order): provide lemmas linking topological continuity to order continuity All the hard work is already done, but this just fills in a couple convenient missing pieces. --- - [ ] depends on: #37682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR merge-conflict t-topology 106/136 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Tactic/Translate/ToDual.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/IsLUB.lean,Mathlib/Topology/Order/Monotone.lean 8 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65562
1 month ago
54-34466
54 days ago
0-1299
21 minutes
37376 NoneMore
author:NoneMore
feat(Topology/CantorBendixson): add iterated derived sets and perfect kernel Define the transfinite iteration of the relative derived-set operator via `gfpApprox` and introduce the perfect kernel of a set. --- AI disclosure: Most declarations, comments, and documentation in this PR were generated with Codex. Some proofs were structurally simplified using the `/golf` command from Lean 4 Skills. I reviewed the resulting code and documentation and can vouch for all submitted content. - [ ] depends on: #37374 - [x] depends on: #37375 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR t-topology 249/0 Mathlib.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean,Mathlib/Topology/CantorBendixson.lean,Mathlib/Topology/DerivedSet.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65531
1 month ago
60-73263
60 days ago
0-832
13 minutes
38154 ybenmeur
author:ybenmeur
add subsingleton case to ExpChar --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
113/49 Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Algebra/CharP/Subring.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/FieldTheory/PurelyInseparable/Exponent.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/SeparableDegree.lean,Mathlib/RingTheory/Trace/Basic.lean 15 2 ['github-actions'] nobody
41-73331
1 month ago
unknown
0-0
0 seconds
37593 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename set-based defs to `set*Antidiagonal` Renames set-based `Finset.mulAntidiagonal` → `setMulAntidiagonal` (and SMul/VAdd variants) to free the `mulAntidiagonal` name for the planned `HasMulAntidiagonal` typeclass. Deprecation aliases added. Supersedes #34551 t-ring-theory new-contributor merge-conflict 178/96 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
41-16958
1 month ago
41-16959
41 days ago
15-61521
15 days
38270 Deicyde
author:Deicyde
feat(Geometry/Manifold): The Tangent Functor on `MfldCat` A simple motivating example for PR #38223. We define the `tangentFunctor : MfldCat 𝕜 (n + 1) ⥤ MfldCat 𝕜 n` which takes any manifold to its tangent bundle and any smooth map to its pushforward. This is a standard construction in differential geometry. See: J. Lee, Smooth Manifolds, pg. 75 --- - [ ] depends on: #38223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR new-contributor 320/0 Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/Category/MfldCat/TangentFunctor.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
40-30014
1 month ago
unknown
0-0
0 seconds
38053 ntapiam
author:ntapiam
feat(Analysis/Controls): add Control functions Add Control functions ---- This PR adds Control functions in the sense of rough paths theory (see e.g. [Friz-Victoir, Section 1.2.1](https://page.math.tu-berlin.de/~friz/master4_May6th.pdf)). They are related to p-variation norms which are the goal of #38055. I've shown most results in the above reference though those relating to 1-variation are still a work in progress. I had to add a few statements about convex functions in order to work over NNReal instead or Real, but I am not sure this is the best way to do it. The reason is that I've defined controls as taking values in NNReal (as they should). In particular there is ```lean4 theorem nnreal_of_real {f : ℝ≥0 → ℝ≥0} (hf : ConvexOn ℝ (Set.Ici 0) fun x : ℝ => (f x.toNNReal : ℝ)) : ConvexOn ℝ≥0 ⊤ f ``` which I didn't know where to put. It probably holds in more generality but I didn't check. I have also included two versions of Controls, one global and one restricted to a set. I tried to follow Mathlib conventions as best as I could but perhaps that could be improved as well. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis new-contributor 571/1 Mathlib.lean,Mathlib/Analysis/Controls/BoundedVariation.lean,Mathlib/Analysis/Controls/ControlOn.lean,Mathlib/Analysis/Controls/Defs.lean,Mathlib/Analysis/Convex/Function.lean,docs/references.bib 6 4 ['github-actions', 'ntapiam'] nobody
39-85462
1 month ago
45-50645
45 days ago
0-52
52 seconds
37279 imalinowskip
author:imalinowskip
feat(Probability): multivariate CLT (and Cramèr-Wold) --- - [x] depends on: #36208 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability awaiting-author large-import 500/1 Mathlib.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/CramerWold.lean 3 10 ['EtienneC30', 'github-actions', 'imalinowskip', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] RemyDegenne
assignee:RemyDegenne
37-55006
1 month ago
50-80092
50 days ago
5-65208
5 days
38399 openendings
author:openendings
feat: OrderHom.instOrderSupSet for LawfulSup Currently we have `instance [CompleteLattice β] : SupSet (α →o β)`. We replace this with a mere `LawfulSup` assumption such as #38328, . TODO: - [ ] construct an `OrderSupSet` instance instead of `SupSet` --- WIP - [ ] depends on: #38328 [or other `LawfulSup`] (based on master in case something else needs this) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-order new-contributor blocked-by-other-PR 26/0 Mathlib/Order/Hom/Order.lean 1 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'openendings'] nobody
37-18914
1 month ago
37-21758
37 days ago
0-106
1 minute
38388 supermanG
author:supermanG
feat(Combinatorics/SimpleGraph): add ballFinset with basic identities Introduces `SimpleGraph.ballFinset`, the `Finset` companion to `SimpleGraph.ball` (#36443) on graphs with a `Fintype` vertex set, together with the basic identities `mem_ballFinset`, `ballFinset_zero`, and `ballFinset_one`. `SimpleGraph.ball` is the *open* metric ball `{u | edist u c < r}` and is indexed by `ℕ∞`; `ballFinset` is typed `ℕ → Finset V` for ergonomics at cardinality-facing call sites. The classical closed-ball cardinality at radius `r`, `|{u | edist u c ≤ r}|`, corresponds to `|ballFinset v (r + 1)|` in this setup. Opened as draft so CI can run before pinging maintainers. --- First-time Mathlib contribution — happy to adjust naming, file placement, or docstring style to match house conventions. Follow-up PRs will add cardinality envelopes (sphere cardinality, geometric-series bound, polynomial bound). t-combinatorics new-contributor LLM-generated 68/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/BallCardinality.lean 2 3 ['SnirBroshi', 'github-actions'] nobody
36-71364
1 month ago
unknown
0-0
0 seconds
36853 matthunz
author:matthunz
feat(CategoryTheory/Monoidal/Braded/Traced): add `TracedCategory` class Adds a `TracedCategory` class following [A. Joyal and R. Street and D. R. Verity, *Traced monoidal categories*](https://www.cambridge.org/core/journals/mathematical-proceedings-of-the-cambridge-philosophical-society/article/abs/traced-monoidal-categories/2BE85628D269D9FABAB41B6364E117C8#article): ```lean /-- A traced symmetric monoidal category. -/ class TracedCategory (C : Type u) [Category.{v} C] [MonoidalCategory.{v} C] [SymmetricCategory.{v} C] where /-- The trace operator. -/ trace : ∀ {A B : C} (W : C), (A ⊗ W ⟶ B ⊗ W) → (A ⟶ B) /-- Left tightening: sliding a morphism past the trace on the left. -/ trace_naturality_left : ∀ {A A' B : C} (W : C) (f : A' ⟶ A) (g : A ⊗ W ⟶ B ⊗ W), trace W (f ▷ W ≫ g) = f ≫ trace W g := by cat_disch /-- Right tightening: sliding a morphism past the trace on the right. -/ trace_naturality_right : ∀ {A B B' : C} (W : C) (f : A ⊗ W ⟶ B ⊗ W) (g : B ⟶ B'), trace W (f ≫ g ▷ W) = trace W f ≫ g := by cat_disch /-- Sliding: an endomorphism on the feedback wire slides past the trace. -/ trace_dinaturality : ∀ {A B W : C} (f : A ⊗ W ⟶ B ⊗ W) (h : W ⟶ W), trace W (f ≫ B ◁ h) = trace W (A ◁ h ≫ f) := by cat_disch /-- Superposing: trace commutes with left tensoring by a bystander object. -/ trace_superposing : ∀ {A B : C} (C' W : C) (f : A ⊗ W ⟶ B ⊗ W), C' ◁ trace W f = trace W ((α_ C' A W).hom ≫ C' ◁ f ≫ (α_ C' B W).inv) := by cat_disch /-- Vanishing I: trace over the tensor unit is the morphism itself (up to unitors). -/ trace_vanishing_one : ∀ {A B : C} (f : A ⊗ 𝟙_ C ⟶ B ⊗ 𝟙_ C), trace (𝟙_ C) f = (ρ_ A).inv ≫ f ≫ (ρ_ B).hom := by cat_disch /-- Vanishing II: trace over a tensor product equals iterated trace. -/ trace_vanishing_two : ∀ {A B X Y : C} (f : A ⊗ (X ⊗ Y) ⟶ B ⊗ (X ⊗ Y)), trace (X ⊗ Y) f = trace X (trace Y ((α_ A X Y).hom ≫ f ≫ (α_ B X Y).inv)) := by cat_disch /-- Yanking: the trace of the braiding is the identity. -/ trace_yanking : ∀ (W : C), trace W (β_ W W).hom = 𝟙 W := by cat_disch ``` ## Motivation `TracedCategory` can be used for denoting things like electric circuits, which require a traced symmetric monoidal category for the wire graph network. ## Future work - `instance [CompactClosedCategory C] : TracedCategory C` - possible notation such as `Tr_[W] f` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author merge-conflict 237/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Braided/Traced.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Traced.lean,docs/references.bib 4 5 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'matthunz'] nobody
35-65463
1 month ago
71-55026
71 days ago
0-25956
7 hours
38344 robo7179
author:robo7179
feat(SimpleGraph/Coloring/VertexColoring): Matching is 2 colorable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/0 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean 1 5 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
35-1326
1 month ago
38-55270
38 days ago
38-55618
38 days
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
33-52161
1 month ago
33-52172
33 days ago
0-26133
7 hours
36850 whocares-abt
author:whocares-abt
feat(Combinatorics/SimpleGraph/Acyclic): deleting leaves from a tree gives a tree Added theorem stating Deleting a leaf from a tree produces a tree. t-combinatorics new-contributor awaiting-author 5/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 9 ['YaelDillies', 'github-actions', 'vlad902'] YaelDillies
assignee:YaelDillies
33-10341
1 month ago
33-10451
33 days ago
38-73648
38 days
37774 weisbrja
author:weisbrja
fix: change variables in `bicompl` to `Sort*` and add missing theorem mentioned in `bicompl` docs [#mathlib4 > Why does Mathlib use Type* instead of Sort* in some places?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Why.20does.20Mathlib.20use.20Type.2A.20instead.20of.20Sort.2A.20in.20some.20places.3F/with/583882342) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic merge-conflict 6/1 Mathlib/Logic/Function/Basic.lean 1 8 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'weisbrja'] nobody
32-59868
1 month ago
32-59869
32 days ago
19-76858
19 days
37445 edwin1729
author:edwin1729
feat(Topology/Order): set of compact elements, generating basic opens contained in a `Locale.PT`, is directed This is (2/4) PRs culminating in a proof that "Scott Topologies over Algebraic DCPOs are Sober". In this PR we prove properties of a certain set of compact elements, w.r.t a `Locale.PT`. A `Locale.PT` can be thought of as a set of `Opens`. Precisely it is a Frame homomorphism from `Opens _` to `Prop` so we are essentially choosing certain `Opens` to form our set and this set has additional properties. Namely it is a completely prime filter: if the supremum of some Opens is contained than atleast one of the Opens must be contained. Take some `Locale.PT`, `x`. In this PR, we prove that the set of compact elements generating basic opens (compact elements generate topological basis see #31662) contained in `x` is directed. This set of compact elements defined above is important in subsequent parts of the proof since it fully determines `x`. - [ ] depends on: #31662 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR new-contributor merge-conflict 296/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
32-42790
1 month ago
59-67268
59 days ago
0-463
7 minutes
37556 edwin1729
author:edwin1729
feat(Topology/Order): Locale.localePointOfSpacePoint if we have a Scott Topology from an Algebraic DCPO (3/4) in a series of PRs proving that "Scott Topologies over Algebraic DCPOs are Sober" We prove here that the unit of the adjunction from `TopCat` to `Locale` defined in `Topology/Order/Category/FrameAdjunction.lean` is a surjective mapping, under the following condition: The underlying TopologicalSpace must be a Scott Topology generated with an underlying Algebraic DCPO structure. - [ ] depends on: #37445 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor blocked-by-other-PR merge-conflict 393/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
32-42789
1 month ago
57-67289
57 days ago
0-1300
21 minutes
38560 Deicyde
author:Deicyde
feat(Geometry/Manifold): `MfldCat` is a `CartesianMonoidalCategory` We prove that the category `MfldCat` of C^n manifolds is a Cartesian monoidal category, and also derive the `BraidedCategory` instance. This PR introduces a new file `Geometry/Manifold/Category/MfldCat/CartesianMonoidal` closely mirroring the structure of `Algebra/Category/Grp/CartesianMonoidal.lean` --- - [ ] depends on: #38223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR new-contributor 281/0 Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/Category/MfldCat/CartesianMonoidal.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
32-16035
1 month ago
unknown
0-0
0 seconds
38364 openendings
author:openendings
feat: create Order/DirectedCompletePartialOrder/Defs.lean Define DirectedCompletePartialOrder and its interaction with iSup and sSup. --- A DirectedCompletePartialOrder is equivalently: - a partial order with LUBs of nonempty directed sets; - what happens when you remove ⊥ from a CompletePartialOrder; or - a ConditionallyCompletePartialOrder in which every directed set is BddAbove. Like CPOs, DCPOs are commonly studied in denotational semantics. Potential applications: - [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/590070848) -- defining infinite sums in an DCPO-enriched `AddCommMonoidWithTop` such as `ENat` or `ENNReal`. - [#Is there code for X? > Scott Induction](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Scott.20Induction/with/590112858) -- fixpoint theorems similar to `OmegaCompletePartialOrder`, generalised to arbitrary cardinalities. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 123/0 Mathlib.lean,Mathlib/Order/DirectedCompletePartialOrder/Defs.lean,docs/references.bib 3 4 ['SnirBroshi', 'github-actions', 'openendings'] nobody
31-45582
1 month ago
37-35702
37 days ago
38-10490
38 days
37814 sglasman
author:sglasman
feat: Equivalence between HopfAlgCat R and Hopf (ModuleCat R) This PR resolves a TODO by demonstrating an equivalence of categories between two models of the category of Hopf algebras over a commutative ring R, that of Hopf objects in the module category of R and that of types with a `HopfAlgebra R` instance. --- AI declaration: I consulted with Claude on proof strategies. The proofs were ultimately written by me. new-contributor large-import t-category-theory WIP 214/4 Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean 2 5 ['dagurtomas', 'github-actions', 'robin-carlier', 'sglasman'] kim-em
assignee:kim-em
31-20553
1 month ago
36-69416
36 days ago
14-69757
14 days
38635 Fieldnote-Echo
author:Fieldnote-Echo
chore(scripts): handle simple to_additive deprecations Closes #38550. This updates `scripts/add_deprecations.sh` so that, when a renamed declaration is near an existing `@[to_additive]` attribute, the script also emits the additive deprecation alias in the common default-name case. For example, `foo_mul -> bar_mul` now produces: ```lean @[deprecated (since := "...")] alias foo_add := bar_add @[to_additive existing, deprecated (since := "...")] alias foo_mul := bar_mul ``` This is intentionally conservative and text-based, matching the existing script. It handles common name translations such as mul/add, prod/sum, one/zero, inv/neg, and div/sub, and skips cases that look like they need less common to_additive name generation. Tested with a local six-case fixture and a scratch Lean file confirming that the generated alias form compiles and produces deprecation warnings for both names. I opened this as draft because I still count as a new contributor under the LLM-assisted PR policy. I have one merged mathlib PR (#36443), and this is a one-file script patch that I reviewed/tested manually. I'll leave it as draft unless a maintainer gives it the green light to flip ready. I used Claude assistance while drafting and testing the patch. I reviewed the final diff manually and tested the generated Lean form locally. CI new-contributor 121/10 scripts/add_deprecations.sh 1 4 ['Fieldnote-Echo', 'SnirBroshi', 'github-actions'] kim-em
assignee:kim-em
30-21648
1 month ago
unknown
0-0
0 seconds
37819 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `WithBot` with basic `ωScottContinuous` lemmas This is a modification of #34093. See #34093 for details. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 337/10 Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/TypeTags.lean,Mathlib/Order/WithBot.lean 6 5 ['Komyyy', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Komyyy
assignee:Komyyy
29-23929
29 days ago
29-23929
29 days ago
22-11204
22 days
38056 Deicyde
author:Deicyde
feat: topological vector bundle homomorphisms This PR implements topological vector bundle morphisms. - [ ] depends on: #38023 - [ ] depends on: #37946 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology merge-conflict 805/0 Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/VectorBundle/Basic.lean,Mathlib/Topology/VectorBundle/Morphism.lean 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
28-56174
28 days ago
unknown
0-0
0 seconds
38316 tannerduve
author:tannerduve
feat(Order/OmegaCompletePartialOrder): least fixed point and Scott induction Adds `ContinuousHom.lfp` for endomorphisms on an ωCPO with `⊥`, as the `ωSup` of the iterate chain from `⊥`, together with `map_lfp`, `isFixedPt_lfp`, `lfp_le_fixed`, `isLeast_lfp`, and the Scott induction theorem `lfp_induction` (specialized from a more general seed-based `ωSup_iterate_induction`). For `Part.fix`, adds: * `Part.exists_mem_approx_of_mem_fix`: if `y ∈ Part.fix g x`, some finite approximation of `g` already contains `y`. * `Part.Fix.approx_eq_iterate_bot` and `Part.Fix.approxChain_eq_iterateChain`: bridges between `Fix.approx`/`approxChain` and `f^[n] ⊥`/`iterateChain`. * `Part.fix_eq_lfp`: `Part.fix g = ContinuousHom.lfp (.ofFun g hc)` when `g` is ω-Scott continuous. * `Part.fix_scott_induction`: Scott induction specialized to `Part.fix`. * `Part.fix_induction_mem`: membership induction on `Part.fix`, derived from `fix_scott_induction`. new-contributor 114/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
27-62062
27 days ago
39-38164
39 days ago
39-38652
39 days
38871 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph): add parity lemmas for outer and inner vertices Adds three lemmas to `SimpleGraph.DegreeSum`: - `sum_degrees_option_zmod_two`: the handshaking lemma for `Option I` over ZMod 2 - `degree_none_zmod_two_eq_sum`: simp-normal form of the above - `card_degree_one_option_eq_outer_zmod_two`: under degree bound ≤ 2, count of degree-1 inner vertices equals outer vertex degree mod 2 t-combinatorics new-contributor 65/3 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean 1 6 ['0xTerencePrime', 'SnirBroshi', 'github-actions'] nobody
26-25147
26 days ago
26-81775
26 days ago
26-81737
26 days
38897 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SetFamily): formalize 1D Sperner's Lemma parity Formalizes the 1-dimensional Sperner's Lemma (parity version): given a coloring of the `n + 1` vertices of a subdivided line segment with two colors (`ZMod 2`), if the two endpoints have different colors, then the number of color-changing edges is odd. This is **distinct** from `IsAntichain.sperner` in `SetFamily.LYM`, which concerns antichains in a power set. This file formalizes the topological/combinatorial parity statement used as the base case in higher-dimensional Sperner arguments. ## Key declarations - `SpernerColoring`: type-safe coloring via `Fin (n + 1) → ZMod 2` - `edgeDiff`: color difference on adjacent vertices, computed in `ZMod 2` - `totalDiff`: telescoping sum of all edge differences - `diffEdges`: the `Finset` of bichromatic (color-changing) edges - `sperner_1d`: main theorem — `Odd (diffEdges c).card` ## Design notes - Using `Fin (n + 1) → ZMod 2` instead of `ℕ → ZMod 2` makes boundary conditions unrepresentable at the type level, eliminating out-of-bounds cases entirely. - The proof reduces to a telescoping sum in `ZMod 2`, using `CharTwo.add_self_eq_zero` to cancel all interior vertices, avoiding parity case splits. This is intended as the 1D base case, the approach generalizes to higher-dimensional Sperner's Lemma in future work. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 133/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/Sperner1D.lean 2 3 ['github-actions', 'grunweg'] nobody
26-16381
26 days ago
26-26531
26 days ago
26-26493
26 days
38750 openendings
author:openendings
feat(Data/Nat): add padicValNat_add_eq_min Add lemmas for `padicValNat` mirroring the [e]multiplicity API, including - padicValNat_eq_of_dvd_of_not_dvd - padicValNat_add_of_gt - padicValNat_add_eq_min --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor awaiting-author 36/0 Mathlib/Data/Nat/MaxPowDiv.lean 1 7 ['Ruben-VandeVelde', 'github-actions', 'openendings'] nobody
26-13406
26 days ago
26-38902
26 days ago
3-62762
3 days
38170 maddycrim
author:maddycrim
feat(Algebra/Module/FinitePresentation): Finitely Presented Module Lemma From FLT Project Main Definitions: `Module.FinitePresentation.exists_fin_exact` : A finitely presented module M admits an exact sequence F' -> F -> M -> 0 where F' and F are finite free modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
9/0 Mathlib/Algebra/Module/FinitePresentation.lean 1 17 ['chrisflav', 'github-actions', 'maddycrim', 'themathqueen', 'vlad902'] nobody
25-11737
25 days ago
25-11737
25 days ago
17-43852
17 days
38951 thomaskwaring
author:thomaskwaring
feat(Order/PrimeSeparator): remove unnecessary hypotheses In `mem_ideal_sup_principal`, boundedness and distributivity were unused, and in `prime_ideal_of_disjoint_filter_ideal`, boundedness was only used to produce an element of the filter `F`, which is already nonempty by definition. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 9/19 Mathlib/Order/PrimeSeparator.lean 1 2 ['github-actions'] nobody
25-9072
25 days ago
25-9159
25 days ago
25-9121
25 days
36896 PieterCuijpers
author:PieterCuijpers
feat (Algebra/Order/Quantale): isMulLeftsided, isMulRightsided, isMulTwosided and strict versions * Adding definitions of quantale elements being leftsided, rightsided, and twosided, and strict versions Should we include these definitions in the main Algebra/Order/Quantale.lean file, or start a separate file for them? I have a few basic theorems I would like to include on these notions, but invite suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
81/1 Mathlib/Algebra/Order/Quantale.lean 1 5 ['NoahW314', 'PieterCuijpers', 'chrisflav', 'github-actions'] mariainesdff
assignee:mariainesdff
24-79282
24 days ago
31-71537
31 days ago
39-18222
39 days
38973 hyeoniuwu
author:hyeoniuwu
feat(Computability): define (single oracle) turing reducibility, relate it to RecursiveIn and prove basic jump theorems feat(Computability): define (single oracle) Turing reducibility, relate it to RecursiveIn and prove basic jump theorems Defines Turing reducibility and the jump operator, with total functions (from naturals to naturals) as oracles. Defines codes for basic primitive recursive functions, and the evaluation function. Proves basic reducibility arguments, such as `K0_eq_K` asserting that K0 of an oracle is Turing equivalent to K of an oracle. Our reducibility is related back to `RecursiveIn` as is currently defined in Mathlib via the theorem `SingleReducibleIff`. This is part of a larger repository where more advanced theorems such as KP54 have been proven. (https://github.com/hyeoniuwu/CiL) Co-authored-by: Tanner Duve --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author 4988/0 Mathlib/Computability/SingleOracle/Basic.lean,Mathlib/Computability/SingleOracle/Constructions/Basic.lean,Mathlib/Computability/SingleOracle/Constructions/CovRec.lean,Mathlib/Computability/SingleOracle/Constructions/Dovetail.lean,Mathlib/Computability/SingleOracle/Constructions/Eval.lean,Mathlib/Computability/SingleOracle/Constructions/Eval_Aux.lean,Mathlib/Computability/SingleOracle/Constructions/List.lean,Mathlib/Computability/SingleOracle/Constructions/Meta.lean,Mathlib/Computability/SingleOracle/Constructions/Option.lean,Mathlib/Computability/SingleOracle/Constructions/Primitive.lean,Mathlib/Computability/SingleOracle/Encoding.lean,Mathlib/Computability/SingleOracle/Jump.lean,Mathlib/Computability/SingleOracle/Oracle.lean,Mathlib/Computability/SingleOracle/Order.lean,Mathlib/Computability/SingleOracle/RecursiveIn.lean,Mathlib/Computability/SingleOracle/Reducibilities.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Tactic/Attr/Register.lean,Mathlib/Tactic/Computability/Basic.lean 19 3 ['github-actions', 'grunweg'] nobody
24-50614
24 days ago
unknown
0-0
0 seconds
37456 Robertboy18
author:Robertboy18
feat(LinearAlgebra/AffineSpace): add parallel form of Desargues's theorem This PR adds an affine parallel form of Desargues's theorem, corresponding to entry `87` of the Lean community “100 theorems” list and following the related Rocq/Coq affine-geometry statement. **Main changes** - New file `Mathlib/LinearAlgebra/AffineSpace/Desargues.lean` with `parallel_third_side_of_perspective`. - Add the corresponding `public import` to `Mathlib.lean`. - Update `docs/100.yaml` entry `87` with a note that this is the parallel affine form. **Proof idea** The proof compares side vectors using `exists_eq_smul_of_parallel` for the two given pairs of parallel sides. The shared comparison along `SA` forces the same scalar, which gives parallelism of the third pair of sides. Tests: `lake build Mathlib.LinearAlgebra.AffineSpace.Desargues` AI disclosure: GPT-5.2 Pro was used for assistance with web search/background details about the theorem and for finding useful existing Mathlib lemmas. The theorem statement and Lean formalization were written and checked by hand. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author LLM-generated
label:t-algebra$
133/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Desargues.lean 2 17 ['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] eric-wieser
assignee:eric-wieser
24-47252
24 days ago
50-75400
50 days ago
8-72313
8 days
38792 openendings
author:openendings
wip, chore: rename Directed -> Predirected [please-adopt] This **incomplete** PR renames `Directed` to `Predirected`. As [discussed in Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20complete.20partial.20order.20and.20domain.20theory.20formalization/near/592156927), `Directed` misleadingly mismatches the literature. (The literature says a directed set is nonempty, and we do not.) #### f19d3e79 Rename Directed -> Predirected (class + namespace) Automated changes: - LSP code action renaming `Directed` to `Predirected` - with the affected 69 files open in [lean.nvim](https://github.com/julian/lean.nvim), a series of commands roughly equivalent to ```nvim :bufdo :silent %s/\(theorem \|lemma \|to_dual \)Directed\>/\1Predirected/ge :bufdo :silent %s/\\./Predirected./ge :bufdo :w ``` EDIT: manual changes - one `namespace Directed` replaced. ### Corners cut: - line-length linting has **not** been resolved. - no snake-cased `directed` has been renamed. - only tested via `lake build --old`, plus maybe ten minutes of `lake build` before I (@openendings ) got bored and wanted my CPU back. --- WIP please-adopt t-order [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt new-contributor WIP merge-conflict 196/195 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Membership.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Strict.lean,Mathlib/Analysis/InnerProductSpace/Orthonormal.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/Data/Finset/Order.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Lattice/Image.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Sub.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/ModelTheory/Satisfiability.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/ModelTheory/Syntax.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompletePartialOrder.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Order/Directed.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Lift.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/RelIso/Set.lean,Mathlib/Probability/Independence/Basic.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Independence/Kernel/Indep.lean,Mathlib/Probability/Independence/ZeroOne.lean,Mathlib/Probability/Kernel/Disintegration/CDFToKernel.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Category/TopCat/Limits/Konig.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/CompactSystem.lean,Mathlib/Topology/Compactness/CountablyCompact.lean,Mathlib/Topology/Semicontinuity/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,Mathlib/Topology/Separation/Profinite.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean 69 7 ['github-actions', 'kbuzzard', 'mathlib-merge-conflicts', 'openendings'] nobody
24-42641
24 days ago
unknown
0-0
0 seconds
38960 ajhendel
author:ajhendel
chore: remove ℕ+ interval_cases workaround in ADEInequality `interval_cases` now supports `ℕ+`, so the manual `Finset.mem_Iio`/`Finset.mem_Ico` + `conv` + `fin_cases` workaround (marked with a porting note) is no longer needed. Replaces three 3-4 line workaround blocks with `interval_cases p`/`q`/`r`. t-number-theory new-contributor awaiting-CI 3/10 Mathlib/NumberTheory/ADEInequality.lean 1 2 ['github-actions'] nobody
23-81833
23 days ago
24-82765
24 days ago
0-105
1 minute
38310 ZRTMRH
author:ZRTMRH
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability Adds word evaluation and reachability results to the Schreier graph API. * `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`. * `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`. * `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`. * `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`. * `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other. Follow-up to #36320. This PR was written with AI assistance (Claude). The code has been reviewed by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import LLM-generated 157/0 Mathlib/Combinatorics/Quiver/Schreier.lean 1 2 ['github-actions'] nobody
23-23087
23 days ago
39-56561
39 days ago
39-56523
39 days
39023 TBUGTB
author:TBUGTB
feat(Algebra/Order): API lemmas on floor and abs Co-authored-by: Etienne Marion @EtienneC30 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra brownian new-contributor
label:t-algebra$
9/0 Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Ring/Abs.lean 2 3 ['TBUGTB', 'github-actions'] nobody
23-4813
23 days ago
23-8002
23 days ago
23-7964
23 days
38374 idontgetoutmuch
author:idontgetoutmuch
Principal Bundles, Connection 1-forms and the Frame Bundle --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 2017/0 Mathlib/Geometry/Manifold/Algebra/FakeFormII.lean,Mathlib/Geometry/Manifold/Algebra/PrincipalGBundle.lean,Mathlib/Geometry/Manifold/Algebra/SmoothLieExp.lean 3 2 ['github-actions'] nobody
22-80430
22 days ago
unknown
0-0
0 seconds
39048 AydenLamp
author:AydenLamp
feat(Algebra/Group/Defs): add positive natural exponentiation for semigroups Introduce exponentiation for semigroups with positive natural exponents. This serves as a foundation for future results on Green’s relations and Rees matrix constructions in semigroups. --- Co-authored-by: Howard Straubing Soleil Repple Nathan Hart-Hodgson [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra awaiting-author
label:t-algebra$
106/0 Mathlib.lean,Mathlib/Algebra/Group/SemigroupPow.lean 2 7 ['ScottCarnahan', 'github-actions', 'wwylele'] nobody
22-8204
22 days ago
22-52175
22 days ago
0-115
1 minute
38476 agusakov
author:agusakov
refactor(Combinatorics/Digraph): add vertex sets --- Adopting #33466 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 381/50 Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Digraph/Orientation.lean 2 16 ['Shreyas4991', 'YaelDillies', 'agusakov', 'github-actions'] nobody
21-83948
21 days ago
31-16089
31 days ago
3-33232
3 days
37190 cjrl
author:cjrl
feat(Combinatorics): Set-Valued Pigeonhole Principle This PR contributes two theorems to combinatorics: - `exists_lt_card_cover_of_card_biUnion_lt_card` is a set-valued version of the pigeonhole principle. - `sum_card_eq_sum_card_cover_biUnion` is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This was needed to prove the above pigeonhole principle. The motivation for these results is our Latin Square PR #36698. These results were proved in less general terms in that PR, but are independent of Latin Square considerations and so we have generalized and moved them into more relevant files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 38/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Pigeonhole.lean 2 16 ['IvanRenison', 'cjrl', 'ghseeli', 'github-actions', 'j-loreaux', 'vlad902'] b-mehta
assignee:b-mehta
21-36839
21 days ago
47-57335
47 days ago
63-28096
63 days
38309 ntapiam
author:ntapiam
feat(Algebra/NonAssoc): dendriform algebras Define dendriform semirings and algebras --- This PR introduces dendriform structures such as dendriform semirings and algebras, and proves basic facts linking them to their pre-Lie counterparts. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
270/0 Mathlib.lean,Mathlib/Algebra/NonAssoc/Dendriform/Defs.lean,docs/references.bib 3 5 ['dagurtomas', 'github-actions', 'ntapiam'] ocfnash
assignee:ocfnash
21-36829
21 days ago
22-2607
22 days ago
37-7866
37 days
38373 Nicola9Falciola
author:Nicola9Falciola
feat (Algebra/FreeAbelianGroup /Finsupp) : The support of non zero element in a freeabeliangroup is non empty Add the lemma that for a nonzero a : FreeAbelianGroup X the support of it is non empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
3/0 Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean 1 7 ['Nicola9Falciola', 'SnirBroshi', 'github-actions'] ocfnash
assignee:ocfnash
21-36821
21 days ago
36-78964
36 days ago
37-67367
37 days
39108 idontgetoutmuch
author:idontgetoutmuch
feat(Geometry/Manifold/GroupLieAlgebra): Add mfderiv_mul_left_mul and left-translate for integral curves Add the following: `mfderiv_mul_left_mul`: the derivative of left-multiplication satisfies a chain rule: $$d(L_{g \cdot h})_x = d(L_g)_{h \cdot x} \circ d(L_h)_x$$ `mulInvariantVectorField_mul`: the vector field at the translated point is the push forward of the vector field: $$V(g \cdot h) = d(L_g)_h(V(h))$$ `IsMIntegralCurve.left_translate`: using these, if $\gamma$ is an integral curve of $V$, then so is $t \mapsto g \bullet \gamma(t)$ for any $g \in G$, since: $$\frac{d}{dt}(g \bullet \gamma(t)) = d(L_g)_{\gamma(t)}\left(\frac{d\gamma}{dt}(t)\right) = d(L_g)_{\gamma(t)}(V(\gamma(t))) = V(g \bullet \gamma(t))$$ I argue (*) all the time with LLMs so this PR will certainly have had some input from them. Is that enough of a disclosure? (*) Like Lewis Carroll: In my youth said the sage I took to the law and argued each case with wife And the muscular strength that it gave to my jaw has lasted the rest of my life t-differential-geometry new-contributor awaiting-author LLM-generated 73/0 Mathlib/Geometry/Manifold/GroupLieAlgebra.lean 1 8 ['github-actions', 'grunweg'] nobody
20-63004
20 days ago
20-63069
20 days ago
0-37992
10 hours
39151 anovickis
author:anovickis
feat(Analysis/CStarAlgebra/Matrix): IsTopologicalGroup for specialUnitaryGroup Adds `ContinuousInv` and `IsTopologicalGroup` instances for `Matrix.specialUnitaryGroup n 𝕜`. The unitary group `Matrix.unitaryGroup n α` already inherits these via the `unitaryGroup ≡ unitary R` abbrev + existing instances on `unitary R` (in `Mathlib/Topology/Algebra/Star/Unitary.lean`). However, `specialUnitaryGroup` is the sub-Submonoid `unitaryGroup ⊓ MonoidHom.mker detMonoidHom` — it does not auto-inherit those instances since it is not literally an alias of `unitary R`. ### New declarations - `instance Matrix.specialUnitaryGroup.instContinuousInv` — proven via `Matrix.star_eq_inv` + `continuous_star` - `instance Matrix.specialUnitaryGroup.instIsTopologicalGroup` — combining `ContinuousMul` (from Submonoid structure) + `ContinuousInv` Both placed inside the existing `EntrywiseSupNorm` section in `Mathlib/Analysis/CStarAlgebra/Matrix.lean` (the natural neighborhood for matrix-specific topological structure on (special) unitary groups). ### Motivation These instances enable using `specialUnitaryGroup` as a topological group in homogeneous-space constructions (e.g., `SU(3) ⧸ T = F₂` flag manifolds). They complement #39146 (CompactSpace instances for the same groups) — together giving the standard 'compact topological group' typeclass set on `specialUnitaryGroup`. ### Verification \`\`\`lean example : ContinuousInv (Matrix.specialUnitaryGroup (Fin 3) ℂ) := inferInstance -- now works example : IsTopologicalGroup (Matrix.specialUnitaryGroup (Fin 3) ℂ) := inferInstance -- now works \`\`\` Both fail on master without this PR; both succeed after. t-analysis new-contributor awaiting-author 30/0 Mathlib/Analysis/CStarAlgebra/Matrix.lean 1 3 ['github-actions', 'j-loreaux', 'wwylele'] nobody
19-52128
19 days ago
19-52128
19 days ago
0-3921
1 hour
39191 m13683320924-hue
author:m13683320924-hue
feat: define Asymptotics.IsSubpolynomial This PR defines `Asymptotics.IsSubpolynomial l f g`, meaning that `f` is asymptotically bounded by `1 + ‖g‖ ^ k` for some `k : ℕ`. It also adds basic closure lemmas for constants, addition, multiplication, and natural powers. Towards #32658. The formalization was developed with the help of Doubao-Seed-2.0-code and manually checked in Lean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 259/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/Subpolynomial.lean 2 3 ['github-actions'] nobody
18-78086
18 days ago
19-2647
19 days ago
0-344
5 minutes
34054 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): OmegaCompletePartialOrder instance for `Sigma` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sigma` along with `ωScottContinuous` lemmas for basic operations (`mk`, `fst`, `snd`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sigma`s. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order please-merge-master awaiting-author 231/0 Mathlib/Data/Sigma/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean 2 29 ['Vierkantor', 'YellPika', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
18-72838
18 days ago
98-54089
98 days ago
16-66871
16 days
39213 m13683320924-hue
author:m13683320924-hue
feat: define maximal cliques and independent sets This PR adds explicit predicates for maximal cliques and maximal independent sets: - `SimpleGraph.IsMaximalClique` - `SimpleGraph.IsMaximalIndepSet` It also adds conversion lemmas to and from the existing `Maximal G.IsClique` and `Maximal G.IsIndepSet` formulations, plus basic complement and maximum-to-maximal lemmas. Towards #34962. The formalization was developed with the help of Doubao-Seed-2.0-code and manually checked in Lean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 60/22 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 3 ['SnirBroshi', 'github-actions'] nobody
18-57493
18 days ago
18-65322
18 days ago
0-389
6 minutes
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
18-54672
18 days ago
158-65394
158 days ago
10-66980
10 days
37625 slavanaprienko
author:slavanaprienko
feat(LinearAlgebra/Matrix/Charpoly): general coefficient formula as sum of principal minors This PR adds a general formula for the coefficients of `det(1 + X • M)` as sums of principal minors, generalizing the existing `coeff_det_one_add_X_smul_one` (k=1, trace) and `det_eq_sign_charpoly_coeff` (k=n, determinant). It also derives the corresponding formula for the coefficients of the characteristic polynomial via `charpolyRev`. New results: - `det_piecewise_one_eq_submatrix_det`: relates piecewise-with-identity to principal submatrix determinants - `coeff_det_one_add_X_smul_eq_sum_minors`: the k-th coefficient of `det(1 + X • M)` equals the sum of k×k principal minors - `charpoly_coeff_eq_sum_minors`: coefficients of the characteristic polynomial as signed sums of principal minors --- t-algebra new-contributor ready-to-merge
label:t-algebra$
105/1 Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean 1 28 ['eric-wieser', 'github-actions', 'kim-em', 'mathlib-bors', 'slavanaprienko', 'wwylele'] nobody
18-52931
18 days ago
19-23106
19 days ago
37-17965
37 days
37299 XC0R
author:XC0R
feat(NumberTheory): Chebyshev's lower bound on primorial ## Summary Prove `primorial(n) ≥ 2^(n/2)` for all `n ≥ 2` (Chebyshev's 1852 lower bound). This is the lower bound complement to `primorial_le_four_pow`. Addresses the TODO at `Chebyshev.lean` line 50: "Prove Chebyshev's lower bound." ### New file: `Mathlib/NumberTheory/PrimorialLowerBound.lean` **Main theorems:** - `two_pow_le_primorial`: `2 ^ n ≤ primorial (2 * n)` for `n ≥ 29` - `two_pow_div_two_le_primorial`: `2 ^ (n / 2) ≤ primorial n` for `n ≥ 2` **Key intermediates:** - `centralBinom_le_pow_mul_primorial`: `C(2n,n) ≤ (2n)^{π(√(2n)+1)} * primorial(2n)` - `eight_mul_sq_add_le_two_pow`: `8u² + 16u + 8 ≤ 2^u` for `u ≥ 10` ### Proof technique Central binomial decomposition: from `four_pow_lt_mul_centralBinom` and `factorization_choose_le_log`, bound `C(2n,n)` above by `(2n)^{π(√(2n)+1)} * primorial(2n)`. Rearranging gives `primorial(2n) ≥ 2^n` for `n ≥ 29`. Base cases by `norm_num` + `decide`, large `n` analytically via `√n` factoring. ### AI disclosure Claude (Anthropic) was used as a coding assistant for Lean tactic exploration, file structuring, and CI debugging. All proof strategy, mathematical content, and final code have been reviewed and are understood by the author. t-number-theory new-contributor awaiting-author 226/2 Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Primorial.lean 2 53 ['MichaelStollBayreuth', 'Parcly-Taxel', 'XC0R', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
18-46677
18 days ago
49-58780
49 days ago
13-62238
13 days
39162 anovickis
author:anovickis
feat(Topology/PartitionOfUnity): add pointwise_decomposition_finsum + companions Add three short lemmas to `Mathlib/Topology/PartitionOfUnity.lean` extending the existing `PartitionOfUnity` API: - `pointwise_decomposition_finsum` — for `f : X → ℝ` and `x ∈ s`, `f x = ∑ᶠ i, ρ i x · f x`. This is the pointwise step that lifts to integral linearity in measure-theoretic PoU integration: `∫_s f dμ = ∑ᶠ i, ∫_s (ρ i · f) dμ`. - `one_minus_sum_nonneg` — `0 ≤ 1 - ∑ᶠ i, ρ i x`. Direct rearrangement of the existing `sum_le_one` field; useful as a complement-mass remainder bound in chart-by-chart estimates. - `abs_le_one` — `|ρ i x| ≤ 1`. Combines the existing `nonneg` and `le_one`; convenience for absolute-value bounds. All three are short proofs using existing structure fields (`sum_eq_one`, `sum_le_one`, `nonneg`, `le_one`). These came up while writing chart-by-chart Stokes-on-manifold estimates where one wants to decompose `∫_M f` into chart-supported pieces using a partition of unity. The pointwise identity is the obvious first step; the other two are complementary algebraic bounds that show up in remainder estimates. --- 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-topology new-contributor LLM-generated 27/0 Mathlib/Topology/PartitionOfUnity.lean 1 2 ['github-actions'] urkud
assignee:urkud
18-36794
18 days ago
19-32715
19 days ago
19-32677
19 days
39232 jerwaynejones
author:jerwaynejones
feat(Analysis/Complex): residue theorem for rectangular contours Adds `Mathlib/Analysis/Complex/RectangleResidue.lean` (644 LoC), filling the gap between Cauchy–Goursat for rectangles (`Complex.integral_boundary_rect_eq_zero_of_differentiable_on_off_countable`) and the Cauchy integral formula for circles. The file proves the residue formula for rectangular boundary integrals together with a rotated principal log branch needed to evaluate the left-edge integral that crosses the standard cut. ## Why Mathlib has Cauchy–Goursat for rectangles and the Cauchy integral formula for circles, but no residue theorem for rectangular contours. This file fills that gap. It was extracted from a downstream Lean 4 formalization project (a conditional proof of Goldbach's conjecture, where contour shifting on rectangles arises naturally in Perron's formula). ## Main results - **`Complex.hasDerivAt_log_neg`** — the rotated logarithm `log_neg z := log (-z) + I * π` has derivative `z⁻¹` on the rotated slit plane `{z | -z ∈ slitPlane}` (cut on the positive real axis). - **`Complex.boundaryIntegral_inv_sub_eq_two_pi_I`** — for `ρ` strictly inside the rectangle `[z, w]`, `∮_{∂[z,w]} (s − ρ)⁻¹ ds = 2πi`. - **`Complex.boundaryIntegral_eq_residue_sum`** — parametric residue theorem for a sum of simple poles plus a holomorphic remainder, packaged as `Complex.RectangleResidueData`. - **`Complex.boundaryIntegral_single_pole`** — the one-pole specialization. ## Structure The development proceeds in five stages: 1. A notation `Complex.boundaryIntegral` for the oriented boundary integral over `[z, w]`, with a Cauchy–Goursat wrapper and additivity/scaling lemmas. 2. A rotated principal logarithm `Complex.log_neg z := log (-z) + I * π` with cut on the *positive* real axis, plus its derivative and corner-comparison identities with the standard `Complex.log`. 3. Explicit FTC-based evaluations of the four edge integrals of `(s − ρ)⁻¹`. 4. A closed-form residue boundary integral `∮_{∂[z,w]} (s − ρ)⁻¹ ds = 2πi` for `ρ` strictly inside the rectangle. 5. A parametric residue theorem for sums of simple poles plus a holomorphic remainder, packaged as `Complex.RectangleResidueData`. ## References - L. Ahlfors, *Complex Analysis* (3rd ed.), §4.5. - E. Stein and R. Shakarchi, *Complex Analysis*, Ch. 2 §3 Thm 3.1. ## Status Draft while CI verifies the build against current `master` — the file was developed against `v4.28.0` and cherry-picked forward 2942 commits, so import surface changes are possible. Once CI is green I will flip to ready-for-review. 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-analysis new-contributor 644/0 Mathlib.lean,Mathlib/Analysis/Complex/RectangleResidue.lean 2 2 ['github-actions'] nobody
18-18147
18 days ago
unknown
0-0
0 seconds
39239 alainchmt
author:alainchmt
feat(FieldTheory/Finite): irreducible polynomial divides X^q^n - X iff degree divides n --- Add the theorem saying that, for an irreducible polynomial `f` over a finite field `K`, the degree of `f` divides `n` if and only if `f` divides `X ^ (Nat.card K) ^ n - X`. Include auxiliary lemmas. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
34/0 Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Minpoly/Field.lean 2 2 ['github-actions'] nobody
18-5967
18 days ago
18-6056
18 days ago
18-6018
18 days
39165 allenhaozhu
author:allenhaozhu
feat(Probability/Moments): add IsSubExponential class Add `ProbabilityTheory.IsSubExponential X μ ν b`, the sub-exponential random variable class: `mgf X μ s ≤ exp (s²ν/2)` for `|s| < 1/b`. Mirror the structure of the existing `Mathlib/Probability/Moments/SubGaussian.lean`. Include constructor lemmas (`IsSubExponential.const`, `mono_b`, `mono_nu`) and a tail bound derived through Mathlib's `measure_ge_le_exp_mul_mgf`. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-measure-probability new-contributor LLM-generated awaiting-author 257/0 Mathlib.lean,Mathlib/Probability/Moments/SubExponential.lean 2 4 ['allenhaozhu', 'github-actions', 'grunweg'] nobody
17-83970
17 days ago
19-7213
19 days ago
0-2698
44 minutes
39168 allenhaozhu
author:allenhaozhu
feat(Analysis/Convex/Subgradient): add subgradient characterization for |·| and ℓ¹ Add `Convex.IsAbsSubgradient x g`, the predicate that `g` is a subgradient of `|·|` at `x`. Prove the standard characterization: the only subgradient at `x > 0` is `1`; at `x < 0` it is `-1`; at `x = 0` the subgradients are exactly `[-1, 1]`. Add `IsL1Subgradient`, the componentwise lift to `Fin n → ℝ` used by ℓ¹-regularized estimation (Lasso KKT). --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-analysis new-contributor LLM-generated awaiting-author 231/0 Mathlib.lean,Mathlib/Analysis/Convex/Subgradient/Abs.lean 2 4 ['allenhaozhu', 'github-actions', 'grunweg'] nobody
17-83968
17 days ago
19-7298
19 days ago
0-2608
43 minutes
38887 Rosario-Leonardi-CT
author:Rosario-Leonardi-CT
feat(Analysis/Fourier/ZMod): add dft_star_comp Adds `ZMod.dft_star_comp`, expressing that `𝓕 (star ∘ Φ) k = star (𝓕 Φ (-k))`, the discrete analogue of the Fourier transform's interaction with complex conjugation, complementing the existing `dft_comp_neg`. --- AI disclosure: lemma statement and proof drafted with assistance from Claude Code; verified by the Lean compiler with no `sorry` and standard axioms only (`propext`, `Classical.choice`, `Quot.sound`). t-analysis new-contributor awaiting-author 9/0 Mathlib/Analysis/Fourier/ZMod.lean 1 8 ['Rosario-Leonardi-CT', 'github-actions', 'wwylele'] j-loreaux
assignee:j-loreaux
17-68966
17 days ago
21-62784
21 days ago
5-6447
5 days
38606 dennj
author:dennj
feat: preparation for Vanishing Sum of Roots of Unity Adds the Mathlib API extensions needed for an upcoming formalization of the Lam-style classification theorem for vanishing sums of roots of unity. * Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean + `exists_eq_const_of_sum_smul_eq_zero_of_sum_eq_zero_of_linearIndependent`: if `∑ vᵢ = 0` and the first `n-1` of `n` vectors are linearly independent, every linear relation has constant coefficients. * Mathlib/RingTheory/Radical/NatInt.lean + `Nat.totient_eq_div_radical_mul_totient_radical`: Euler's totient splits as `φ(n) = (n / rad n) * φ(rad n)`. * Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean + `IsPrimitiveRoot.sum_range_pow_mul_div_eq_zero_of_dvd`: the `d` evenly-spaced powers of a primitive `k`-th root sum to zero, for `d ∣ k` and `1 < d`. * Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean (new) + `IsPrimitiveRoot.linearDisjoint_adjoin_pow_of_coprime`: cyclotomic subfields of coprime orders are linearly disjoint over `ℚ`. * Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean (new) + `IsPrimitiveRoot.coeffs_eq_of_sum_pow_eq_zero_prime_coprime`: in the cyclotomic field of order `p * m` with `p` prime coprime to `m`, any `ℚ⟮ζ^p⟯`-linear relation among powers of `ζ^m` has all coefficients equal. --- I need these as preparation to start formalizing the theorem: Let k be a positive integer. If a finite family of complex k-th roots of unity sums to zero, then the size of the family is a non-negative integer combination of the prime divisors of k. --- Human-made PR with AI used for golfing and documentation new-contributor 219/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean,Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean,Mathlib/RingTheory/Radical/Totient.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
16-72457
16 days ago
16-50626
16 days ago
8-31594
8 days
39279 jayscambler
author:jayscambler
feat(Cryptography/Sigma): Schnorr sigma protocol and signature scheme Adds `Mathlib/Cryptography/Sigma/Schnorr.lean`. New file in a new top-level directory; mathlib currently has no `Mathlib/Cryptography/`, so I've taken `Mathlib/Cryptography/Sigma/` as the natural home for sigma-protocol formalizations. The file proves the three defining properties of Schnorr's identification scheme as a sigma protocol: - `Schnorr.correct`: completeness. Honest verifier accepts honest signer's transcript. - `Schnorr.specialSoundness`: from two accepting transcripts sharing the commitment but using different challenges `c, c'`, the witness `x = (s - s') / (c - c')` is recovered. Needs `q` prime so `c - c'` is invertible in `ZMod q`. - `Schnorr.hvzkAccepts`: the HVZK simulator `g^s · (y^c)⁻¹` always yields accepting transcripts. This is the structural-correctness half of HVZK only; the distributional indistinguishability statement is a separate result and not in this PR. On top of the sigma protocol there's `Schnorr.Signature.{keyGen, sign, verify, correct}` wrapping it as a Fiat-Shamir signature scheme; `Schnorr.Signature.correct` is a one-line corollary of `Schnorr.correct`. Two auxiliary lemmas, `Schnorr.gpow_sub` and `Schnorr.gpow_mul`, bridge `ZMod q` arithmetic and group exponentiation under `Fintype.card G = q`. They're local to this file for now because the surrounding `gpow` API is itself cryptography-specific; if a general `ZMod q`-graded group action framework lands in mathlib later, both lemmas would become instances of it. There's also a small `example` instantiating everything on `Multiplicative (ZMod q)` for `Fact q.Prime` to show the API typechecks. That instantiation is a toy (DLOG is trivial in that group), but it confirms the abstraction is usable. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 352/0 Mathlib.lean,Mathlib/Cryptography/Sigma/Schnorr.lean 2 2 ['github-actions'] nobody
16-69809
16 days ago
16-69888
16 days ago
16-70340
16 days
38114 javgomzar
author:javgomzar
feat(FinitelyPresentedGroup): add finite groups instance Add IsFinitelyPresented instance for finite groups. Co-authored-by: Hang Lu Su , Thomas Browning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor large-import 31/2 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 33 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] mattrobball
assignee:mattrobball
16-61419
16 days ago
16-61455
16 days ago
39-59154
39 days
31662 edwin1729
author:edwin1729
feat(Topology/Order): topological basis of scott topology on Complete… …PartialOrder --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20Algebraic.20complete.20partial.20order.20and.20domain.20theory/with/536359313) for this PR. (2/5) PRs in domain theory, proving that scott topologies over Algebraic DCPOs (`CompletePartialOrder`) are sober. The main reference is [Renata, Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf). But the statements can also be found in the canonical text [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) This first PR proves two prerequisites, namely: - the specialization order induced by the scott topology corresponds to the existing order of the DCPO. Prop 3.1.5 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.2(1) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - the upward closures of compact elements of the DCPO form a topological basis for the Scott Topology. Prop 3.5.2 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.6(2) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - [x] depends on: #33061 **The next PR is here:** #31670 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor awaiting-author 165/1 Mathlib.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 5 99 ['b-mehta', 'edwin1729', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] b-mehta
assignee:b-mehta
16-60320
16 days ago
24-61756
24 days ago
64-31147
64 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
16-41280
16 days ago
23-5858
23 days ago
48-72076
48 days
36698 ghseeli
author:ghseeli
feat(Combinatorics/Enumerative): Latin squares This PR defines Latin rectangles and Latin squares and proves an extension theorem using Hall's Marriage Theorem. ## Main results - `group_to_cayley_table`: every finite group `G` yields a `LatinSquare G G`. - `latin_rectangle_extends_one_row`: a (non-square) `LatinRectangle` extends to a `LatinRectangle` with one more row. This is an application of **Hall's Marriage Theorem**, `hallMatchingsOn.nonempty`. - `latin_rectangle_extends_to_latin_square`: a `LatinRectangle` extends to a `LatinSquare`. This is included in a new file `Combinatorics/Enumerative/LatinSquare.lean`. --- - [ ] depends on: #37190 - [ ] depends on: #37720 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics blocked-by-other-PR 638/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Enumerative/LatinSquare.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Data/Fintype/Card.lean,docs/references.bib 6 78 ['SnirBroshi', 'cjrl', 'eric-wieser', 'ghseeli', 'github-actions', 'mathlib-dependent-issues', 'vlad902'] nobody
16-38890
16 days ago
56-61510
56 days ago
16-40743
16 days
39341 drocta
author:drocta
feat(Algebra/Colimit/DirectLimit): add DirectLimit.(NonUnital)StarAlgebra.(lift/of) maps and associated lemmas add the `of` and `lift` maps for `DirectLimit.StarAlgebra` and `DirectLimit.NonUnitalStarAlgebra`, as well as the associated lemmas, `of_f`, `lift_comp_of`, `lift_of`, and `hom_ext` for each. Also make `DirectLimit.NonUnitalAlgebra` only require `[Monoid R]` rather than `[CommSemiring R]`. --- Use of AI: I again asked ChatGPT for some advice about some things about this code. I can personally vouch for all of the code I'm submitting, and that I understand all of it. This is the third part of my project towards supporting direct limits of $C^∗$ -algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR adds an import of `Mathlib.Algebra.Star.StarAlgHom` (because it needs `StarAlgHom` and `NonUnitalStarAlgHom`) replacing/encompassing the previously added imports of `Mathlib.Algebra.Star.StarRingHom` and `Mathlib.Algebra.Algebra.NonUnitalHom` (added in PR #38308 and #38672 respectively). t-algebra new-contributor
label:t-algebra$
100/3 Mathlib/Algebra/Colimit/DirectLimit.lean 1 2 ['github-actions'] nobody
16-35832
16 days ago
16-38524
16 days ago
16-38486
16 days
37666 TJHeeringa
author:TJHeeringa
feat(Analysis/InnerProductSpace/Reproducing): Lipschitz wrt the kernel pseudometric --- RKHSs $H$ have bounded point evaluations. This induces a pseudometric on the underlying space `X`. The function $f\in H$ are Lipschitz continuous with Lipschitz constant $\||f\||$. This PR puts the pseudometric instance inline. The instance cannot just be put outside the theorem, because that gives problems with resolving type classes / instance synthesis. An alternative to inlining the instance is a type class synonym. One copy would be the RKHS with whatever metric X came equipped with and one copy would be the RKHS with the induced metric. Since there are likely more theorems depending on this pseudometric, I suspect that it is actually a better solution. AI: I had the instance outside the theorem. Lean gave problems with resolving type classes / instance synthesis. I asked Claude and ChatGPT to interpret the error and fix it. The latter just spit gibberish and the former suggested inlining but in a way that didn't work. Then, I asked on Zulip and got the same suggestion but working. The type synonym alternative was also suggested there. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor help-wanted 71/6 Mathlib/Analysis/InnerProductSpace/Reproducing.lean 1 3 ['TJHeeringa', 'github-actions'] nobody
15-77485
15 days ago
unknown
0-0
0 seconds
33985 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): `OmegaCompletePartialOrder` instance for `Sum` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sum`, along with `ωScottContinuous` lemmas for basic operations (`inl`, `inr`, `elim`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sum`s (e.g. see the proof of `Sum.ωScottContinuous_map`). --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-order awaiting-author 205/3 Mathlib/Data/Sum/Basic.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean,Mathlib/Topology/Constructions/SumProd.lean 5 58 ['Komyyy', 'Vierkantor', 'YaelDillies', 'YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] YaelDillies and pechersky
assignee:pechersky assignee:YaelDillies
15-68814
15 days ago
56-74624
56 days ago
52-59724
52 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
15-60771
15 days ago
18-13728
18 days ago
35-12445
35 days
39392 jayscambler
author:jayscambler
feat(Cryptography): one-time pad and Shannon perfect secrecy Adds `Mathlib/Cryptography/OTP.lean`. One-time pad over an arbitrary finite abelian group `G`: - `OTP.encrypt k m := m + k`, `OTP.decrypt k c := c - k`. - `OTP.correct`: `decrypt k (encrypt k m) = m`, by `abel`. - `OTP.perfect_secrecy`: for any `m₀, m₁`, the distributions of `encrypt k m₀` and `encrypt k m₁` over uniform `k` are equal; both reduce to `PMF.uniformOfFintype G`. Proof goes via `Equiv.addLeft`. Independent of the Schnorr PR (#39279); no shared definitions. Unlike everything else likely to live under `Mathlib/Cryptography/`, the security guarantee here is information-theoretic, not computational. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 76/0 Mathlib.lean,Mathlib/Cryptography/OTP.lean 2 3 ['MrBrain295', 'github-actions'] nobody
15-32361
15 days ago
15-54835
15 days ago
15-54797
15 days
39393 jayscambler
author:jayscambler
feat(GameTheory): von Neumann minimax theorem for finite matrix games Adds `Mathlib/GameTheory/MatrixGame.lean`. Resolves the TODO at `Mathlib/Topology/Sion.lean:48` ("spell out the particular case of von Neumann theorem") by specialising `Sion.exists_isSaddlePointOn` to the bilinear payoff `∑ i j, x i * M i j * y j` on the pair of standard simplices. Two theorems: - `Matrix.exists_saddle_point`: existence of a saddle point in mathlib's `IsSaddlePointOn` convention (`a` minimiser-in-`X`, `b` maximiser-in-`Y`). - `Matrix.exists_mixedNash`: existence of a mixed Nash equilibrium in the textbook matrix-game orientation (row player maximises, column player minimises). Proved by applying Sion to `-payoff M`. Both forms are useful: the first matches mathlib's existing saddle-point machinery, and the second is the statement most game-theory texts use directly. Supporting lemmas: continuity of the payoff in each argument (linear in each), and quasi-convexity / quasi-concavity from `LinearMap.convexOn` / `LinearMap.concaveOn`. The simplex hypotheses for Sion (`Convex`, `IsCompact`, `Nonempty`) come from existing mathlib lemmas (`convex_stdSimplex`, `isCompact_stdSimplex`, `single_mem_stdSimplex`). Creates a new top-level `Mathlib/GameTheory/` directory; mathlib currently has none. A natural follow-up would be a `Mathlib/GameTheory/NormalForm.lean` for general n-player normal-form games and pure Nash equilibrium. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) t-topology new-contributor LLM-generated 216/2 Mathlib.lean,Mathlib/GameTheory/MatrixGame.lean,Mathlib/Topology/Sion.lean 3 3 ['github-actions', 'vihdzp'] nobody
15-15638
15 days ago
15-49568
15 days ago
0-355
5 minutes
22925 ggranberry
author:ggranberry
feat(Mathlib/PlaceHolder/ToeplitzHausdorff): Toeplitz-Hausdorff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor will-close-soon awaiting-author help-wanted t-analysis 411/0 Mathlib/PlaceHolder/ToeplitzHausdorff.lean,Mathlib/PlaceHolder/ToeplitzHausdorff_v2.lean 2 16 ['AntoineChambert-Loir', 'faenuccio', 'ggranberry', 'github-actions', 'vihdzp'] faenuccio
assignee:faenuccio
14-80565
14 days ago
438-72074
438 days ago
3-8649
3 days
39270 m13683320924-hue
author:m13683320924-hue
feat: prove strict group homs are stable under Prod.map This PR proves that strict group homomorphisms are stable under product maps. It adds an auxiliary lemma showing that the range restriction of a strict group homomorphism is an open quotient map, and uses it to prove that `MonoidHom.prodMap` preserves `Topology.IsStrictMap`. Towards #38421. t-topology new-contributor 44/0 Mathlib/Topology/Algebra/Group/Basic.lean 1 7 ['eric-wieser', 'github-actions', 'm13683320924-hue'] nobody
14-64918
14 days ago
17-54332
17 days ago
0-1401
23 minutes
39456 BMMilligan1
author:BMMilligan1
feat(Probability/PMF): advantageFromHalf for Bool-valued PMFs This PR adds `PMF.advantageFromHalf : PMF Bool → ℝ`, defined as `2 * (p true).toReal - 1`, together with API lemmas covering bounds (`_le_one`, `_neg_one_le`), the zero-advantage characterization (`_eq_zero_iff_half`), `PMF.map` composition (`_map_tsum`), and canonical witness evaluations on `uniformOfFintype Bool`, `pure true`, and `pure false`. ## Motivation The "advantage from half" of a Bernoulli-like distribution is the signed gap of the `true`-probability away from `1/2`, rescaled to `[-1, 1]`. It is the natural decision-algorithm advantage notion in computational complexity: when a heuristic `H : α → Bool` is post-composed with a `PMF α` via `PMF.map`, the resulting `PMF Bool`'s `advantageFromHalf` is the advantage of `H` as a decision procedure on the source distribution. Concretely, the definition supports formalizations of Hirahara 2018 (FOCS, [arXiv:1808.06974](https://arxiv.org/abs/1808.06974)) Theorem 1.1's worst-case-to-average-case reduction for Gap-MCSP, where the heuristic algorithm's advantage `ε(n) = 1/poly(n)` over the uniform truth-table distribution is the load-bearing quantity. The current Mathlib `PMF` library supports `PMF.uniformOfFintype` (see `Mathlib/Probability/Distributions/Uniform.lean`) but lacks the bias-from-half notion at this signature. ## API summary - `PMF.advantageFromHalf : PMF Bool → ℝ` - `PMF.advantageFromHalf_le_one` (`@[simp]`) - `PMF.advantageFromHalf_neg_one_le` (`@[simp]`) - `PMF.advantageFromHalf_eq_zero_iff_half` - `PMF.advantageFromHalf_map_tsum` - `PMF.advantageFromHalf_uniformBool` (witness: advantage 0) - `PMF.advantageFromHalf_pure_true` (witness: advantage 1) - `PMF.advantageFromHalf_pure_false` (witness: advantage -1) ## Notes * The file lives at `Mathlib/Probability/ProbabilityMassFunction/Advantage.lean`, alphabetically before `Basic.lean`, and is imported in `Mathlib.lean` at the corresponding alphabetical position. * All proofs are sorry-free. * The definition is `noncomputable` (matches `PMF` style; `(p true).toReal` threading through `ENNReal`). * No new imports outside the existing PMF / ENNReal substrate. * Maintainer review of the naming (`advantageFromHalf` vs alternative candidates like `biasFromHalf`) and of whether the `tsum`-form composition lemma should be supplemented by a `Finset.sum` variant for `Fintype` sources is most welcome. Co-authored-by: Claude Opus 4.7 (1M context) t-measure-probability new-contributor 120/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Advantage.lean 2 2 ['github-actions'] nobody
14-32874
14 days ago
unknown
0-0
0 seconds
37707 MavenRain
author:MavenRain
feat(Combinatorics/SimpleGraph): add IsMaximalClique/IsMaximalIndepSet, refactor IsMaximum* to MaximalFor Addresses #34962 new-contributor t-combinatorics 63/31 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 6 ['MavenRain', 'SnirBroshi', 'eric-wieser', 'github-actions'] nobody
14-16084
14 days ago
14-16156
14 days ago
14-17758
14 days
37720 cjrl
author:cjrl
feat(Data/Fintype/Card): existsUnique_notMem_image_of_injective_of_card_succ This pull requests adds a small theorem `existsUnique_notMem_image_of_injective_of_card_succ` to `Mathlib/Data/Fintype/Card` that says given an injective map f : α → β such that β has cardinality one more than α, there exists a unique element of β not in the image of f. This can be viewed as going in the opposite direction of `card_lt_of_injective_of_notMem`. This little fact is needed for our Latin Square PR #36698. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor t-set-theory 19/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/Card.lean 2 10 ['IvanRenison', 'cjrl', 'dagurtomas', 'ghseeli', 'github-actions'] nobody
13-33064
13 days ago
13-33064
13 days ago
51-3882
51 days
26479 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis sphere-packing 219/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 7 ['github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'wwylele'] urkud
assignee:urkud
12-23899
12 days ago
12-23899
12 days ago
46-35083
46 days
35122 Marygold-Dusk
author:Marygold-Dusk
feat: define C^n submersions This PR defines submersions between C^n manifolds. In the infinite-dimensional setting, submersions are defined via local normal forms rather than surjectivity of the mfderiv. A map f is a submersion at x if, in suitable charts around x and f x, it has the form (u, v) ↦ u after identifying the model space with a product. We prove a few basic properties: - being a submersion is a local property, - products of submersions are submersions, - the set of submersed points is open Future PRs will prove that submersions are C^n and deduce equivalence with the standard definition in finite dimensions. From the path towards the regular value theorem. This file was developed under the supervision of Michael Rothgang. Co-authored-by: Michael Rothgang --- Most of the design is analogues to immersions. t-differential-geometry new-contributor 642/0 Mathlib.lean,Mathlib/Geometry/Manifold/Submersion.lean,docs/references.bib 3 54 ['Marygold-Dusk', 'chrisflav', 'github-actions', 'grunweg'] PatrickMassot and grunweg
assignee:grunweg assignee:PatrickMassot
12-12087
12 days ago
12-12087
12 days ago
56-32583
56 days
37010 pion2024
author:pion2024
`Sl2`update: add theorem `finrank_weightSpace_eq_one_of_isIrreducible` # Background: I am a 2nd year undergrad student in mathematics currently self-teaching Lie algebra and representation theory. Before starting the formalization, I searched for related keywords on Zulip and in the GitHub issues and commits. As far as I could tell, there were no existing results or ongoing attempts before I started. All feedback is welcome. Even a quick check on the statement design/an idea on the generalization (cf Limitations below) would be incredibly helpful. # Overview In this PR, I added the new section `IsAlgClosedIrreducible` which formalizes the well-known theorem `finrank_weightSpace_eq_one_of_isIrreducible` for the Lie algebra $\mathfrak{sl}_2$ step by step. It proves that for a finite-dimensional irreducible representation of $\mathfrak{sl}_2$ over an algebraically closed field $K$ of characteristic zero, every non-trivial weight space has a dimension of exactly 1. # Formalization Structure : Instead of relying on explicit finite sums (`Finset.sum`) and manipulating coefficients, I heavily leverage Mathlib's abstractions in Submodule Lattice Theory and Coordinate-free Linear Algebra. The formalization proceeds in the following logic: 1. Existence of a Primitive Vector (`exists_primitiveVector`): I construct a primitive (highest-weight) vector by showing that repeated applications of the raising operator $e$ must eventually yield zero due to the finite-dimensionality of $M$ and the linear independence of eigenvectors corresponding to distinct eigenvalues. 2. The span of $f$-Tower as a Lie Submodule equals to the whole space (`fTowerLieSubmodule_eq_top`): I define the $f$-tower submodule as the $K$-span of $\{f^k m \mid k \in \mathbb{N}\}$. By proving its closure under the action of $f, h$, and $e$, I establish it as a Lie submodule. Since $M$ is irreducible, this submodule must be the entire space ($\top$). 3. Submodule Lattice Operations (`exists_mem_fTower_of_weightSpace_ne_bot`): To prove that every weight in $M$ is of the form $\mu_0 - 2k$, I use lattice operations (iSup, inf, and Disjoint) to avoid element-wise tracking. Since the $f$-tower spans $M$, the supremum of its weight spaces is $\top$. By leveraging `Module.End.eigenspaces_iSupIndep`, I show that any arbitrary non-trivial weight space would have a trivial intersection with $\top$ if its weight didn't belong to the sequence, yielding a contradiction. 4. Dimension Calculation via Basis Equivalence (`finrank_weightSpace_eq_one_of_isIrreducible`): Finally, I construct a basis from the non-zero elements of the $f$-tower. To show the weight space is 1-dimensional, I use `Basis.equivFun` to compare coefficients algebraically. This avoids heavy manual indexing and index-shifting, proving that any vector in the weight space $\mu_0 - 2k$ is merely a scalar multiple of $f^k m$. # Use of AI: I used Gemini 3.1 Pro for tactics, theorems, improvement suggestions, and error explanations. I fully understand and can vouch for all the modifications I have made to the file. # Limitations: I only managed to formalize the finite-dimensional version, although the theorem also holds in the infinite-dimensional case. In the infinite case the existence of a primitive vector is not guaranteed. A quick search suggests that we might need heavy tools like Casimir operators and the universal enveloping algebra, which are totally beyond my current level. I am looking into it, but since there is a significant mathematical gap, I thought it would be best to get this finite-dimensional version merged first. new-contributor t-algebra large-import awaiting-author merge-conflict
label:t-algebra$
336/0 Mathlib/Algebra/Lie/Sl2.lean 1 11 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash', 'pion2024'] ocfnash
assignee:ocfnash
12-3663
12 days ago
58-70700
58 days ago
2-57577
2 days
36832 KryptosAI
author:KryptosAI
chore(Data/Finset/Card): rename `pred_card_le_card_erase` to `sub_one_card_le_card_erase` ## Summary The name `pred_card_le_card_erase` suggests `Nat.pred` but the statement uses `- 1` (i.e., `Nat.sub 1`). Rename to `sub_one_card_le_card_erase` to match the actual statement. A deprecated alias is added for backwards compatibility. ### Files changed - `Mathlib/Data/Finset/Card.lean` — definition renamed + deprecated alias - `Mathlib/Data/Finset/Powerset.lean` — reference updated - `Mathlib/Combinatorics/Additive/SubsetSum.lean` — reference updated - `Mathlib/Algebra/Polynomial/EraseLead.lean` — reference updated Addresses the `Finset.pred_card_le_card_erase` item in #21584. ## AI disclosure I used Claude Code to explore the codebase (finding all references to rename) and to draft the PR description. I reviewed and understand all changes — these are straightforward renames with a deprecated alias. new-contributor awaiting-author 22/15 Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SetFamily/Shadow.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/RingTheory/Ideal/Operations.lean 9 8 ['KryptosAI', 'Multramate', 'dagurtomas', 'github-actions', 'mattrobball', 'ooovi'] nobody
11-82507
11 days ago
11-82507
11 days ago
59-48094
59 days
39216 emlis42
author:emlis42
feat(Topology/Algebra/InfiniteSum): add `limUnder_eq_tprod` This PR adds `limUnder_eq_tprod` and `limUnder_eq_tsum`. t-topology new-contributor 10/0 Mathlib/Topology/Algebra/InfiniteSum/Defs.lean 1 6 ['SnirBroshi', 'emlis42', 'github-actions', 'grunweg', 'mathlib-bors'] urkud
assignee:urkud
11-70290
11 days ago
11-70292
11 days ago
6-79087
6 days
32555 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph/Matching): maximum and maximal matchings for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 112/0 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean 2 46 ['SnirBroshi', 'SproutSeeds', 'YaelDillies', 'b-mehta', 'github-actions', 'jcommelin', 'ksenono'] YaelDillies
assignee:YaelDillies
11-69729
11 days ago
11-83888
11 days ago
130-57925
130 days
39269 godofecht
author:godofecht
feat(Algebra/Spectrum): add the second resolvent identity Adds `spectrum.resolvent_sub_resolvent`: For `a b : A` in an `R`-algebra and `r` in the resolvent set of both, `resolvent a r - resolvent b r = resolvent a r * (a - b) * resolvent b r`. Companion to `spectrum.resolvent_eq`. t-algebra new-contributor
label:t-algebra$
15/0 Mathlib/Algebra/Algebra/Spectrum/Basic.lean 1 3 ['github-actions', 'wwylele'] nobody
11-68281
11 days ago
17-56446
17 days ago
17-56408
17 days
39366 akiezun
author:akiezun
feat(Data/Nat): add prime divisibility for ascFactorial and choose Adds two prime-divisibility lemmas for natural-number factorial/binomial APIs. The first characterizes when a prime divides an ascending factorial: `Nat.Prime.dvd_ascFactorial_iff`. The second applies this to binomial coefficients: `Nat.Prime.dvd_choose_add_sub_one_iff`, using `Nat.ascFactorial_eq_factorial_mul_choose'` and cancellation of the `n!` factor when `n < p`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor large-import 46/0 Mathlib.lean,Mathlib/Data/Nat/Choose/Consecutive.lean,Mathlib/Data/Nat/Factorial/BigOperators.lean 3 9 ['SnirBroshi', 'akiezun', 'github-actions', 'wwylele'] nobody
11-60828
11 days ago
11-62869
11 days ago
15-73210
15 days
37584 kennethgoodman
author:kennethgoodman
feat(Data/Nat/Fib): formalize Lamé's theorem ## Summary Formalize [Lamé's theorem](https://en.wikipedia.org/wiki/Lam%C3%A9%27s_theorem) (1844), the founding result of computational complexity theory. **Lamé's Theorem:** If the Euclidean algorithm on inputs `(a, b)` with `b ≤ a` takes `n + 1` division steps, then `b ≥ fib(n + 1)` and `a ≥ fib(n + 2)`. ### New definitions - `Nat.euclidSteps`: counts the number of division steps in the Euclidean algorithm on natural number inputs. ### New theorems - `Nat.fib_le_of_euclidSteps`: the main Lamé bound — Fibonacci lower bound on inputs given a step count. - `Nat.euclidSteps_le_of_lt_fib`: the contrapositive — step count upper bound given a Fibonacci bound on the smaller input. - `Nat.add_mod_le`: helper lemma that `b + a % b ≤ a` when `b ≤ a` and `0 < b`. ### Proof strategy Induction on `n`, tracking both elements of the pair. The key insight is that each Euclidean step replaces `(a, b)` with `(b, a % b)`, and since `a ≥ b + a % b` (because `a / b ≥ 1`), the Fibonacci recurrence `fib(n+3) = fib(n+2) + fib(n+1)` matches the structure of the algorithm. ### References - Gabriel Lamé, *Note sur la limite du nombre des divisions dans la recherche du plus grand commun diviseur entre deux nombres entiers*, Comptes rendus de l'Académie des sciences, 1844. --- ### AI usage disclosure Per the [Mathlib AI guidelines](https://leanprover-community.github.io/contribute/index.html#use-of-ai): Claude Code (Claude Opus 4.6) was used to assist with writing the Lean 4 proof code, fixing tactic errors, and drafting this PR description. The mathematical proof (induction on step count, tracking both pair elements through the Fibonacci recurrence) was designed by hand and verified on paper before formalization. I have reviewed and understand every line of the resulting Lean code and can explain all proof steps. --- - [x] builds cleanly (`lake build Mathlib.Data.Nat.Fib.Lame`) - [x] no `sorry` - [x] lines ≤ 100 characters, no trailing whitespace - [x] `autoImplicit false` - [x] docstrings on all public declarations new-contributor LLM-generated t-data merge-conflict 121/0 Mathlib.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Fib/Lame.lean,docs/1000.yaml 5 25 ['euprunin', 'github-actions', 'kennethgoodman', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] TwoFX
assignee:TwoFX
11-56601
11 days ago
11-56602
11 days ago
44-66371
44 days
35017 robo7179
author:robo7179
feat(Combinatorics/SimpleGraph/Acyclic): every nontrivial tree has at least two leaves Add two theorems to prove that every non trivial tree has at least two leaves (one in Finite the other in Acyclic). --- - [ ] depends on: #37399 - [ ] depends on: #37400 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author blocked-by-other-PR 24/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean 2 44 ['IvanRenison', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robo7179'] YaelDillies
assignee:YaelDillies
11-42291
11 days ago
73-67633
73 days ago
35-3753
35 days
29744 espottesmith
author:espottesmith
feat(Combinatorics): define directed hypergraphs This PR defines directed hypergraphs: ``` @[ext] structure DiHypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The edge set -/ edgeSet : Set ((Set α) × (Set α)) /-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/ edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet ``` Additional definitions: - tail/head stars and negative/positive stars - some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty) - Vertex and (hyper)edge adjacency - isolated vertices - empty and nonempty dihypergraphs The design employed here is based off of #28613, but this PR does not depend on that one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 398/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 4 ['b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
11-37691
11 days ago
57-7076
57 days ago
114-76905
114 days
36274 JTylM
author:JTylM
feat(Combinatorics/SimpleGraph/Matching): implemented the matchingNumber of a graph --- - [ ] depends on: #36406 - [ ] depends on: #32555 I implemented the matchingNumber as described in the issue and proved some statements including showing that there exists a matching achieving the matchingNumber. matchingNumber is increasing under injective maps matchingNumber is equal under isomorphisms matchingNumber of a matching is the cardinality of the matching This is my first PR and i had some trouble with some of the proofs, especially with the proof for matchingNumber.isAttained. So any suggestions on how to make the proofs shorter would be welcome. Also i was not sure about the naming of some of the theorems so i would apprechiate feedback here as well. new-contributor t-combinatorics blocked-by-other-PR merge-conflict 292/2 Mathlib/Combinatorics/SimpleGraph/Matching.lean 1 40 ['JTylM', 'SnirBroshi', 'SproutSeeds', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vlad902'] nobody
11-36451
11 days ago
71-76518
71 days ago
9-69432
9 days
39569 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Units): Units are (in)finite if type is (in)finite Shows - [ ] depends on: #39568 - [ ] depends on: #39567 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-data new-contributor 75/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean,Mathlib/Data/Finite/Subtype.lean,Mathlib/Data/Finite/Units.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
10-84011
10 days ago
11-3496
11 days ago
0-121
2 minutes
39567 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Option): option type is finite iff type is finite Option type is finite if and only if the type is finite. This is an intermediate result to proving that if the `GroupWithZero` is (in)finite then the `Units` are (in)finite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean 2 11 ['AlexBrodbelt', 'github-actions', 'plp127', 'themathqueen'] nobody
10-75363
10 days ago
11-5014
11 days ago
11-5590
11 days
39568 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Subtype): Subtype of elements not equal to a term is finite iff type is finite Subtype of terms not equal to a term is finite iff type is finite. This is an intermediate result to prove that if a `GroupWithZero` is (in)finite then the `Units` are (in)finite. - [ ] depends on: #39567 [shows option type is finite iff type is finite] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor blocked-by-other-PR 45/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean,Mathlib/Data/Finite/Subtype.lean 3 5 ['AlexBrodbelt', 'github-actions', 'mathlib-dependent-issues', 'themathqueen'] nobody
10-73647
10 days ago
11-2837
11 days ago
0-2171
36 minutes
37350 aditya-ramabadran
author:aditya-ramabadran
feat(Analysis/Distribution): define canonical maps between Schwartz/test functions, distributions/tempered distributions Defines these canonical maps: (1) continuous linear map from $\mathcal D$ to $\mathcal S$, and (2) induced (linear) restriction map from $\mathcal S'$ to $\mathcal D'$, as assigned by @ADedecker. --- Put in a separate file since Distribution.lean only imports TestFunction right now and I thought it was cleaner to do in a new bridge file with both the maps. Open to changing this though. * Made use of #36445 (proved first map locally on fixed support spaces first by local seminorm estimates, then used limitCLM) * Needed a real to complex bridge `TestFunction.ToComplexSchwartzMap` since distributions are defined on real-valued test functions but tempered distributions in mathlib are defined on complex-valued Schwartz functions * Induced map $\mathcal S'(E,F) \to \mathcal D'(Ω,F)$ is $\mathbb C$-linear The main important defs are `ContDiffMapSupportedIn.toSchwartzMapCLM` which is the local fixed-support part, then `TestFunction.toSchwartzMapCLM` (where the continuity uses limitCLM to glue the local continuous linear maps on each $\mathcal D_K$), and `TemperedDistribution.toDistributionLM` which is the linear map from tempered distributions to ordinary distributions. Tested with `lake env lean Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 225/0 Mathlib.lean,Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean 2 24 ['aditya-ramabadran', 'github-actions', 'j-loreaux'] ADedecker and mcdoll
assignee:mcdoll assignee:ADedecker
10-67322
10 days ago
19-72496
19 days ago
51-72754
51 days
38869 TJHeeringa
author:TJHeeringa
feat(Analysis/InnerProductSpace): Add instance for quotient of InnerProductSpace --- Couldn't find the inner product space instance for a quotient of an inner product space. After confirming at [#Is there code for X? > Quotient of inner product space is inner product space](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Quotient.20of.20inner.20product.20space.20is.20inner.20product.20space/with/592464432), I made this PR. Defines an innerProductSpace instance on the quotient based on the isometry with the orthogonal complement, which is a closed subspace of the full space and thus has an innerProductSpace instance. AI usage: Didn't understand how to properly apply `quotient_norm_mk_eq K.toAddSubgroup x`. Claude suggested using convert. Otherwise no AI used, aside from acting as secondary Loogle. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor delegated 59/0 Mathlib/Analysis/InnerProductSpace/ProdL2.lean 1 39 ['TJHeeringa', 'github-actions', 'j-loreaux', 'mathlib-bors', 'themathqueen', 'wwylele'] j-loreaux
assignee:j-loreaux
10-67044
10 days ago
10-67044
10 days ago
14-47986
14 days
33786 hdmkindom
author:hdmkindom
feat(Analysis/Matrix): add Jacobian matrix for matrix-valued functions This PR introduces the Jacobian matrix for matrix-valued functions `F : Matrix m n 𝕜 → Matrix p q 𝕜`. The Jacobian matrix `jacobianMatrix F X` at point `X` is indexed by `(p × q) × (m × n)`, where each entry represents the partial derivative with respect to a basis element. To handle instance-mismatch issues with matrix norms, we use local Frobenius norm instances. This PR adds the new file: 'Analysis/Matrix/Jacobian.lean' ## Main definitions - `jacobianMatrix F X`: The Jacobian matrix at point `X`, defined by `jacobianMatrix F X (i, k) (j, l) = (fderiv ℝ F X (Matrix.single j l 1)) i k` ## Main theorems - `fderiv_eq_jacobian_mul`: Express the Fréchet derivative as a contraction with the Jacobian - `jacobianMatrix_comp`: Chain rule for Jacobian matrices - `jacobianMatrix_linear`, `jacobianMatrix_id`, `jacobianMatrix_const`: Basic properties - `jacobianMatrix_add`, `jacobianMatrix_smul`: Linearity properties t-analysis new-contributor awaiting-author 174/0 Mathlib.lean,Mathlib/Analysis/Matrix/Jacobian.lean 2 21 ['erdOne', 'github-actions', 'hdmkindom', 'jcommelin'] sgouezel
assignee:sgouezel
10-66449
10 days ago
101-72891
101 days ago
39-35999
39 days
38584 TJHeeringa
author:TJHeeringa
feat(Analysis/InnerProductSpace/Reproducing): Add outerKernel, mem_iff --- Adds the `outerKernel` definition and the theorem `mem_iff`. These are needed for proving statements involving embeddings of RKHS. I can split `mem_of_posSemidef` and `mem_iff` off into a different pull request if that is preferred. The theorems `mem_of_posSemidef` and `posSemidef_of_mem` are the two directions of `mem_iff`. `posSemidef_of_mem` is slightly stronger than the converse direction of `mem_iff` in the sense that it also specifies the constant `c` in the statement. The specified `c` is in fact the smallest possible `c` for which the statement holds. The statement `mem_of_posSemidef` proves `∃ (g : H), (g : X → V) = f`. We could instead write `f ∈ (coeCLM 𝕜 (H:=H)).range`. Making this change would require the addition of the line `simp only [LinearMap.mem_range, coe_coe, coeCLM_apply]` in the beginning of the proof. The full beginning is then ``` lemma mem_of_posSemidef (f : X → V) {c : ℝ} (hc : ((c : 𝕜) ^ 2 • kernel H - outerKernel 𝕜 f).PosSemidef) : f ∈ (coeCLM 𝕜 (H:=H)).range := by simp only [LinearMap.mem_range, coe_coe, coeCLM_apply] let Laux : ... ``` Making a `MemRKHS` like MemLp and MemSobolev and then writing `MemRKHS H f` is also an option. Happy to change it to whatever is preferred. The proof of `mem_of_posSemidef` is based on the idea that any function f in the RKHS satisfies `=\sum_{n} ` for `x_n\in X` and `v_n\in V` by the reproducing property. We define the operator L(\sum_n K(\cdot,x_n)v_n) = \sum_{n} . This is bounded by the condition based on the kernels, and thus extends to a bounded linear operator on the RKHS. Its Riesz' representer agrees pointwise with f. AI: When asking how to avoid Classical.choose in constructing the operator L, Claude suggested the approach of going through the quotient. I made the proof using Claude as supplementary Loogle. Afterwards, I asked it to help shorted the proofs. Some suggestions for `mem_of_posSemidef` were applied. The other suggestions were not helping or not correct. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor awaiting-author 122/1 Mathlib/Analysis/InnerProductSpace/Reproducing.lean 1 12 ['TJHeeringa', 'github-actions', 'j-loreaux', 'themathqueen'] j-loreaux
assignee:j-loreaux
10-63085
10 days ago
10-63085
10 days ago
22-2608
22 days
34713 dennj
author:dennj
feat(Probability/Markov): stationary distributions for stochastic matrices This PR proves that every row-stochastic matrix on a finite nonempty state space has a stationary distribution in the standard simplex. Main additions to `Mathlib/Probability/Markov/Stationary.lean`: - `IsStationary`: A distribution μ is stationary for matrix P if μ ᵥ* P = μ - `cesaroAverage`: Cesàro average of iterates of a vector under a matrix - `Matrix.rowStochastic.exists_stationary_distribution`: existence theorem The proof uses Cesàro averaging: start with uniform distribution, form averages, extract convergent subsequence by compactness, show limit is stationary via L¹ non-expansiveness. Also adds `vecMul_mem_stdSimplex` to `Stochastic.lean`: multiplying a probability vector by a row-stochastic matrix preserves simplex membership. This is human-made PR with AI help in golfing proof and documenting the code. new-contributor t-measure-probability 166/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean,Mathlib/Probability/Markov/Stationary.lean 3 17 ['EtienneC30', 'dennj', 'dupuisf', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts', 'riccardobrasca'] kex-y
assignee:kex-y
10-36156
10 days ago
33-44610
33 days ago
43-77585
43 days
38014 cduenasnavarro
author:cduenasnavarro
feat(InformationTheory): linear codes over finite fields and minimum distance properties Define linear codes over a finite field `F` as finite-dimensional subspaces of `Fin n → F`, together with their minimum Hamming distance. Main definitions: * `LinearCode` * `minDist` * `LinearCodeWithDist` * `hammingSphere` Main results: * `minDist_eq_sInf_pairwiseDist`: characterisation of the minimum distance via pairwise distances * `disjoint_spheres`: Hamming spheres of radius `t` around distinct codewords are disjoint if `2 * t < d` Pending: * Choosing an adequate book reference --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 181/0 Mathlib.lean,Mathlib/InformationTheory/Coding/LinearCode.lean 2 37 ['cduenasnavarro', 'github-actions', 'linesthatinterlace', 'rkirov', 'vihdzp', 'wwylele'] kex-y
assignee:kex-y
10-36152
10 days ago
46-55633
46 days ago
46-56358
46 days
39384 EngelsVon
author:EngelsVon
feat(Analysis/Calculus/DifferentialForm): Stokes' theorem on rectangular boxes ## Summary This PR proves the generalized Stokes theorem for differential forms on rectangular boxes $[a, b] \subset \mathbb{R}^{m+1}$. The proof strategy is: 1. Extract the `i`-th signed face component `boxFaceComponent ω i` from an `m`-form `ω` — a scalar function whose divergence equals the top-form density of the exterior derivative `dω`. 2. Apply Mathlib's existing divergence theorem for boxes (`integral_divergence_of_hasFDerivAt_off_countable'`). This gives a genuine proved Stokes formula in the Euclidean setting, complementing the existing infrastructure for differential forms. ## Main definitions - `DifferentialForm.topFormDensity`: density function of a top-form field - `DifferentialForm.boxFaceComponent`: the `i`-th signed face component of an `m`-form on `ℝ^(m+1)` - `DifferentialForm.boxBoundaryIntegral`: the signed boundary integral over `∂[a,b]` ## Main results - `box_stokes_of_hasFDerivAt`: Stokes' theorem on boxes with pointwise differentiability hypotheses - `box_stokes_of_contDiff`: a convenient `C¹` formulation t-analysis new-contributor 314/0 Mathlib.lean,Mathlib/Analysis/Calculus/DifferentialForm/BoxStokes.lean 2 2 ['github-actions'] j-loreaux
assignee:j-loreaux
10-36143
10 days ago
15-63208
15 days ago
15-63170
15 days
39389 i-love-lean
author:i-love-lean
feat(Analysis/SpecialFunctions): homeomorphism for spherical coordinates A few months ago, I noticed that mathlib was missing change of variables to spherical coordinates, which is taught in undergraduate calculus and useful for many 3D integrals. So far, I used `PolarCoord.lean` as reference and implemented a similar homeomorphism for spherical coordinates. There's still a lot of work left to prove an analog of `integral_comp_polarCoord_symm` but for spherical coordinates, so I'm splitting up the work into several PRs. I also fixed a typo in `PolarCoord.lean`. t-analysis new-contributor 133/2 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SpecialFunctions/SphericalCoord.lean 4 4 ['github-actions', 'i-love-lean', 'wwylele'] j-loreaux
assignee:j-loreaux
10-36142
10 days ago
15-54343
15 days ago
15-55125
15 days
39406 roos-j
author:roos-j
feat(Analysis): van der Corput's lemma Adds van der Corput's lemma on one-dimensional oscillatory integrals, a standard tool in harmonic analysis. Co-authored-by: Manasa Praveen --- From https://github.com/roos-j/lean-oscillatory, see there for future plans Zulip discussion [#mathlib4 > Oscillatory integrals in Lean](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Oscillatory.20integrals.20in.20Lean/with/584786060) AI disclosure: The code in this PR was predominantly human-written. gpt-5.5 has helped in the later stages with shortening proofs, golfing and general advice. t-analysis new-contributor 551/0 Mathlib.lean,Mathlib/Analysis/OscillatoryIntegrals/VanDerCorput.lean 2 2 ['github-actions'] j-loreaux
assignee:j-loreaux
10-36140
10 days ago
15-13802
15 days ago
15-14828
15 days
34703 martinwintermath
author:martinwintermath
Generalizing orthogonalBilin --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 51/25 Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
10-32607
10 days ago
unknown
0-0
0 seconds
38369 quantumsnow
author:quantumsnow
feat(AlgebraicTopology): Eilenberg Steenrod axioms This introduces the Eilenberg-Steenrod axioms for a homology theory. --- - [x] depends on: #36621 - [ ] depends on: #39236 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebraic-topology blocked-by-other-PR 365/0 Mathlib.lean,Mathlib/AlgebraicTopology/EilenbergSteenrod.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopPair.lean 4 38 ['chrisflav', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'quantumsnow'] nobody
10-1943
10 days ago
18-8239
18 days ago
3-44318
3 days
39605 Qinghev
author:Qinghev
Add docstrings for reversed range telescoping lemmas This PR adds docstrings for two existing Finset telescoping lemmas and their additive versions generated by `to_additive`: * `Finset.prod_range_div'` / `Finset.sum_range_sub'` * `Finset.eq_prod_range_div` / `Finset.eq_sum_range_sub` The goal is a small documentation-only contribution that makes the reversed range telescoping API easier to discover from search and hover docs. Local checks: * `git diff --check -- Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean` * Attempted `lake env lean Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean`, but local validation is currently blocked by downloading the `leanprover/lean4:v4.30.0-rc2` toolchain from GitHub timing out/connection-resetting on this machine. Opened as draft until the toolchain/network check can be completed or CI confirms the documentation-only change. t-algebra new-contributor
label:t-algebra$
8/2 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 2 ['github-actions'] nobody
9-85645
9 days ago
9-85645
9 days ago
9-85607
9 days
39332 Michaillus
author:Michaillus
chore(Topology/Spectral): Added two small lemmas chore(Topology/Spectral): Added two lemmas `IsCompact.isClosed_constructibleTopology_of_isOpen` `IsCompact.isClosed_constructibleTopology_of_isClosed` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 12/0 Mathlib/Topology/Spectral/ConstructibleTopology.lean 1 7 ['Michaillus', 'github-actions', 'plp127', 'qawbecrdtey'] PatrickMassot
assignee:PatrickMassot
9-82139
9 days ago
16-50215
16 days ago
16-50177
16 days
39225 junodeveloper
author:junodeveloper
feat(SimpleGraph): add no-bridge theorem for even degree graphs This PR proves that a finite graph in which every vertex has even degree has no bridge. It adds: * `SimpleGraph.not_isBridge_of_even_degree` The proof argues by contradiction: if an edge is a bridge, delete it and look at the connected component containing one endpoint. In that component, the endpoint has odd degree, while any other odd-degree vertex would contradict the bridge assumption and the even-degree hypothesis. This contradicts the handshaking lemma via the existing odd-degree API. Local checks: ```bash lake build Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity lake exe lint-style Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity lake exe runLinter Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity ``` ## AI usage disclosure I used OpenClaw/Codex while developing this PR. Much of the Lean proof of `not_isBridge_of_even_degree` was drafted with AI assistance, including API search and proof refactoring. I reviewed the generated code, made edits, ran the local checks above, and understand and take responsibility for the final statement and proof. t-combinatorics new-contributor large-import LLM-generated 122/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean 1 12 ['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'junodeveloper', 'linesthatinterlace'] nobody
9-76910
9 days ago
18-46485
18 days ago
18-46447
18 days
39607 TentativeConvert
author:TentativeConvert
feat(Algebra/DirectSum): equivalence between direct sum indexed by ι₁ and double sum indexed by ι₂ and fibres of f : ι₁ → ι₂ 1. Add variant `equivCongrLeft'` of `equivCongrLeft`, and corresponding `…_apply` lemma. 2. Add `…_of lemmas` for both `equivCongrLeft` and `equivCongrLeft'`. 3. Add `…of lemma` for `sigmaCurry`, i.e. `sigmaCurry_of`. 4. Add `sigmaFiberAddEquiv`: the equivalence between a direct sum indexed by a type `ι₁` and the double sum indexed by a type `ι₂` and the fibres of a map `f : ι₁ → ι₂`. Add two `…_apply` lemmas and an `…_of` lemma. --- This is supposed to be a first step towards merging the draft PR #39356. re 1: Mathematically, I don't see why one version should be preferred over the other, but I found the existing `equivCongrLeft` more difficult to work with when the equivalence `h : ι ≃ κ` is naturally given in the opposite direction. (I could not avoid explicit type casts through the equality `h.symm.symm = h` when defining `sigmaFiberAddEquiv` in terms of `equivCongrLeft`.) Very unsure about the name of `equivCongrLeft'`. (I see that the name `equivCongrLeft` was chosen in analogy with `Equiv.piCongrLeft`. `Equiv.piCongrRight` looks very different, so presumably `equivCongrLeft'` should *not* be called `equivCongrRight`.) re 4: Very unsure about the naming of the two different `…_apply` lemmas; called them `…_apply` and `…_apply'` for now. The second (`…_apply'`) cannot be a `simp` lemma as it would prevent the first (`…_apply`) from firing. I've used Claude Opus for understanding error messages and git interaction, but everything is hand coded. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
66/1 Mathlib/Algebra/DirectSum/Basic.lean 1 3 ['github-actions'] nobody
9-76180
9 days ago
10-2333
10 days ago
10-3925
10 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
9-69705
9 days ago
9-69705
9 days ago
2-50409
2 days
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 723/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 4 200 ['Rida-Hamadani', 'github-actions', 'grunweg', 'idontgetoutmuch'] nobody
9-37689
9 days ago
40-77240
40 days ago
85-84185
85 days
39474 emlis42
author:emlis42
feat(Topology/Separation/Hausdorff): add `Filter.limUnder_congr` This PR adds `Filter.limUnder_congr` and some lemmas about `limUnder`. `Filter.limUnder_congr` allows rewriting `limUnder` expressions using equivalences of convergence behavior, without proving the filters actually converge, allowing convergence proofs to be carried out on more convenient expressions latter. t-topology new-contributor large-import 24/1 Mathlib/Order/Filter/AtTopBot/Archimedean.lean,Mathlib/Topology/Separation/Hausdorff.lean 2 2 ['github-actions'] PatrickMassot
assignee:PatrickMassot
9-36101
9 days ago
13-57531
13 days ago
13-57493
13 days
35504 JoaBjo
author:JoaBjo
feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property Add the main analytic results for the exponential distribution: - moment-generating function `mgf id (expMeasure r) t = r / (r - t)` for `t < r` - mean `∫ x, x ∂(expMeasure r) = r⁻¹` - variance `Var[id; expMeasure r] = r⁻¹ ^ 2` - `ℒp` membership for all `p` - tail probability `P(X > x) = exp (-(r * x))` - memoryless property `P(X > s + t | X > s) = P(X > t)` The MGF is computed by reducing to the known improper integral `∫ exp(c * x)` on `Ioi`, and integrability is deduced by contradiction from the positive closed-form value. The mean and variance are computed via the Gamma function integral `∫₀^∞ x^(n-1) exp(-r x) dx = Γ(n) / rⁿ`. The memoryless property follows from the exponential identity `exp(-(r(s+t))) = exp(-rt) * exp(-rs)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability awaiting-author 200/0 Mathlib/Probability/Distributions/Exponential.lean 1 7 ['EtienneC30', 'JoaBjo', 'Timeroot', 'github-actions'] EtienneC30
assignee:EtienneC30
8-75945
8 days ago
8-75946
8 days ago
42-10925
42 days
39192 jayscambler
author:jayscambler
feat(InnerProductSpace/PiL2): det of a linear isometry has unit norm Adds `LinearIsometryEquiv.norm_det` and the real corollary `LinearIsometryEquiv.abs_det`. The proof uses the unitary matrix of a linear isometry in orthonormal bases, via `LinearIsometryEquiv.toMatrix_mem_unitaryGroup` and `Matrix.det_of_mem_unitary`. The supporting matrix lemma is moved from `Adjoint.lean` to `PiL2.lean`, where it no longer depends on adjoints. t-analysis new-contributor LLM-generated awaiting-author 36/10 Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean 2 8 ['github-actions', 'grunweg', 'jayscambler', 'sgouezel', 'themathqueen', 'wwylele'] sgouezel
assignee:sgouezel
8-75422
8 days ago
8-75422
8 days ago
10-9493
10 days
39586 thomaskwaring
author:thomaskwaring
feat: GraphLike typeclass A proposal for a typeclass representing `GraphLike` objects. This is axiomatised in terms of a relations `IsSource` and `IsTarget` between edges and vertices, as well as `IsLink` to represent walks of length one. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 539/0 Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/GraphLike/Walk.lean 2 4 ['SnirBroshi', 'eric-wieser', 'github-actions'] nobody
8-73291
8 days ago
unknown
0-0
0 seconds
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 199/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib 3 37 ['Shreyas4991', 'YaelDillies', 'Zetetic-Dhruv', 'github-actions'] nobody
8-68076
8 days ago
20-50309
20 days ago
37-10920
37 days
36667 NoneMore
author:NoneMore
feat(ModelTheory): add `exClosure` definition for first-order formulas Prepare for moving realizations between elementarily equivalent structures. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 37/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 2 ['github-actions'] nobody
8-37688
8 days ago
76-21909
76 days ago
76-21871
76 days
39673 drocta
author:drocta
feat: add instances of MetricSpace, NormedAddGroup, and NormedAddCommGroup for DirectLimit add files `Topology/MetricSpace/DirectLimit.lean` (with an instance of `MetricSpace` for a `DirectLimit` of a directed system of `MetricSpace`s with `IsometryClass` map types between them) and `Analysis/Normed/Group/DirectLimit.lean` (with instances of `NormedAddGroup` and `NormedAddCommGroup` on `DirectLimit`) also lemmas `dist_def` and `norm_def` for these. --- This PR is part of a project of adding support for direct limits of $C^*$-algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR uses `IsometryClass` to implement the requirement that the directed systems preserve the `Norm` on the `NormedAddGroup`s, following the advice I got [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Representing.20norm-preservation.20for.20directed.20systems.3F/with/595941824) . Use of AI: I again used ChatGPT a bit for some advice when writing this (for example, for ideas for simplifying parts of proofs that I suspected could be simpler/shorter, and for advice on which of a couple options would be more idiomatic). I can personally vouch for all of these contributions, and that I understand this code. t-topology new-contributor awaiting-author 258/0 Mathlib.lean,Mathlib/Analysis/Normed/Group/DirectLimit.lean,Mathlib/Analysis/Normed/Ring/DirectLimit.lean,Mathlib/Topology/MetricSpace/DirectLimit.lean 4 23 ['drocta', 'eric-wieser', 'github-actions', 'j-loreaux'] nobody
8-20520
8 days ago
8-33990
8 days ago
0-14741
4 hours
39356 TentativeConvert
author:TentativeConvert
pushforward of gradings along map between indexing sets Pushforward of grading along map between indexing sets The main result of #36501 is that the quotient of a graded algebra by a homogeneous relation inherits a grading. This draft complements #36501 with the result that the grading on a graded algebra can be changed by "pushing forward" along an additive map of additive monoids. For example, an ℕ-grading can be turned into a ℤ-grading by pushing forward along the inclusion ℕ → ℤ, or collapsed to an even/odd-grading by pushing forward along the projection ℤ → ZMod 2. This result is currently in [`RingTheory/GradedAlgebra/Map/DecompositionMap_SetLike.lean`](https://github.com/TentativeConvert/mathlib4/blob/f4e54e0ec25f44c5d373e355e9926481e3102ccd/Mathlib/RingTheory/GradedAlgebra/Map/DecompositionMap_SetLike.lean). The changes to [`Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean`](https://github.com/TentativeConvert/mathlib4/blob/f4e54e0ec25f44c5d373e355e9926481e3102ccd/Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean) illustrate how the two results can be combined to give a new construction of the grading on the Clifford algebra: First, the grading on the tensor algebra is collapsed to an even/odd grading. With respect to this grading, the Clifford relation is homogeneous. The Clifford algebra is the quotient of the tensor algebra by the Clifford relation, so we obtain an induced grading on the Clifford algebra. Notes: This draft includes all of #36501, as this is necessary to demonstrate the application to Clifford algebras. Most of the changes shown below are from that PR. (I don't know how to include that PR and highlight only the changes made on top of it here.) --- - [ ] depends on: #36501 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry new-contributor blocked-by-other-PR merge-conflict 1303/46 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Conjugation.lean,Mathlib/LinearAlgebra/CliffordAlgebra/EvenEquiv.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean,Mathlib/LinearAlgebra/TensorAlgebra/Grading.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/GradedAlgebra/Map/AddSubmonoidSSup.lean,Mathlib/RingTheory/GradedAlgebra/Map/DecompositionMap_SetLike.lean,Mathlib/RingTheory/GradedAlgebra/Map/Tests.lean,Mathlib/RingTheory/GradedAlgebra/Map/auxiliary.lean,Mathlib/RingTheory/GradedAlgebra/Map/locations.md,Mathlib/RingTheory/GradedAlgebra/Map/order-preserving-maps.md,Mathlib/RingTheory/Ideal/Span.lean 22 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-11781
8 days ago
unknown
0-0
0 seconds
39687 TentativeConvert
author:TentativeConvert
feat(Algebra/Group/Submonoid): type class to indicate that supremum in a SubmonoidClass agrees with supremum of submonoids Add a type class `SubmonoidClass.IsConcreteSSup` to indicate that the canonical map `.ofClass` from a class `S` of submonoids of `M` to `Submonoid M` preserves suprema. --- This PR implements the minimal type class assumption needed to make „pushfoward of gradings along maps of indexing sets“ – see draft PR #39356 – work in some `SetLike` generality. Given `{S M : Type*} [SetLike S M] [Monoid M] [SubmonoidClass S M]`, we have canonical maps ``` S → Submonoid M → Set M ``` The first is `Submonoid.ofClass`, the second and the composition are `coe` maps coming from the `SetLike` structures. Depending on `S`, these maps may or may not satisfy various properties with respect the lattice structures on `Submonoid M` and `Set M`. Mathlib so far includes the type class `[IsConcreteLE S M]`, which asserts that the composition `S → Set M` is order-preserving and order-reflecting. The type class defined here asserts that the first map, `S → Submonoid M`, preserves suprema. In examples such as `S = Subgroup M`, `S = Submodule R M`, much more is true – in these cases, `S` is a complete sublattice of `Submonoid M`. But there are also examples where only the weaker property defined here holds, e.g. `S = OpenSubgroup M` for a topological group `M`. Note on `outParam`: I did *not* write `(M : outParam Type*)` in the assumptions of `SubmonoidClass.IsConcreteSSup` in accordance with the [DocString of `Setlike`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/SetLike/Basic.html#SetLike). However, we do have `(B : outParam Type*)` in the definition of `IsConcreteLE`, so perhaps I'm misinterpreting the DocString. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
56/0 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/SSup.lean 2 2 ['github-actions'] nobody
8-6082
8 days ago
8-6151
8 days ago
8-6713
8 days
39589 ScottWe
author:ScottWe
feat: simple lemmas about Hermitian matrices This pull request establishes some simple proofs about Hermitian algebras. In particular: - Unitary Hermitian matrices are self-inverse; - Hermitian matrices are in correspondence with skew-adjoint matrices. new-contributor awaiting-author t-algebra t-analysis
label:t-algebra$
72/0 Mathlib.lean,Mathlib/Analysis/Matrix/SkewAdjoint.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/Unitary.lean 4 13 ['ScottWe', 'SnirBroshi', 'github-actions', 'j-loreaux', 'themathqueen'] nobody
7-75505
7 days ago
10-50787
10 days ago
0-7869
2 hours
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
7-52799
7 days ago
8-44595
8 days ago
53-38899
53 days
39697 sorrachai
author:sorrachai
feat(Data/Tree/Basic): add Membership instance, new notation, rename Tree Summary: 1. [Rename]([#CSLib > Splay tree PR: BinaryTree vs Tree @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR.3A.20BinaryTree.20vs.20Tree/near/596482765)) from Tree to BinaryTree, which propagates the changes to other files that use it. 2. Add membership instance, prove decidability of membership. 3. Add toListInOrder, toListPreOrder, toListPostOrder Suggestion based on the discussion in the cslib [thread](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391)[#CSLib > Splay tree PR @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391). --- * depends on: #39707 new-contributor 187/75 Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Tree/Get.lean,Mathlib/Data/Tree/Traversable.lean,Mathlib/Tactic/CancelDenoms/Core.lean,docs/overview.yaml 7 4 ['eric-wieser', 'github-actions', 'sorrachai'] nobody
7-45814
7 days ago
7-77374
7 days ago
7-79391
7 days
35069 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): simple polygons and boundary map This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution. - [x] depends on: #34598 --- new-contributor t-euclidean-geometry LLM-generated 360/0 Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean 4 30 ['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] nobody
7-37691
7 days ago
93-63546
93 days ago
96-11394
96 days
35402 samueloettl
author:samueloettl
feat(Dynamics/BirkhoffSum): birkhoffAverage const --- I think this is useful and one of these should be a simp lemma. I'm not really sure if I got the naming of the theorems correct. When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 14/0 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 26 ['Maldooor', 'github-actions', 'lua-vr', 'mcdoll', 'samueloettl'] sgouezel
assignee:sgouezel
7-36517
7 days ago
30-77040
30 days ago
96-75815
96 days
39518 abeldonate
author:abeldonate
feat(RingTheory/LocalProperties/Projective): Projective Module theorem Theorem: R Noetherian, M finitely generated R-Mod. Then: M projective iff M_m free for all m maximal t-ring-theory new-contributor large-import 21/0 Mathlib/RingTheory/LocalProperties/Projective.lean 1 9 ['abeldonate', 'github-actions', 'mbkybky', 'vlad902'] nobody
7-12206
7 days ago
10-76225
10 days ago
11-32042
11 days
39735 allenhaozhu
author:allenhaozhu
feat(LinearAlgebra/Matrix): regularized inverse limit and trace continuity Add `Matrix.regularizedInv_mul_tendsto_one` and the trace corollaries `Matrix.trace_regularizedInv_mul_tendsto` and `Matrix.trace_regularizedInv_mul_tendsto_card`: for a square matrix `M` over a normed field with `det M ≠ 0`, the Tikhonov-regularized expression `(M + lam • 1)⁻¹ * M` tends to the identity matrix as the scalar `lam` tends to zero, and consequently its trace tends to `tr 1 = (Fintype.card d : R)`. The proofs compose `NormedRing.inverse_continuousAt`, `continuousAt_matrix_inv`, `Matrix.nonsing_inv_mul`, and `Continuous.matrix_trace`; no new definitions are added. These lemmas are useful in matrix-regularization limit arguments arising in numerical linear algebra (Tikhonov-regularized least squares, ridge regression) and in statistics. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-algebra new-contributor LLM-generated
label:t-algebra$
109/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/InverseLimit.lean 2 2 ['github-actions'] nobody
7-12036
7 days ago
unknown
0-0
0 seconds
39734 allenhaozhu
author:allenhaozhu
feat(Analysis/CStarAlgebra/CStarMatrix): operator-monotone rpow/log/sqrt specializations Adds three discoverability lemmas for operator-monotonicity on `CStarMatrix n n A`, specializing the existing C\*-algebra-level results from `CFC.monotone_rpow` / `CFC.log_monotoneOn` / `CFC.monotone_sqrt`: ``` CStarMatrix.monotone_rpow {p : ℝ} (hp : p ∈ Set.Icc 0 1) : Monotone (fun M : CStarMatrix n n A => M ^ p) CStarMatrix.log_monotoneOn : MonotoneOn (CFC.log : CStarMatrix n n A → CStarMatrix n n A) {M | IsStrictlyPositive M} CStarMatrix.monotone_sqrt : Monotone (CFC.sqrt : CStarMatrix n n A → CStarMatrix n n A) ``` In the course of implementing these specializations, three shortcut instances are also registered to bypass a typeclass-diamond issue. `CStarMatrix n n A` derives `CStarAlgebra` from the underlying `CStarAlgebra A`, but the typeclass search for `ContinuousFunctionalCalculus ℝ (CStarMatrix n n A) IsSelfAdjoint` does not find the path through the `Matrix` diamond automatically. Explicit shortcut instances enable ergonomic use of `CFC.rpow`, `CFC.log`, etc.: ``` instance instContinuousFunctionalCalculusRealIsSelfAdjoint instance instNonUnitalContinuousFunctionalCalculusRealIsSelfAdjoint instance instNonnegSpectrumClassReal ``` **Reviewer note:** I am NOT attached to this PR — if reviewers prefer that downstream users call `CFC.monotone_rpow` directly and accept the typeclass-search cost, please close. The PR is offered as a convenience on the assumption that matrix-shaped users may search the matrix namespace first and benefit from the diamond shortcut. The shortcut instances may also belong in a separate PR if reviewers prefer. Extracted from LTFP-Lean (mechanical formalization of Bach's *Learning Theory from First Principles*), where matrix-side ergonomics matter for downstream proofs. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Opus 4.7 model. - **Use.** I specified the three target specialization lemmas. The assistant placed them in the right file, discovered the typeclass-diamond issue while implementing (adding 3 shortcut instances to resolve it), drafted the proofs, and verified the build under `lake build Mathlib.Analysis.CStarAlgebra.CStarMatrix.OperatorMonotone`. I reviewed the final code. - **Vouching.** I have read the declarations and can defend the proofs without further AI assistance. I welcome reviewer feedback on: - whether the three specialization lemmas justify their own file or should be merged into `CStarMatrix.lean` - whether the typeclass-diamond shortcut instances belong in this PR or a separate one - whether the convenience-layer is justified at all vs. having downstream users call `CFC.*` directly t-analysis new-contributor LLM-generated 101/0 Mathlib.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix/OperatorMonotone.lean 2 2 ['github-actions'] nobody
7-12006
7 days ago
unknown
0-0
0 seconds
39733 allenhaozhu
author:allenhaozhu
feat(LinearAlgebra/Matrix): nonsingular inverse commutes with any monoid hom of matrix rings Adds `Matrix.map_nonsing_inv`: for any `MonoidHomClass` morphism `f : Matrix n n R →* Matrix n n S` between matrix rings over commutative rings, and any `A : Matrix n n R` with `IsUnit A.det`, ``` (f A)⁻¹ = f A⁻¹ ``` The proof is short: `Matrix.inv_eq_right_inv` plus the fact that `f` preserves `*` and `1`: ```lean theorem map_nonsing_inv (f : F) {A : Matrix n n R} (hA : IsUnit A.det) : (f A)⁻¹ = f A⁻¹ := by apply Matrix.inv_eq_right_inv rw [← map_mul, Matrix.mul_nonsing_inv A hA, map_one] ``` Since `RingHom`, `RingEquiv`, `AlgHom`, `AlgEquiv`, and `StarAlgEquiv` between matrix rings all provide `MonoidHomClass` instances, the lemma applies uniformly to all of them — in particular to `Unitary.conjStarAlgAut`-style conjugations by a unitary matrix, which is the original motivating use case. This came up in a downstream project (mechanical formalization of Bach's *Learning Theory from First Principles*), where it underpins a spectral-identity proof: `(U * X * star U)⁻¹ = U * X⁻¹ * star U` for unitary `U` and invertible `X`. Rather than special-case the unitary-conjugation version, I generalized to any `MonoidHomClass` since the proof works mechanically. ### Why not just `map_inv`? The generic `map_inv` discharges `⁻¹` through a `MonoidHom` between groups, but `Matrix n n R` is not a group under multiplication — `⁻¹` here is `Matrix.nonsing_inv` (adjugate / det), which is only a two-sided inverse on the submonoid of nonsingular matrices. So `map_inv` doesn't apply directly; we need the `IsUnit A.det` hypothesis and a custom proof routed through `Matrix.inv_eq_right_inv`. ### Tests - `lake build Mathlib.LinearAlgebra.Matrix.NonsingularInverse` — green - `lake build Mathlib.Analysis.Matrix.Spectrum Mathlib.LinearAlgebra.Matrix.GeneralLinearGroup.Defs` — green (downstream smoke check, no regressions) - Verified usability against both `RingEquiv` and `StarAlgEquiv` instances via local smoke tests ### Notes on AI assistance Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic), Claude Opus 4.7 model. - **Use.** I specified the target statement (originally `ℝ`-specific to a unitary conjugation) and the scope of generalization. The assistant drafted the more general `MonoidHomClass` version, chose the file home, verified the proof builds under `lake build`, and tested downstream files for regressions. I reviewed the proof, naming, and file placement. - **Vouching.** I have read the declaration and can defend the proof without further AI assistance. Happy to take reviewer feedback on naming (`map_nonsing_inv` vs alternatives), namespace placement, or whether the typeclass bound should be relaxed further (e.g. to `MulHomClass` if we can avoid `map_one` — though `map_mul` + `mul_nonsing_inv = 1` + applying `f` to `1` seems to genuinely require `OneHomClass` too). t-algebra new-contributor LLM-generated
label:t-algebra$
17/0 Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean 1 2 ['github-actions'] nobody
7-11989
7 days ago
unknown
0-0
0 seconds
39718 RaggedR
author:RaggedR
feat(Archive): dual Langer graph and GH(2,2) non-self-duality This PR introduces the dual Langer graph, the line-collinearity graph of the split Cayley hexagon GH(2,2), and establishes the algebraic infrastructure for proving that it is not isomorphic to the Langer graph (the point-collinearity graph). Both graphs share the intersection array {6, 4, 4; 1, 1, 3} but are distinguished by the connectivity of their distance-3 subgraphs. The key mathematical contribution is deriving the G₂(2) line-action from the point-action (already in Archive.LangerGraph) via the triangle-line bijection. Each line of GH(2,2) corresponds to a unique triangle in the Langer graph, and the point-action sends triangles to triangles, inducing an action on lines. The induced line-action preserves the share-a-vertex relation, which is proved algebraically using Finset.image_inter (injective maps commute with intersection) and Finset.image_nonempty (images preserve non-emptiness). The equivariance of each generator is a 63-case native_decide verification, after which the word-level preservation follows by structural induction with no further computation. Two sorries remain. The bridge theorem connecting dual Langer adjacency to the share-vertex relation is a native_decide that needs tuning for the kernel recursion limit. The non-isomorphism theorem, which uses d₃-subgraph connectivity as a distinguishing invariant transported to all vertices via the line-action, depends on this bridge. These will be closed in a follow-up once the computational proofs are optimized. This PR depends on Archive.LangerGraph. t-combinatorics new-contributor 7203/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthGraph.lean,Archive/ClayworthSurface.lean,Archive/DualLangerGraph.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/LangerGraph.lean,Archive/Meinhold1344.lean,Archive/Meinhold2016.lean,Archive/Meinhold504.lean,Archive/Meinhold576.lean,Archive/MeinholdGraphs.lean,Archive/PrimitiveGraphs.lean,Archive/TriangleGroupSurface.lean,Archive/VoltageGraphs.lean,Archive/ZhouGraph.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 25 3 ['github-actions', 'mathlib-bors'] nobody
7-1603
7 days ago
7-45172
7 days ago
0-21857
6 hours
39698 RaggedR
author:RaggedR
feat(Archive): Meinhold family — five Sabidussi coset graphs of G₂(2) Five coset graphs of the exceptional Chevalley group G₂(2), each arising as Sab(G₂(2), K, D) for intermediate subgroups C₃ ≤ K ≤ G₂(2). The Clayworth graph (4032 vertices, cubic, genus 505) is the base case K = C₃. Meinhold-72 has 72 vertices, is 7-regular with girth 4, via K = PSL(3,2). Meinhold-504 has 504 vertices, is 24-regular with girth 4, via S₄. Meinhold-576 has 576 vertices, is 7-regular with girth 6, via C₇:C₃. Meinhold-1344 has 1344 vertices, is 9-regular with girth 6, via C₃×C₃. Meinhold-2016 has 2016 vertices, is 6-regular with girth 8, via C₆. Each graph has a Sabidussi isomorphism proving arc-transitivity, is connected, and has a shortest cycle witness establishing the girth. ![Meinhold-72](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/meinhold-72.jpeg) The Langer graph (63 vertices, 6-regular) is proved not to be a quotient of Clayworth: the three G₂(2)-invariant 63-block systems have quotient degrees 24, 32, 32, none of which equals 6. The Clayworth graph itself is proved to be a Sabidussi coset graph Sab(G₂(2), C₃, D) with two generators of orders 7 and 6 preserving adjacency, and BFS witness words establishing transitivity. The current approach is admittedly brute-force — the Clayworth graph is defined via a flat adjacency array and the quotient maps are verified by native_decide on concrete vertex data. A more algebraic treatment, deriving the Meinhold graphs directly from the coset lattice of G₂(2) without storing explicit adjacency data, would be cleaner and is planned as a follow-up. These graphs arise from my honours thesis on symmetric graph quotients (arXiv:1306.4798). The Meinhold family is named after Nick Meinhold, co-founder of Imagineering Melbourne. Depends on #39654 (CellularSurface instances, Clayworth graph). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics LLM-generated new-contributor 6884/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthGraph.lean,Archive/ClayworthSurface.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/LangerGraph.lean,Archive/Meinhold1344.lean,Archive/Meinhold2016.lean,Archive/Meinhold504.lean,Archive/Meinhold576.lean,Archive/MeinholdGraphs.lean,Archive/PrimitiveGraphs.lean,Archive/TriangleGroupSurface.lean,Archive/VoltageGraphs.lean,Archive/ZhouGraph.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 24 4 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1602
7 days ago
7-47423
7 days ago
0-33004
9 hours
39695 RaggedR
author:RaggedR
feat(Archive): Zhou-3 arc-transitivity and Lorimer quotient to Zhou-6 The Zhou-3 graph (Foster census F182A, 182 vertices, cubic) has an imprimitive block system of 91 blocks of size 2. This PR proves the block system is invariant under the full PSL(2,13) action via closure induction on the generators, with a pigeonhole argument for the inverse case. The setwise stabilizer of the block containing vertex 0 is D₁₂ (dihedral of order 12), which contains the point stabilizer S₃ at index 2. With the block structure established, Lorimer's quotient theorem (from #39551) is instantiated for the first time on a concrete graph: the quotient of Sab(PSL(2,13), S₃, D) by D₁₂ is isomorphic to Sab(PSL(2,13), D₁₂, D₁₂·D·D₁₂). The two hypotheses — H ≤ K and D ∩ K = ∅ — are verified, the first using the closure block invariance theorem and the second by observing that any element of K maps vertex 0 into {0, 137}, but neither is a neighbor of 0. Arc-transitivity of Zhou-3 is proved via Lorimer's forward theorem: the connection set is a single double coset S₃·a·S₃ where a is an explicit involution (a word of length 9 in the generators) that swaps vertex 0 with its neighbor 3. ![Zhou-3 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou3-F182A.jpg) ![Zhou-6 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou6-91v.jpg) This depends on the Sabidussi/Lorimer chain (#39530, #39548, #39550, #39551) and on #39654 for the Zhou-3 Sabidussi representation and SabidussiWitness infrastructure. t-combinatorics new-contributor LLM-generated 8575/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthSabidussi.lean,Archive/ClayworthSurface.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/VoltageGraphs.lean,Archive/ZhouGraph.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 16 3 ['github-actions', 'mathlib-bors'] nobody
7-1601
7 days ago
7-75662
7 days ago
0-2819
46 minutes
39654 RaggedR
author:RaggedR
feat(Archive): CellularSurface instances (genus 1, 2, 3, 505) This PR provides concrete CellularSurface instances for the four CSS surface codes: Heawood (genus 1), Bolza (genus 2), Klein quartic (genus 3), and Clayworth (genus 505). Each surface embeds a cubic arc-transitive graph arising from a Sabidussi coset construction, and the chain complex d1, d2 satisfies the boundary condition d1 · d2 = 0 that gives the CSS orthogonality. Together with #39653, which proves that k = 2g for any surface tiling, these instances yield formally verified CSS codes with parameters [[21, 2]], [[24, 4]], [[84, 6]], and [[6048, 1010]] respectively. The Heawood and Bolza surfaces are small enough that all axioms are verified by decide. Both include bridge theorems proving the CellularSurface graph matches the corresponding voltage graph on K₂ from VoltageGraphs.lean. The Klein quartic embeds the Klein graph (56 vertices) from the triangle group Δ(2,3,7) acting on PSL(2,7), with a Sabidussi proof. The Clayworth surface is the interesting case: 4032 vertices, 6048 edges, 1008 dodecagonal faces, genus 505. Rather than storing tens of thousands of array entries, the construction works algebraically from the regular representation of G₂(2) on 12096 darts, using a general TriangleGroupSurface module that derives a CellularSurface from any finite quotient of Δ(2,3,r). The key identity is that T = RS implies the far endpoint of each dart has the same vertex as its R-successor, because S preserves vertex cosets. There are five sorrys. Four are dual graph regularity theorems (Heawood 6-regular, Bolza 8-regular, Klein 7-regular, Clayworth 12-regular), all of which should be closable by native_decide. The fifth is the Clayworth Sabidussi isomorphism, where the individual native_decide checks all pass but the kernel struggles to assemble the SabidussiWitness structure for 4032 vertices. These are left for a follow-up. ![Klein graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/klein-F056A.jpg) ![Zhou-3 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou3-F182A.jpg) ![Zhou-6 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou6-91v.jpg) Depends on #39653 (CellularSurface, k = 2g). Cross-references #39649 (Langer/G₂(2) ecosystem), #39651 (voltage graphs). t-combinatorics new-contributor LLM-generated 2390/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthSurface.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/TriangleGroupSurface.lean,Archive/VoltageGraphs.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 15 9 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1600
7 days ago
7-66796
7 days ago
0-57608
16 hours
39653 RaggedR
author:RaggedR
feat(Combinatorics): cellular surfaces, CSS quantum codes, and k = 2g This formalises CSS quantum error-correcting codes from surface tilings, following Breuckmann & Terhal (arXiv:1506.04029). CellularSurface encodes the combinatorial data of a 2-cell embedding of a graph on a closed surface: vertices, edges with endpoints, and faces whose boundaries are closed directed trails. The boundary operators ∂₁ (vertex-edge incidence) and ∂₂ (edge-face boundary) are matrices over F₂. The theorem `d1_mul_d2_eq_zero` proves ∂₁ ∘ ∂₂ = 0 (the chain complex condition) from the closed walk axiom: each vertex in a face boundary is visited an even number of times, so the sum vanishes in characteristic 2. The theorem `d1_rank_eq` proves rank(∂₁) = V − 1 for connected graphs — the kernel of ∂₁ᵀ is span{1} because elements of the kernel assign equal values to adjacent vertices, and connectivity propagates this to all vertices. The theorem `d2_rank_eq` proves rank(∂₂) = F − 1 for connected dual graphs with the two-sides condition (each edge borders exactly 2 faces). The main result `css_k_eq_2g` gives the number of logical qubits k = 2g. This is pure arithmetic: k = E − rank(∂₁) − rank(∂₂) = E − (V−1) − (F−1) = E − V − F + 2 = 2g by Euler's formula. No `native_decide` — all proofs are structural. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1236/0 Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 7 7 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1598
7 days ago
7-1600
7 days ago
1-75937
1 day
39651 RaggedR
author:RaggedR
feat(Archive): voltage graphs on K₂, Heawood and Möbius-Kantor graphs This defines `voltageGraphK2`, a cubic covering construction on K₂ with cyclic voltage group `ZMod m`. Vertices are `Fin 2 × ZMod m`, with edges `(0, g) ~ (1, g + vⱼ)` for three voltages. Two instances are provided. The Heawood graph (F014A) is `voltageGraphK2 7 0 4 6`, the Levi graph of the Fano plane PG(2,2): 14 vertices, cubic, girth 6, equal to Sab(G₄₂, C₃) where G₄₂ = Z₇ ⋊ Z₆. The Möbius-Kantor graph (F016A) is `voltageGraphK2 8 0 1 3`, the generalised Petersen graph GP(8,3): 16 vertices, cubic, girth 6, equal to Sab(GL(2,3), C₃). Both quotient to K₂ under the fibre projection `Prod.fst`, recovering the base graph. ![Heawood graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/heawood-F014A.jpg) ![Möbius-Kantor graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/mobius-kantor-F016A.jpg) The voltage graph construction and named graph instances follow Langer, arXiv:1306.4798, and Gross & Tucker, *Topological Graph Theory*. Depends on #39551 (quotient graphs and Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1113/0 Archive.lean,Archive/VoltageGraphs.lean,Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 8 6 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1597
7 days ago
7-1599
7 days ago
1-50237
1 day
39650 RaggedR
author:RaggedR
feat(Archive): dodecahedron, Petersen graph, 3-cube, and antipodal quotients This defines the dodecahedron graph (Fin 20, 3-regular, 30 edges), the Petersen graph (Fin 10, as the antipodal quotient of the dodecahedron), and the 3-cube Q₃ (Fin 8, 3-regular, 12 edges) with its antipodal quotient proved equal to K₄. The Petersen graph is defined as `dodecahedronGraph.quotientGraph dodecAntipodalMap`, using the quotient graph infrastructure from #39551. The antipodal involution on the dodecahedron identifies each vertex with the vertex at distance 5 (diametrically opposite). The 3-cube's antipodal involution (bitwise complement) quotients to K₄ = ⊤. ![Dodecahedron → Petersen quotient](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/dodecahedron-quotient-petersen.jpeg) ![Cube → K₄ quotient](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/cube-quotient-k4.jpeg) The graph definitions and quotient constructions follow Langer, arXiv:1306.4798. Depends on #39551 (quotient graphs and Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1097/0 Archive.lean,Archive/NamedGraphs.lean,Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 8 8 ['RaggedR', 'github-actions', 'mathlib-bors', 'vihdzp'] nobody
7-1596
7 days ago
7-1598
7 days ago
1-81310
1 day
39649 RaggedR
author:RaggedR
feat(Archive): Langer graph, Tutte 12-cage, and structural equality via G₂(2) This adds three constructions from the theory of generalized polygons over finite fields to Archive/, and proves they give the same graph using the Sabidussi representation theorem from #39548 and #39550. The Langer graph (63 vertices, 6-regular) is the collinearity graph of the split Cayley hexagon GH(2,2). It has three independent definitions: algebraically via the Zorn product on Q(6,2) (`langerSimpleGraph`), geometrically as the distance-2 graph of the Tutte 12-cage restricted to points (`tutte12Distance2Graph`), and group-theoretically as the coset graph Sab(G₂(2), H₁₉₂, D) where H₁₉₂ is the point stabiliser of order 192 (`langerCosetGraph`). The main result `langer_iso_tutte12_distance2` proves the algebraic and geometric definitions are isomorphic by composing two Sabidussi isos through a common coset graph. Both graphs are G₂(2)-invariant and arc-transitive, so `sabidussiIso` maps each to Sab(G₂(2), Stab(0), D). Since they have the same 6 neighbors at vertex 0, their connection sets are equal (`dist2_connectionSet_eq`), so both map to the same coset graph. The proof is `langerSabidussiIso.trans dist2SabidussiIso.symm`. ![Langer graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/langer-63v.jpg) ![Tutte 12-cage](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/tutte-12cage.jpg) Also included: the Tutte 12-cage (126 vertices, semisymmetric because GH(2,2) has no polarity over F₂), and self-orthogonality of the Q(6,2) parity-check matrix. Generator data was produced by `compute_g2_generators.py` in the source repo at RaggedR/symmetric-graphs. Depends on #39548 (coset graphs), #39550 (Sabidussi representation), #39551 (quotient graphs). The `sabidussiIso`, `connectionSet`, and `GraphAction` from those PRs are load-bearing in the equivalence proof. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1576/0 Archive.lean,Archive/LangerGraph.lean,Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 8 8 ['RaggedR', 'github-actions', 'mathlib-bors', 'wwylele'] nobody
7-1595
7 days ago
7-1596
7 days ago
1-57766
1 day
39636 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): ascending Pochhammer is of binomial type This adds two concrete examples to the delta operator framework from #39465, illustrating the change of basis between the two classical families of binomial-type sequences beyond the monomials. The first file proves that the ascending Pochhammer (rising factorial) sequence is of binomial type. The backward difference operator ∇f(x) = f(x) − f(x−1) is defined, shown to be a delta operator, and the ascending Pochhammer sequence is verified as its basic sequence via a telescoping argument. The final theorem `ascPochhammer_isBinomialType` is a one-line application of Rota's classification from #39465, complementing the existing `descPochhammer_isBasicSequence_forwardDiff` for falling factorials and the forward difference. The second file computes the Jabotinsky matrix entries of the geometric delta series y/(1−y), giving the unnormalized Lah numbers C(n−1, k−1) as the change-of-basis coefficients between rising and falling factorials. The proof factors the power (y/(1−y))ᵏ = Xᵏ · (1−X)⁻ᵏ and applies Mathlib's existing `mk_one_pow_eq_mk_choose_add` for the negative binomial series. --- - [ ] depends on: #39465 --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor blocked-by-other-PR LLM-generated 1596/0 Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/AscPochhammer.lean,Mathlib/RingTheory/HopfAlgebra/BinomialType.lean,Mathlib/RingTheory/HopfAlgebra/DeltaOperator.lean,Mathlib/RingTheory/HopfAlgebra/Lah.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean 6 9 ['RaggedR', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'themathqueen'] nobody
7-1593
7 days ago
9-32759
9 days ago
0-211
3 minutes
39551 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): Lorimer's theorem and quotient graphs This completes the algebraic theory of symmetric graphs by proving Lorimer's theorem (both directions) and the Lorimer quotient theorem, building on the Sabidussi representation theorem from #39550. Lorimer's theorem characterizes symmetric (arc-transitive) graphs in terms of coset graphs. The forward direction shows that Sab(G, H, HaH) is arc-transitive whenever a is an involution not in H. The proof establishes local transitivity at the identity coset by exploiting the double coset decomposition of neighbors, then transports it to all vertices by conjugation. The reverse direction shows that every arc-transitive graph's connection set is a single double coset GᵥaGᵥ, where a is the element swapping an arc (v, w). This a satisfies a ∉ Gᵥ and a² ∈ Gᵥ. The quotient theorem shows that the quotient of Sab(G, H, D) by an overgroup K ≥ H (with D ∩ K = ∅) is isomorphic to Sab(G, K, KDK) where KDK is the expanded connection set. The isomorphism is witnessed by Equiv.refl — the quotient graph and the coset graph with expanded connection set are the same graph up to the identity map on G ⧸ K. Together with #39530, #39548, and #39550, this gives a complete formalization of Chapters 1–2 of arXiv:1306.4798. Depends on #39550. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 755/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 6 5 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1592
7 days ago
7-1594
7 days ago
4-51374
4 days
39550 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): Sabidussi representation theorem This proves Sabidussi's representation theorem: if a group G acts transitively on the vertices of a graph Γ while preserving adjacency, then Γ is isomorphic to the coset graph `Sab(G, Gᵥ, D)` where `Gᵥ` is the stabilizer of a basepoint and `D = {g ∈ G : Γ.Adj v (g • v)}` is the connection set. For arc-transitive (symmetric) graphs, the connection set D is a single double coset HaH, giving the classical Sabidussi coset graph Sab(G, H, HaH). For merely vertex-transitive graphs, D may be a union of several double cosets. The connection set D is shown to satisfy the IsConnectionSet axioms for the stabilizer subgroup: it is stable under left and right multiplication by stabilizer elements (since the stabilizer fixes v and the action preserves adjacency), closed under inversion (since the graph is undirected), and disjoint from the stabilizer (since the graph has no loops). The orbit-stabilizer equivalence V ≃ G ⧸ Gᵥ is then shown to preserve adjacency in both directions, completing the isomorphism. The definitions and proofs are from my honours thesis (*Symmetric Graphs and their Quotients*, arXiv:1306.4798). Depends on #39548. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 423/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean 4 5 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1591
7 days ago
7-1593
7 days ago
4-52121
4 days
39548 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): coset graphs (Sabidussi construction) This adds coset graphs (Sabidussi's construction) to Mathlib, building on the graph action infrastructure from #39530. Given a group `G`, a subgroup `H`, and a connection set `D` (a union of `(H,H)`-double cosets, closed under inversion, disjoint from `H`), the coset graph `Sab(G, H, D)` is the simple graph on `G ⧸ H` where `xH` is adjacent to `yH` whenever `x⁻¹y ∈ D`. The well-definedness proof — that adjacency is independent of coset representatives — uses the double coset stability of `D`. This is the core algebraic content of the construction. The file then shows that left multiplication by `G` preserves adjacency (`graphAction` instance) and that coset graphs are vertex-transitive. When `H ≤ K`, the natural projection `G ⧸ H → G ⧸ K` is a graph homomorphism for coset graphs sharing the same connection set `D`. The proof of `proj_adj` is trivial — adjacency is `x⁻¹y ∈ D` in both graphs, independent of the subgroup. This is the Sabidussi analogue of quotient by a block system: the orbits of `K` on `G ⧸ H` form blocks of size `[K : H]`, and the quotient graph is `Sab(G, K, D)`. For example, the Zhou graph (F182A, Sab(PSL(2,13), S₃), 182 vertices, cubic) projects to the Zhou-6 graph (Sab(PSL(2,13), D₁₂), 91 vertices, 6-regular) via S₃ ≤ D₁₂, and the dodecahedron (Sab(A₅, C₃)) projects to the Petersen graph (Sab(A₅, D₆)) via C₃ ≤ D₆. Sabidussi's construction generalizes Cayley graphs (which are the special case `H = ⊥`). Together with the representation theorem (a future PR), it gives a complete classification: every vertex-transitive graph is isomorphic to a coset graph. The definitions and proofs are from my honours thesis (*Symmetric Graphs and their Quotients*, arXiv:1306.4798). Depends on #39530. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 304/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean 3 5 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1590
7 days ago
7-1591
7 days ago
4-52985
4 days
39498 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): umbral operators via generating functions ## Umbral operators via generating functions This PR completes the formalization of the finite operator calculus on `R[X]` over a ℚ-algebra. The entire umbral calculus — every theorem, every lemma, zero sorry's — is now machine-checked, from the coalgebra axioms (PR #39410) through Rota's classification (PR #39465) to the umbral operator and its duality theory. Given a delta operator `Q` on `R[X]`, the **delta series** `f(y) = Σ (Q(X^k)).eval 0 / k! · y^k` is a formal power series with zero constant term and unit linear coefficient. Its compositional inverse `g` (obtained via Mathlib's `substInvOfIsUnit`) encodes the **basic sequence**: the polynomial `p_n` has coefficients `(p_n).coeff k = descFact(n, n-k) · [y^n](g^k)`. The **umbral operator** `U_Q` is the linear extension of `X^n ↦ p_n`. The key result is the **lowering property** `Q(p_{n+1}) = (n+1) • p_n`. The proof uses the natural duality of the finite operator calculus — the derivative pairing `⟨h, p⟩ = Σ_k coeff_k(h) · k! · p.coeff k` between `R⟦X⟧` and `R[X]`. Under this pairing, Q's adjoint is multiplication by f (proved via the convolution formula for power series coefficients), orthogonality gives `⟨f^k, p_n⟩ = n! · δ_{kn}` (from the Jabotinsky matrix identity), and non-degeneracy closes it (upper-triangular with unit diagonal, by descending induction). Three lines of mathematics, backed by a clean chain of lemmas. Once lowering is established, `umbralPoly_isBasicSequence` follows immediately, and `IsBasicSequence.isBinomialType` (from #39465) gives the coalgebra endomorphism property — completing the circle back to the Hopf algebra structure. References: Langer, *Macdonald Polynomials and Symmetric Functions* (arXiv:0907.3950), §1.2.2; Roman, *The Umbral Calculus*, Academic Press 1984, Ch. 2. Depends on #39410, #39465. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor LLM-generated 2141/0 Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/BinomialType.lean,Mathlib/RingTheory/HopfAlgebra/DeltaOperator.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean,Mathlib/RingTheory/HopfAlgebra/UmbralOperator.lean 5 6 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1587
7 days ago
7-1589
7 days ago
1-5628
1 day
39465 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): delta operators and Rota's classification This formalizes the fundamental theorem of the umbral calculus: that the basic sequence of any delta operator is a sequence of binomial type. A delta operator on R[X] is a shift-equivariant linear operator which is essentially a formal power series in the variable d/dx. Rota's classification theorem states that the images of monomials x^n under delta operators are sequences of binomial type. This PR defines `IsBinomialType`, `IsShiftEquivariant`, `IsDeltaOperator`, `forwardDiff`, and `IsBasicSequence`. It proves that monomials and falling factorials are of binomial type, that the derivative and forward difference are delta operators, and that basic sequences are of binomial type (Rota's classification). The mathematical content is from the first half of my masters thesis (arXiv:0907.3950). See also Rota, Kahaner, and Odlyzko, *Finite Operator Calculus* (JMAA 42, 1973) and Roman, *The Umbral Calculus* (Academic Press, 1984). Depends on #39410. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor LLM-generated 1386/0 Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/BinomialType.lean,Mathlib/RingTheory/HopfAlgebra/DeltaOperator.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean 4 8 ['RaggedR', 'github-actions', 'mathlib-bors', 'wwylele'] nobody
7-1586
7 days ago
7-1588
7 days ago
0-78931
21 hours
39530 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): group actions on simple graphs This adds the first connection between Mathlib's MulAction and SimpleGraph libraries. The GraphAction class asserts that a group action on the vertex type preserves the adjacency relation, and builds on it to define vertex-transitivity and arc-transitivity for graphs. The GraphAction typeclass gives adj_smul_iff (the biconditional for group actions) and toIso (each group element induces a graph automorphism). The IsVertexTransitive class combines GraphAction with IsPretransitive, and IsArcTransitive requires transitivity on ordered adjacent pairs (arcs). The main theorem is the standard characterization: a graph is arc-transitive if and only if it is vertex-transitive and locally transitive (the stabilizer of each vertex acts transitively on its neighbors). The forward direction is proved directly by composing a vertex-transporting element with a neighbor-transporting stabilizer element. The reverse direction shows that an arc-transitive graph with no isolated vertices is vertex-transitive. These definitions are the algebraic graph theory prerequisites for formalizing coset graphs (Sabidussi's construction) and the characterization of symmetric graphs via double cosets and involutions (Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 130/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean 2 7 ['RaggedR', 'b-mehta', 'github-actions', 'mathlib-bors'] nobody
7-1574
7 days ago
7-1574
7 days ago
11-56386
11 days

PRs not into the master branch

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
13158 erdOne
author:erdOne
refactor(RingTheory/OreLocalization/Module): remove `LocalizedModule.mk`. --- - [x] depends on: #13151 - [ ] depends on: #13156 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
49/48 Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean 2 2 ['urkud'] nobody
138-26041
4 months ago
723-109
723 days ago
9-15083
9 days

PRs with an 'approved' review

Number Author Title Description Labels +/- Modified files (first 100) 📝 💬 All users who commented or reviewed Assignee(s) Approval(s) Updated Last status change total time in review
12608 eric-wieser
author:eric-wieser
feat: allow `nsmul` / `zsmul` to be omitted again, with a warning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-meta
label:t-algebra$
118/2 Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DefaultFieldLinter.lean,scripts/noshake.json,test/default_field_linter.lean 6 12 ['YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions'] nobody 1
668-11657
1 year ago
757-44076
757 days ago
0-84
1 minute
8519 eric-wieser
author:eric-wieser
refactor(LinearAlgebra/TensorProduct): golf using `liftAddHom` This new `TensorProduct.liftAddHom` doesn't require bilinearity, only that scalar multiplication can be moved between the arguments. While in theory we only need the `AddMonoidHom` version as it offers exactly the same generality, we first provide an unbundled `liftFun` as this seems to give a sizeable performance boost if used in downstream `lift` variants. --- - [x] depends on: #8571 - [x] depends on: #8584 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
53/50 Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean 3 28 ['bustercopley', 'eric-wieser', 'jcommelin', 'jjaassoonn', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors'] nobody 1
668-11654
1 year ago
907-63417
907 days ago
5-6524
5 days
9146 laughinggas
author:laughinggas
feat(Data/ZMod/Defs): Topological structure on `ZMod` Added a discrete topology structure to `ZMod n` for all `n` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-topology
label:t-algebra$
55/3 Mathlib.lean,Mathlib/Topology/Algebra/Constructions.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Instances/ZMod.lean,Mathlib/Topology/Maps.lean 5 61 ['YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'laughinggas', 'mo271', 'urkud'] nobody 1
668-11654
1 year ago
874-56145
874 days ago
7-11053
7 days
6777 adomani
author:adomani
chore(Co*variantClass): replace eta-expanded (· * ·), (· + ·), (· ≤ ·), (· < ·) Replace `CovariantClass X X (· * ·) (· ≤ ·)` with -> `CovariantClass X X HMul.hMul LE.le` and similarly for `HAdd`, `LT`, `Contravariant`. This PR is inspired by [Issue #6646](https://github.com/leanprover-community/mathlib4/issues/6646) and, more specifically, [this comment](https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1692792066). Note that https://github.com/leanprover/lean4/pull/2267 would make this unnecessary --- ```bash # First sed command: # the first captured pattern is `Co*variantClass ` # the second captured pattern is `` # the third captured pattern is `+` or `*` # the fourth captured pattern is `<` or `≤` # a match for `Co*variantClass ·) (· ·)` becomes # `Co*variantClass replaceop replaceop` # Second sed command: similar to the first, but looks for `(Function.swap (· ·))` sed -i ' s=\(Co[ntra]*variantClass \(..*\) \2 \)(· *\([+*]\) *·) (· *\([<≤]\) *·)=\1replaceop\3 replaceop\4=g s=\(Co[ntra]*variantClass \(..*\) \2 \)(\([Functio\.swap ]*\)(· *\([+*]\) *·)) (· *\([<≤]\) *·)=\1(\3replaceop\4) replaceop\5=g s=replaceop+=HAdd.hAdd=g s=replaceop\*=HMul.hMul=g s=replaceop<=LT.lt=g s=replaceop≤=LE.le=g s=\(Co[ntra]*variantClass N N\) (· \* ·) r=\1 HMul.hMul r=g s=\(Co[ntra]*variantClass N N (swap μ)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass N N\) (swap (· \* ·)) r=\1 (swap HMul.hMul) r=g s=\(CovariantClass (Filter α) (Filter α)\) (· / ·) (· ≤ ·)=\1 HDiv.hDiv LE.le=g s=\(CovariantClass (Filter α) (Filter α)\) (swap (· / ·)) (· ≤ ·)=\1 (swap HDiv.hDiv) LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· < ·)=\1 LT.lt=g s=\(Co[ntra]*variantClass [^}]*\) (· ≤ ·)=\1 LE.le=g s=\(CovariantClass .* (Filter β)\) (· • ·) LE.le=\1 HSMul.hSMul LE.le=g ' $(git ls-files '*.lean') ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 703/678 Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/Bounds.lean,Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/GroupPower/Order.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/MinMax.lean,Mathlib/Algebra/Order/Group/OrderIso.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/LatticeGroup.lean,Mathlib/Algebra/Order/Module.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Cancel/Defs.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Lemmas.lean,Mathlib/Algebra/Order/Monoid/MinMax.lean,Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithZero/Basic.lean,Mathlib/Algebra/Order/Monoid/WithZero/Defs.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Lemmas.lean,Mathlib/Algebra/Order/Sub/Basic.lean,Mathlib/Algebra/Order/Sub/Canonical.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Order/WithZero.lean,Mathlib/Algebra/Parity.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Normed/Order/Lattice.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/List/BigOperators/Basic.lean,Mathlib/Data/List/BigOperators/Lemmas.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Nat/Cast/Order.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/Real/ENNReal.lean,Mathlib/Data/Real/NNReal.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/VectorMeasure.lean,Mathlib/Order/ConditionallyCompleteLattice/Group.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/PGame.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Topology/ContinuousFunction/Algebra.lean,lean-toolchain,test/Recall.lean,test/propose.lean 81 37 ['adomani', 'alreadydone', 'digama0', 'eric-wieser', 'ericrbg', 'jcommelin', 'leanprover-bot', 'sgouezel', 'vihdzp'] nobody 1
668-11653
1 year ago
942-63550
942 days ago
35-63136
35 days
12751 Command-Master
author:Command-Master
feat: add lemmas for Nat/Bits, Nat/Bitwise and Nat/Size Remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 66/7 Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Size.lean 4 26 ['Command-Master', 'Rida-Hamadani', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'jcommelin'] nobody 1
648-75354
1 year ago
683-81576
683 days ago
56-40668
56 days
15448 urkud
author:urkud
chore(*): deprecate `Option.elim'` Use `Option.elim` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt 54/50 Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/Option/Defs.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean 17 12 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'grunweg', 'urkud'] nobody 1
648-64407
1 year ago
658-24169
658 days ago
7-18420
7 days
13514 madvorak
author:madvorak
feat(Computability/ContextFreeGrammar): closure under union - [ ] depends on: #15895 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability blocked-by-other-PR 448/4 Mathlib/Computability/ContextFreeGrammar.lean 1 50 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak'] nobody 1
574-4811
1 year ago
651-65192
651 days ago
72-28417
72 days
12133 ADedecker
author:ADedecker
feat: generalize instIsLowerProd to arbitrary products Also change a bit the proof of the product case to match my own taste, feel free to tell if you prefer the old one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 34/14 Mathlib/Topology/Constructions.lean,Mathlib/Topology/Order/LowerUpperTopology.lean 2 13 ['Ruben-VandeVelde', 'TwoFX', 'github-actions', 'jcommelin', 'mans0954', 'mathlib-bors', 'riccardobrasca'] nobody 2
561-10859
1 year ago
712-6495
712 days ago
63-69226
63 days
18461 hannahfechtner
author:hannahfechtner
feat: left and right common multiples mixins add mixins for left and right common multiples. These carry the data of what factors are used to create the common multiples --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
78/0 Mathlib/Algebra/Group/Defs.lean 1 13 ['github-actions', 'hannahfechtner', 'jcommelin', 'kbuzzard', 'kim-em', 'trivial1711'] nobody 1
495-7326
1 year ago
495-7326
495 days ago
69-35596
69 days
2605 eric-wieser
author:eric-wieser
chore: better error message in linarith On this mwe: ```lean import Mathlib.Tactic.Linarith example (s : Set ℕ) (h : s = s) : 0 ≤ 1 := by linarith ``` this now indicates where the internal error is coming from. Is there a better way of chaining errors than this? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 12/1 Mathlib/Tactic/Linarith/Preprocessing.lean 1 3 ['Vierkantor', 'harahu', 'kim-em', 'mo271'] nobody 1
484-75746
1 year ago
1132-20885
1132 days ago
51-42225
51 days
19425 hrmacbeth
author:hrmacbeth
perf: gcongr forward-reasoning adjustment This PR changes the "forward-reasoning" component of `gcongr`, rendering it more efficient, particularly in problems with a large number of variables/hypotheses in the context. Previously `gcongr` attempted to match *every* `LocalDecl` against *every* node in the parse tree using *each* of the five implemented `@[gcongr_forward]` mini-tactics: matching directly, matching after applying `symm`, matching after applying `le_of_lt`, etc etc. The new algorithm filters out the non-Prop `LocalDecl`s, and also adjusts the `@[gcongr_forward]` extensions so that, rather than re-apply the relevant lemmas (`symm`, `le_of_lt`, etc) at every node in the parse tree, the lemmas are applied in advance to the `LocalDecl`s and the result (if successful) stored. The performance effect on mathlib as a whole is miniscule, but it speeds up the profiler's count of "tactic execution of Mathlib.Tactic.GCongr" in the newly-added test from 257 ms to 47 ms, and has a similar effect on real-life examples in an analysis project of mine. Co-authored-by: Mario Carneiro --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) (Note that Mario provided the ideas but not the code, so please review with appropriate diligence!) merge-conflict awaiting-author 130/59 Mathlib/Order/Lattice.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/ForwardAttr.lean,MathlibTest/GCongr/inequalities.lean 4 17 ['Vierkantor', 'github-actions', 'hrmacbeth', 'leanprover-bot', 'leanprover-community-bot-assistant'] Vierkantor
assignee:Vierkantor
1
415-5708
1 year ago
547-80525
547 days ago
1-41769
1 day
19315 quangvdao
author:quangvdao
feat(Data/Finsupp/Fin): Add `Finsupp` operations on `Fin` tuple This PR adds more analogues of operations on `Fin` tuples to the `Finsupp` setting. Before, there were only `Finsupp.cons` and `Finsupp.tail`. Now there are also `Finsupp.snoc`, `Finsupp.insertNth`, `Finsupp.init`, and `Finsupp.removeNth`. These all come with supporting lemmas. I also removed the porting comment about `succAboveCases` in `Data/Fin/Basic`, and added a lemma about `succAbove` in `Data/Fin/Tuple/Basic`. --- - [x] depends on: #20361 - [x] depends on: #20771 - [x] depends on: #20770 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 193/16 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,scripts/nolints_prime_decls.txt 6 44 ['YaelDillies', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody 1
388-48713
1 year ago
465-73736
465 days ago
43-80684
43 days
21276 GabinKolly
author:GabinKolly
feat(ModelTheory/Substructures): define equivalences between equal substructures Define first-order equivalences between equal substructures, and prove related properties. --- This is some preparatory work for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-logic 62/0 Mathlib/ModelTheory/Substructures.lean 1 19 ['GabinKolly', 'YaelDillies', 'fpvandoorn', 'github-actions', 'grunweg'] nobody 1
385-66787
1 year ago
385-66787
385 days ago
46-55730
46 days
25401 digama0
author:digama0
feat(Util): SuppressSorry option See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 342/0 Mathlib.lean,Mathlib/Util/CommandElabHook.lean,Mathlib/Util/SuppressSorry.lean,MathlibTest/suppressSorry.lean 4 15 ['digama0', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] alexjbest
assignee:alexjbest
1
289-43175
9 months ago
289-43175
289 days ago
71-27957
71 days
26078 kckennylau
author:kckennylau
feat(AlgebraicGeometry): add x, y, px, py for points on elliptic curves --- Split from #25218. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebraic-geometry 44/0 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean 1 12 ['MichaelStollBayreuth', 'Multramate', 'acmepjz', 'dagurtomas', 'github-actions', 'kckennylau'] nobody 1
281-72791
9 months ago
281-72791
281 days ago
64-11252
64 days
26462 PSchwahn
author:PSchwahn
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`. We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification). Co-authored by: - [Viviana del Barco](https://github.com/vdelbarc) - [Gustavo Infanti](https://github.com/GuQOliveira) - [Exequiel Rivas](https://github.com/erivas) --- I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
10/0 Mathlib/LinearAlgebra/Projection.lean 1 7 ['PSchwahn', 'github-actions', 'joelriou', 'kckennylau'] joelriou
assignee:joelriou
1
263-41778
8 months ago
263-72881
263 days ago
73-43082
73 days
27937 madvorak
author:madvorak
feat(Logic/Basic): `congr_heq₂` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-logic 6/0 Mathlib/Logic/Basic.lean 1 8 ['YaelDillies', 'fpvandoorn', 'github-actions', 'madvorak', 'vihdzp'] fpvandoorn
assignee:fpvandoorn
1
255-5717
8 months ago
281-6502
281 days ago
17-62644
17 days
21950 erdOne
author:erdOne
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-number-theory 253/1 Mathlib.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroMulInt.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean 7 33 ['Ruben-VandeVelde', 'erdOne', 'faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky', 'smmercuri', 'xroblot'] nobody 1
245-75631
8 months ago
326-75568
326 days ago
73-10873
73 days
26330 Timeroot
author:Timeroot
feat: "Junk value" test file This PR continues the work from #25173. Original PR: https://github.com/leanprover-community/mathlib4/pull/25173 awaiting-author t-data 360/0 MathlibTest/Junk.lean 1 17 ['SnirBroshi', 'Timeroot', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak', 'pechersky', 'vihdzp'] pechersky
assignee:pechersky
2
242-32958
8 months ago
242-32958
242 days ago
48-67789
48 days
27302 tristan-f-r
author:tristan-f-r
feat(Fintype/Quotient): finLiftOn₂ The combination of [`Quotient.finLiftOn`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fintype/Quotient.html#Quotient.finLiftOn) and [`liftOn₂`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Quotient.liftOn%E2%82%82). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data 19/0 Mathlib/Data/Fintype/Quotient.lean 1 12 ['github-actions', 'kckennylau', 'pechersky', 'tristan-f-r', 'vihdzp'] pechersky
assignee:pechersky
2
226-23718
7 months ago
226-23718
226 days ago
6-5358
6 days
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 1
226-18794
7 months ago
277-50591
277 days ago
0-1
1 second
28737 astrainfinita
author:astrainfinita
refactor: deprecate `MulEquivClass` This PR continues the work from #18806. Original PR: https://github.com/leanprover-community/mathlib4/pull/18806 merge-conflict awaiting-author t-algebra
label:t-algebra$
67/77 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/GroupWithZero/Equiv.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Star/MonoidHom.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/FreeModule/Finite/CardQuotient.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 26 20 ['Vierkantor', 'alreadydone', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
1
214-9276
7 months ago
277-55849
277 days ago
2-39213
2 days
27180 ADedecker
author:ADedecker
feat: quotient of a monoid with zero by a multiplicative congruence --- My motivation is getting a more conceptual construction of [ValuativeRel.ValueGroupWithZero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/ValuativeRel.html#ValuativeRel.ValueGroupWithZero), but I think this is of independent interest. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra delegated
label:t-algebra$
141/26 Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean 5 32 ['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'ocfnash'] ocfnash
assignee:ocfnash
1
210-78932
6 months ago
290-8067
290 days ago
28-12053
28 days
9352 chenyili0818
author:chenyili0818
feat: arithmetic lemmas for `gradient` This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties Co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 404/0 Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Lemmas.lean 2 31 ['chenyili0818', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sgouezel', 'winstonyin'] nobody 1
192-14370
6 months ago
829-79219
829 days ago
52-1358
52 days
11890 adomani
author:adomani
feat: the terminal refine linter A linter that warns on usages of `refine` and `refine'` as a finishing tactic. See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Usage.20of.20refine'). ### Conclusion of the experiment Systematic replacements of terminal `refine` with `exact` leads to an overall slow-down. --- - [ ] depends on: #15616 (disable the linter in downstream projects) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 77/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TerminalRefineLinter.lean 3 15 ['adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'urkud'] nobody 1
192-14239
6 months ago
654-48745
654 days ago
18-28993
18 days
20924 tomaz1502
author:tomaz1502
feat(Computability/QueryComplexity): Oracle-based computation This PR adds the types and lemmas for oracle-based computation. In this model, computations are run on a monad which also counts the number of oracle queries executed. With it, it becomes possible to reason about the upper bound of the query complexity of algorithms. In the future, we could extend this work to include the necessary bits from information theory and probability to also reason about lower bounds on query complexity, like the work in https://github.com/girving/debate. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2318629.20runtime.20complexity.20of.20sorting.20a.20list Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability 305/0 Mathlib.lean,Mathlib/Computability/QueryComplexity/Basic.lean,Mathlib/Computability/QueryComplexity/Defs.lean 3 60 ['eric-wieser', 'girving', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao', 'tomaz1502'] nobody 1
192-13805
6 months ago
461-35100
461 days ago
27-32630
27 days
21624 sinhp
author:sinhp
feat(CategoryTheory): The (closed) monoidal structure on the product category of families of (closed) monoidal categories Given a family of closed monoidal categories, we show that the product of these categories is a closed monoidal category with the pointwise monoidal structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 144/0 Mathlib.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Pi/Monoidal.lean,Mathlib/CategoryTheory/Pi/MonoidalClosed.lean 4 20 ['TwoFX', 'YaelDillies', 'b-mehta', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody 1
192-13795
6 months ago
417-28037
417 days ago
50-48893
50 days
22159 shetzl
author:shetzl
feat: add definition of pushdown automata Add the definition of pushdown automata and their two acceptance conditions: acceptance based on empty stack and acceptance based on final state. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 70/0 Mathlib.lean,Mathlib/Computability/PDA.lean 2 35 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody 1
192-13663
6 months ago
439-7676
439 days ago
20-81245
20 days
22919 plp127
author:plp127
feat(Data/Fintype/Pi): Make `Fintype` instance for `RelHom`s computable Makes the `Fintype` instance for rel homs computable. See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Classical.20vs.20constructive.20logic.20in.20computation/near/496220816) message. --- - [x] depends on: #24748 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 178/44 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Data/Fintype/CardEmbedding.lean,Mathlib/Data/Fintype/Pi.lean 5 31 ['IvanRenison', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] b-mehta
assignee:b-mehta
1
192-13637
6 months ago
366-26908
366 days ago
71-41637
71 days
26914 quangvdao
author:quangvdao
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence. We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute Some things I'm not clear on: - I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level? - Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation. - Need a double-check on the priority of notation. Some future definitions to add: - Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`. - Definitions of Lenses and Charts (each of them will be a file or even a folder) - Exponential objects (corresponding to both `prod` and `tensor`) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 144/5 Mathlib/Data/PFunctor/Univariate/Basic.lean 1 20 ['alexkeizer', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao'] eric-wieser
assignee:eric-wieser
1
192-12953
6 months ago
192-12954
192 days ago
133-23955
133 days
27163 pechersky
author:pechersky
feat(Topology/ValuativeRel): of and to basis of compatible valuations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #30262 t-number-theory t-algebra merge-conflict awaiting-author t-topology
label:t-algebra$
229/62 Mathlib/NumberTheory/LocalField/Basic.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 3 73 ['erdOne', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky', 'smmercuri'] alreadydone
assignee:alreadydone
1
192-12936
6 months ago
193-44727
193 days ago
84-31691
84 days
28325 pechersky
author:pechersky
feat(WithZeroTopology): `locallyCompactSpace_iff_locallyFiniteOrder_units` On the way to golf/generalize the proof that locally compact valued fields have locally finite valuation groups as embodied in `Valued.integer.locallyFiniteOrder_units_mrange_of_isCompact_integer` ] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-order large-import 81/2 Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean 3 13 ['erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'ocfnash'] PatrickMassot
assignee:PatrickMassot
1
192-12641
6 months ago
196-67319
196 days ago
93-41632
93 days
28871 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Tournaments Define orientations and tournaments. Related to #26771. Co-authored-by: Rida Hamadani --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 62/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean 3 6 ['JaafarTanoukhi', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib4-merge-conflict-bot'] kmill
assignee:kmill
1
192-12495
6 months ago
192-12496
192 days ago
55-54919
55 days
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 1
191-72075
6 months ago
667-5957
667 days ago
123-25636
123 days
26310 kckennylau
author:kckennylau
feat: binary forms This PR provides the basic definition of binary forms, which are homogeneous polynomials in two variables. --- - [ ] depends on: #26312 - [ ] depends on: #26313 - [ ] depends on: #26314 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
73/0 Mathlib.lean,Mathlib/RingTheory/MvPolynomial/BinaryForm.lean 2 14 ['MichaelStollBayreuth', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash'] ocfnash
assignee:ocfnash
1
191-71487
6 months ago
283-68508
283 days ago
57-1096
57 days
24514 b-mehta
author:b-mehta
chore(Int/GCD): use fuel in xgcd Modify the definition of xgcd to use fuel recursion, to allow it to be reduced in the kernel. As a consequence, this means the evaluation of field operations in ZMod p become provable by `rfl` and `decide`. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/opaque.20recursion.20definitions.20break.20mergeSort.20decidability --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data merge-conflict 44/22 Mathlib/Data/Int/GCD.lean 1 6 ['astrainfinita', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'nomeata', 'urkud'] nobody 1
184-895
6 months ago
335-40773
335 days ago
58-34020
58 days
28057 plp127
author:plp127
feat(SuccOrder): simp lemma to refold `Order.succ` and `Order.pred` Adds `SuccOrder.succ_eq_succ` and `PredOrder.pred_eq_pred` to refold `SuccOrder.succ` and `PredOrder.pred` into `Order.succ` and `Order.pred`. These lemmas are marked `@[simp]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-order merge-conflict 8/2 Mathlib/Order/SuccPred/Basic.lean 1 4 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] bryangingechen
assignee:bryangingechen
1
175-34024
5 months ago
252-49732
252 days ago
44-13238
44 days
26912 pechersky
author:pechersky
chore(Algebra/Ring/Subring): simp tag `Subring.smul_def` s-multiplying by a subtype is easiest to manipulate when both terms are in the ambient type. Many places that had to use the _def lemma for a rewrite, or to include it in a simp set, no longer have to. Ported from #25308 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) I found this being not-simp frustrating when talking about submodules over a valuation subring. merge-conflict t-algebra
label:t-algebra$
67/66 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Exact.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Ring/Periodic.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean,Mathlib/RingTheory/OreLocalization/Basic.lean 25 26 ['artie2000', 'eric-wieser', 'github-actions', 'j-loreaux', 'kckennylau', 'leanprover-bot', 'leanprover-radar', 'linesthatinterlace', 'mathlib4-merge-conflict-bot', 'pechersky'] joelriou
assignee:joelriou
1
165-44660
5 months ago
186-80609
186 days ago
63-23787
63 days
32889 artie2000
author:artie2000
feat(Algebra): forgetful lemmas for `map` and `comap` on substructures * Standardise the form of forgetful lemmas for `map` and `comap` (ie, `(co)map_toSubfoo`) * Add missing lemmas of this form * Mark all such lemmas as `simp` --- - [x] depends on: #21031 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict blocked-by-other-PR
label:t-algebra$
72/17 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/Subalgebra.lean 6 30 ['YaelDillies', 'artie2000', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'vihdzp'] nobody 1
153-77033
5 months ago
163-51580
163 days ago
2-56660
2 days
33381 urkud
author:urkud
feat: add a version of the Schwarz lemma Add a version of the Schwarz lemma that is midway between the original lemma and Pick's version. Use it to show that a function that is separately holomorphic on a polydisc and is bounded on this polydisc must be continuous on it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #33368 - [x] depends on: #33362 t-analysis blocked-by-other-PR merge-conflict 475/91 Mathlib.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/Complex/UnitDisc/Schwarz.lean,Mathlib/Analysis/Complex/UnitDisc/Shift.lean 5 22 ['girving', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] nobody 1
150-21066
4 months ago
151-75946
151 days ago
0-947
15 minutes
17176 arulandu
author:arulandu
feat: integrals and integrability with .re Lemmas for swapping order of .re and integration/integrability. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability please-adopt 49/0 Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean 4 32 ['EtienneC30', 'arulandu', 'github-actions', 'loefflerd'] nobody 1
144-55640
4 months ago
592-16477
592 days ago
9-73631
9 days
25905 mans0954
author:mans0954
feat(RingTheory/Polynomial/SmallDegreeVieta): polynomial versions of results in Algebra.QuadraticDiscriminant This PR continues the work from #25605. Original PR: https://github.com/leanprover-community/mathlib4/pull/25605 merge-conflict t-ring-theory please-adopt 77/8 Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Polynomial/SmallDegreeVieta.lean 2 47 ['chrisflav', 'github-actions', 'kckennylau', 'mans0954', 'mathlib4-merge-conflict-bot', 'ocfnash'] chrisflav
assignee:chrisflav
1
139-44533
4 months ago
265-72912
265 days ago
82-4874
82 days
12934 grunweg
author:grunweg
chore: replace more uses of > or ≥ by < or ≤ These were flagged by the linter in https://github.com/leanprover-community/mathlib4/pull/12879: it is easy to simple avoid > or ≥ in hypotheses or haves. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted 41/42 Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Tactic/Linarith/Datatypes.lean,test/cancel_denoms.lean,test/congr.lean,test/interval_cases.lean,test/observe.lean 15 12 ['YaelDillies', 'adomani', 'github-actions', 'grunweg', 'jcommelin', 'urkud'] nobody 1
138-25948
4 months ago
742-81773
742 days ago
1-73101
1 day
32880 0xTerencePrime
author:0xTerencePrime
feat(Analysis/Asymptotics): define subpolynomial growth ## Main definitions * `Asymptotics.IsSubpolynomial l f g`: A function `f` has subpolynomial growth with respect to `g` along filter `l` if `f = O(1 + ‖g‖^k)` for some natural `k`. ## Main results * `IsSubpolynomial.const`: Constant functions have subpolynomial growth * `IsSubpolynomial.id`: Identity has subpolynomial growth * `IsSubpolynomial.add`: Closure under addition * `IsSubpolynomial.neg`: Closure under negation * `IsSubpolynomial.sub`: Closure under subtraction * `IsSubpolynomial.mul`: Closure under multiplication * `IsSubpolynomial.pow`: Closure under powers * `isSubpolynomial_iff_one_add`: Equivalence with `(1 + ‖g‖)^k` formulation * `IsSubpolynomial.uniform`: Uniform bounds for finite families ## Implementation notes The definition uses `1 + ‖g‖^k` rather than `(1 + ‖g‖)^k` as the primary form, with the equivalence established in `isSubpolynomial_iff_one_add`. Four private auxiliary lemmas handle the key inequalities needed for closure proofs. Closes #32658 awaiting-author t-analysis new-contributor 185/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/Subpolynomial.lean 2 29 ['0xTerencePrime', 'ADedecker', 'github-actions', 'j-loreaux'] ADedecker
assignee:ADedecker
1
137-58714
4 months ago
138-40172
138 days ago
22-14560
22 days
29610 llllvvuu
author:llllvvuu
feat(LinearAlgebra): define LinearMap.Eigenbasis Some theorems are left TODO for follow-up work. The definition is from @eric-wieser ([#Is there code for X? > diagonalizable linear maps @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/diagonalizable.20linear.20maps/near/539163222)). Co-authored-by: Aristotle Harmonic --- - [x] depends on: #29420 (golfs some `[Nontrivial R]` assumptions) - [x] depends on: #29791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author
label:t-algebra$
455/5 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/LinearAlgebra/Eigenbasis.lean,Mathlib/LinearAlgebra/FreeModule/PID.lean,Mathlib/Order/CompleteLattice/Basic.lean 5 31 ['github-actions', 'joelriou', 'kckennylau', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
1
135-64357
4 months ago
192-11893
192 days ago
20-33900
20 days
20719 gio256
author:gio256
feat(AlgebraicTopology): delaborators for truncated simplicial notations We add delaborators for the following notations, introduced in #20688: - `⦋m⦌ₙ`, which denotes the `m`-dimensional simplex in the `n`-truncated simplex category. - `X _⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated simplicial object `X`. - `X ^⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated cosimplicial object `X`. If `pp.proofs` is set to `true`, we also pretty-print the proof `p : m ≤ n` for all three notations as `⦋m, p⦌ₙ`, `X _⦋m, p⦌ₙ`, and `X ^⦋m, p⦌ₙ`, respectively. Credit to @kmill for one piece of code and much metaprogramming inspiration. --- - [x] depends on: #20688 - [x] depends on: #23018 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-topology infinity-cosmos t-meta please-adopt will-close-soon 525/33 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimplexCategory.lean,Mathlib/Util/Superscript.lean,MathlibTest/SimplexCategory.lean,MathlibTest/SimplicialObject.lean,MathlibTest/superscript.lean,scripts/noshake.json 11 24 ['eric-wieser', 'gio256', 'github-actions', 'joneugster', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody 1
133-75299
4 months ago
313-52439
313 days ago
88-84229
88 days
21476 grunweg
author:grunweg
feat(lint-style): enable running on downstream projects Enable lint-style to run on downstream projects, by making the following modifications: - allow passing an explicit list of libraries to lint: if nothing is passed, it lints `Mathlib`, `Archive` and `Counterexamples` (as before); otherwise, it lints precisely the passed modules - only check init imports, undocumented scripts and the errors from `lint-style.py` when linting Mathlib - make the style exceptions file configurable and optional: using the `nolints-file` flag, the exceptions file can be configured. If the flag is omitted, we try to find a file at `scripts/nolints-style.txt` --- and otherwise proceed with no style exceptions. This means mathlib can continue unchanged, and downstream projects can either add an explicit exceptions file, or proceed without any exceptions. After this PR, one should be able to run lint-style on a downstream project by `lake exe lint-style ProjectName`. Prompted by [this zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/lint-style.20for.20downstream.20libraries). --- - [x] depends on: #24570 - [x] depends on: #24953 (I did not test the last part.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author please-adopt 58/19 Mathlib/Tactic/Linter/TextBased.lean,scripts/lint-style.lean 2 21 ['Vierkantor', 'adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody 1
127-8634
4 months ago
378-69367
378 days ago
43-17409
43 days
34092 staroperator
author:staroperator
feat(SetTheory/ZFC): properties of `ZFSet.omega` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory awaiting-author 77/10 Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean 3 31 ['Komyyy', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator', 'vihdzp'] YaelDillies
assignee:YaelDillies
1
120-59539
4 months ago
33-11271
33 days ago
99-2887
99 days
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 1
118-27492
3 months ago
19-41081
19 days ago
64-59254
64 days
33493 michelsol
author:michelsol
feat(RingTheory/Polynomial): An explicit formula for the Chebyshev polynomials of the first kind Adds the following explicit formula on the Chebyshev polynomial of the first kind of order n. ${ T_{n}(x)\ =\ \sum \limits _{k=0}^{\lfloor {\frac {n}{2}}\rfloor } {\binom {n}{2k}} \left(\ X^{2}-1\ \right)^{k}\ X^{n-2k}}$ This explicit formula can be found [here](https://en.wikipedia.org/wiki/Chebyshev_polynomials#Explicit_expressions). There is a proof using complex numbers but it only works if the ring R = ℂ. The proof here is by induction and works in a commutative ring R. Mathlib seems to extend the definition of Chebyshev polynomials for $n \in \mathbb{Z}$ but this would make the formula more cumbersome with `n.natAbs` in place of `n`'s, so I expressed it on `n : ℕ` directly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 51/1 Mathlib/RingTheory/Polynomial/Chebyshev.lean 1 8 ['YuvalFilmus', 'erdOne', 'github-actions', 'metakunt', 'michelsol'] chrisflav
assignee:chrisflav
1
111-36348
3 months ago
111-36348
111 days ago
35-16105
35 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
1
108-253
3 months ago
108-253
108 days ago
33-85043
33 days
11500 mcdoll
author:mcdoll
refactor(Topology/Algebra/Module/WeakDual): Clean up - Move `Dual` and `dualPairing` lower in the import-hierachy - deduplicate `dualPairing` - Bundle continuity statements to `CLM`s. - Make `WeakDual` and `WeakSpace` reducible - Remove `refine'` in favor of `refine` --- Cleaning up `Analysis/NormedSpace/WeakDual` will be done in a second PR [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 227/179 Mathlib.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/NormedSpace/Dual.lean,Mathlib/Analysis/NormedSpace/WeakDual.lean,Mathlib/Analysis/VonNeumannAlgebra/Basic.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Dual.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,docs/overview.yaml,docs/undergrad.yaml 15 16 ['ADedecker', 'grunweg', 'j-loreaux', 'kkytola', 'mathlib-bors', 'mcdoll', 'urkud'] nobody 2
103-76301
3 months ago
752-75501
752 days ago
46-5571
46 days
35134 fpvandoorn
author:fpvandoorn
feat(translate): print constant names with hover info Part of #34846. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author merge-conflict 46/28 Mathlib/Tactic/Translate/Core.lean,MathlibTest/toAdditive.lean 2 6 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
1
103-68221
3 months ago
105-60677
105 days ago
2-13760
2 days
24965 erdOne
author:erdOne
refactor: Make `IsLocalHom` take unbundled map Under the current definition, `IsLocalHom f` and `IsLocalHom f.toMonoidHom` are not defeq, which causes quite some annoyances. We also have a consensus to not use `*HomClass` in definitions. As a result, we change `IsLocalHom` to take an unbundled function instead of a funlike. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated merge-conflict
label:t-algebra$
18/9 Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean 5 15 ['adomani', 'alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] mattrobball
assignee:mattrobball
1
101-42732
3 months ago
193-8501
193 days ago
24-84527
24 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 1
98-69690
3 months ago
100-6062
100 days ago
0-3308
55 minutes
31766 SuccessMoses
author:SuccessMoses
feat(Topology/EMetricSpace): continuity of arc length fixes half of #31751 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology awaiting-author merge-conflict 396/0 Mathlib.lean,Mathlib/Topology/EMetricSpace/ArcLength.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean 3 40 ['SnirBroshi', 'SuccessMoses', 'alreadydone', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody 1
95-48702
3 months ago
171-49572
171 days ago
2-77113
2 days
35494 Timeroot
author:Timeroot
feat(Topology/Perfect): simp frontier_singleton Add simp lemma ``` theorem frontier_singleton {X : Type*} [TopologicalSpace X] [T1Space X] [PerfectSpace X] (p : X) : frontier {p} = {p} ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author 4/0 Mathlib/Topology/Perfect.lean 1 4 ['Timeroot', 'github-actions', 'urkud', 'vihdzp'] urkud
assignee:urkud
1
94-71879
3 months ago
95-31015
95 days ago
5-41003
5 days
30872 rudynicolop
author:rudynicolop
feat(Computability/NFA): NFA closure under concatenation This PR proves that regular languages are closed under concatenation via a direct construction on `NFA`s without `εNFA` nor ε-transitions. The main new definitions and results include: - `M1.concat M2`, the concatenation of `NFA`s `M1` and `M2`, a direct construction without ε-transitions. - Theorem `accepts_concat : (M1.concat M2).accepts = M1.accepts * M2.accepts`, showing the correctness of the construction. - Theorem `IsRegular.mul`, showing that regular languages are closed under concatenation. --- - [x] depends on: #31038 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor awaiting-author 104/7 Mathlib/Computability/NFA.lean 1 67 ['YaelDillies', 'ctchou', 'eric-wieser', 'github-actions', 'lambda-fairy', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'rudynicolop'] nobody 2
92-73298
3 months ago
120-56707
120 days ago
59-63565
59 days
34932 erdOne
author:erdOne
feat(AlgebraicGeometry): formally etale morphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry merge-conflict delegated 163/12 Mathlib.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Morphisms/FormallyEtale.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/RingTheory/RingHom/Etale.lean 5 17 ['chrisflav', 'erdOne', 'github-actions', 'joneugster', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] nobody 1
92-36168
3 months ago
94-44657
94 days ago
11-40391
11 days
34875 banrovegrie
author:banrovegrie
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap. - Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}` - Add `Matrix.inv_sub_vecMulVec`: subtraction variant - Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses ## Test plan - [x] `lake build` passes - [x] Lines within 100 char limit - [x] All declarations have docstrings **Any specific AI usage?**: Used Copilot for review purposes. t-algebra new-contributor awaiting-author
label:t-algebra$
135/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean 2 14 ['Xxxjdjdid', 'banrovegrie', 'chrisflav', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
1
89-68573
2 months ago
44-65662
44 days ago
69-6728
69 days
30431 kckennylau
author:kckennylau
feat(RingTheory): a homogeneous submodule is the span of its homogeneous elements --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 22/0 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean 2 9 ['alreadydone', 'github-actions', 'kckennylau', 'mariainesdff', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
1
85-57021
2 months ago
207-75783
207 days ago
23-21820
23 days
17627 hrmacbeth
author:hrmacbeth
feat: universal properties of vector bundle constructions Characterizations for the smoothness of maps into the total spaces of (1) the direct sum of two vector bundles; (2) the pullback of a vector bundle. This gap in the library was exposed by #17358. --- - [x] depends on: #22804 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry 311/9 Mathlib/Data/Bundle.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/Pullback.lean,Mathlib/Topology/FiberBundle/Constructions.lean 4 26 ['PatrickMassot', 'fpvandoorn', 'github-actions', 'grunweg', 'hrmacbeth', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'sgouezel'] grunweg
assignee:grunweg
1
84-83413
2 months ago
344-83152
344 days ago
91-68302
91 days
19275 eric-wieser
author:eric-wieser
fix: if nolint files change, do a full rebuild Otherwise CI will succeed when removing entries from the file, but fail later when someone changes something unrelated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 8/0 lakefile.lean 1 22 ['YaelDillies', 'adomani', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'mathlib-bors'] nobody 1
84-83396
2 months ago
556-37631
556 days ago
0-214
3 minutes
33592 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols This PR picks up https://github.com/leanprover-community/mathlib4/pull/15895 and resolves the failing lemma by redefining Good symbols. --- I checked that https://github.com/leanprover-community/mathlib4/pull/13514 builds correctly when based on this build. PR for that is #33599 This is my first contribution please let me know of any changes I should outline. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-computability new-contributor 160/0 Mathlib/Computability/ContextFreeGrammar.lean 1 34 ['YaelDillies', 'github-actions', 'madvorak', 'nielstron'] nobody 1
84-72412
2 months ago
134-14539
134 days ago
10-68503
10 days
36165 Parcly-Taxel
author:Parcly-Taxel
chore: deprecate `Nat.strongRec(On)'` In favour of Batteries's `Nat.strongRec` for definitions and `Nat.strong_induction_on` for proofs. t-data merge-conflict 34/66 Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/Nat/Factorization/Induction.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Topology/EMetricSpace/Paracompact.lean 8 6 ['JovanGerb', 'MichaelStollBayreuth', 'Parcly-Taxel', 'Vierkantor', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
1
82-82019
2 months ago
70-67079
70 days ago
15-53464
15 days
31135 kckennylau
author:kckennylau
feat(RingTheory): is localization iff is localization on saturation In this PR we show that `A` is a localization of `R` on the submonoid `S` iff it is so on the saturation of `S`. Crucially, the saturation of `S` is precisely the elements that become a unit in `A`. --- - [x] depends on: #31132 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory delegated 53/0 Mathlib.lean,Mathlib/RingTheory/Localization/Saturation.lean 2 15 ['alreadydone', 'chrisflav', 'github-actions', 'kckennylau', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] chrisflav
assignee:chrisflav
1
80-37693
2 months ago
53-4828
53 days ago
32-67213
32 days
35295 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): `dropLast` of a cycle is a path --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics awaiting-author 13/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 2 14 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] YaelDillies
assignee:YaelDillies
1
77-74254
2 months ago
51-13335
51 days ago
34-53762
34 days
27534 PierreQuinton
author:PierreQuinton
feat: a typeclass for `sSup`/`sInf` to be lawful Adds lawful infima and suprema type classes. A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set. A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order 121/8 Mathlib.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/LawfulSupInf.lean 3 26 ['PierreQuinton', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] nobody 1
76-68116
2 months ago
192-12791
192 days ago
114-37921
114 days
37111 tannerduve
author:tannerduve
feat(Computability): add Nat.PrimrecIn and PrimrecIn - Add `Nat.PrimrecIn`: primitive recursive functions relative to a set of oracles - Add `PrimrecIn`: lifts `Nat.PrimrecIn` to `Primcodable` types A `PrimrecIn` version of `RecursiveIn.iff_nat` (i.e., `PrimrecIn O (f : ℕ → ℕ) ↔ Nat.PrimrecIn O f`) is left as future work as it requires proving `Nat.PrimrecIn O Nat.pred`, which needs additional API for `Nat.PrimrecIn`. --- Split out from #34937 as requested in review. - [x] depends on: #37061 t-computability new-contributor awaiting-author 24/0 Mathlib/Computability/RecursiveIn.lean 1 14 ['Komyyy', 'bryangingechen', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tannerduve'] nobody 1
49-53320
1 month ago
50-66179
50 days ago
1-79421
1 day
37247 yuma-mizuno
author:yuma-mizuno
feat(GroupTheory/MonoidLocalization): add prime transport lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 75/7 Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 3 6 ['github-actions', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
1
44-6973
1 month ago
44-6973
44 days ago
20-41780
20 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 3
43-85137
1 month ago
43-85101
43 days ago
59-19226
59 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 1
30-84385
1 month ago
30-84416
30 days ago
30-49603
30 days
36740 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): * `AlgebraicGeometry.Scheme.isBasis_affineOpens`: unchanged 🎉 * `SimpleGraph.Walk.takeUntil_eq_take`: 263 ms before, 180 ms after 🎉 * `SimpleGraph.Walk.dropUntil_eq_drop`: 382 ms before, 261 ms after 🎉 * `Int.image_Ico_emod`: unchanged 🎉 * `Equiv.Perm.ofSubtype_swap_eq`: 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/) merge-conflict 7/33 Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Data/Int/Interval.lean,Mathlib/GroupTheory/Perm/Support.lean 4 8 ['artie2000', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] nobody 1
30-49331
1 month ago
30-49332
30 days ago
43-5868
43 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 1
30-40721
1 month ago
30-40722
30 days ago
22-62470
22 days
38170 maddycrim
author:maddycrim
feat(Algebra/Module/FinitePresentation): Finitely Presented Module Lemma From FLT Project Main Definitions: `Module.FinitePresentation.exists_fin_exact` : A finitely presented module M admits an exact sequence F' -> F -> M -> 0 where F' and F are finite free modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
9/0 Mathlib/Algebra/Module/FinitePresentation.lean 1 17 ['chrisflav', 'github-actions', 'maddycrim', 'themathqueen', 'vlad902'] nobody 1
25-11737
25 days ago
25-11737
25 days ago
17-43852
17 days
36686 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): * `List.prod_map_ite`: unchanged 🎉 * `Path.Homotopy.trans_assoc_reparam`: 2938 ms before, 717 ms after 🎉 * `SimplexCategory.δ_comp_δ`: 522 ms before, 316 ms after 🎉 * `Finsupp.ext_iff'`: unchanged 🎉 * `Computation.bind_assoc`: unchanged 🎉 * `Set.piecewise_insert`: unchanged 🎉 * `ZMod.valMinAbs_mem_Ioc`: unchanged 🎉 * `Matrix.det_eq_of_forall_row_eq_smul_add_pred_aux`: 2141 ms before, 2004 ms after 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author 11/50 Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Piecewise.lean,Mathlib/Data/ZMod/ValMinAbs.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean 8 14 ['artie2000', 'chenson2018', 'dagurtomas', 'euprunin', 'github-actions', 'mathlib-merge-conflicts', 'ooovi'] dagurtomas
assignee:dagurtomas
2
24-55391
24 days ago
24-55394
24 days ago
49-23305
49 days
38943 felixpernegger
author:felixpernegger
feat(Topology/CWComplex/Classical): discrete spaces are CW complexes as well as some useful lemmas This is partly based on code by @scholzhannah I think this is notable to include, since it is pretty much the only (easy) "topological" sufficient condition for something being a CW complex there is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 89/3 Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/DiscreteSubset.lean 2 28 ['felixpernegger', 'github-actions', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
1
21-36818
21 days ago
24-7672
24 days ago
25-21671
25 days
38328 astrainfinita
author:astrainfinita
feat: `OrderSupSet` This PR introduces `OrderSupSet` and `OrderInfSet`, which are typeclasses expressing that `sSup` (resp., `sInf`) returns the least upper bound (resp., the greatest lower bound) of a set whenever one exists. This allows us to prove properties about the `sSup` of specific sets (such as `∅`, singletons, finite sets, and `univ`) without any typeclasses asserting the existence of LUBs. For example, `sSup ∅ = ⊥` holds for any type equipped with `OrderBot` `OrderSupSet`, no longer requiring typeclasses like `ConditionallyCompleteLinearOrderBot`. For a general set `s`, this gives a uniform way to extend results about `IsLUB s a → motive a` to `motive (sSup s)`, `motive (⨆ i, f i)`, `motive (a ⊔ b)`, etc., which allows proof reuse for basic API such as [`csSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/ConditionallyCompleteLattice/Basic.html#csSup_insert), [`iSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/CompleteLattice/Basic.html#iSup_insert), and [`sSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/CompleteLattice/Basic.html#sSup_insert) and downstream code like [`csSup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.html#csSup_add), [`sSup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.html#sSup_add), and [`sup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Lattice.html#sup_add). Furthermore, this allows us to refactor incrementally, reducing the dependency of results about various completeness typeclasses on the specific implementation of `sSup`. --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 156/73 Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/SetNotation.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean 7 16 ['JovanGerb', 'astrainfinita', 'b-mehta', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'openendings', 'vihdzp'] nobody 1
21-14968
21 days ago
21-15007
21 days ago
26-45677
26 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 1
18-48934
18 days ago
18-48935
18 days ago
46-71615
46 days
39230 bryangingechen
author:bryangingechen
chore: extract API from #38807 and golf I wanted to understand why these two proofs in #38807 were long (and also play around more with the API in this corner of the library) so I walked through them with Claude Opus. prepared with Claude code t-order LLM-generated 23/37 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/DirSupClosed.lean 2 2 ['github-actions', 'vihdzp'] nobody 1
17-45989
17 days ago
18-34225
18 days ago
18-34187
18 days
36202 vihdzp
author:vihdzp
feat: more theorems on the Cantor normal form We also remove some redundant assumptions. Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 68/17 Mathlib/SetTheory/Ordinal/CantorNormalForm.lean 1 21 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] YaelDillies
assignee:YaelDillies
1
17-7911
17 days ago
66-7460
66 days ago
84-85783
84 days
36388 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/AdjMatrix): submatrices and homomorphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 73/3 Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean 1 19 ['SnirBroshi', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody 1
16-86192
16 days ago
17-36370
17 days ago
46-73287
46 days
38114 javgomzar
author:javgomzar
feat(FinitelyPresentedGroup): add finite groups instance Add IsFinitelyPresented instance for finite groups. Co-authored-by: Hang Lu Su , Thomas Browning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor large-import 31/2 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 33 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] mattrobball
assignee:mattrobball
1
16-61419
16 days ago
16-61455
16 days ago
39-59154
39 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 1
16-41280
16 days ago
23-5858
23 days ago
48-72076
48 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
1
15-60771
15 days ago
18-13728
18 days ago
35-12445
35 days
36541 BGuillemet
author:BGuillemet
feat(CategoryTheory): define internal equivalence relations Define internal equivalence relations in any category `C`, as a structure on parallel pairs of morphisms. Prove that equivalence relations on types are equivalence relations in the category of types. Prove that kernel pairs are equivalence relations. Define (universally) effective equivalence relations, and a associated class for categories in which every equivalence relation is effective universal. Prove that an effective equivalence relation yields a coequalizer diagram, and that the associated projection on the "quotient" of the relation is a regular epimorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 320/0 Mathlib.lean,Mathlib/CategoryTheory/EquivalenceRelation.lean,Mathlib/CategoryTheory/Limits/Shapes/RegularMono.lean 3 26 ['BGuillemet', 'chrisflav', 'dagurtomas', 'github-actions', 'robin-carlier'] b-mehta
assignee:b-mehta
1
15-50467
15 days ago
15-81633
15 days ago
37-7859
37 days
38731 martinwintermath
author:martinwintermath
feat(LinearAlgebra/AffineSpace/AffineSubspace): using `AffineSubspace.direction` to reinterpret `AffineSubspace` as `Submodule` * add `AffineSubspace.vsub_self_of_zero_mem` that states `s -ᵥ s = s ` if `0 ∈ s` * add `AffineSubspace.direction_eq_self_of_zero_mem` that states that if `0 ∈ s`, then the directions coerce back to the affine subspace. * add corresponding `CanLift` instance. * modify doc-string of `AffineSubspace.direction` to state that this can be used for reinterpretation of an affine subspace as a submodule. * add `Coe` instance based on `Submodule.toAffineSubspace` and adds corresponding @[coe] attribute. The PR also performs a slight cleanup of the file: statements about `SetLike` or `Submodule.toAffineSubspace` have been moved closer to their respective definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
56/26 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean 1 3 ['github-actions', 'wwylele'] themathqueen
assignee:themathqueen
1
14-36858
14 days ago
30-61609
30 days ago
30-62722
30 days
39438 SnirBroshi
author:SnirBroshi
chore(Order/WellFounded): use `to_dual` Creates `argmax`/`argmaxOn` duals to the existing `argmin`/`argminOn`, and `WellFoundedLT.min`/`WellFoundedGT.max` in order to properly dualize `WellFounded.min_le`. Some theorems about `WellFounded{LT/GT}` which didn't have a dual before have to be renamed to make room, e.g. `StrictMono.range_inj` is renamed to `StrictMono.range_inj_of_wellFoundedLT`. --- This is blocking dualizing things in `ConditionallyCompleteLattice/Basic.lean`. `WellFounded.min_le` has ~30 usages in ~10 files, so deprecating it should probably happen in a separate PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 80/34 Mathlib/Data/Finset/Sort.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/WellFounded.lean,Mathlib/SetTheory/Ordinal/Enum.lean 4 5 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody 1
14-34767
14 days ago
14-34839
14 days ago
14-43397
14 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
2
13-34646
13 days ago
127-71069
127 days ago
40-42357
40 days
36954 FMLJohn
author:FMLJohn
feat(Topology/ClosedBases): `TopologicalSpace.IsClosedBasis` and `TopologicalSpace.IsClosedSubbasis s` In this pull request, I have defined closed bases and closed subbases of topologies, and proved some basic properties of them. ## Main definitions * `TopologicalSpace.IsClosedBasis s`: A closed basis of a topological space `α` is a collection of closed sets `s : Set (Set α)` such that every closed subset of `α` can be written as an intersection of elements of `s`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 117/0 Mathlib.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/ClosedBases.lean 3 19 ['github-actions', 'scholzhannah'] urkud
assignee:urkud
1
12-57310
12 days ago
36-84065
36 days ago
65-86353
65 days
39287 xgenereux
author:xgenereux
feat(Localization/AtPrime/Basic): upgrade `equivQuotMaximalIdeal` to an AlgEquiv The definition [IsLocalization.AtPrime.equivQuotMaximalIdealPow](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Localization/AtPrime/Basic.html#IsLocalization.AtPrime.equivQuotMaximalIdealPow) was added in #36783. The case with `n = 1` is still important and interesting. I have upgraded it to an AlgEquiv using `equivQuotMaximalIdealPow`. This did break a few small things, because we need to bridge back to a `RingEquiv` in some places. I took the liberty to add some missing `apply` lemmas to ease fixing these proofs. Disclaimer: I used Claude to suggest the first shot and refined it from there. María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 45/68 Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean 3 2 ['github-actions', 'mathlib-merge-conflicts', 'wwylele'] nobody 1
12-42333
12 days ago
12-42334
12 days ago
4-53165
4 days
39183 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Complex/Exponential` - shortens the reindexing step in `norm_exp_sub_sum_le_norm_mul_exp` by switching from `sum_bij` to `sum_Ico_eq_sum_range` with `simp` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated maintainer-merge 8/23 Mathlib/Analysis/Complex/Exponential.lean 1 4 ['Komyyy', 'github-actions', 'yuanyi-350'] urkud
assignee:urkud
1
12-21392
12 days ago
12-21580
12 days ago
19-3150
19 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 32/5 Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 11 ['IvanRenison', 'YaelDillies', 'github-actions'] nobody 1
12-4723
12 days ago
13-59312
13 days ago
55-9668
55 days
36832 KryptosAI
author:KryptosAI
chore(Data/Finset/Card): rename `pred_card_le_card_erase` to `sub_one_card_le_card_erase` ## Summary The name `pred_card_le_card_erase` suggests `Nat.pred` but the statement uses `- 1` (i.e., `Nat.sub 1`). Rename to `sub_one_card_le_card_erase` to match the actual statement. A deprecated alias is added for backwards compatibility. ### Files changed - `Mathlib/Data/Finset/Card.lean` — definition renamed + deprecated alias - `Mathlib/Data/Finset/Powerset.lean` — reference updated - `Mathlib/Combinatorics/Additive/SubsetSum.lean` — reference updated - `Mathlib/Algebra/Polynomial/EraseLead.lean` — reference updated Addresses the `Finset.pred_card_le_card_erase` item in #21584. ## AI disclosure I used Claude Code to explore the codebase (finding all references to rename) and to draft the PR description. I reviewed and understand all changes — these are straightforward renames with a deprecated alias. new-contributor awaiting-author 22/15 Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SetFamily/Shadow.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/RingTheory/Ideal/Operations.lean 9 8 ['KryptosAI', 'Multramate', 'dagurtomas', 'github-actions', 'mattrobball', 'ooovi'] nobody 1
11-82507
11 days ago
11-82507
11 days ago
59-48094
59 days
33928 jsm28
author:jsm28
feat(Combinatorics/Tiling/TileSet): indexed families of tiles Define the type `TileSet` for indexed families of tiles (in a discrete context), and some associated definitions (including `symmetryGroup`) and API lemmas. `TileSet` can be used for tilings of the whole space; for tilings of part of the space; for patches of tiles (extracted from a tiling by considering tiles meeting some set of points, or considered on their own without extracting from a tiling); for multiple tilings (covering the space more than once). In particular, the fact that people study multiple tilings provides a clear justification for using indexed families rather than sets of tiles, and basic definitions and API lemmas generally work for all these different uses of `TileSet` (sometimes with weak constraints such as tiles being finite, nonempty and only having finitely many tiles meeting any point of the space). Definitions for saying e.g. "this `TileSet` is a tiling of the whole space" are to be included in subsequent files in subsequent PRs. From AperiodicMonotilesLean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 460/0 Mathlib.lean,Mathlib/Combinatorics/Tiling/TileSet.lean 2 23 ['Parcly-Taxel', 'b-mehta', 'eric-wieser', 'github-actions', 'jsm28', 'vihdzp'] nobody 1
11-37690
11 days ago
136-54798
136 days ago
136-54760
136 days
37443 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walk/Operations): permutations of support --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 17/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 2 6 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
1
11-36225
11 days ago
19-9083
19 days ago
58-80721
58 days
38906 lua-vr
author:lua-vr
feat(ConditionallyCompleteLattice/Indexed): add binary versions of lemmas Add binary versions of some of the lemmas. Those are useful when the domain is indexed over the members of a set. From the Carleson project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order carleson 21/5 Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 1 19 ['JovanGerb', 'SnirBroshi', 'github-actions', 'grunweg', 'lua-vr', 'mathlib-merge-conflicts'] nobody 1
10-75748
10 days ago
10-75813
10 days ago
20-49688
20 days
35619 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Clique): intersection and union of cliques Plus a couple of lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 45/14 Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Data/Set/Pairwise/Basic.lean 3 13 ['SnirBroshi', 'YaelDillies', 'github-actions'] b-mehta
assignee:b-mehta
1
10-36155
10 days ago
36-65445
36 days ago
58-41432
58 days
39547 Hagb
author:Hagb
chore(Order/Preorder/Finite): use `@[to_dual]` on lemmas about `{Min,Max}imal{For,}` Proofs of other theorems (e.g. in #39427) with dual theorems dependent on these lemmas would benefit from their duality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 11/25 Mathlib/Order/Preorder/Finite.lean 1 4 ['Hagb', 'github-actions', 'vihdzp'] nobody 1
10-29368
10 days ago
11-56026
11 days ago
11-55988
11 days
39332 Michaillus
author:Michaillus
chore(Topology/Spectral): Added two small lemmas chore(Topology/Spectral): Added two lemmas `IsCompact.isClosed_constructibleTopology_of_isOpen` `IsCompact.isClosed_constructibleTopology_of_isClosed` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 12/0 Mathlib/Topology/Spectral/ConstructibleTopology.lean 1 7 ['Michaillus', 'github-actions', 'plp127', 'qawbecrdtey'] PatrickMassot
assignee:PatrickMassot
1
9-82139
9 days ago
16-50215
16 days ago
16-50177
16 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
1
9-69705
9 days ago
9-69705
9 days ago
2-50409
2 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
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 10 ['ADedecker', 'b-mehta', 'github-actions', 'j-loreaux', 'themathqueen'] nobody 1
9-49710
9 days ago
10-4850
10 days ago
12-63067
12 days
38483 jessealama
author:jessealama
feat(Algebra/BigOperators): add `Antiperiodic.sum_Ico_shift` Three lemmas about `Finset` sums of `Function.Antiperiodic` functions: `sum_map_add_right` says that for `f` antiperiodic with antiperiod `c`, summing `f` over a `Finset` shifted by `c` (via `addRightEmbedding c`) negates the sum over the original; `sum_Ico_shift` is the half-open-interval specialization, immediate via `Finset.map_add_right_Ico`; and `sum_Ico_mul_add_sum_Ico_mul_shift_eq_zero` is a bilinear cancellation variant. Spun off from #29713 (Euler-Poincaré formula), where the bilinear form is used. t-algebra
label:t-algebra$
63/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Periodic.lean 2 5 ['github-actions', 'j-loreaux', 'jessealama', 'wwylele'] ocfnash
assignee:ocfnash
1
9-35065
9 days ago
25-17292
25 days ago
34-76685
34 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'] nobody 1
9-32655
9 days ago
11-17484
11 days ago
55-37185
55 days
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 199/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib 3 37 ['Shreyas4991', 'YaelDillies', 'Zetetic-Dhruv', 'github-actions'] nobody 1
8-68076
8 days ago
20-50309
20 days ago
37-10920
37 days
37189 Brian-Nugent
author:Brian-Nugent
feat(AlgebraicGeometry): The pushforward of a quasi-coherent sheaf between affines is quasi-coherent To be more precise, we show that if `AlgebraicGeometry.Scheme.Modules.fromTildeΓ` is an isomorphism then the same holds for the pushforward. This will show that being quasicoherent is stable under pushforward for affine morphisms once it is shown that `AlgebraicGeometry.Scheme.Modules.fromTildeΓ` being an isomorphism is equivalent to being quasicoherent. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry maintainer-merge 215/6 Mathlib/Algebra/Category/ModuleCat/Localization.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean 7 49 ['Brian-Nugent', 'chrisflav', 'github-actions', 'joelriou'] adamtopaz and chrisflav
assignee:adamtopaz assignee:chrisflav
1
8-66548
8 days ago
9-49233
9 days ago
43-68473
43 days
34440 grunweg
author:grunweg
feat: linter for name components in uppercase Per the naming convention, these are errors (unless they are an abbreviation). Mathlib has *many* violations at the moment: for this reason, we add this as an environment linter and automatically add all current exceptions. Once these have been fixed, converting to a syntax linter is desirable. Until then, track the number of such exceptions as technical debt. --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/naming.20convention.20linter/with/570617527) Note to self: wait for CI, then do a final nolints update. and try to implement the follow-up soon [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import awaiting-author please-adopt merge-conflict 1024/8 Mathlib/Tactic/Linter/Style.lean,MathlibTest/DoubleUnderscore.lean,MathlibTest/Lint.lean,MathlibTest/LintStyle.lean,scripts/nolints.json 5 29 ['Vierkantor', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts'] nobody 1
8-7194
8 days ago
101-9075
101 days ago
13-82065
13 days
38234 vihdzp
author:vihdzp
chore: make `IsSuccLimit` a structure This lets us name the fields. Note that the `mk_iff` lemma overwrites a recently deprecated theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 40/33 Mathlib/Order/SuccPred/InitialSeg.lean,Mathlib/Order/SuccPred/Limit.lean 2 6 ['YaelDillies', 'github-actions', 'plp127'] nobody 1
7-54784
7 days ago
21-12843
21 days ago
37-1092
37 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
1
7-52799
7 days ago
8-44595
8 days ago
53-38899
53 days
36774 euprunin
author:euprunin
chore: replace long terminal `rw […]`:s (≥4 lemmas) with bare `simp`:s 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): * `Finset.lcm_union`: unchanged 🎉 * `Finset.gcd_union`: unchanged 🎉 * `Polynomial.derivative_eval₂_C`: unchanged 🎉 * `Polynomial.expand_pow`: unchanged 🎉 * `Cardinal.mk_real`: unchanged 🎉 * `Real.log_zpow`: unchanged 🎉 * `Matroid.eRank_le_encard_add_eRk_compl`: unchanged 🎉 * `DFinsupp.single_tsub`: unchanged 🎉 * `EReal.inv_neg`: unchanged 🎉 * `Finsupp.toMultiset_map`: unchanged 🎉 * `Finsupp.single_tsub`: unchanged 🎉 * `Multiset.countP_map`: unchanged 🎉 * `Nat.ascFactorial_eq_factorial_mul_choose'`: unchanged 🎉 * `Real.sign_intCast`: unchanged 🎉 * `Real.volume_eball`: unchanged 🎉 * `Real.volume_closedEBall`: unchanged 🎉 * `LFunction_ne_zero_of_not_quadratic_or_ne_one`: 295 ms before, 152 ms after 🎉 * `hasSum_one_div_nat_pow_mul_cos`: unchanged 🎉 * `inv_eq_of_aeval_divX_ne_zero`: unchanged 🎉 * `AlgebraicIndependent.aeval_comp_mvPolynomialOptionEquivPolynomialAdjoin`: unchanged 🎉 * `Ordinal.deriv_mul_eq_opow_omega0_mul`: 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/) merge-conflict 22/24 Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Combinatorics/Matroid/Rank/ENat.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Real/Sign.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean,Mathlib/NumberTheory/ZetaValues.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean 19 3 ['artie2000', 'euprunin', 'github-actions', 'mathlib-merge-conflicts'] nobody 1
6-65538
6 days ago
6-65539
6 days ago
67-395
67 days
38702 jcommelin
author:jcommelin
chore(Data/Real): encapsulate real numbers This PR: * hides the definition of the real numbers * preserves defeqs when casting `Nat`, `Int`, `Rat`, into the reals * preserves the defeq `x - y = x + (-y)` for `x y : Real` * removes a bunch of technical debt * adjusts imports in the library, where files relied on getting access to Cauchy sequences transitively via importing the reals. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated merge-conflict 235/256 Archive/Imo/Imo2013Q5.lean,Counterexamples/SeminormLatticeNotDistrib.lean,Mathlib.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Real/Cauchy.lean,Mathlib/Data/Real/Sign.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/Topology/Algebra/Ring/Real.lean,Mathlib/Topology/Instances/Real/Lemmas.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/UniformSpace/CompareReals.lean,Mathlib/Topology/UniformSpace/Real.lean,MathlibTest/Complex.lean,MathlibTest/Quaternion.lean,MathlibTest/Real.lean,MathlibTest/peel.lean 26 32 ['JovanGerb', 'Kha', 'YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'riccardobrasca', 'sgouezel', 'wkrozowski'] nobody 1
6-63950
6 days ago
30-83926
30 days ago
0-2637
43 minutes
37642 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph): tidy various files --- Concept inspired by @Ruben-VandeVelde :) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 73/62 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/IncMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean 9 9 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] nobody 1
5-79499
5 days ago
5-79534
5 days ago
53-80155
53 days
37752 JovanGerb
author:JovanGerb
chore(Order/CompleteLattice/Lemmas): use `to_dual` Use `to_dual` for lemmas about `CompleteLattice`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 33/56 Mathlib/Order/CompleteLattice/Lemmas.lean,Mathlib/Tactic/Translate/ToDual.lean 2 6 ['JovanGerb', 'YaelDillies', 'github-actions', 'vihdzp'] nobody 2
5-63228
5 days ago
5-63295
5 days ago
52-59874
52 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 1
5-37692
5 days ago
26-37829
26 days ago
86-46533
86 days
39623 justus-springer
author:justus-springer
feat(Algebra/MvPolynomial/Basic): `coeff_C_of_ne_zero` and `coeff_add_single_C` These lemmas are multivariate analogs to `Polynomial.coeff_C_of_ne_zero`, `Polynomial.coeff_C_succ` and `PowerSeries.coeff_C_of_ne_zero` and `PowerSeries.coeff_succ_C`. They are useful for defining partial derivatives for multivariate power series, see PR #39626. - [x] depends on: #39632 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 16/0 Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean 2 7 ['Hagb', 'github-actions', 'justus-springer', 'mathlib-dependent-issues', 'wwylele'] nobody 2
5-9085
5 days ago
5-10749
5 days ago
9-61010
9 days
35287 arnoudvanderleer
author:arnoudvanderleer
feat(AlgebraicTopology/SimplicialSet): define isomorphisms in simplicial sets, and the coherent isomorphism simplicial set show that any edge in a simplicial set, that is the image of the forward edge of the coherent isomorphism under a simplicial set morphism, is an isomorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor infinity-cosmos 362/3 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/CoherentIso.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveCodiscrete.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/CodiscreteCategory.lean 6 124 ['arnoudvanderleer', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
1
5-5450
5 days ago
5-5450
5 days ago
36-6344
36 days
32583 MJ141592
author:MJ141592
refactor(SimpleGraph): change bridges not to require the edge to be present Remove the requirement for edges to exist in definition of isBridge, and then change the related lemmas to adjust for this, by renaming, fixing the statements and fixing the proofs, including in Acyclic. Closes #31690. --- - [x] depends on: #36802 - [x] depends on: #36804 t-combinatorics new-contributor 95/93 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 5 48 ['MJ141592', 'Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody 2
4-78746
4 days ago
4-78779
4 days ago
54-34919
54 days
39736 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/MonomialOrder): add `leadingTerm` lemmas Add lemmas for `leadingTerm` to match those for `leadingCoeff`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 87/0 Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 1 5 ['Hagb', 'NoahW314', 'github-actions'] nobody 1
4-76232
4 days ago
7-30406
7 days ago
7-30368
7 days
36605 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Add lemmas about interaction of hull, span and negation Prove lemmas about the interaction of hull, span and negation. Main additions: * `PointedCone.toSubmodule` that produces a submodule with the same support given that `-C = C`. Also the corresponding `CanLift` * `PointedCone.hull_neg_pair_eq_span_singleton` proving `hull R {-x, x} = R ∙ x` (simp lemma) * `PointedCone.span_eq_hull_neg_sup_hull` proving `span R s = hull R (-s) ⊔ hull R s` * `PointedCone.mem_span` proving `x ∈ span R C ↔ ∃ p, n ∈ C, x = p - n` Considerations: there are several ways to express that a convex cone is a submodule: * `-C = C` * `-C ≤ C` or `C ≤ -C` * `C = span R C` * `C = C.lineal` The consensus was that the the first option is the most direct way to express this property, which then allows to lift to a submodule. Co-authored by: Olivia Röhrig, Kilian Rueß, Artie Khovanov --- - [x] depends on: #37464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 68/0 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 53 ['artie2000', 'github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody 1
4-54591
4 days ago
4-54594
4 days ago
21-54958
21 days
37939 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Order/Completion): embed a linear order into a dense and complete linear order The aim of the PR is to prove the following theorem that will be used as an input to [Sion.DMCompletion.exists_isSaddlePointOn](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sion.html#Sion.DMCompletion.exists_isSaddlePointOn) : *If `β` is any linear order, then there exists a complete and dense linear order `γ` together with a continuous embedding `ι : β ↪o γ` (for the order topologies on `β` and `γ`).* Meanwhile, the PR also records various instances about dense orders and lemmas regarding the Dedekind MacNeille completion and lexicographic orders. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 211/4 Mathlib.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Order/Completion.lean,Mathlib/Topology/Order/Completion.lean,Mathlib/Topology/Sion.lean 5 69 ['ADedecker', 'AntoineChambert-Loir', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] vihdzp
assignee:vihdzp
1
4-50297
4 days ago
4-73123
4 days ago
39-83922
39 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
1
4-48014
4 days ago
4-48623
4 days ago
4-66384
4 days
39561 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Operations): a graph is the supremum of edge graphs - `G = ⨆ e ∈ G.edgeSet, fromEdgeSet {e}` - `G = sSup { edge u v | (u : V) (v : V) (_ : G.Adj u v) }` and `edgeSet` & `fromEdgeSet` preserve sup & inf. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 51/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean 2 2 ['b-mehta', 'github-actions'] nobody 1
4-40280
4 days ago
11-23068
11 days ago
11-23030
11 days
26975 Whysoserioushah
author:Whysoserioushah
feat: a norm_num extension for complex numbers co-authored-by : @thefundamentaltheor3m, @hrmacbeth --- * depends on: #39628 * depends on: #39620 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 444/14 Mathlib.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/NormNumI.lean,Mathlib/Tactic/NormNum/OfScientific.lean,Mathlib/Tactic/NormNum/Result.lean,MathlibTest/norm_numI.lean 10 76 ['JovanGerb', 'Vierkantor', 'Whysoserioushah', 'dupuisf', 'eric-wieser', 'github-actions', 'grunweg', 'hrmacbeth', 'mathlib4-merge-conflict-bot'] eric-wieser
assignee:eric-wieser
1
4-36521
4 days ago
9-58395
9 days ago
112-30556
112 days
39722 kg583
author:kg583
feat(Combinatorics): Link `Nat.Partition` to `YoungDiagram` --- AI disclosure: Claude was used to source some proof sketches. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor large-import 120/4 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/Conjugate.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean 4 36 ['NoahW314', 'github-actions', 'kg583', 'wwylele'] nobody 2
4-29673
4 days ago
6-56882
6 days ago
7-54419
7 days
37562 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add several lemmas about when `Walk.bypass` and `Walk.cycleBypass` do nothing Co-authored-by: Vlad Tsyrklevich --- - [ ] depends on: #37577 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR merge-conflict 160/79 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 4 9 ['IvanRenison', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vlad902'] nobody 1
4-27236
4 days ago
26-47609
26 days ago
0-1043
17 minutes
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 1
4-19446
4 days ago
4-21206
4 days ago
5-38240
5 days
37697 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Clique): add theorems about cliques and induced graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 22/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 11 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions'] nobody 2
4-7601
4 days ago
4-58197
4 days ago
48-59516
48 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 1
4-6114
4 days ago
8-1825
8 days ago
8-1787
8 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 63 ['Raph-DG', 'chrisflav', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joelriou
assignee:joelriou
1
3-77895
3 days ago
3-78041
3 days ago
46-36999
46 days
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 110/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 62 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody 2
3-72111
3 days ago
3-72184
3 days ago
35-21585
35 days
34805 DavidLedvinka
author:DavidLedvinka
feat(Tactic): generalize ofScientific NormNum extension to `DivisionSemiring` Co-authored-by: @hrmacbeth t-meta maintainer-merge 70/16 Mathlib/Algebra/Field/Rat.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/OfScientific.lean,MathlibTest/Tactic/NormNum/Basic.lean 4 31 ['DavidLedvinka', 'JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'thorimur'] eric-wieser
assignee:eric-wieser
1
3-66198
3 days ago
4-35337
4 days ago
90-9201
90 days
39110 SnirBroshi
author:SnirBroshi
chore(Data/Set): reduce defeq abuse of `Set α = α → Prop` These are among the first places that would fail if `Set α` wasn't defeq to `α → Prop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 35/20 Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Order/BooleanAlgebra/Set.lean 5 24 ['SnirBroshi', 'Vierkantor', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'themathqueen', 'urkud', 'vihdzp'] urkud
assignee:urkud
1
3-58480
3 days ago
14-6323
14 days ago
20-7685
20 days
38968 eric-wieser
author:eric-wieser
fix: improve defeqs of comp actions The (deliberately) non-reducible `SMul.comp.smul` definition caused us to end with these failing unification examples at instance reducibility: ```lean example : (Module.compHom ℕ (RingHom.id ℕ)).toSMul = SMul.comp ℕ (RingHom.id ℕ) := by with_reducible_and_instances rfl example : (Module.compHom ℕ (RingHom.id ℕ)).toMulAction = MulAction.compHom ℕ (MonoidHom.id ℕ) := by with_reducible_and_instances rfl ``` There are two issues this fixes: * the `compHom` constructors are inconsistent on whether they use `SMul.comp.smul` or reimplement its contents * we need `SMul.comp.smul` to be instance-reducible, so that when invoked with the identity function it is instance-defeq to the original action. As a bonus, allowing these to unify means we can have a single `SMul.comp_smul_def` lemma that works for all of the `compHom` definitions. We could also consider changing `compHom` to take a `HomClass` in order to remove the casts entirely, which would remove the need to add these `SMul.comp` terms. This PR leaves that for possible future work, noting that in the past we have moved away from writing `def`s taking `HomClass`es. Co-authored-by: Junye Ji --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Refined from #38777 t-algebra delegated
label:t-algebra$
46/26 Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/End.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Complex/UpperHalfPlane/ProperAction.lean,Mathlib/Topology/Algebra/Group/OpenMapping.lean 9 8 ['JJYYY-JJY', 'Vierkantor', 'eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-bors'] nobody 1
3-50606
3 days ago
14-84060
14 days ago
8-53809
8 days
28796 grunweg
author:grunweg
feat: immersions are smooth The conventional textbook definition demands that an immersion be smooth. When asking for the immersion to have local slice charts (as we do), this implies smoothness automatically. --- - [x] depends on: #28701 - [x] depends on: #28793 - [x] depends on: #30356 - [x] depends on: #28853 (for simplicity) - [x] depends on: #36816 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry awaiting-author 94/11 Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean 4 57 ['chrisflav', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'sgouezel'] PatrickMassot
assignee:PatrickMassot
1
2-85323
2 days ago
134-64127
134 days ago
0-1863
31 minutes
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 2
2-75851
2 days ago
5-15815
5 days ago
15-24916
15 days
39907 Hagb
author:Hagb
feat(Order/InititalSeg): `PrincipalSeg` is trichotomous for well orders For any two well orders, one is a principal segment of the other, or they are isomorphic. Suggested by @vihdzp in the review of #39545 https://github.com/leanprover-community/mathlib4/pull/39545#discussion_r3262466782. It may slightly simplify the proof of `infinite_iff_nonempty_relEmbedding_of_isWellOrder`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 7/0 Mathlib/Order/InitialSeg.lean 1 1 ['github-actions', 'vihdzp'] nobody 1
2-68743
2 days ago
3-24653
3 days ago
3-24615
3 days
36706 kim-em
author:kim-em
feat(Tactic/FastInstance): warn when a synthesized sub-instance has leaky binder types This PR adds a warning to `fast_instance%` and `inferInstanceAs%` when they encounter a synthesized sub-instance that has leaky data-field binder types. When `fast_instance%` recursively normalizes a class instance, it uses `trySynthInstance` to find canonical sub-instances. If a found sub-instance is not canonical at instances transparency (i.e., its internal lambda binder types reference an unexpanded type alias instead of the target carrier), the tool now emits a warning: ``` fast_instance%: 'leakySub' (for SubClass MyNat) has leaky data-field binder types, which may cause `isDefEq` failures at instances transparency (e.g. in `grind`). Consider redefining it with `fast_instance%` or `inferInstanceAs%`. To suppress: `set_option Elab.fast_instance.warnLeakySubInstances false` ``` The leakiness check uses `withDisabledInstance` to temporarily evict the sub-instance from the discrimination tree (preventing trivial self-match via `trySynthInstance`), then compares against the canonical form at instances transparency. A `warnLeaky` parameter propagates through recursive calls to prevent nested warnings. The warning is suppressed via `set_option Elab.fast_instance.warnLeakySubInstances false`. - [ ] depends on: #36701 🤖 Prepared with Claude Code t-meta blocked-by-other-PR LLM-generated 410/20 Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/DefEqAbuse.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/CheckInstance.lean,MathlibTest/DefEqAbuse.lean,MathlibTest/InferInstanceAsPercent.lean 10 9 ['Vierkantor', 'eric-wieser', 'github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
1
2-57122
2 days ago
75-30429
75 days ago
0-1003
16 minutes
39811 TheGoedeDoel
author:TheGoedeDoel
feat(CategoryTheory): functors of submonoids We add a definition of a functor of submonoids: For a functor `M : C ⥤ MonCat`, a submonoid functor consists of a submonoid of `M.obj U` for every `U`, compatible with the restriction maps `M.map i`. We provide the complete lattice structure on `SubmonoidFunctor M` and a map and comap operation. In a follow-up PR, we will use this to define the localisation of a presheaf of modules along a submonoid functor of the sheaf of rings. See also https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Subfunctors.20with.20algebraic.20structure/with/587726088 for a discussion of alternative designs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor maintainer-merge 183/2 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/CategoryTheory/Subfunctor/SubmonoidFunctor.lean 3 110 ['TheGoedeDoel', 'chrisflav', 'github-actions', 'joelriou', 'quantumsnow'] chrisflav
assignee:chrisflav
1
2-51162
2 days ago
3-61837
3 days ago
3-78779
3 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 1
2-49077
2 days ago
5-73023
5 days ago
7-43941
7 days
32282 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle/Incenter): unoriented angle bisection Add lemmas giving unoriented angles involving the incenter and excenters of a triangle as expressions involving dividing angles of the triangle by 2, deduced from oriented bisection lemmas. --- - [ ] depends on: #30981 - [ ] depends on: #30982 - [ ] depends on: #31205 - [ ] depends on: #32019 - [ ] depends on: #32021 - [ ] depends on: #32259 - [ ] depends on: #32260 - [ ] depends on: #32270 - [ ] depends on: #32273 - [ ] depends on: #32278 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 98/0 Mathlib/Geometry/Euclidean/Angle/Incenter.lean 1 8 ['github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'wwylele'] eric-wieser
assignee:eric-wieser
1
2-36550
2 days ago
63-61644
63 days ago
63-62342
63 days
39579 hawkrobe
author:hawkrobe
feat(RingTheory): Bialgebra / Hopf algebra structure on SymmetricAlgebra Adds Hopf algebra structure on SymmetricAlgebra. --- - [x] depends on: #39483 - [ ] depends on: #39785 - [ ] depends on: #39841 - [ ] depends on: #31898 - [ ] depends on: #39790 t-ring-theory new-contributor blocked-by-other-PR 732/42 Mathlib.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/RingTheory/Bialgebra/Primitive.lean,Mathlib/RingTheory/Bialgebra/Quotient.lean,Mathlib/RingTheory/Bialgebra/SymmetricAlgebra.lean,Mathlib/RingTheory/Bialgebra/TensorAlgebra.lean,Mathlib/RingTheory/Coalgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/Generators.lean,Mathlib/RingTheory/HopfAlgebra/Primitive.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/SymmetricAlgebra.lean,Mathlib/RingTheory/HopfAlgebra/TensorAlgebra.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean 14 12 ['YaelDillies', 'github-actions', 'hawkrobe', 'mathlib-dependent-issues'] YaelDillies
assignee:YaelDillies
1
2-13585
2 days ago
5-56691
5 days ago
1-18386
1 day
39949 thorimur
author:thorimur
chore: respect naming conventions for defs in more meta code This PR removes underscores from various metaprogramming `defs` which were misnamed. Sometimes meta-level tactic API is named to reflect the tactic syntax, and sometimes expressions representing proofs are named with underscores; but both of these are ordinary parts of the API which should respect ordinary naming conventions for defs. Note that this PR also renames a couple of definitions in `Mathlib.Tactic.Linarith.NNRealPreprocesser` and `Mathlib.Tactic.Linarith.Preprocessing` to more closely reflect their type (e.g. using `?` for `Option`, `get` instead of `is` for computing data; also `Proof` instead of `Prf` to avoid the unnecessary abbreviation). These are exempted by the `defsWithUnderscore` linter due to living in `Mathlib.Tactic`. (A change to this is explored in #39890, which removes this heuristic.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 63/36 Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Choose.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/Linarith/NNRealPreprocessor.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Ring/Compare.lean 7 5 ['b-mehta', 'github-actions', 'grunweg', 'thorimur'] dwrensha
assignee:dwrensha
1
2-6517
2 days ago
2-48772
2 days ago
2-50755
2 days
39203 FordUniver
author:FordUniver
refactor(Analysis/Calculus/Gradient): ungate `inner_gradient` lemmas Removes superfluous differentiability hypotheses (plus `UniqueDiffWithinAt` for the `Within` versions) from the four `inner_gradient[Within]_[left|right]` lemmas: `gradient` is defined as `(toDual 𝕜 F).symm (fderiv 𝕜 f x)`, so `⟪∇ f x, y⟫ = fderiv 𝕜 f x y` holds unconditionally since both sides are zero when `f` is not differentiable at `x`. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- Genuinely unsure about this one because the only call I currently have in my code itself has the differentiability hypothesis. But including unused (or unnecessary) assumptions seems not intentional? My best guess is that the hypotheses were included by analogy with `HasGradientAt.fderiv_apply`, which genuinely needs them. This PR drops the hypotheses and rewrites the proofs through the isomorphism directly; no existing mathlib callers pass the now-redundant arguments. t-analysis maintainer-merge 17/10 Mathlib/Analysis/Calculus/Gradient/Basic.lean 1 6 ['FordUniver', 'Komyyy', 'github-actions'] urkud
assignee:urkud
1
2-563
2 days ago
18-75762
18 days ago
18-75724
18 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 1
2-555
2 days ago
18-75236
18 days ago
18-75362
18 days
31892 jsm28
author:jsm28
feat(Geometry/Euclidean/Sphere/PolePolar): poles and polars Define poles and polars for spheres in Euclidean affine spaces, and set up some basic API, including in particular La Hire's theorem (`p₁` lies on the polar of `p₂` if and only if `p₂` lies on the polar of `p₁`). Poles and polars are actually meaningful for any quadric in a projective space over any field, but I think it's reasonable to set up this theory for spheres in the Euclidean context and potentially link it in future to more general projective geometry. --- - [x] depends on: #31891 - [x] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 159/0 Mathlib.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean 2 8 ['Parcly-Taxel', 'github-actions', 'jsm28', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody 1
1-83501
1 day ago
63-61633
63 days ago
63-62355
63 days
39707 sorrachai
author:sorrachai
chore(Data/Tree/Basic): Rename Tree to BinaryTree Rename `Tree` to `BinaryTree`. This frees up the name `Tree` to cover n-ary trees in future. We only deprecate the `def`s, and move the theorems without deprecation. new-contributor t-data 157/62 Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Tree/Get.lean,Mathlib/Data/Tree/Traversable.lean,Mathlib/Tactic/CancelDenoms/Core.lean,docs/overview.yaml 7 36 ['b-mehta', 'eric-wieser', 'github-actions', 'sorrachai'] nobody 1
1-82783
1 day ago
5-74015
5 days ago
6-1635
6 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 27 ['YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'hawkrobe', 'themathqueen'] nobody 1
1-77496
1 day ago
2-28052
2 days ago
5-20913
5 days
33355 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph/Connectivity): define vertex connectivity **AI Disclosure**: Developed with LLM assistance (Claude). All mathematical design decisions were made by the author. --- This PR introduces the foundations of vertex connectivity for simple graphs, providing a counterpart to the edge connectivity theory in #32870. ### Main definitions - `SimpleGraph.IsVertexReachable`: two vertices are `k`-vertex-reachable if they remain reachable after removing any set of strictly fewer than `k` vertices, using `G.induce sᶜ`. - `SimpleGraph.IsVertexPreconnected`: a graph is `k`-vertex-preconnected if any two vertices are `k`-vertex-reachable. - `SimpleGraph.IsVertexConnected`: a graph is `k`-vertex-connected if it is `k`-vertex-preconnected and has more than `k` vertices (`k + 1 ≤ ENat.card V`). ### Key lemmas - `k = 0`: 0-connected ↔ nonempty; 0-preconnected always holds - `k = 1`: 1-connected ↔ `Nontrivial V ∧ G.Preconnected` - `anti` / `mono`: antitonic in `k`, monotonic in the graph new-contributor t-combinatorics LLM-generated 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/VertexConnectivity.lean 2 165 ['0xTerencePrime', 'SnirBroshi', 'SproutSeeds', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] b-mehta
assignee:b-mehta
1
1-57466
1 day ago
4-23134
4 days ago
62-52368
62 days
28613 espottesmith
author:espottesmith
feat(Combinatorics): define undirected hypergraphs This PR defines undirected hypergraphs: ``` @[ext] structure Hypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The hyperedge set -/ hyperedgeSet : Set (Set α) /-- All hyperedges must be subsets of the vertex set -/ hyperedge_isSubset_vertexSet : ∀ ⦃e⦄, e ∈ hyperedgeSet → e ⊆ vertexSet ``` In addition to the main definition, some additional definitions and related lemmas are provided: - vertex adjacency - hyperedge adjacency - vertex "stars" - special cases (loops, empty hypergraphs, trivial hypergraphs, complete hypergraphs, simple hypergraphs, k-uniform hypergraphs, and d-regular hypergraphs) - (some) hypergraph cardinality - subhypergraphs, induced subhypergraphs, and partial hypergraphs This implementation is certainly bare-bones. I'm submitting this PR at this point, rather than when my developments are more fleshed out, because there has been some interest in others contributing to hypergraph formalization in mathlib. In the near future, goals include: - defining incidence matrices (i.e., conversion from `Hypergraph α` to `Matrix α (Set α) β` - coersion/generalization of graph as 2-uniform hypergraph - conversion of a hypergraph into its associated clique graph/two-section graph - constructing the dual of a hypergraph (note: on first blush, this appears somewhat challenging, given that we define hyperedges as `Set α` rather than some other type `β`) - rank and co-rank - walks, paths, cycles, etc. on hypergraphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 286/0 Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean 2 152 ['SnirBroshi', 'b-mehta', 'espottesmith', 'github-actions', 'jt496', 'lauramonk', 'mathlib4-merge-conflict-bot', 'tb65536'] b-mehta
assignee:b-mehta
2
1-45503
1 day ago
2-57103
2 days ago
104-45714
104 days
38741 eric-wieser
author:eric-wieser
feat: Nat.card lemmas for Sym and Sym2 These are just translations of the `Fintype` counterparts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 109/7 Mathlib.lean,Mathlib/Data/Sym/Card.lean,Mathlib/Data/Sym/NatCard.lean,Mathlib/Data/Sym/Sym2.lean 4 26 ['SnirBroshi', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
1
1-36104
1 day ago
4-8290
4 days ago
26-1454
26 days
39987 vihdzp
author:vihdzp
chore: golf `Ordinal.cof_univ` --- (I think this is my second time golfing this one theorem, sorry!) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 1/4 Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean 1 1 ['github-actions', 'plp127'] nobody 1
1-33101
1 day ago
1-58267
1 day ago
1-58229
1 day
38890 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Basic): more `WithTop` instances Adds the following instances: ``` CompleteLattice α → CompleteLattice (WithTop α) CompleteLinearOrder α → CompleteLinearOrder (WithBot α) ConditionallyCompleteLinearOrder α → ConditionallyCompleteLinearOrder (WithTop α) ConditionallyCompleteLinearOrder α → ConditionallyCompleteLinearOrderBot (WithBot α) ``` and some simp lemmas to help. --- These `#synth`s all succeed after this PR:
(code) ```lean variable {α : Type*} [Preorder α] #synth Preorder αᵒᵈ #synth Preorder <| WithTop α #synth Preorder <| WithBot α #synth Preorder <| WithTopBot α #synth Preorder <| WithBotTop α variable {α : Type*} [PartialOrder α] #synth PartialOrder αᵒᵈ #synth PartialOrder <| WithTop α #synth PartialOrder <| WithBot α #synth PartialOrder <| WithTopBot α #synth PartialOrder <| WithBotTop α variable {α : Type*} [LinearOrder α] #synth LinearOrder αᵒᵈ #synth LinearOrder <| WithTop α #synth LinearOrder <| WithBot α #synth LinearOrder <| WithTopBot α #synth LinearOrder <| WithBotTop α variable {α : Type*} [CompleteLattice α] #synth CompleteLattice αᵒᵈ #synth CompleteLattice <| WithTop α -- new #synth CompleteLattice <| WithBot α #synth CompleteLattice <| WithTopBot α #synth CompleteLattice <| WithBotTop α variable {α : Type*} [CompleteLinearOrder α] #synth CompleteLinearOrder αᵒᵈ #synth CompleteLinearOrder <| WithTop α #synth CompleteLinearOrder <| WithBot α -- new #synth CompleteLinearOrder <| WithTopBot α #synth CompleteLinearOrder <| WithBotTop α variable {α : Type*} [ConditionallyCompleteLattice α] #synth ConditionallyCompleteLattice αᵒᵈ #synth ConditionallyCompleteLattice <| WithTop α #synth ConditionallyCompleteLattice <| WithBot α #synth CompleteLattice <| WithTopBot α #synth CompleteLattice <| WithBotTop α variable {α : Type*} [ConditionallyCompleteLinearOrder α] #synth ConditionallyCompleteLinearOrder αᵒᵈ #synth ConditionallyCompleteLinearOrder <| WithTop α -- new #synth ConditionallyCompleteLinearOrderBot <| WithBot α -- new #synth CompleteLinearOrder <| WithTopBot α #synth CompleteLinearOrder <| WithBotTop α variable {α : Type*} [ConditionallyCompleteLinearOrderBot α] #synth ConditionallyCompleteLinearOrder αᵒᵈ #synth CompleteLinearOrder <| WithTop α #synth ConditionallyCompleteLinearOrderBot <| WithBot α -- new #synth CompleteLinearOrder <| WithTopBot α #synth CompleteLinearOrder <| WithBotTop α ```
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-order maintainer-merge 89/69 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean 1 5 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
1
1-24075
1 day ago
1-24085
1 day ago
24-47909
24 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'] nobody 1
1-15938
1 day ago
4-22880
4 days ago
7-48711
7 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
1
1-899
1 day ago
12-32152
12 days ago
54-75347
54 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 22/0 Mathlib/Data/Set/Card.lean 1 4 ['EtienneC30', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
1
1-470
1 day ago
14-77671
14 days ago
56-80783
56 days
30526 SnirBroshi
author:SnirBroshi
chore(Logic/Relation): use `≤` to spell subrelation Replace every `∀ x y, r x y → r' x y` with `r ≤ r'` --- NOTE: this PR began as an effort to use `Subrelation` since `≤` wasn't available in this file, but it was agreed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2330526.20use.20Subrelation.20in.20Mathlib.2ELogic.2ERelation/with/546572676) to instead make `≤` available there. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic awaiting-author 146/133 Mathlib.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Filtered/Connected.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Types/Coequalizers.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/Prop.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Topology/Gluing.lean 19 26 ['SnirBroshi', 'Vierkantor', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'plp127', 'thorimur', 'vihdzp'] Vierkantor and joneugster
assignee:Vierkantor assignee:joneugster
1
0-85800
23 hours ago
1-29096
1 day ago
94-74564
94 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
1
0-83958
23 hours ago
3-80931
3 days ago
3-80893
3 days
38021 IvanRenison
author:IvanRenison
feat(Data/Int/ModEq): add theorem `modEq_two_abs` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data delegated 4/0 Mathlib/Data/Int/ModEq.lean 1 3 ['Vierkantor', 'github-actions', 'mathlib-bors'] TwoFX
assignee:TwoFX
1
0-83725
23 hours ago
0-83725
23 hours ago
45-49719
45 days
39934 kim-em
author:kim-em
ci: wire up `lake lint` to run `runLinter` This PR configures the `mathlib` package so that the standard `lake lint` command is equivalent to `lake exe runLinter Mathlib`, by setting ``` lintDriver := "batteries/runLinter" lintDriverArgs := #["Mathlib"] ``` on the `package mathlib` declaration. `runLinter` is already a `lean_exe` in batteries, so the `/` syntax lets mathlib reuse it directly. The CI workflows in `build_template.yml` and `nolints.yml` are also switched from invoking `lake exe runLinter [args] Mathlib` to `lake lint -- [args]` so there's a single source of truth for "lint mathlib", and so that local users get the same behaviour as CI. ### Behavior change for local users Before this PR, `lake lint` in a Mathlib checkout errored out with "no lint driver configured" and was essentially unused. After this PR, `lake lint` runs the full Batteries linter over all of Mathlib, which is a substantial multi-minute job. Anyone who has scripts or muscle memory expecting `lake lint` to be a no-op should be aware. The previous direct invocation, `lake exe runLinter Mathlib`, continues to work for anyone who prefers it. The `scripts/bench/lint/` benchmark intentionally keeps the direct `lake exe runLinter Mathlib` invocation so its measurements are not affected by anything `lake lint` may do above the linter. Motivated by a recent Zulip discussion in which it became clear that very few people know `lake lint` exists, partly because few packages bother to configure a lint driver: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Using.20.60lake.20test.60.20effectively Companion to https://github.com/leanprover/reference-manual/pull/855 (which documents the mechanism in the Lean reference manual). 🤖 Prepared with Claude Code CI delegated 9/7 .github/workflows/build_template.yml,.github/workflows/nolints.yml,lakefile.lean 3 5 ['Garmelon', 'bryangingechen', 'github-actions', 'joneugster', 'mathlib-bors'] nobody 1
0-81604
22 hours ago
0-82882
23 hours ago
1-78098
1 day
39616 sgouezel
author:sgouezel
feat: more API for the variation of vector measures Prompted by the extension of the API around integrals wrt vector measures in #39113 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability delegated 218/19 Mathlib/Data/ENNReal/Action.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/JordanSub.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean 5 26 ['EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib-bors', 'sgouezel'] EtienneC30
assignee:EtienneC30
1
0-78619
21 hours ago
0-78621
21 hours ago
8-61752
8 days
29774 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): Order of vanishing of elements of the function field of locally noetherian, integral schemes In this PR, we define the order of vanishing of elements of the function field of locally noetherian, integral schemes at points of codimension 1. This is essentially just a wrapper around the API for the order of vanishing for rings (i.e. Ring.ord and Ring.ordFrac), but I think it's good to have this too for usability. --- - [ ] depends on: #29550 - [ ] depends on: #26735 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 99/0 Mathlib.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/AlgebraicGeometry/Properties.lean 4 10 ['Raph-DG', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
1
0-77660
21 hours ago
0-77660
21 hours ago
31-22612
31 days
39891 SnirBroshi
author:SnirBroshi
feat: the center of a product/pi is the product/pi of the centers (for subobjects) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
77/3 Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Pi.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Group/Center.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/GroupTheory/Subgroup/Center.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/GroupTheory/Subsemigroup/Lemmas.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean 13 27 ['SnirBroshi', 'github-actions', 'plp127', 'tb65536', 'themathqueen'] tb65536
assignee:tb65536
1
0-76857
21 hours ago
2-14600
2 days ago
2-30335
2 days
39952 vihdzp
author:vihdzp
feat: `IsBotOneClass (WithTop α)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order easy
label:t-algebra$
4/0 Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean 1 1 ['github-actions', 'plp127'] nobody 1
0-75606
21 hours ago
2-39557
2 days ago
2-39519
2 days
37577 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walk): upgrade subset theorems to sublist/prefix/suffix Upgrades theorems about `p.support ⊆ q.support` / `p.darts ⊆ q.darts` / `p.edges ⊆ q.edges` to `List.IsInfix`/`List.IsSuffix`/`List.Sublist`, which imply the subset versions. Also adds `cycleBypass` sublist lemmas that were missing, and golfs `length_bypass_le` and `bypass_eq_self_of_length_le` using the new sublist theorems. Co-authored-by: Iván Renison <85908989+IvanRenison@users.noreply.github.com> --- Except for a couple of `cycleBypass` ones, I did not add such theorems where there was no subset theorem to begin with (e.g. `(p.take n).darts <+: p.darts`), as they are usually not worth stating since they're trivial and simp proves them. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 182/113 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 7 7 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions'] b-mehta
assignee:b-mehta
2
0-72881
20 hours ago
17-76843
17 days ago
57-22782
57 days
38071 JovanGerb
author:JovanGerb
feat(Convert): less aggressive congruence This PR tries to make `convert` behave more predictably, disabling some of the aggressive congruence steps that `congr!` does. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author 13/7 Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/List/Perm/Basic.lean,Mathlib/Tactic/Convert.lean 3 5 ['Vierkantor', 'github-actions', 'joneugster', 'mathlib-merge-conflicts'] Vierkantor and joneugster
assignee:Vierkantor assignee:joneugster
1
0-71593
19 hours ago
0-81519
22 hours ago
0-5245
1 hour
39296 scholzhannah
author:scholzhannah
feat: more informative output messages in the flexible linter The current output messages in the flexible linter are: - If the stained location is a hypothesis: `'exact h' uses 'h'!` - If the stained location is the goal: `'exact Nat.le_succ_of_le h' uses '⊢'!` I think the first is not very informative and the second is additionally confusing. So I change them to read: - For a hypothesis: `'exact h' uses 'h', which was modified by a flexible tactic!` - And for the goal: `'exact Nat.le_succ_of_le h' modifies the current goal, which was modified by a flexible tactic!` I also added some more explanation to the messages in the case that all the hypotheses and the goal were stained by `simp at *`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-author 129/26 Mathlib/Tactic/Linter/FlexibleLinter.lean,MathlibTest/Linter/Flexible/Basic.lean,MathlibTest/Linter/Flexible/ImportHeavy.lean 3 11 ['b-mehta', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts', 'scholzhannah', 'thorimur'] grunweg, joneugster, thorimur
assignee:joneugster assignee:grunweg assignee:thorimur
1
0-62357
17 hours ago
0-62357
17 hours ago
12-7574
12 days
38837 kbuzzard
author:kbuzzard
feat: add "higher instance priority" library note We add a library note explaining the logic in making instances like `Semiring.toModule` higher priority than the default. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #38704 [only because one of the claims in the note is false without it] documentation t-algebra delegated
label:t-algebra$
19/0 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Module/Defs.lean 4 8 ['github-actions', 'joneugster', 'kbuzzard', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody 1
0-61326
17 hours ago
0-61327
17 hours ago
19-69280
19 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
1
0-57384
15 hours ago
1-1723
1 day ago
29-75928
29 days
34273 gasparattila
author:gasparattila
feat(Topology/Sets): finite sets are dense in `(Nonempty)Compacts` --- - [x] depends on: #34266 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology ready-to-merge 35/0 Mathlib/Topology/Sets/VietorisTopology.lean 1 8 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'ocfnash', 'scholzhannah'] ocfnash
assignee:ocfnash
1
0-56085
15 hours ago
0-65019
18 hours ago
66-3298
66 days
37623 IvanRenison
author:IvanRenison
feat(Order/RelIso): add theorems about `RelHom.comp` and `RelEmbedding.trans` Co-authored-by: SnirBroshi <26556598+SnirBroshi@users.noreply.github.com> --- Missing of this theorems noticed by @SnirBroshi in #37598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order ready-to-merge 18/0 Mathlib/Order/RelIso/Basic.lean 1 15 ['IvanRenison', 'Komyyy', 'SnirBroshi', 'Vierkantor', 'dagurtomas', 'eric-wieser', 'github-actions', 'mathlib-bors', 'plp127'] nobody 3
0-49156
13 hours ago
0-86372
23 hours ago
55-4225
55 days
40011 SnirBroshi
author:SnirBroshi
feat(Algebra/Group/Subgroup/Pointwise): iSup of normal subgroups is normal This is a generalization of `sup_normal`, which is for the supremum of two subgroups. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
29/0 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean 2 2 ['github-actions', 'tb65536'] nobody 1
0-46074
12 hours ago
0-81752
22 hours ago
0-81714
22 hours
32989 kim-em
author:kim-em
fix(Tactic/Simps): skip @[defeq] inference for non-exposed definitions This PR makes `@[simps]` check whether the source definition's body is exposed before calling `inferDefEqAttr`. When the body is not exposed, we skip the `@[defeq]` inference to avoid validation errors. Without this fix, using `@[simps]` on a definition that is not `@[expose]`d produces an error like: ``` Theorem Foo_bar has a `rfl`-proof and was thus inferred to be `@[defeq]`, but validating that attribute failed: Not a definitional equality: the left-hand side ... is not definitionally equal to the right-hand side ... Note: This theorem is exported from the current module. This requires that all definitions that need to be unfolded to prove this theorem must be exposed. ``` The fix checks `(← getEnv).setExporting true |>.find? cfg.srcDeclName |>.any (·.hasValue)` to determine if the definition body is visible in the public scope, and only calls `inferDefEqAttr` if it is. 🤖 Prepared with Claude Code t-meta LLM-generated merge-conflict 68/15 Mathlib/CategoryTheory/Triangulated/TStructure/TruncLTGE.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Translate/Core.lean,MathlibTest/SimpsModule.lean 4 22 ['JovanGerb', 'Vierkantor', 'github-actions', 'joneugster', 'kim-em', 'mathlib-merge-conflicts'] nobody 1
0-42321
11 hours ago
1-85787
1 day ago
37-19177
37 days
34015 erdOne
author:erdOne
feat(AlgebraicGeometry): category of schemes affine over a base --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry delegated merge-conflict 522/11 Mathlib.lean,Mathlib/AlgebraicGeometry/AffineOver.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/RelativeGluing.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/CategoryTheory/Sites/Hypercover/Subcanonical.lean 8 53 ['chrisflav', 'dagurtomas', 'erdOne', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] chrisflav
assignee:chrisflav
1
0-42195
11 hours ago
20-9785
20 days ago
40-35668
40 days
37955 artie2000
author:artie2000
feat(Algebra/Polynomial): lemmas about `modByMonic` * Add various small lemmas about `Polynomial.modByMonic` * Remove unneccesary commutativity assumption on `Polynomial.aeval_eq_zero_of_dvd_aeval_eq_zero` by proving `Polynomial.aeval_dvd` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated merge-conflict
label:t-algebra$
20/6 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/FieldTheory/Minpoly/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean 5 5 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
1
0-40154
11 hours ago
23-53959
23 days ago
24-18920
24 days
38223 Deicyde
author:Deicyde
feat(Geometry/Manifold): add `MfldCat`, the category of `C^n` manifolds We define `MfldCat 𝕜 n`: the category of `C^n` manifolds over a field `𝕜`, following the pattern of `TopCat` in `Mathlib.Topology.Category.TopCat.Basic`. We also implement `HasForget₂ (MfldCat 𝕜 n) TopCat`—the forgetful functor into the category of topological spaces. For more discussion see the Zulip thread: [#PR reviews > #38223 The Category of C^n Manifolds](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/with/587038032) Also added: `ContMDiffMap.id_apply`, `.coe_id` and `.coe_comp` which are comparable to `ContinuousMap` API. ### Future work - ✅ Define a Monoidal structure via product manifolds, analogous to `Manifold.Topology.Category.TopCat.Monoidal` #38560 - ✅ Define the tangent functor: `M ↦ TM`, `F ↦ F.tangentMap` from `MfldCat (n+1) 𝕜` to `MfldCat n 𝕜` #38270 - Functor `FGModuleCat 𝕜 ⥤ MfldCat 𝕜 n` sending a finite-dimensional `𝕜`-vector space to the manifold modeled on itself. Left as `TODO`. - Define `FGModuleCat 𝕜` as an enriched category over `MfldCat n 𝕜`. Then _smooth functors_ can be realized as endofunctors on the enriched category. This is the main motivation for this construction. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor t-category-theory 224/0 Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean 3 57 ['Deicyde', 'chrisflav', 'dagurtomas', 'github-actions', 'idontgetoutmuch', 'peabrainiac'] nobody 1
0-37688
10 hours ago
21-55868
21 days ago
35-19546
35 days
34271 gasparattila
author:gasparattila
feat(Topology/Sets): second-countability of `(Nonempty)Compacts` --- - [x] depends on: #34266 - [x] depends on: #34268 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 17/76 Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sets/VietorisTopology.lean 2 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'scholzhannah'] nobody 1
0-37685
10 hours ago
21-53857
21 days ago
58-62722
58 days
36743 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): introduce `GraphLike` typeclass Per discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)), This PR introduces the `GraphLike` typeclass to capture the notions like `dart` and `walk` across various graph objects, such as `SimpleGraph`, `Graph`, and `Digraph`. The goal is that by abstracting these core components into a typeclass, we can prove these results once for all graph-like structures rather than duplicating them across different graph types. ### Main definitions * `GraphLike V D E Gr`: A typeclass parameterized by a vertex type `V`, dart type `D` and a graph type `Gr` (with `V`, `D` & `E` as an `outParam`). * `GraphLike.verts : Set V`: The set of vertices of the graph. * `GraphLike.darts : Set D`: The set of darts of the graph. * `GraphLike.edges : Set E`: The set of edges of the graph. * `GraphLike.Adj : V → V → Prop`: The adjacency relation, defined by default as `∃ d ∈ darts, fst d = u ∧ snd d = v`. --- This PR generalises #35776 to also unify `Graph`. PRs depending on this PR are #39047 (graphLike with no multi edges) => #39050 (Digraph is graphLike) || V #36829 (undirected graphLike) => #39053 (Graph is graphLike) & #39054 (Simplegraph is graphLike) || V #36756 (def of walk on GraphLike) => #36971 (change Simplegraph to use GraphLike walk) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 104/0 Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean 2 78 ['IvanRenison', 'Jun2M', 'SnirBroshi', 'YaelDillies', 'github-actions', 'lauramonk', 'mathlib-merge-conflicts'] nobody 1
0-37684
10 hours ago
21-68494
21 days ago
72-66872
72 days
38589 vlad902
author:vlad902
feat(SimpleGraph): add universal vertex predicate Add the predicate `G.IsUniversal v` to indicate that `v` is a universal vertex, i.e. connected to all other vertices in `G`. This matches the recently added `G.IsIsolated v` predicate for isolated vertices. Co-authored-by: Justin Lai --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics merge-conflict 61/10 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Combinatorics/SimpleGraph/UniversalVerts.lean 5 15 ['8e7', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] nobody 1
0-36730
10 hours ago
0-36731
10 hours ago
32-17772
32 days
38873 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Constructions/BorelSpace/Real` - rewrites `measurable_const_mul` by splitting off the `c = 0` case and proving the nonzero case via `measurable_of_continuousOn_compl_singleton` - replaces the ad hoc case analysis on `⊥`, `⊤`, and real coefficients with a direct continuity argument for multiplication on `EReal` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 5/19 Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean 1 3 ['LorenzoLuccioli', 'github-actions', 'yuanyi-350'] RemyDegenne
assignee:RemyDegenne
1
0-36347
10 hours ago
23-40207
23 days ago
26-51278
26 days
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
1
0-36344
10 hours ago
15-72223
15 days ago
23-6784
23 days
40026 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(ArithmeticFunction/Defs): A power of a multiplicative arithmetic function is multiplicative --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 9/0 Mathlib/NumberTheory/ArithmeticFunction/Defs.lean 1 2 ['github-actions', 'wwylele'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
1
0-36333
10 hours ago
0-62796
17 hours ago
0-62758
17 hours
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 1
0-24090
6 hours ago
1-55308
1 day ago
2-19184
2 days
38027 8e7
author:8e7
feat(Combinatorics/SimpleGraph/Star): define star graphs Add a new definition `starGraph` and several key lemmas. Star graphs are a trivial class of tree, often used in constructive proofs regarding trees. An example use case is shown in #38334. --- All lemmas are hand written first, then golfed with the help of Claude Code. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 87/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Star.lean 2 41 ['8e7', 'IvanRenison', 'JovanGerb', 'SnirBroshi', 'b-mehta', 'github-actions', 'vihdzp', 'vlad902'] nobody 1
0-8437
2 hours ago
44-29265
44 days ago
46-27492
46 days
36155 grunweg
author:grunweg
feat: custom elaborators for TangentSpace and tangentMap(Within) And use these to golf the differential geometry files a bit further. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-meta 161/106 Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/MFDeriv/Tangent.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/Riemannian/Basic.lean,Mathlib/Geometry/Manifold/Riemannian/PathELength.lean,Mathlib/Topology/FiberBundle/Constructions.lean,MathlibTest/DifferentialGeometry/Notation/Basic.lean 11 13 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'ocfnash'] JovanGerb
assignee:JovanGerb
1
0-3319
55 minutes ago
0-5635
1 hour ago
71-34906
71 days

All open 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
14720 eric-wieser
author:eric-wieser
refactor: change `CliffordAlgebra.lift` to use quadratic maps This works towards addressing a footnote on [page 152](https://eric-wieser.github.io/thesis/eric-wieser-thesis.pdf#page=164) of my thesis. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
200/167 Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Equivs.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Complex.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean,Mathlib/LinearAlgebra/QuadraticForm/Isometry.lean,Mathlib/LinearAlgebra/QuadraticForm/IsometryEquiv.lean,Mathlib/LinearAlgebra/QuadraticForm/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat.lean,Mathlib/LinearAlgebra/QuadraticForm/Real.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct/Isometries.lean 11 1 ['github-actions'] nobody
668-11660
1 year ago
unknown
0-0
0 seconds
14889 yuma-mizuno
author:yuma-mizuno
feat(CategoryTheory/Bicategory/Monad): define monad in bicategory --- - [ ] depends on: #12107 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR t-category-theory 1566/12 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Functor/Oplax.lean,Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Bicategory/Monad/Adjunction.lean,Mathlib/CategoryTheory/Bicategory/Monad/Basic.lean,Mathlib/CategoryTheory/Bicategory/Monad/Cat.lean,Mathlib/CategoryTheory/Monad/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Widget/StringDiagram.lean,scripts/noshake.json,test/StringDiagram.lean,widget/src/penrose/monoidal.dsl,widget/src/penrose/monoidal.sty 14 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11660
1 year ago
unknown
0-0
0 seconds
13847 alreadydone
author:alreadydone
feat(EllipticCurve): the universal elliptic curve + Define the universal Weierstrass curve (`Universal.curve`) over the polynomial ring `ℤ[A₁,A₂,A₃,A₄,A₆]`, and the universal pointed elliptic curve (`Universal.pointedCurve`) over the field of fractions (`Universal.Field`) of the universal ring `ℤ[A₁,A₂,A₃,A₄,A₆,X,Y]/⟨P⟩ = Universal.Poly/⟨P⟩` (`Universal.Ring`, where `P` is the Weierstrass polynomial) with distinguished point `(X,Y)`. + Given a Weierstrass curve `W` over a commutative ring `R`, we define the specialization homomorphism `W.specialize : ℤ[A₁,A₂,A₃,A₄,A₆] →+* R`. If `(x,y)` is a point on the affine plane, we define `W.polyEval x y : Universal.Poly →+* R`, which factors through `W.ringEval x y : Universal.Ring →+* R` if `(x,y)` is on `W`. + Introduce the cusp curve `Y² = X³`, on which lies the rational point `(1,1)`, with the nice property that `ψₙ(1,1) = n`, making it easy to prove nonvanishing of the universal `ψₙ` when `n ≠ 0` by specializing to the cusp curve, which shows that `(X,Y)` is a point of infinite order on the universal pointed elliptic curve. --- - [x] depends on: #13845 - [x] depends on: #12883 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-algebraic-geometry
label:t-algebra$
543/208 Mathlib.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean 6 4 ['Multramate', 'alreadydone', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11659
1 year ago
unknown
0-0
0 seconds
14036 adomani
author:adomani
Test/decl diff in lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 465/1040 .github/workflows/Lean_decl_diff.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean 8 1 ['github-actions'] nobody
668-11659
1 year ago
unknown
0-0
0 seconds
12952 adomani
author:adomani
test: length statistics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP test-ci 124/0 .github/workflows/mathlib_stats.yml,.github/workflows/ml_stats_label.yaml,scripts/mathlib_stats.sh 3 9 ['github-actions'] nobody
668-11658
1 year ago
unknown
0-0
0 seconds
13297 urkud
author:urkud
feat(Semicontinuous): add `comp` lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 31/13 Mathlib/Topology/Semicontinuous.lean 1 3 ['sgouezel', 'urkud'] nobody
668-11658
1 year ago
732-12356
732 days ago
0-18201
5 hours
13372 adomani
author:adomani
dev: generic replacement --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 446/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ReplaceRefine.lean,Mathlib/Tactic/Replacements.lean 4 4 ['adomani', 'github-actions'] nobody
668-11658
1 year ago
unknown
0-0
0 seconds
13512 adomani
author:adomani
test: count all --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 85/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/Tally.lean 4 0 [] nobody
668-11658
1 year ago
unknown
0-0
0 seconds
12416 adomani
author:adomani
chore: remove some cdots --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 3830/3239 Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Partition.lean,Counterexamples/Cyclotomic105.lean,Counterexamples/DirectSumIsInternal.lean,Mathlib.lean,Mathlib/Algebra/Algebra/Spectrum.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/List/Basic.lean,Mathlib/Algebra/Category/GroupCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Images.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/CharP/Quotient.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/GroupPower/Order.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Homology/Exact.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/Algebra/Homology/TotalComplex.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LocalizedModule.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/Module/Zlattice/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Int.lean,Mathlib/Algebra/Order/Group/MinMax.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/Quandle.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SplitSimplicialObject.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ApproximatesLinearOn.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/TangentCone.lean 608 0 [] nobody
668-11657
1 year ago
unknown
0-0
0 seconds
12465 rosborn
author:rosborn
style: Change Subtype.val to (↑) --- This is a test to see replacing `Subtype.val` with `(↑)` where appropriate. After performing the rewrite, some of the types subtly changed in a difficult to detect manner. Before the change, `openEmbedding' _` had type `OpenEmbedding Subtype.val` where `Subtype.val` expanded as `@Subtype.val α fun x ↦ x ∈ U : ↥U → α`. After the change, `Subtype.val` expands to `@Subtype.val α fun x ↦ x ∈ ↑U : { x // x ∈ ↑U } → α`. This caused some later proofs to fail due to the different definition. In a similar case, within the proof of `mfderiv_coe_sphere_injective` on line 553 `Subtype.val` expanded as `@Subtype.val E fun x ↦ x ∈ (Submodule.span ℝ {↑(-v)})ᗮ : ↥(Submodule.span ℝ {↑(-v)})ᗮ → E`. After changing to `(↑)`, it expanded to `@Subtype.val E fun x ↦ x ∈ ↑(Submodule.span ℝ {↑(-v)})ᗮ : { x // x ∈ ↑(Submodule.span ℝ {↑(-v)})ᗮ } → E`. One benefit to using `(↑)` was that it lead to a shorter proof as `ContinuousLinearEquiv.coe_coe` could be removed on line 559. In general, this subtle change in types is basically impossible to detect without a tool like leaff. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 50/50 Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/Normed/Group/Hom.lean,Mathlib/CategoryTheory/Generator.lean,Mathlib/CategoryTheory/Limits/Shapes/Types.lean,Mathlib/CategoryTheory/Subobject/Types.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/GroupTheory/Subsemigroup/Operations.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/Order/Directed.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/Order/RelIso/Set.lean,Mathlib/RingTheory/Artinian.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/PGame.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/Germ.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean 28 1 ['eric-wieser', 'rosborn'] nobody
668-11657
1 year ago
unknown
0-0
0 seconds
12473 adomani
author:adomani
first translations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 424/265 Mathlib.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/WithBot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMax.lean 5 0 [] nobody
668-11657
1 year ago
unknown
0-0
0 seconds
12528 adomani
author:adomani
test: autotranslations Bot --> Top --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 350/294 Mathlib.lean,Mathlib/Order/WithBot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMax.lean,test/MinMax.lean 5 0 [] nobody
668-11657
1 year ago
760-47095
760 days ago
0-4
4 seconds
12588 adomani
author:adomani
remove trailingDegree --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1280/979 Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/TrailingDegree.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Mirror.lean,Mathlib/Order/WithBot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMax.lean,Mathlib/Tactic/MinMaxTwo.lean,test/MinMax.lean 11 0 [] nobody
668-11657
1 year ago
unknown
0-0
0 seconds
12608 eric-wieser
author:eric-wieser
feat: allow `nsmul` / `zsmul` to be omitted again, with a warning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-meta
label:t-algebra$
118/2 Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DefaultFieldLinter.lean,scripts/noshake.json,test/default_field_linter.lean 6 12 ['YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions'] nobody
668-11657
1 year ago
757-44076
757 days ago
0-84
1 minute
12637 adomani
author:adomani
translation: MonoidAlgebra to AddMonoidAlgebra [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/merge.20Add-MonoidAlgebra) * #12646 was found as a consequence of unification. * #12659 the typo `single 1 1` for `single 0 1`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-meta
label:t-algebra$
615/986 Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMaxTwo.lean,scripts/noshake.json 7 0 [] nobody
668-11657
1 year ago
unknown
0-0
0 seconds
12984 adomani
author:adomani
Adomani/periodic reports dev custom action --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP test-ci 366/0 .github/workflows/mathlib_stats.yml,.github/workflows/ml_stats_label.yaml,scripts/count_decls.lean,scripts/mathlib_stats.sh 4 69 ['github-actions'] nobody
668-11657
1 year ago
unknown
0-0
0 seconds
13057 alreadydone
author:alreadydone
feat(NumberTheory): characterize elliptic divisibility sequences Main results: + Every `normEDS` is an elliptic divisibility sequence (EDS). The key proof is `rel₄_of_anti_oddRec_evenRec`, based on my original argument first published on [MathSE](https://math.stackexchange.com/a/4903422/12932) + Conversely, every EDS is equal to some `normEDS` (assuming that the first two terms are not zero divisors) --- - [ ] depends on: #13155 - [x] depends on: #13153 - [x] depends on: #10843 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-number-theory blocked-by-other-PR
label:t-algebra$
1032/55 Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Data/Int/Defs.lean,Mathlib/Data/Int/Parity.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 5 6 ['Multramate', 'alreadydone', 'kbuzzard', 'leanprover-community-mathlib4-bot'] nobody
668-11657
1 year ago
736-36085
736 days ago
0-34672
9 hours
12192 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: generalize isLittleO_const_id_atTop/atBot From PNT+. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 10/4 Mathlib/Analysis/Asymptotics/Asymptotics.lean 1 6 ['Ruben-VandeVelde', 'llllvvuu', 'urkud'] nobody
668-11656
1 year ago
772-33752
772 days ago
1-21749
1 day
10024 ADedecker
author:ADedecker
feat: rename `connectedComponentOfOne` to `identityComponent`, prove that it is normal and open --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology awaiting-CI 58/24 Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/Connected/Basic.lean 5 0 [] nobody
668-11655
1 year ago
855-3779
855 days ago
0-832
13 minutes
10521 eric-wieser
author:eric-wieser
chore: generalize `IsBoundedLinearMap` to modules Most of the lemmas don't actually need the normed on the scalars at all. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 58/42 Mathlib/Analysis/NormedSpace/BoundedLinearMaps.lean 1 3 ['github-actions', 'j-loreaux', 'urkud'] nobody
668-11655
1 year ago
834-66105
834 days ago
1-29105
1 day
10721 urkud
author:urkud
feat(Order/FunLike): define `PointwiseLE` - introduce a mixin class `DFunLike.PointwiseLE`, use it to define `DFunLike.instPartialOrder`; - add a generic `DFunLike.orderEmbeddingCoe` - add `DFunLike.PointwiseLE` instances here and there. With this refactor and #13022, I'm going to generalize lemmas like `MeasureTheory.ae_mono` to `OuterMeasureClass`. --- - [x] depends on: #12983 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order t-logic 123/50 Mathlib.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/GroupTheory/Congruence.lean,Mathlib/Order/FunLike.lean,Mathlib/Order/Heyting/Hom.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/Bounded.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Topology/Order/Hom/Basic.lean 13 48 ['YaelDillies', 'dupuisf', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
668-11655
1 year ago
717-76457
717 days ago
64-12984
64 days
10845 Shamrock-Frost
author:Shamrock-Frost
Refactor: Make MonoidalFunctor carry the data of an inverse We change the definition of a strong monoidal functor from a lax monoidal functor for which the unitor and tensorator are `IsIso` to a lax monoidal functor with the data of inverses for the unitor and tensorator. This requires fixing a lot of knock on effects. --- This is a **draft PR**. I would like to talk with people on zulip before merging it, and plan ahead to when we have oplax/colax monoidal functors as well. I'm not sure the approach I took here where `MonoidalFunctor` inherits from `LaxMonoidalFunctor` is a good choice if we want to be lax/oplax symmetric. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP RFC t-category-theory 3799/1589 Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/Mates.lean,Mathlib/CategoryTheory/Adjunction/Opposites.lean,Mathlib/CategoryTheory/Adjunction/Prod.lean,Mathlib/CategoryTheory/Adjunction/Whiskering.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/Bicategory/SingleObj.lean,Mathlib/CategoryTheory/CatCommSq.lean,Mathlib/CategoryTheory/CatSquares.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Monoidal/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CommMon_.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Rigid/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Rigid/OfEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/CategoryTheory/Monoidal/Types/Basic.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/Products/Associator.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/CategoryTheory/Shift/Pullback.lean,Mathlib/CategoryTheory/Whiskering.lean,Mathlib/RepresentationTheory/Action/Monoidal.lean,Mathlib/RepresentationTheory/GroupCohomology/Resolution.lean,Mathlib/RepresentationTheory/Rep.lean 41 7 ['Shamrock-Frost', 'joelriou'] nobody
668-11655
1 year ago
unknown
0-0
0 seconds
11100 eric-wieser
author:eric-wieser
feat(CategoryTheory/Limits): add `Functor.mapBinaryBiconeInv` --- - [ ] depends on: #11130 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) It's tempting to try to prove something like ```lean theorem Functor.mapBinaryBiconeInv_toCone [Limits.HasZeroMorphisms C] [Limits.HasZeroMorphisms D] (e : D ⥤ C) [IsEquivalence e] {X Y : D} (b : BinaryBicone (e.obj X) (e.obj Y)) : (e.mapBinaryBiconeInv b).toCone = (e.mapConeInv <| (Cones.postcompose (pairComp X Y e).symm.hom).obj b.toCone) := by simp sorry theorem Functor.mapBinaryBiconeInv_toCocone [Limits.HasZeroMorphisms C] [Limits.HasZeroMorphisms D] (e : D ⥤ C) [IsEquivalence e] {X Y : D} (b : BinaryBicone (e.obj X) (e.obj Y)) : (e.mapBinaryBiconeInv b).toCocone = (e.mapCoconeInv <| (Cocones.precompose (pairComp X Y e).hom).obj b.toCocone) := by sorry ``` but maybe equality is evil here merge-conflict t-category-theory awaiting-CI 52/0 Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Biproducts.lean 3 6 ['TwoFX', 'eric-wieser', 'leanprover-community-mathlib4-bot'] nobody
668-11655
1 year ago
unknown
0-0
0 seconds
8503 thorimur
author:thorimur
feat: meta utils for `refine?` This PR introduces some metaprogramming infrastructure and utilities that are necessary for `refine?` (#8364). * `elabTermWithHoles'` (and `withCollectingNewGoalsFrom'`): a more configurable version of `elabTermWithHoles`, which allows: preserving the initial mvar type; *not* tagging untagged goals; and postponing mvars. * Some `Syntax` and `TSyntax` functionality, including: * `TSyntax.map`(`M`), for acting on `TSyntax` with functions `f : Syntax -> (m) Syntax` * Range operations: `includes` and `isEqByRange` * `setTrailingInfoBy?` and `unsetOriginalTrailing`, which is like `unsetTrailing`, but behaves as expected. * `Term.withoutModifyingState`, which does not allow unknown mvarIds to escape via the infotree * `hasNewErrors`, which runs a monad computation and returns the value along with `true` or `false` depending on whether new error messages have been logged * the option `pp.anonymousMVarSuffixes`, which can be set to `false` to replace all numeric suffixes of anonymous mvars with `✝`, which is useful in tandem with `#guard_msgs` for tests (but is essentially a workaround—although it can make some tactic states more legible). --- I'm open to suggestions on the location and name of the option/delaborator used for trimming the numeric suffixes of anonymous mvar names (which is used in the tests)—including whether or not it should exist in the first place, as it's essentially just a workaround. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 312/5 Mathlib.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Tactic/ElabTerm.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Util/Delaborators.lean,Mathlib/Util/Syntax.lean 6 2 ['kmill', 'thorimur'] kmill
assignee:kmill
668-11654
1 year ago
884-70378
884 days ago
38-46649
38 days
8519 eric-wieser
author:eric-wieser
refactor(LinearAlgebra/TensorProduct): golf using `liftAddHom` This new `TensorProduct.liftAddHom` doesn't require bilinearity, only that scalar multiplication can be moved between the arguments. While in theory we only need the `AddMonoidHom` version as it offers exactly the same generality, we first provide an unbundled `liftFun` as this seems to give a sizeable performance boost if used in downstream `lift` variants. --- - [x] depends on: #8571 - [x] depends on: #8584 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
53/50 Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean 3 28 ['bustercopley', 'eric-wieser', 'jcommelin', 'jjaassoonn', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors'] nobody
668-11654
1 year ago
907-63417
907 days ago
5-6524
5 days
8582 eric-wieser
author:eric-wieser
wip --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 3/7 Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean 2 4 ['eric-wieser', 'leanprover-bot'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
8616 eric-wieser
author:eric-wieser
feat(Algebra/FreeAlgebra): add right action and `IsCentralScalar` --- - [ ] depends on: #8652 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI
label:t-algebra$
30/8 Mathlib/Algebra/FreeAlgebra.lean 1 1 ['leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
915-45596
915 days ago
2-25170
2 days
8658 eric-wieser
author:eric-wieser
feat: support right actions for `Con` This adds a new `Con.CompatibleSMul` typeclass that captures exactly the condition when `smul` descends to the quotient. I was not quite able to merge this with `MulAction.QuotientAction`: * The imports are such that the congruence relation `QuotientGroup.con` is not yet available in that file * `QuotientGroup.con` requires the subgroup to be normal, while `MulAction.QuotientAction` does not --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
80/18 Mathlib/GroupTheory/Congruence.lean,Mathlib/RingTheory/Congruence.lean 2 6 ['YaelDillies', 'eric-wieser'] nobody
668-11654
1 year ago
884-63701
884 days ago
29-65537
29 days
8788 FMLJohn
author:FMLJohn
feat(Algebra/Module/GradeZeroModule): if `A` is a graded semiring and `M` is a graded `A`-module, then each grade of `M` is a module over the 0-th grade of `A`. --- - [ ] depends on: #8187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
237/4 Mathlib.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean 6 4 ['FMLJohn', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
908-1550
908 days ago
1-57831
1 day
8906 jjaassoonn
author:jjaassoonn
feat: add some missing lemmas about linear algebra --- - [ ] depends on: #8905 [lifting injective modules to higher universe] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
45/1 Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/LinearAlgebra/Basic.lean,Mathlib/LinearAlgebra/BilinearMap.lean 4 21 ['AntoineChambert-Loir', 'alreadydone', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
903-71148
903 days ago
0-343
5 minutes
8961 eric-wieser
author:eric-wieser
refactor: use the coinduced topology on ULift --- - [x] depends on: #8958 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict awaiting-author awaiting-CI 46/14 Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/Constructions.lean 3 6 ['eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
668-11654
1 year ago
901-43484
901 days ago
0-1
1 second
9146 laughinggas
author:laughinggas
feat(Data/ZMod/Defs): Topological structure on `ZMod` Added a discrete topology structure to `ZMod n` for all `n` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-topology
label:t-algebra$
55/3 Mathlib.lean,Mathlib/Topology/Algebra/Constructions.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Instances/ZMod.lean,Mathlib/Topology/Maps.lean 5 61 ['YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'laughinggas', 'mo271', 'urkud'] nobody
668-11654
1 year ago
874-56145
874 days ago
7-11053
7 days
9229 eric-wieser
author:eric-wieser
refactor(Algebra/GradedMonoid): Use `HMul` to define `GMul` This make the notation much nicer, but I'm pretty sure this is a bad idea for performance / ambiguity reasons. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
114/125 Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/GradedMulAction.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/LinearAlgebra/TensorAlgebra/ToTensorPower.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean 11 6 ['eric-wieser', 'leanprover-bot'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9252 FR-vdash-bot
author:FR-vdash-bot
chore: remove redundant covariance instances, add priority I noticed that the following code is surprisingly slow. ``` lean import Mathlib count_heartbeats in example {n : ℕ} : CovariantClass (Fin (n + 1)) (Fin (n + 1)) (· + ·) (· < ·) := by try infer_instance sorry ``` This PR removed some redundant instances. The heartbeats have dropped from 19118 to 11450 (still too slow). Lean4 still seems to make some redundant attempts. See also https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1691792488. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-order merge-conflict slow-typeclass-synthesis awaiting-author
label:t-algebra$
40/32 Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Four.lean 4 8 ['astrainfinita', 'leanprover-bot', 'urkud'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9354 chenyili0818
author:chenyili0818
feat: monotonicity of gradient on convex real-valued functions This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 540/0 Mathlib.lean,Mathlib/Analysis/Convex/ConvexFunction.lean 2 15 ['github-actions', 'winstonyin'] nobody
668-11654
1 year ago
858-42280
858 days ago
23-36394
23 days
9356 alexjbest
author:alexjbest
feat: assumption? A little helper for replacing `assumption`s with `exact` statements quickly --- If this is approved I will add tests This begs the question of whether it might simply be better to add some sort of code action for "replace with trythis output" [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 24/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/TryAssumption.lean 4 5 ['alexjbest', 'j-loreaux', 'jcommelin'] nobody
668-11654
1 year ago
862-47652
862 days ago
19-26336
19 days
9469 dupuisf
author:dupuisf
feat: maximum modulus principle for functions vanishing at infinity This PR adds versions of the maximum modulus principle for functions vanishing at infinity that parallel those we already had for functions over a bounded set. These will have applications in e.g. norm interpolation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-analysis 71/0 Mathlib/Analysis/Complex/AbsMax.lean 1 8 ['dupuisf', 'j-loreaux'] nobody
668-11654
1 year ago
862-52900
862 days ago
12-86009
12 days
9482 yuma-mizuno
author:yuma-mizuno
refactor(CategoryTheory/Monoidal): add `LaxMonoidalStruct` Add a `LaxMonoidalStruct` with only the unit morphism `ε` and the tensorator `μ`. This is used in #6307 to provide two different constructors for `LaxMonoidal` that have common `ε` and `μ` but use the tensor of morphisms or the whiskerings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 21/8 Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/CategoryTheory/Monoidal/Functorial.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean 3 0 [] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9487 eric-wieser
author:eric-wieser
feat: the exponential of dual numbers over non-commutative rings This is a work in progress, as I don't know my way around the measure theory library. --- - [x] depends on: #9489 - [x] depends on: #9486 - [x] depends on: #10427 - [ ] depends on: #10452 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-measure-probability merge-conflict t-analysis
label:t-algebra$
97/0 Mathlib/Analysis/NormedSpace/TrivSqZeroExt.lean 1 7 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9504 alreadydone
author:alreadydone
chore: remove some IsSeparable assumptions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
41/14 Mathlib/NumberTheory/NumberField/Norm.lean,Mathlib/RingTheory/Norm.lean 2 0 [] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9510 eric-wieser
author:eric-wieser
feat(Analysis/Calculus/DualNumber): Extending differentiable functions to dual numbers This shows that this operation preserves multiplication and composition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-analysis awaiting-CI
label:t-algebra$
119/0 Mathlib/Analysis/Calculus/DualNumber.lean 1 4 ['github-actions'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9570 eric-wieser
author:eric-wieser
feat(Algebra/Star): Non-commutative generalization of `StarModule` [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Star.20modules.20over.20non-commutative.20scalars/near/383664005). Until we address #7152, we have to have both `StarModule` and `StarModule'`. To prove this generalization is useful, this shows that with it as an assumption, `TrivSqZeroExt` is a `StarRing`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra awaiting-CI
label:t-algebra$
66/6 Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Pi.lean,Mathlib/Algebra/Star/Prod.lean,Mathlib/Algebra/TrivSqZeroExt.lean 4 0 [] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9642 eric-wieser
author:eric-wieser
refactor(Analysis/Normed/{Group/Field}/Basic): Let `extends` generate the repeated fields New-style structure shenanigans mean that instance constructors randomly complain about a missing field that can be found with `__ : MetricSpace _ := infer_instance`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) I will write a longer PR description for this once CI is happy WIP merge-conflict awaiting-author help-wanted t-analysis 122/202 Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Completion.lean,Mathlib/Analysis/Normed/Order/Basic.lean,Mathlib/Analysis/NormedSpace/ProdLp.lean,Mathlib/Analysis/NormedSpace/Star/Matrix.lean,Mathlib/Analysis/NormedSpace/Unitization.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean 17 11 ['eric-wieser', 'leanprover-bot', 'urkud'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
6580 adomani
author:adomani
chore: `move_add`-driven replacements This PR accompanies #6576 and uses `move_add/mul` to simplify/streamline a selection of proofs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 12/13 Counterexamples/Monic_nonRegular.lean,Mathlib/Algebra/Associated.lean,Mathlib/Data/Polynomial/RingDivision.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean 4 0 [] nobody
668-11653
1 year ago
953-60817
953 days ago
62-34247
62 days
6630 MohanadAhmed
author:MohanadAhmed
feat: Reduced Spectral Theorem For A hermitian matrix $A : n \times n$ with rank $A.rank \leq n$, we can eliminate the zero eigenvalues and their corresponding eigenvectors from the (alternate) spectral theorem. As such the matrix $A$ can be written as: $$A = V₁ D V₁ᴴ$$ where - $V₁$ : $n \times r$ is the matrix of eigenvector with non-zero associated eigenvalues. - $D$ is $r \times r$ is the diagonal matrix containing only non-zero eigenvalues on its main diagonal. with $r = A.rank$ being the rank of the matrix Towards that goal we make several equivalence definitions: - `{i // hA.eigenvalues i ≠ 0} ≃ Fin (A.rank)` the set of non-zero eigenvalues can be indexed by the numbers from 0 to (r - 1). - `{i // ¬ hA.eigenvalues i ≠ 0} ≃ Fin (n - A.rank)` the set of non-zero eigenvalues can be indexed by the numbers from 0 to (n - r - 1). - `{i // hA.eigenvalues i ≠ 0} ⊕ {i // ¬hA.eigenvalues i ≠ 0} ≃ n`: the index set of the matrix (together with the associated eigenvector matrix and eigenvalues matrix ) can be partitioned into two complement groups the ones corresponding to non-zero eigenvalues and the ones corresponding to zero eigenvalues. - We can then put the previous definitions together to obtain a: `Fin (A.rank) ⊕ Fin (Fintype.card n - A.rank) ≃ n` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
31/0 Mathlib/LinearAlgebra/Matrix/Spectrum.lean 1 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
6777 adomani
author:adomani
chore(Co*variantClass): replace eta-expanded (· * ·), (· + ·), (· ≤ ·), (· < ·) Replace `CovariantClass X X (· * ·) (· ≤ ·)` with -> `CovariantClass X X HMul.hMul LE.le` and similarly for `HAdd`, `LT`, `Contravariant`. This PR is inspired by [Issue #6646](https://github.com/leanprover-community/mathlib4/issues/6646) and, more specifically, [this comment](https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1692792066). Note that https://github.com/leanprover/lean4/pull/2267 would make this unnecessary --- ```bash # First sed command: # the first captured pattern is `Co*variantClass ` # the second captured pattern is `` # the third captured pattern is `+` or `*` # the fourth captured pattern is `<` or `≤` # a match for `Co*variantClass ·) (· ·)` becomes # `Co*variantClass replaceop replaceop` # Second sed command: similar to the first, but looks for `(Function.swap (· ·))` sed -i ' s=\(Co[ntra]*variantClass \(..*\) \2 \)(· *\([+*]\) *·) (· *\([<≤]\) *·)=\1replaceop\3 replaceop\4=g s=\(Co[ntra]*variantClass \(..*\) \2 \)(\([Functio\.swap ]*\)(· *\([+*]\) *·)) (· *\([<≤]\) *·)=\1(\3replaceop\4) replaceop\5=g s=replaceop+=HAdd.hAdd=g s=replaceop\*=HMul.hMul=g s=replaceop<=LT.lt=g s=replaceop≤=LE.le=g s=\(Co[ntra]*variantClass N N\) (· \* ·) r=\1 HMul.hMul r=g s=\(Co[ntra]*variantClass N N (swap μ)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass N N\) (swap (· \* ·)) r=\1 (swap HMul.hMul) r=g s=\(CovariantClass (Filter α) (Filter α)\) (· / ·) (· ≤ ·)=\1 HDiv.hDiv LE.le=g s=\(CovariantClass (Filter α) (Filter α)\) (swap (· / ·)) (· ≤ ·)=\1 (swap HDiv.hDiv) LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· < ·)=\1 LT.lt=g s=\(Co[ntra]*variantClass [^}]*\) (· ≤ ·)=\1 LE.le=g s=\(CovariantClass .* (Filter β)\) (· • ·) LE.le=\1 HSMul.hSMul LE.le=g ' $(git ls-files '*.lean') ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 703/678 Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/Bounds.lean,Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/GroupPower/Order.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/MinMax.lean,Mathlib/Algebra/Order/Group/OrderIso.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/LatticeGroup.lean,Mathlib/Algebra/Order/Module.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Cancel/Defs.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Lemmas.lean,Mathlib/Algebra/Order/Monoid/MinMax.lean,Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithZero/Basic.lean,Mathlib/Algebra/Order/Monoid/WithZero/Defs.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Lemmas.lean,Mathlib/Algebra/Order/Sub/Basic.lean,Mathlib/Algebra/Order/Sub/Canonical.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Order/WithZero.lean,Mathlib/Algebra/Parity.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Normed/Order/Lattice.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/List/BigOperators/Basic.lean,Mathlib/Data/List/BigOperators/Lemmas.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Nat/Cast/Order.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/Real/ENNReal.lean,Mathlib/Data/Real/NNReal.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/VectorMeasure.lean,Mathlib/Order/ConditionallyCompleteLattice/Group.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/PGame.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Topology/ContinuousFunction/Algebra.lean,lean-toolchain,test/Recall.lean,test/propose.lean 81 37 ['adomani', 'alreadydone', 'digama0', 'eric-wieser', 'ericrbg', 'jcommelin', 'leanprover-bot', 'sgouezel', 'vihdzp'] nobody
668-11653
1 year ago
942-63550
942 days ago
35-63136
35 days
6791 eric-wieser
author:eric-wieser
refactor: Use flat structures for morphisms This restores the symmetry we had in Lean3, where we had `MonoidHom.mk f one mul` not `MonoidHom.mk (OneHom.mk f one) mul`, and `f.toFun` wasn't notation for `f.toMulHom.toFun`. The nesting provided by the previous inheritance is useless to us in the face of `MonoidHomClass.toMonoidHom`, which completely eta-expands the structure anyway. We call the class `FunLikeFlatHack._` because this means the field is called `to_` which uses up less space in the goal view than any alternative. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted awaiting-CI 174/201 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Category/GroupCat/ZModuleEquivalence.lean,Mathlib/Algebra/Category/GroupWithZeroCat.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/Hom/Equiv/Basic.lean,Mathlib/Algebra/Hom/Group/Defs.lean,Mathlib/Algebra/Hom/GroupAction.lean,Mathlib/Algebra/Hom/NonUnitalAlg.lean,Mathlib/Algebra/Hom/Ring/Defs.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Module/Equiv.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Order/Interval.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Analysis/Normed/Group/SemiNormedGroupCat.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/Rat/Cast/CharZero.lean,Mathlib/Data/Real/EReal.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/RingTheory/RingInvo.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/MetricSpace/Dilation.lean 32 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
6930 kmill
author:kmill
feat: `resynth_instances` tactic for resynthesizing instances in the goal or local context This tactic can be useful for debugging non-canonical instances or for fixing up goals and hypotheses after using the `classical` tactic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 327/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ResynthInstances.lean,test/ResynthInstances.lean 4 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
6931 urkud
author:urkud
refactor(Analysis/Normed*): use `RingHomIsometric` for `*.norm_cast` --- I don't understand why linter fails. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted t-analysis 78/68 Mathlib/Analysis/LocallyConvex/ContinuousOfBounded.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/NormedSpace/Basic.lean,Mathlib/Analysis/NormedSpace/Exponential.lean,Mathlib/Analysis/NormedSpace/Spectrum.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean 8 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7225 jjaassoonn
author:jjaassoonn
some random stuff - Consider two commutative rings `R` and `S` and `X` and `(R, S)`-bimodule. Consider the tensor functor `(X ⊗[R] .)` from the category of `R`-modules to the category of `S`-modules and the hom functor `X →ₗ[S] .` from the category of `S`-modules to the category of `R`-modules, they form an adjunction. - direct limits of modules commute with tensor product - A proof of ![00HD](https://stacks.math.columbia.edu/tag/00HD) Three definitions for flatness: 1. in terms of injectiveness ```lean def Flat.injective : Prop := ∀ ⦃N N' : ModuleCat.{u} R⦄ (L : N ⟶ N'), Function.Injective L → Function.Injective ((tensorRight (ModuleCat.of R M)).map L) ``` 2. in terms of ideals ```lean def Flat.ideal : Prop := ∀ (I : Ideal R), Function.Injective (TensorProduct.lift ((lsmul R M).comp I.subtype)) ``` 3. in terms of finitely generated ideal ```lean def Flat.fg_ideal : Prop := ∀ ⦃I : Ideal R⦄ (_ : I.FG), Function.Injective (TensorProduct.lift ((lsmul R M).comp I.subtype)) ``` and they are all equivalent: ```lean lemma tfae : List.TFAE [ Flat.injective R M, Flat.ideal R M, Flat.fg_ideal R M ] := by ``` The dependencies between these changed files are: ``` Algebra.Module.LinearMap--------------------------------- | | | | v v Algebra.Category.ModuleCat.TensorProduct -----> Algebra.Character | | | v Algebra.DirectLimitAndTensorProduct -------------> RingTheory.Flat ``` to prove equivalence of other definitions, e.g. exact functor, tor, etc should be easier with this because the proof is will be categorical --- ------------- Some other stuff not about flatness 1. If $S$ is a submonoid and $I$ is maximally disjoint from $S$ then $I$ is prime 2. if $\mathfrak p$ is a minimal prime, then $x \in \mathfrak p$ implies that $x$ is a zero divisor 3. Noetherian rings has only finitely many minimal ideals 4. One version of [the prime avoidance lemma](https://en.wikipedia.org/wiki/Prime_avoidance_lemma): if $E$ is an addsubgroup of a ring and is mutiplicatively closed, and $\mathfrak p_i$ is some prime ideals, then not being any subset of the individual prime ideal implies that not being a subset of their union ---------- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1828/16 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/TensorProduct.lean,Mathlib/Algebra/Character.lean,Mathlib/Algebra/DirectLimitAndTensorProduct.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Noetherian.lean,Mathlib/CategoryTheory/Functor/Fin.lean,Mathlib/CategoryTheory/ShortExactSequence.lean,Mathlib/RingTheory/Flat.lean,Mathlib/RingTheory/Ideal/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime.lean,Mathlib/RingTheory/Ideal/PrimeAvoidance.lean 13 6 ['eric-wieser', 'jjaassoonn'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7227 kmill
author:kmill
feat: flexible binders and integration into notation3 Introduces `flexibleBinders`, which is an extensible system for binder notations that allow destructuring, bounded domains, and other niceties. Integrates this into `notation3`, and makes `Finset.sum`/`Finset.prod` use it. --- - [ ] depends on: #6833 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 1215/131 Mathlib.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Mathport/Notation.lean,Mathlib/Util/FlexibleBinders.lean,Mathlib/Util/FlexibleBindersFinset.lean,Mathlib/Util/SyntaxFun.lean,test/FlexibleBinders.lean,test/notation3.lean 10 3 ['eric-wieser', 'kmill', 'leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7351 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/Algebra/Order): extend function on `Ioo` to `Icc` Extend a strictly monotone function defined on an open interval. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-order 59/0 Mathlib.lean,Mathlib/Data/Set/Function.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean 3 7 ['j-loreaux', 'shuxuezhuyi'] nobody
668-11653
1 year ago
946-66881
946 days ago
30-32706
30 days
7467 ADedecker
author:ADedecker
feat: spectrum of X →ᵇ ℂ is StoneCech X --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 121/23 Mathlib/Analysis/NormedSpace/Star/BoundedContinuousFunction.lean,Mathlib/Analysis/NormedSpace/Star/GelfandDuality.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/ContinuousFunction/Compact.lean 4 1 ['github-actions'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7512 Komyyy
author:Komyyy
perf: override the data structures of coinductive types The data structures of the model of coinductive types (`Stream'`, `Computation`, `Stream'.Seq`) are inefficient, so we override their data structures. --- - [x] depends on: #7514 - [ ] depends on: leanprover/lean4#2292 - [x] depends on: leanprover/std4#371 - [x] depends on: #8460 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-core-PR blocked-by-other-PR merge-conflict t-meta 6919/3700 Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/ApproximationCorollaries.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/ContinuedFractions/ContinuantRecurrence.lean,Mathlib/Algebra/ContinuedFractions/EvalEquiv.lean,Mathlib/Algebra/ContinuedFractions/Real.lean,Mathlib/Algebra/ContinuedFractions/TerminatedStable.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Control/Fix.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/Data/Seq/Seq.lean,Mathlib/Data/Seq/WSeq.lean,Mathlib/Data/Stream.lean,lean-toolchain 22 2 ['digama0', 'leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7564 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/Algebra/Order): extend strictly monotone function on `Ioo` to homeomorphism on `Icc` A strictly monotone function between open intervals can be extended to a homeomorphism between the closed intervals. --- - [ ] depends on: #7351 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR 162/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean 2 1 ['leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
965-85285
965 days ago
0-537
8 minutes
7601 digama0
author:digama0
feat: ring hom support in `ring` As [requested on Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/aroots/near/395750055). Adds support for distributing ring morphisms in `ring`: ```lean example (p : ℤ[X]) (r : ℤ) : C (2 * r) * p = C r * p + C r * p := by ring ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-meta
label:t-algebra$
257/48 Mathlib/Tactic/Ring/Basic.lean,test/linear_combination.lean,test/ring.lean 3 1 ['eric-wieser'] nobody
668-11653
1 year ago
900-81656
900 days ago
62-28836
62 days
7615 eric-wieser
author:eric-wieser
chore(LinearAlgebra/Basic): generalize compatibleMaps to semilinear maps Spotted while reviewing #7611 --- - [x] depends on: #7611 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra easy awaiting-CI
label:t-algebra$
9/33 Mathlib/LinearAlgebra/Basic.lean 1 1 ['leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
962-46361
962 days ago
0-1
1 second
7713 RemyDegenne
author:RemyDegenne
feat: add_left/right_inj for measures `μ + ν₁ = μ + ν₂ ↔ ν₁ = ν₂`, and similarly on the right. This is not true in general for measures, but is true when `μ` is mutually singular with the two other measures or when `μ` is finite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 53/1 Mathlib/MeasureTheory/Measure/MutuallySingular.lean,lean-toolchain 2 6 ['RemyDegenne', 'digama0', 'eric-wieser', 'fpvandoorn'] nobody
668-11653
1 year ago
956-5791
956 days ago
0-62955
17 hours
7835 shuxuezhuyi
author:shuxuezhuyi
feat(LinearAlgebra/Matrix): `lift` for projective special linear group We provide converters to help with the use of "quotient.liftOn" on projective special linear groups. --- - [x] depends on: #7826 - [x] depends on: #7791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
52/0 Mathlib/LinearAlgebra/Matrix/ProjectiveSpecialLinearGroup.lean 1 3 ['jcommelin', 'leanprover-community-mathlib4-bot', 'shuxuezhuyi'] jcommelin
assignee:jcommelin
668-11653
1 year ago
814-21484
814 days ago
1-85797
1 day
7875 astrainfinita
author:astrainfinita
chore: make `SMulCommClass A A B` and `SMulCommClass A B B` higher priority --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
54/48 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/NormedSpace/lpSpace.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/GroupTheory/GroupAction/Prod.lean,Mathlib/GroupTheory/GroupAction/Ring.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/Topology/ContinuousFunction/ContinuousMapZero.lean,Mathlib/Topology/ContinuousFunction/StoneWeierstrass.lean,Mathlib/Topology/ContinuousFunction/ZeroAtInfty.lean 27 15 ['Parcly-Taxel', 'astrainfinita', 'jcommelin', 'leanprover-bot'] nobody
668-11653
1 year ago
722-28161
722 days ago
1-47913
1 day
7932 eric-wieser
author:eric-wieser
refactor(Algebra/TrivSqZeroExt): replace with a structure This is dogfooding my claim that "one-field structures are the lesser evil in Lean 4". This runs into the `simp [(stupid_parens)]` bug; or rather, a particular nasty instance of it where the offending simp call is inside `@[simps]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI
label:t-algebra$
155/73 Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/TrivSqZeroExt.lean,Mathlib/Logic/Equiv/TransferInstance.lean,Mathlib/Topology/Instances/TrivSqZeroExt.lean 4 1 ['github-actions'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7962 eric-wieser
author:eric-wieser
feat: `DualNumber (Quaternion R)` as a `CliffordAlgebra` This provides a clifford algebra isomorphic to the dual quaternions --- - [x] depends on: #7934 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
307/7 Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/QuaternionBasis.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Equivs.lean 3 16 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
8364 thorimur
author:thorimur
feat: `refine?` This PR adds `refine? e`, which suggests replacing unsynthesized `_`'s in `e` with `?_` in order to make `refine e'` work: ```lean example : Nat → Nat := by refine? fun (_ : _) => _ -- Try this: refine fun (_ : _) => ?_ ``` Note that this only suggests replacements for `_`'s present in the syntax; to create goals for implicit or instance arguments, the user is expected to use `refine'`. --- I'm especially open to suggestions on the filename (currently `RefineFix`). I'm also curious if this behaves as expected! Feel free to try it out "in real life" and comment here on edge cases. - [ ] depends on: #8503 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-meta 684/5 Mathlib.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Tactic/ElabTerm.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Tactic.lean,Mathlib/Tactic/RefineFix.lean,Mathlib/Util/Delaborators.lean,Mathlib/Util/Syntax.lean,test/RefineFix.lean 9 5 ['j-loreaux', 'leanprover-community-mathlib4-bot', 'thorimur'] nobody
668-11653
1 year ago
923-31787
923 days ago
6-59892
6 days
3575 Kha
author:Kha
perf: selectively enable precompilation --- This is an initial performance test on Linux. TODO: - [ ] test on macOS and Windows as well - [ ] adapt caching merge-conflict WIP 3/0 lakefile.lean 1 21 ['Kha', 'kim-em', 'leanprover-bot', 'tydeu'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
4771 thorimur
author:thorimur
feat: Backtrack minimize Utilities for backtracking in order to attain a minimum according to some arbitrary notion of size when generating lists of parts and alternatives in alternating fashion. Motivated by minimizing the number of generated subgoals under apply-like actions on the goal. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 482/1 Mathlib/Tactic/Backtracking.lean,test/Backtracking.lean 2 0 [] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
4775 thorimur
author:thorimur
feat: `SubExpr` utilities This file contains utilities for handling positions in expressions, including folding over subexpressions along with their positions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 148/0 Mathlib.lean,Mathlib/Lean/SubExpr.lean 2 0 [] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
4785 thorimur
author:thorimur
feat: ExprWithLevels This introduces `ExprWithLevels`, a means of emulating universe polymorphism for non-constants during metaprogramming. [Description pending] - [ ] depends on: #4786 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-meta 491/1 Mathlib.lean,Mathlib/Lean/Meta/AppBuilder.lean,Mathlib/Lean/Meta/Basic.lean,Mathlib/Lean/Meta/ExprWithLevels.lean 4 1 ['kim-em'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
4871 j-loreaux
author:j-loreaux
feat: define the additive submonoid of positive elements in a star ordered ring This file defines the `AddSubmonoid` of nonegative elements `StarOrderedRing.positive R` in a star ordered ring `R` with carrier `{ x : R | 0 ≤ x }` (in fact, the definition only requires `OrderedAddCommMonoid R` to allow for other use cases, but it is primarily intended for `StarOrderedRing R`). Equivalently, this is the `AddSubmonoid` generated by the elements of the form `star s * s`. Even though this technically corresponds to the nonnegative elements, the "positive" terminology is standard throughout the literature (at least in C⋆-algebra theory and operator theory), so we choose to prefer that. The advantage of using this over other definitions of positivity is that it allows us to unify several different concepts under a single umbrella. For example, one might be tempted to consider the collection of bounded linear operators on an Hilbert space and define positivity as `∀ x, 0 ≤ ⟪T x, x⟫`, but this doesn't generalize nicely to C⋆-algebras. Alternatively, one could define positivity as those self-adjoint elements with nonnegative spectrum, but this requires the algebra to be unital. Our definition herein conveniently sidesteps these issues. --- Note: I declared the `AddMonoidWithOne` and `AddGroupWithOne` instances for `selfAdjoint R` separately because it made the proof of the latter easier. - [x] depends on: #6229 - [x] depends on: #10209 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI
label:t-algebra$
216/12 Mathlib.lean,Mathlib/Algebra/Order/Ring/CharZero.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Star/Positive.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/GroupTheory/Submonoid/Operations.lean 6 28 ['eric-wieser', 'j-loreaux', 'leanprover-community-mathlib4-bot'] nobody
668-11652
1 year ago
1080-84104
1080 days ago
5-55287
5 days
5133 kmill
author:kmill
feat: IntermediateField adjoin syntax for sets of elements Adds support for both `F⟮S⟯` and `F⟮α⟯`. The term `x` in `F⟮x⟯` is elaborated, and if it has type `Set _` the first interpretation is used, and otherwise the second is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
110/55 Mathlib/FieldTheory/Adjoin.lean 1 0 [] nobody
668-11652
1 year ago
1079-12778
1079 days ago
0-20
20 seconds
5912 ADedecker
author:ADedecker
feat(Analysis.Distribution.ContDiffMapSupportedIn): space of smooth maps with support in a fixed compact --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 513/13 Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/Set/Function.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean 8 0 [] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6002 slerpyyy
author:slerpyyy
feat(Analysis.SpecialFunctions.Gaussian): add `integrable_fun_mul_exp_neg_mul_sq` If `f : ℝ → ℝ` is bounded by a polynomial, `fun x : ℝ => f x * exp (-b * x ^ 2)` is integrable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 26/0 Mathlib/Analysis/SpecialFunctions/Gaussian.lean 1 3 ['ocfnash', 'slerpyyy', 'urkud'] nobody
668-11652
1 year ago
1036-12014
1036 days ago
9-71263
9 days
6195 eric-wieser
author:eric-wieser
chore(RingTheory/TensorProduct): golf the `mul` definition --- - [x] depends on: #6211 - [x] depends on: #6187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Strangely this causes a timeout downstream merge-conflict t-algebra awaiting-CI
label:t-algebra$
4/29 Mathlib/RingTheory/TensorProduct.lean 1 1 ['leanprover-community-mathlib4-bot'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6307 yuma-mizuno
author:yuma-mizuno
refactor(CategoryTheory/Monoidal): add whiskering operators We introduce whiskering operators. This allows us to introduce a simp-normal form for morphisms in monoidal categories. Rewriting into simp-normal forms is especially useful when combined with the coherence tactic. --- - [x] depends on: #6420 - [x] depends on: #8191 - [x] depends on: #9988 - [x] depends on: #9991 - [x] depends on: #9995 - [x] depends on: #10061 - [x] depends on: #10078 - [x] depends on: #10898 - [x] depends on: #10912 - [x] depends on: #11223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 325/280 Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,test/CategoryTheory/Coherence.lean 15 38 ['eric-wieser', 'github-actions', 'grunweg', 'jcommelin', 'kim-em', 'leanprover-community-mathlib4-bot', 'yuma-mizuno'] nobody
668-11652
1 year ago
806-64326
806 days ago
60-84345
60 days
6328 FR-vdash-bot
author:FR-vdash-bot
chore: make some instance about `Sub...Class` lower priority Many similar instances have been marked as lower priority. I'd like to see if this would make things faster. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra awaiting-CI
label:t-algebra$
14/14 Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/Subsemiring/Basic.lean,lean-toolchain 3 1 ['digama0'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6330 astrainfinita
author:astrainfinita
chore: make some instance about `Sub...Class` higher priority than `Sub...` The opposite direction to #6328. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra slow-typeclass-synthesis
label:t-algebra$
123/128 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/Subfield.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Subring/Basic.lean,Mathlib/RingTheory/Subsemiring/Basic.lean,lean-toolchain 11 13 ['astrainfinita', 'digama0', 'leanprover-bot'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6491 eric-wieser
author:eric-wieser
chore(Mathlib/Algebra/Hom/GroupAction): add `SMulHomClass.comp_smul` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
24/10 Mathlib/Algebra/Hom/GroupAction.lean 1 0 [] nobody
668-11652
1 year ago
939-84052
939 days ago
83-76369
83 days
7076 grunweg
author:grunweg
feat: define measure zero subsets of a manifold A topological manifold has no canonical measure, but there is a canonical notion of measure zero subsets. We show that these are closed under subsets and countable unions (hence define a filter, the almost everywhere filter) and that a closed nowhere dense has empty interior. This is necessary for stating the general version of Sard's theorem (in finite dimensions), and a first step towards its proof. This code was written at LftCM 2023. Thanks for @fpvandoorn for mentoring me! :heart: --- Unresolved questions/looking for feedback - Is "measure zero" a good name or would "null set" be better? I tend towards the former, but welcome input from a measure theorist (which I'm not). - What is the correct definition? One could also define "measure zero" using any `IsOpenPosMeasure` on the charted space. I think all results in this file still hold then, but for applications (e.g., Sard's theorem), this might be too general. - define custom notation, similar to the a.e. filter on a measure space? (We could include $J$ instead of $\mu$.) - what's the right syntax for formulas in docstrings --- use LaTeX or backticks? I don't know how to preview the generated docs, the guidelines are a bit ambiguous for me. merge-conflict WIP t-differential-geometry t-measure-probability 165/0 Mathlib.lean,Mathlib/Geometry/Manifold/MeasureZero.lean,docs/references.bib 3 27 ['ADedecker', 'github-actions', 'grunweg', 'mo271', 'sgouezel'] ADedecker
assignee:ADedecker
668-11652
1 year ago
823-8961
823 days ago
43-56110
43 days
3757 thorimur
author:thorimur
feat: config options for `fail_if_no_progress` This PR creates config options for `fail_if_no_progress` that allow the user to tweak what exactly counts as "progress". This includes whether to use defeq or `BEq`, what transparency to use, and which parts of the goal and local context to check. It also splits off the comparison functionality into `Mathlib.Lean.Meta.Compare`, which provides fully configurable comparison functions for common complex metaprogramming types not specific to `fail_if_no_progress`. These types are `Expr`, `LocalDecl`, `LocalContext`, `MetavarDecl`, `MVarId`, and `List MVarId`. --- See [zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/progress.20on.20fail_if_no_progress) for a couple review questions. Status update: this PR is now basically done, save for some extra tests which should probably be included. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 603/54 Mathlib.lean,Mathlib/Lean/Meta.lean,Mathlib/Lean/Meta/Compare.lean,Mathlib/Tactic/FailIfNoProgress.lean,test/fail_if_no_progress.lean 5 38 ['alexjbest', 'github-actions', 'joneugster', 'kim-em', 'thorimur'] nobody
668-11651
1 year ago
1124-62733
1124 days ago
0-15
15 seconds
12353 thorimur
author:thorimur
feat: `conv%` This PR introduces `conv% e => tac`, along with `simp%`, `norm_num%`, and `push_neg%`, which are defined in terms of `conv%`. It also introduces `conv%?` (and `simp%?`, `norm_num%?`, and `push_neg%?`) as shortcuts for `show_term ...`. This is a relatively straightforward refactor of code already present in the implementation of `#conv`, and otherwise relies entirely on simple macros. This PR also introduces some modifications to existing command syntax for `#conv`, `#simp`, and `#norm_num`: * The syntax for `#conv` was `#conv tac => e`; however, this is inconsistent with the tactic syntax, and so this has been flipped to `#conv e => tac`. Likewise, `conv%` uses the same (new) syntax `conv% e => tac`. * `#simp` and `#norm_num` separated their config and `only` syntax from the expression by an optional `=>` (for `#simp`) and an optional `:` (for `#norm_num`) (e.g. `#simp only [lem] => e`). These have both been replaced with an optional`on` (e.g. `#simp only [lem] on e`) which is also used for `simp%` and `norm_num%`. Although `#whnf` is implemented in terms of `#conv`, this PR doesn't introduce `whnf%` in the same way, as that's probably better off being implemented directly instead of through `conv`. --- WIP: needs tests. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 131/32 Mathlib/Tactic/Conv.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/PushNeg.lean,docs/Conv/Guide.lean 4 0 [] nobody
663-74361
1 year ago
767-26003
767 days ago
0-17
17 seconds
13852 FR-vdash-bot
author:FR-vdash-bot
perf: skip some typeclasses in TC search --- - [ ] depends on: #7873 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis blocked-by-other-PR 45/33 Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/RingTheory/Norm.lean 3 21 ['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
663-68041
1 year ago
unknown
0-0
0 seconds
7903 urkud
author:urkud
feat: define `UnboundedSpace` --- The new instances generate some timeouts, and I don't understand why. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted t-topology 111/59 Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Topology/Bornology/Basic.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/GromovHausdorffRealized.lean 6 1 ['github-actions'] nobody
660-86030
1 year ago
unknown
0-0
0 seconds
15679 adomani
author:adomani
test: refactor in CI --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 213/5 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/CategoryTheory/Bicategory/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/Order/Filter/Cocardinal.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/TestRefactor.lean,Refactor/Main.lean,lakefile.lean,lean-toolchain 21 1 ['github-actions'] nobody
655-55206
1 year ago
657-64648
657 days ago
0-8
8 seconds
7565 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/Algebra/Order): extend homeomorphism of `Ioo` to `Icc` We extend the homeomorphisms between open intervals to homeomorphisms between the closed intervals. --- - [ ] depends on: #7018 - [ ] depends on: #7351 - [ ] depends on: #7564 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR t-order 389/5 Mathlib.lean,Mathlib/Data/Set/Intervals/Image.lean,Mathlib/Order/Directed.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean,Mathlib/Topology/Algebra/Order/IntermediateValue.lean 5 1 ['leanprover-community-mathlib4-bot'] nobody
654-5306
1 year ago
965-72585
965 days ago
0-222
3 minutes
10629 madvorak
author:madvorak
feat: List.cons_sublist_append_iff_right --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 11/0 Mathlib/Data/List/Basic.lean 1 1 ['eric-wieser'] nobody
654-5197
1 year ago
780-14034
780 days ago
53-73442
53 days
9973 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: polynomials formed by lists From https://github.com/leanprover-community/mathlib/pull/15476 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-data 311/0 Mathlib.lean,Mathlib/Data/Polynomial/OfList.lean 2 0 [] nobody
654-4730
1 year ago
unknown
0-0
0 seconds
12926 joelriou
author:joelriou
feat(CategoryTheory): the monoidal category structure induced by a monoidal functor In this PR, given a monoidal functor `F : MonoidalFunctor C D`, we define a monoidal category structure on the category `InducedCategory D F.obj`, which has the "same" objects as `C`, but the morphisms between `X` and `Y` identify to `F.obj X ⟶ F.obj Y`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 105/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Induced.lean 2 3 ['eric-wieser', 'github-actions', 'joelriou'] nobody
654-3129
1 year ago
745-8334
745 days ago
0-10
10 seconds
12869 adomani
author:adomani
feat: linter and script for `theorem` vs `lemma` This PR contains a linter for flagging doc-string-less `theorem`s, as well as a bash script that, once the linter ran on Mathlib, automatically replaces every linter-offending `theorem` by `lemma`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 106/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ThmLemma.lean,scripts/thmLemma.sh 4 13 ['adomani', 'github-actions', 'grunweg', 'joneugster'] nobody
653-76293
1 year ago
708-10388
708 days ago
38-16364
38 days
14563 awueth
author:awueth
feat: if-then-else of exclusive or statement --- If `¬(P ∧ Q)` then `ite (P ∨ Q) a 1 = (ite P a 1) * (ite Q a 1)` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
5/0 Mathlib/Algebra/Group/Basic.lean 1 3 ['eric-wieser', 'github-actions', 'kim-em'] nobody
653-4045
1 year ago
683-51027
683 days ago
6-38745
6 days
14308 grhkm21
author:grhkm21
feat(Algebra/Category): Direct construction of colimits in algebraic categories (Below I only write about colimits since that's what I'm familiar with after working on it the last few days, but maybe it's the same for other categorical constructions) **Main feature:** Construct colimits in `AddCommGrp`/`ModuleCat`/`FGModuleCat`(/...) directly as coequalizer (i.e. cokernel i.e. quotient) of two maps, allowing one to say $\coprod_j M_j \cong *$ Currently, if you look at how colimits are constructed for [AddCommGrp](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Algebra/Category/Grp/Colimits.lean#L69-L92), you see this massive block of code of all relations generating the quotient relation, but that's kind of bad, you can't say anything concretely about it. Also as noted in the TODOs of a few files: ``` TODO: In fact, in `ModuleCat R` there is a much nicer model of colimits as quotients of finitely supported functions, and we really should implement this as well. ``` I wrote it down [here](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Braided.20left.20rigid.20categories.20are.20right.20rigid/near/447490672), and **have formalised it** in a small file already [here](https://gist.github.com/grhkm21/5b2d938753c0ce0900d21c93a39e3b7d#file-addcommgrpcolimits-lean-L162-L163) (I also have a `ModuleCat` version, and proving existence of colimits in `FGModuleCat` from it). Usually I will try to merge the file into Mathlib directly (preferably in one sitting), but I have been trying for a while now and been struggling. One issue is I am struggling to understand universes, which I asked [here](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Universe.20constraints!/near/448049266) along with many other places. A more concrete issue is that - [ ] FGModuleCat (and `FullSubcategory` in general) requires morphism and objects to be on the same universe, whereas generally `Category.{v, u}` don't. So that seems to limit what I can express, and maybe I have to fix it first. Here are a few more TODOs just so I don't forget, probably done before the one above: - [ ] Generalise `cokernelIsoQuotient` to other categories. - [ ] Also prove `coproductIsoDirectSum` - [ ] Also prove coequalizer (f + h) (g + h) ~ coequalizer f g ~ cokernel (f - g) 0 - [ ] Fix typo `FGModuleCatCat` If anyone is familiar with universe stuff and can answer my many questions that'll be great too. I need help understanding just [these five lines](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Algebra/Category/Grp/Colimits.lean#L267-L271) merge-conflict WIP t-algebra
label:t-algebra$
10/3 Mathlib/Algebra/DirectSum/Module.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean 2 1 ['github-actions'] nobody
653-1914
1 year ago
698-36591
698 days ago
0-23
23 seconds
13010 ADedecker
author:ADedecker
feat: relax universe constraint in stoneCechExtend --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 33/3 Mathlib/Topology/StoneCech.lean 1 2 ['ADedecker', 'erdOne'] nobody
653-1711
1 year ago
unknown
0-0
0 seconds
12411 adomani
author:adomani
feat: more linting of cdots --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter 953/617 Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib.lean,Mathlib/Algebra/Category/GroupCat/Colimits.lean,Mathlib/Algebra/Homology/Exact.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ApproximatesLinearOn.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/Normed/Group/Pointwise.lean,Mathlib/Analysis/NormedSpace/FiniteDimension.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Multiplier.lean,Mathlib/Analysis/NormedSpace/lpSpace.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation.lean,Mathlib/CategoryTheory/Category/Cat/Limit.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/CategoryTheory/Category/TwoP.lean,Mathlib/CategoryTheory/Closed/Cartesian.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/CategoryTheory/Galois/GaloisObjects.lean,Mathlib/CategoryTheory/Limits/Over.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Localization/Predicate.lean,Mathlib/CategoryTheory/Monad/Coequalizer.lean,Mathlib/CategoryTheory/Monad/Monadicity.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Sites/DenseSubsite.lean,Mathlib/CategoryTheory/Sites/InducedTopology.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/HalesJewett.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/Holor.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Pairing.lean,Mathlib/Data/Real/Cardinality.lean,Mathlib/Data/Real/Hyperreal.lean,Mathlib/Data/Real/Irrational.lean,Mathlib/Data/Set/Card.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/FieldTheory/RatFunc.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/Dimension/RankNullity.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Complex.lean,Mathlib/LinearAlgebra/Reflection.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean,Mathlib/MeasureTheory/OuterMeasure/Basic.lean,Mathlib/ModelTheory/Skolem.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/NumberTheory/LegendreSymbol/Basic.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/RingTheory/AdjoinRoot.lean 147 2 ['adomani', 'leanprover-bot'] nobody
653-1574
1 year ago
unknown
0-0
0 seconds
12279 casavaca
author:casavaca
WIP: feat: Holder's inequality n-ary --- - [x] depends on #12291 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 129/0 Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean 2 13 ['github-actions'] nobody
653-1559
1 year ago
769-62664
769 days ago
0-50185
13 hours
12093 ADedecker
author:ADedecker
feat: tweak the definition of semicontinuity to behave better in nonlinear orders Summary of the changes: - change definitions to make [lowerSemicontinuous_iff_isClosed_preimage](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Semicontinuous.html#lowerSemicontinuous_iff_isClosed_preimage) true without assuming `LinearOrder`, so that semicontinuity corresponds to continuity for lower/upper order topology on the codomain. See discussion on [Zulip](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Semicontinuity.20definition.20for.20non-linear.20orders/near/432898278) - add new `iff` lemmas for unfolding the definition - add `iff` lemmas with the old definition in the linearly ordered case - some basic lemmas need to be changed in an easy way - minimize assumptions for continuity => semicontinuity - prove the semicontinuity criterion for indicators using "preimage of Ici/Iic" instead of a direct proof, because the proof is more natural (especially because we have no `filter_upwards` for `Frequently`) - in the rest of the file (which is about linear orders anyway), we don't touch the statements and just rewrite to the old definition. Some of these could be generalized, but we keep that for a later PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology 274/130 Mathlib/Analysis/BoundedVariation.lean,Mathlib/MeasureTheory/Integral/FundThmCalculus.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/Semicontinuous.lean 4 0 [] nobody
653-1521
1 year ago
unknown
0-0
0 seconds
11520 thorimur
author:thorimur
feat: `linting_rules` and deprecated syntax --- Experimental. WIP. Might not be performance-viable. - [ ] depends on: #11519 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-meta 1016/0 Mathlib.lean,Mathlib/Command/Linter.lean,Mathlib/Command/Linter/Deprecated.lean,Mathlib/Command/Linter/LintingRules.lean,Mathlib/Command/SyntaxRules.lean,Mathlib/Command/SyntaxRules/Attr.lean,Mathlib/Command/SyntaxRules/Elab.lean,Mathlib/Command/SyntaxRules/Header.lean,Mathlib/Command/SyntaxRules/Util.lean,Mathlib/Tactic/Common.lean,scripts/noshake.json 11 11 ['leanprover-bot', 'leanprover-community-mathlib4-bot', 'thorimur'] nobody
653-1511
1 year ago
unknown
0-0
0 seconds
11519 thorimur
author:thorimur
feat: `syntax_rules` --- Experimental. WIP. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 485/0 Mathlib.lean,Mathlib/Command/SyntaxRules.lean,Mathlib/Command/SyntaxRules/Attr.lean,Mathlib/Command/SyntaxRules/Elab.lean,Mathlib/Command/SyntaxRules/Header.lean,Mathlib/Command/SyntaxRules/Util.lean,scripts/noshake.json 7 0 [] nobody
653-1497
1 year ago
unknown
0-0
0 seconds
11393 mcdoll
author:mcdoll
feat(Analysis/Distribution/SchwartzSpace): The Heine-Borel property --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 688/3 Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/UniformSpace/Ascoli.lean,Mathlib/Topology/UniformSpace/Pi.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean 6 0 [] nobody
653-1487
1 year ago
unknown
0-0
0 seconds
9444 erdOne
author:erdOne
feat: Various instances regarding `𝓞 K`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted t-number-theory 27/0 Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/RingTheory/IntegralClosure.lean 2 9 ['erdOne', 'leanprover-bot', 'mattrobball', 'riccardobrasca', 'xroblot'] nobody
653-1406
1 year ago
875-833
875 days ago
1-62292
1 day
8931 hmonroe
author:hmonroe
feat(Computable): define P, NP, and NP-complete Revised to focus on languages that are binary strings, given the issue of non-acceptable encodings of unspecified Types --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author 381/5 Mathlib.lean,Mathlib/Computability/Complexity copy.lean,Mathlib/Computability/Complexity.lean,Mathlib/Computability/Encoding.lean,Mathlib/Computability/TMComputable.lean,Mathlib/Computability/TuringMachine.lean,Mathlib/Computability/halting example.lean,docs/references.bib 8 3 ['fpvandoorn', 'github-actions', 'hmonroe'] nobody
653-1371
1 year ago
809-10753
809 days ago
93-64275
93 days
10641 newell
author:newell
feat(Topology/MetricSpace/WellSpaced): Define sets that are *well-spaced*. Create a new file `Mathlib.Topology.MetricSpace.WellSpaced` that contains definitions of sets which are in some sense *well-spaced*. Some examples are Delone and Meyer sets, which find applications in Quasicrystals and Coding Theory, among others. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 1073/14 Mathlib.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/GMetric/Basic.lean,Mathlib/Topology/GMetric/GInfSep.lean,Mathlib/Topology/GMetric/WellSpaced.lean,Mathlib/Topology/GPseudoMetric/Basic.lean,Mathlib/Topology/MetricSpace/WellSpaced.lean 8 1 ['edegeltje'] nobody
653-1339
1 year ago
unknown
0-0
0 seconds
10387 adomani
author:adomani
feat(Tactic/ComputeDegree): add `polynomial` tactic Introducing the `polynomial` tactic, summing up `compute_degree, monicity` and adding support for `leadingCoeff`. This is more of a proof of concept: if there is interest in this tactic, I can polish it up. See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Compute.20roots.20of.20polynomials/near/420713624). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP RFC t-meta 24/0 Mathlib/Tactic/ComputeDegree.lean 1 0 [] nobody
653-1193
1 year ago
696-70623
696 days ago
143-73801
143 days
9154 FR-vdash-bot
author:FR-vdash-bot
feat: `npow` / `nsmul` / `Nat.cast`/ `zpow` / `zsmul` implemented using `Nat.binaryRec` --- - [ ] depends on: https://github.com/leanprover/lean4/pull/3756 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra blocked-by-other-PR
label:t-algebra$
168/359 Mathlib/Algebra/Group/Defs.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Digits.lean,Mathlib/Data/Nat/EvenOddRec.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Order/Basic.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Init/Data/Nat/Bitwise.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Denumerable.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Nat.lean,lake-manifest.json,lakefile.lean,test/zmod.lean 25 7 ['astrainfinita', 'eric-wieser', 'kim-em', 'leanprover-community-mathlib4-bot'] nobody
653-984
1 year ago
unknown
0-0
0 seconds
6603 tydeu
author:tydeu
feat: automatically try `cache get` before build --- A quick proof-of-concept. With this, `lake build` will always try `cache get` before building mathlib. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP CI 29/0 lakefile.lean 1 3 ['kim-em', 'tydeu'] nobody
653-958
1 year ago
1007-17481
1007 days ago
11-2031
11 days
6058 apurvnakade
author:apurvnakade
feat: duality theory for cone programs This PR tracks the development of duality theory for cone programs. [Reference](https://ti.inf.ethz.ch/ew/courses/ApproxSDP09/notes/conelp.pdf) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #6059 - [ ] define direct sum of cones - [ ] weak duality - [ ] regular duality - [ ] slater condition - [ ] strong duality merge-conflict WIP t-analysis 159/0 Mathlib.lean,Mathlib/Analysis/Convex/Cone/ConeLinearProgram.lean 2 1 ['leanprover-community-mathlib4-bot'] nobody
653-903
1 year ago
1042-37811
1042 days ago
0-9
9 seconds
6449 ADedecker
author:ADedecker
feat: functions with finite fibers --- This has been discussed before on [Zulip](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/.E2.9C.94.20Cofinite.20maps.3F) and it came up again while working with @kkytola's student. As explained in the docstring, we could absolutely just use `Tendsto f cofinite cofinite` all the time, but (1) we lack some API for it (2) the API is nicer to setup if we have a separate def (e.g for dot notation) and (3) mentioning filters for such a simple concept is really not beginner-friendly. I'm not sure at all about the name. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 203/0 Mathlib.lean,Mathlib/Logic/Function/HasFiniteFibers.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Cofinite.lean 4 14 ['ADedecker', 'YaelDillies', 'alexjbest', 'kkytola'] nobody
653-897
1 year ago
1018-85351
1018 days ago
6-70040
6 days
8100 digama0
author:digama0
feat: add support for other types in norm_num --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 177/12 Mathlib/Tactic/NormNum/Basic.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Pow.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/NormNum/Structural.lean,test/norm_num.lean 7 4 ['dwrensha'] nobody
653-765
1 year ago
unknown
0-0
0 seconds
13163 erdOne
author:erdOne
feat(.vscode/module-docstring.code-snippet): Prevent auto-complete from firing on `do` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 5/0 .vscode/module-docstring.code-snippets 1 5 ['erdOne', 'grunweg', 'robertylewis', 'trivial1711'] nobody
652-85907
1 year ago
685-13699
685 days ago
50-78405
50 days
15585 FR-vdash-bot
author:FR-vdash-bot
test make `HasQuotient.quotient'` reducible --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
8/1 Mathlib/Algebra/Quotient.lean,Mathlib/GroupTheory/Coset.lean 2 1 ['github-actions'] nobody
651-33173
1 year ago
unknown
0-0
0 seconds
15586 astrainfinita
author:astrainfinita
test make `HasQuotient` out put a `setoid` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
22/36 Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Quotient.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/QuotientGroup.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/Topology/Algebra/UniformRing.lean 14 5 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
651-33173
1 year ago
unknown
0-0
0 seconds
13791 digama0
author:digama0
refactor: Primrec and Partrec General cleanup of the `Primrec` and `Partrec` files, to better adjust to lean 4 things. The main user-visible change is that `Primrec₂` is no longer a `def` but an `abbrev`, because it was causing inference issues in lean 4. I also removed all the nonterminal `simp`s in `PartrecCode.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability tech debt 585/778 Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Halting.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean 5 2 ['github-actions', 'grunweg'] nobody
649-54442
1 year ago
713-44028
713 days ago
1-84718
1 day
11964 adamtopaz
author:adamtopaz
feat: The functor of points of a scheme We construct the functor of points functor, and prove that it's full and faithful. --- - [x] depends on: #11947 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry t-category-theory 210/0 Mathlib.lean,Mathlib/AlgebraicGeometry/FunctorOfPoints.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean 3 4 ['github-actions', 'grunweg'] nobody
649-54301
1 year ago
777-71242
777 days ago
0-1223
20 minutes
12418 rosborn
author:rosborn
style: replace preimage_val with ↓∩ notation --- This is a rough draft of what the new `↓∩` notation would look like within mathlib. I believe this is an improvement in clarity and would like to have `↓∩` as a standard notation (along with `''`, `⁻¹'`, `↑`, etc...). As `↓∩` is specialized for `Set`s, I have only changed `preimage_val` when the left-hand side of `↓∩` is a `Set`. The introduction of the `↓∩` notation to Data.Set.Image is temporary as it isn't possible to import Data.Set.Subset directly. If we want `↓∩` unscoped, where would be the best place to define it? An option is Data.Set.Defs, but the notation cannot be defined without additional imports as the file does not import `notation3`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 56/61 Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Subset.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Clopen.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/Sober.lean 18 3 ['grunweg', 'rosborn'] nobody
649-54200
1 year ago
735-64184
735 days ago
29-50022
29 days
9978 FR-vdash-bot
author:FR-vdash-bot
chore(FieldTheory/KummerExtension): move some lemmas earlier --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
197/177 Mathlib.lean,Mathlib/Data/Polynomial/FieldDivision.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Polynomial/Irreducible.lean 5 5 ['alreadydone', 'grunweg', 'riccardobrasca'] nobody
649-53992
1 year ago
847-48174
847 days ago
8-83342
8 days
12429 adomani
author:adomani
feat: toND -- auto-generating natDegree This is an experiment to automatically translate theorems about `degree` to theorems about `natDegree`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra RFC merge-conflict awaiting-author t-meta
label:t-algebra$
167/132 Mathlib.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Polynomial/Inductions.lean,Mathlib/Algebra/Polynomial/Mirror.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToNatDegree.lean,scripts/noshake.json 11 2 ['adomani', 'grunweg'] nobody
649-53303
1 year ago
761-976
761 days ago
3-76602
3 days
15823 eric-wieser
author:eric-wieser
Quotients of rings in model theory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-logic 55/13 Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/ModelTheory/Syntax.lean 2 1 ['github-actions'] nobody
649-31866
1 year ago
unknown
0-0
0 seconds
12178 joneugster
author:joneugster
feat(Data/Matrix/Basic): add notation for `m×n`-Matrices Introduce the notation `Mat[m,n][R]` for `Matrix (Fin m) (Fin n) R`. [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Why.20does.20.60Matrix.2Erow.60.20use.20.20.60Unit.60.20instead.20of.20.60Fin.201.60.3F/near/427949223) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
139/135 Mathlib/Algebra/Lie/CartanMatrix.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Rank.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/LinearAlgebra/Matrix/Adjugate.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Determinant.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean,Mathlib/LinearAlgebra/PID.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/SlashActions.lean,Mathlib/NumberTheory/ModularForms/SlashInvariantForms.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/RingTheory/SimpleModule.lean,test/matrix.lean 22 9 ['YaelDillies', 'eric-wieser', 'grunweg', 'joneugster'] nobody
649-8990
1 year ago
767-85783
767 days ago
5-76679
5 days
12751 Command-Master
author:Command-Master
feat: add lemmas for Nat/Bits, Nat/Bitwise and Nat/Size Remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 66/7 Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Size.lean 4 26 ['Command-Master', 'Rida-Hamadani', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'jcommelin'] nobody
648-75354
1 year ago
683-81576
683 days ago
56-40668
56 days
15448 urkud
author:urkud
chore(*): deprecate `Option.elim'` Use `Option.elim` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt 54/50 Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/Option/Defs.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean 17 12 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'grunweg', 'urkud'] nobody
648-64407
1 year ago
658-24169
658 days ago
7-18420
7 days
10350 Shamrock-Frost
author:Shamrock-Frost
feat(Data/Setoid): add the operations of taking the equivalence class of an element and of saturating a set wrt an equivalence relation I'm open to suggestions about changing the name "saturate", someone on zulip rightly pointed out this is a very overloaded term in math. That said, I think it's unlikely to cause confusion and that there's only one reasonable interpretation in the context of setoids. --- - [x] depends on: #10347 - [x] depends on: #10348 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 169/3 Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/Order/Closure.lean 3 1 ['leanprover-community-mathlib4-bot'] nobody
646-77628
1 year ago
765-69256
765 days ago
19-74546
19 days
13573 Shamrock-Frost
author:Shamrock-Frost
feat: add multivariate polynomial modules Add a type synonym for multivariate polynomials with coefficients in a module. --- Multivariate polynomials with module coefficients are sort of silly, but they sometimes show up in commutative algebra (eg in the definition of a quasi regular sequence). Writing this code involved a lot of copy and pasting from `PolynomialModule` and `MvPolynomial`. The API is definitely lacking at this stage but it's a start. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
691/6 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Module/Basic.lean,Mathlib/Algebra/MvPolynomial/Module/MvAEval.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean 4 9 ['Shamrock-Frost', 'erdOne', 'github-actions'] nobody
646-77608
1 year ago
682-69976
682 days ago
39-72752
39 days
6517 MohanadAhmed
author:MohanadAhmed
feat: discrete Fourier transform of a finite sequence # Discrete Fourier Transform (DFT) Matrix and DFT of a (finite) sequence This file defines the `dft` opertaion on a sequence (also a vecotr) and the DFT operation matrix ## Main definitions - `dft v`: given a sequence (v : (Fin n) → ℂ) we can transform it into a sequence (V : (Fin n) →ℂ) such that $$V [p] = ∑_{k = 0}^{N - 1} e^{-j*2πkp/n} v [k]$$ - `idft V` : given a sequence (V : (Fin n) → ℂ) we can transform it into a sequence (v : (Fin n) → ℂ) such that $$v [k] = \frac{1}{N}∑_{p = 0}^{n - 1} e^{j*2πkp/N} v [p]$$ - `dftMatrix n` : the dft matrix of dimensions $n \times n$ with the `k, p` entry equal to $$Wₙ[k, p] = e^{-j2πkp/n}$$ - `(dftMatrix n)⁻¹` : the idft matrix of dimensions $n \times n$ with the `k, p` entry equal to $$Wₙ[k, p] = (1/N) e^{j2πkp/n}$$ ## Main results - `dft v = (dftMatrix n) v` : the dft operation on a sequence is the same as the dft matrix applied to the vector - `idft V = (dftMatrix n)⁻¹ V` : the idft operation on a sequence is the same as the idft matrix applied to the vector - `dft (idft v) = dft ( idft v) = v` the dft and idft operations are inverses - `Wₙ = vandermonde (w)` : the dft matrix is vandermonde with `w` being the first row of the dft matrix - `circulant t = (dftMatrix n)⁻¹ ⬝ diagonal (dft t) ⬝ (dftMatrix n)` : a circulant matrix is diagonalizable by the dft and idft matrix pair. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
294/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/DFT.lean 2 26 ['MohanadAhmed', 'ericrbg'] nobody
646-77446
1 year ago
956-15262
956 days ago
65-20427
65 days
13155 alreadydone
author:alreadydone
feat(NumberTheory/EllipticDivisibilitySequence): show elliptic relations follow from even-odd recursion This PR is centered around the (generalized) elliptic relations (`rel₄`) $E(a,b,c,d): W_{a+b}W_{a-b}W_{c+d}W_{c-d}=W_{a+c}W_{a-c}W_{b+d}W_{b-d}-W_{a+d}W_{a-d}W_{b+c}W_{b-c}$. For an integer-indexed sequence W valued in a commutative ring, the relation makes sense only when a,b,c,d are all integers or all half integers. For convenience of formalization, we instead consider integers a,b,c,d of the same parity and divide all subscripts by 2. We extract the subexpression $W_{(a+b)/2}W_{(a-b)/2}$ (which appear six times) as `addMulSub W a b`. The collection of all $E(a,b,c,d)$ is equivalent to Stange's axiom for elliptic nets (`net`), and the literature (e.g. Silverman) commonly consider only the three-index special case $E(m,n,r,0)$ (`Rel₃`). Important special cases of these relations are (i) $E(m+1,m,1,0): W_{2m+1}W_1^3=W_{m+2}W_m^3-W_{m+1}^3 W_{m-1}$ (`oddRec`) and (ii) $E(m+1,m-1,1,0): W_{2m}W_2 W_1^2=W_m(W_{m+2}W_{m-1}^2-W_{m-2}W_{m+1}^2)$ (`evenRec`), which suffice to uniquely specify $W$ on all positive integers recursively from four initial values $W_1, W_2, W_3, W_4$ (`IsEllSequence.ext`, if $W_1 W_2$ is not a zero divisor). In the usual setting where $W_1=1$ and $W_2\mid W_4$, there does exist a sequence (`normEDS`) satisfying (i) and (ii) given initial values $W_2, W_3$ and $W_4/W_2$. It turns out the same non-zerodivisor condition also guarantees that W is an odd function with $W_0=0$, which naturally extends W to all integers. The main result of this PR (`rel₄_of_oddRec_evenRec`, `IsEllSequence.of_oddRec_evenRec`) is a purely algebraic proof that the sequence W defined by the single-parameter elliptic relations (i) and (ii) implies all $E(a,b,c,d)$, based on my original argument first published on [Math.SE](https://math.stackexchange.com/a/4903422/12932). It's based on the observation that a nonzerodivisor-multiple of $E(a,b,c,d)$ can be expressed as a linear combination of various $E(a,b,c_\min,d_\min)$ with the two smallest indices fixed at their minimal possible values, which can be transformed (`transf`) to an elliptic relation with smaller `a` (which can be assumed to hold by induction), unless they are of the form (i) or (ii) which hold by assumption. For this argument it's necessary to assume `a > b > c > d ≥ 0` (see `StrictAnti₄` and `Rel₄OfValid`), but it's easy to extend to arbitrary a,b,c,d by symmetry properties of `rel₄` under negation and permutations of indices. In the subsequent PR #13057, we show all normalized EDSs (`normEDS`), defined using the even-odd recursion (i)-(ii), are elliptic (i.e. satisfy the elliptic relations) divisibility sequences. This PR doesn't directly apply because a normEDS doesn't always satisfy the nonzerodivisor condition, but they are specializations of the universal normEDS, which does satisfy the condition. The technique of reducing to the universal case will be applied many times, and relies on the naturality (`map`) lemmas. We also change the `ℕ` in the definition `IsDivSequence` to `ℤ` which is more natural given that W is a `ℤ`-indexed sequence. --- - [x] depends on: #13153 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-number-theory
label:t-algebra$
565/12 Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 1 55 ['Multramate', 'alreadydone', 'github-actions', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
641-4650
1 year ago
690-6537
690 days ago
26-39367
26 days
15600 adomani
author:adomani
feat: lint also `let` vs `have` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter 77/26 Mathlib/Tactic/Linter/HaveLetLinter.lean,test/HaveLetLinter.lean 2 1 ['github-actions'] nobody
639-59326
1 year ago
660-53024
660 days ago
0-8
8 seconds
16253 Shreyas4991
author:Shreyas4991
feat: Basics of Discrete Fair Division in Mathlib This PR adds the basics of discrete fair division in mathlib. We include the definitions of allocations, valuations, properties of valuations, and the following notions : Envy-Freeness (EF), Envy-Freeness upto 1 good (EF1), and envy freeness upto any good (EFX). We also include the various implications between these notions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-author 144/0 Mathlib/GameTheory/FairDivision/Discrete/Basic.lean 1 9 ['Shreyas4991', 'eric-wieser', 'github-actions'] nobody
638-57239
1 year ago
638-61500
638 days ago
0-20853
5 hours
13970 adomani
author:adomani
feat: a linter to flag unnecessary uses of `nolint simpNF` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 230/0 Mathlib.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Even.lean,Mathlib/LinearAlgebra/CliffordAlgebra/EvenEquiv.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/UnnecessarySyntax.lean,test/UnnecessarySyntax.lean 13 4 ['adomani', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
637-82540
1 year ago
unknown
0-0
0 seconds
15162 adomani
author:adomani
feat: checkAsSorry linter A very preliminary version of the `checkAsSorry` linter. It flags declarations whose type is not equal to the 'asSorry'ed one. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Running.20Mathlib.20under.20.60set_option.20debug.2EbyAsSorry.60) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter 119/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/CheckAsSorry.lean,test/CheckAsSorry.lean 4 1 ['github-actions'] nobody
637-81528
1 year ago
unknown
0-0
0 seconds
14669 Command-Master
author:Command-Master
feat(Data/Nat/PartENat): add lemmas for PartENat Add some missing lemmas for `PartENat`, as well as the additive homomorphism from it to `WithTop Int`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor merge-conflict 90/0 Mathlib/Data/Nat/PartENat.lean 1 4 ['erdOne', 'github-actions', 'mathlib-merge-conflicts', 'urkud'] nobody
636-844
1 year ago
687-8366
687 days ago
0-6775
1 hour
15121 Eloitor
author:Eloitor
feat: iff theorems for IsSplitEpi and IsSplitMono in opposite category --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-category-theory new-contributor 40/0 Mathlib/CategoryTheory/EpiMono.lean 1 3 ['github-actions', 'joelriou', 'mattrobball'] nobody
635-50189
1 year ago
667-9448
667 days ago
7-3203
7 days
15895 madvorak
author:madvorak
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability WIP 172/0 Mathlib/Computability/ContextFreeGrammar.lean 1 43 ['YaelDillies', 'github-actions', 'madvorak'] nobody
634-66982
1 year ago
639-14091
639 days ago
1-43047
1 day
14038 adomani
author:adomani
test/decl diff in lean dev --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 231/2 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,Mathlib/Tactic/Eval.lean,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean 8 3 ['github-actions'] nobody
633-75042
1 year ago
706-45161
706 days ago
0-8
8 seconds
14046 adomani
author:adomani
test: diff of declarations in lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 231/2 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,Mathlib/Tactic/Eval.lean,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean 8 2 ['github-actions'] nobody
633-75042
1 year ago
unknown
0-0
0 seconds
12107 yuma-mizuno
author:yuma-mizuno
feat(Mathlib/Tactic/Widget/StringDiagram): support 2-morphisms in bicategories --- - [x] depends on: #11080 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory t-meta 1158/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Widget/StringDiagram.lean,scripts/noshake.json,test/StringDiagram.lean,widget/src/penrose/monoidal.dsl,widget/src/penrose/monoidal.sty 8 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
628-69786
1 year ago
unknown
0-0
0 seconds
15925 yuma-mizuno
author:yuma-mizuno
feat(CategoryTheory/Monoida): proof producing coherence tactic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory t-meta 5018/265 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Adjunction.lean,Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Braided.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/BicategoricalComp.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/CategoryTheory/Coherence/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/CategoryTheory/Coherence/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/CoherenceNew.lean,Mathlib/Tactic/CategoryTheory/Monoidal.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Basic.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,Mathlib/Tactic/Widget/StringDiagram.lean,lake-manifest.json,scripts/noshake.json,test/CategoryTheory/Bicategory.lean,test/CategoryTheory/Coherence.lean,test/CategoryTheory/CoherenceNew.lean,test/CategoryTheory/Monoidal.lean,test/CategoryTheory/Monoidal/Basic.lean,test/CategoryTheory/Monoidal/Normalize.lean,test/CategoryTheory/MonoidalComp.lean,test/StringDiagram.lean 35 1 ['github-actions'] nobody
628-29923
1 year ago
unknown
0-0
0 seconds
7861 shuxuezhuyi
author:shuxuezhuyi
feat(Geometry/Hyperbolic/UpperHalfPlane): instance IsometricSMul PSL(2, ℝ) ℍ --- - [ ] depends on: #7835 - [ ] depends on: #7791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-euclidean-geometry 98/0 Mathlib.lean,Mathlib/Geometry/Hyperbolic/UpperHalfPlane/Basic.lean,Mathlib/LinearAlgebra/Matrix/ProjectiveSpecialLinearGroup.lean 3 1 ['leanprover-community-mathlib4-bot'] nobody
628-10983
1 year ago
688-51511
688 days ago
43-50453
43 days
16570 yuma-mizuno
author:yuma-mizuno
chore(Tactic/CategoryTheory): change `TermElabM` to `MetaM` Separated from #15335. To use `Qq`, we need to modify `Qq` to support universe matching. See [Zulip](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2315335.20meta.20code.20for.20monoidal.20categories). --- - [ ] depends on: #15335 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-meta 26/15 Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mergify'] nobody
627-73848
1 year ago
unknown
0-0
0 seconds
6475 joneugster
author:joneugster
refactor(LinearAlgebra/Span): replace ∙ with • as notation for `span R {x}` Change the notation for `Submodule.span R {x}` from `R ∙ x` to the bullet `R • x`, which is also used for scalar multiplication. --- (this was an experiment originating from a [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/.2E.C2.B7.E2.AC.9D.20.5Brant.5D), I don't have a clear opinion if this is actually a desired thing to do...) Generally this works and Lean seems to do fine figuring out the difference between `r • x` and `R • x` (The former is scalar multiplication in an `R`-module `M`, the latter is the `Submodule R M` generated by `x`). Encountered a few regressions that should be considered (the first two might be also bugs that could be looked at independently): 1. `(· • ·)`, and general simple function syntax, does not work as notation for `HSMul.hSMul` anymore. For this reason, I introduced the notation `scoped` to minimise the effect of this. Now it's only a problem if you `open Span`. Note that `fun x₁ x₂ ↦ x₁ • x₂` works flawlessly all the time. 4. `change` and `convert` have troubles to deal with the two competing notations. `have := _; convert this` works. 5. `R • x - y` is not valid anymore and needs parentheses: `R • (x - y)`. I do think this actually helps readability, so I don't mind. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra RFC
label:t-algebra$
323/240 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/Normalizer.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Analysis/NormedSpace/ContinuousLinearMap.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean,Mathlib/Analysis/NormedSpace/OperatorNorm.lean,Mathlib/Data/ZMod/Quotient.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Basic.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean,Mathlib/Geometry/Euclidean/MongePoint.lean,Mathlib/Geometry/Euclidean/PerpBisector.lean,Mathlib/Geometry/Euclidean/Sphere/SecondInter.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/BilinearForm.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Dimension.lean,Mathlib/LinearAlgebra/FiniteDimensional.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/ProjectiveSpace/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/LinearAlgebra/SesquilinearForm.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/MeasureTheory/Integral/Periodic.lean,Mathlib/RingTheory/Coprime/Ideal.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/Ideal/AssociatedPrime.lean,Mathlib/RingTheory/Ideal/IdempotentFG.lean,Mathlib/RingTheory/Noetherian.lean,Mathlib/Topology/Instances/AddCircle.lean 42 3 ['eric-wieser', 'joneugster', 'leanprover-bot'] nobody
627-8279
1 year ago
unknown
0-0
0 seconds
10591 adri326
author:adri326
feat(Topology/Algebra/ConstMulAction): properties of continuous actions in Hausdorff spaces Defines some useful properties of `ContinuousConstSMul` group actions on Hausdorff spaces: - `MulAction.isClosed_fixedBy`, which proves that the `fixedBy α m` set is closed - `t2_separation_smul`, which constructs an open set `s` such that `s` and `g • s` are disjoint - `Set.InjOn.t2_separation_smul`, the extension of `t2_separation_smul` to a set of group elements whose action is injective --- This PR belongs my series of PR around the formalization of Rubin's theorem. `MulAction.isClosed_fixedBy` is used in several places along the proof, and the separation lemmas are primarily used in showing that `(fixedBy α g)ᶜ` and `(fixedBy α h)ᶜ` are disjoint under some intricate but fully group-theoretic condition. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author t-algebra
label:t-algebra$
57/0 Mathlib/Topology/Algebra/ConstMulAction.lean 1 9 ['ADedecker', 'adri326', 'j-loreaux', 'jcommelin'] ADedecker
assignee:ADedecker
626-65840
1 year ago
778-78582
778 days ago
55-82204
55 days
7545 shuxuezhuyi
author:shuxuezhuyi
feat: APIs of `Function.extend f g e'` when `f` is injective We characterizes `range g`, `Injective g`, `Surjective g` and `Bijective g` in terms of `extend f g e'`.​ --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 50/0 Mathlib.lean,Mathlib/Logic/Function/ApiForExtend.lean 2 1 ['fpvandoorn'] nobody
626-23815
1 year ago
934-57997
934 days ago
32-32325
32 days
16658 adomani
author:adomani
add tips file --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author test-ci 51/508 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/Tips.lean 5 1 ['github-actions'] nobody
622-52748
1 year ago
unknown
0-0
0 seconds
14078 Ruben-VandeVelde
author:Ruben-VandeVelde
feat(CI): continue after mk_all fails --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 43/0 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib/Data/Nat/Test.lean 5 2 ['bryangingechen', 'github-actions'] nobody
622-33048
1 year ago
704-86008
704 days ago
0-13311
3 hours
11283 hmonroe
author:hmonroe
feat(ModelTheory/Satisfiability): define theory with independent sentence --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-logic 8/0 Mathlib/ModelTheory/Satisfiability.lean 1 2 ['fpvandoorn', 'hmonroe'] nobody
620-3602
1 year ago
806-63672
806 days ago
3-63452
3 days
16914 siddhartha-gadgil
author:siddhartha-gadgil
Loogle syntax with non-reserved This is PR mainly to test that loogle syntax does not break stuff downstream --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 4/4 lake-manifest.json,lakefile.lean 2 1 ['github-actions'] nobody
617-78611
1 year ago
618-75700
618 days ago
0-14835
4 hours
13782 alreadydone
author:alreadydone
feat(EllipticCurve): ZSMul formula in terms of division polynomials The formula $[n]P = (\phi_n(x,y) : \omega_n(x,y) : \psi_n(x,y))$ in Jacobian coordinates for $P=(x,y)$ a nonsingular point on a Weierstrass/elliptic curve. --- - [x] depends on: #12883 - [x] depends on: #13399 - [ ] depends on: #13057 - [ ] depends on: #13155 - [x] depends on: #13845 - [x] depends on: #13846 - [ ] depends on: #13847 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-number-theory blocked-by-other-PR merge-conflict t-algebraic-geometry
label:t-algebra$
2462/232 Mathlib.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/ZSMul.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 10 8 ['Multramate', 'alreadydone', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
615-41576
1 year ago
unknown
0-0
0 seconds
8118 iwilare
author:iwilare
feat(CategoryTheory): add dinatural transformations A starting point to define [dinatural transformations](https://ncatlab.org/nlab/show/dinatural+transformation). This is my first PR so style comments and improvements are very welcome! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 147/7 Mathlib.lean,Mathlib/CategoryTheory/DinatTrans.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Products/Bifunctor.lean 4 49 ['Shamrock-Frost', 'github-actions', 'iwilare', 'joelriou'] Shamrock-Frost
assignee:Shamrock-Frost
613-14497
1 year ago
716-81374
716 days ago
21-30729
21 days
14242 js2357
author:js2357
feat: Prove equivalence of `isDedekindDomain` and `isDedekindDomainDvr` Prove that `isDedekindDomainDvr` is equivalent to both `isDedekindDomain` and `isDedekindDomainInv`. Specifically, prove `isDedekindDomainDvr A → isDedekindDomainInv A`, because `isDedekindDomain A → isDedekindDomainDvr A` and `IsDedekindDomain A ↔ IsDedekindDomainInv A` are already in Mathlib. - [x] depends on: #14099 - [x] depends on: #14216 - [ ] depends on: #14237 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR new-contributor
label:t-algebra$
269/1 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean 4 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
612-61248
1 year ago
700-50195
700 days ago
0-273
4 minutes
17171 FR-vdash-bot
author:FR-vdash-bot
test extends carrier and property --- We need https://github.com/leanprover/lean4/issues/2666 ... [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 433/309 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/Field/Subfield.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean,Mathlib/Algebra/Ring/Subsemiring/Order.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Algebra/Star/Subsemiring.lean,Mathlib/Data/Complex/Module.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Deprecated/Subfield.lean,Mathlib/Deprecated/Subgroup.lean,Mathlib/Deprecated/Submonoid.lean,Mathlib/Deprecated/Subring.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/DoubleCoset.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/SetTheory/Cardinal/Subfield.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean 42 1 ['github-actions'] nobody
608-59590
1 year ago
unknown
0-0
0 seconds
7516 ADedecker
author:ADedecker
perf: use `abbrev` to prevent unifying useless data --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 4/3 Mathlib/Topology/ContinuousFunction/Bounded.lean 1 3 ['ADedecker', 'leanprover-bot', 'mattrobball'] nobody
607-31250
1 year ago
967-81867
967 days ago
0-16
16 seconds
17127 FR-vdash-bot
author:FR-vdash-bot
chore: remove global `Quotient.mk` `⟦·⟧` notation --- Merge this PR when we are ready to migrate to `QuotLike` API (#16421). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 137/2 Counterexamples/Pseudoelement.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Quandle.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Product.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/QPF/Multivariate/Constructions/Fix.lean,Mathlib/Data/QPF/Univariate/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Set/Finite.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Quotients.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RepresentationTheory/Action/Concrete.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/Birthday.lean,Mathlib/SetTheory/Game/Impartial.lean,Mathlib/SetTheory/Game/Ordinal.lean,Mathlib/SetTheory/Game/State.lean,Mathlib/SetTheory/Lists.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/SetTheory/Surreal/Dyadic.lean,Mathlib/SetTheory/Surreal/Multiplication.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/HomotopyGroup.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Homotopy/Product.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean,Mathlib/Topology/UniformSpace/Separation.lean,test/interactiveUnfold.lean 68 1 ['github-actions'] nobody
607-26293
1 year ago
607-26293
607 days ago
4-72805
4 days
16887 metinersin
author:metinersin
feat(ModelTheory/Complexity): define conjunctive and disjunctive formulas Defines `FirstOrder.Language.BoundedFormula.IsConjunctive` and `FirstOrder.Language.BoundedFormula.IsDisjunctive`. --- - [ ] depends on: #16885 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 300/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57226
1 year ago
619-85300
619 days ago
0-1299
21 minutes
16888 metinersin
author:metinersin
feat(ModelTheory/Complexity): Define conjunctive and disjunctive normal forms Define `FirstOrder.Language.BoundedFormula.IsDNF` and `FirstOrder.Language.BoundedFormula.IsCNF`. --- - [ ] depends on: #16887 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 415/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57226
1 year ago
619-85301
619 days ago
0-1045
17 minutes
16889 metinersin
author:metinersin
feat(ModelTheory/Complexity): Normal forms Defines `FirstOrder.Language.BoundedFormula.toDNF` and `FirstOrder.Language.BoundedFormula.toCNF` - given a quantifier-free formula, these construct a semantically equivalent formula in disjunctive normal form and conjunctive normal form, respectively. --- - [ ] depends on: #16888 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 525/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57225
1 year ago
619-81051
619 days ago
0-613
10 minutes
5995 FR-vdash-bot
author:FR-vdash-bot
feat: add APIs about `Quotient.choice` Some docs in this PR refer to the definition in #5576. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author RFC t-data 76/6 Mathlib/Data/Quot.lean 1 3 ['YaelDillies', 'astrainfinita', 'gebner'] eric-wieser
assignee:eric-wieser
597-71435
1 year ago
723-5696
723 days ago
285-35716
285 days
14619 Command-Master
author:Command-Master
chore: Merge `Trunc` to `Squash` Remove `Trunc` and use `Squash` instead --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP new-contributor 197/211 Mathlib/CategoryTheory/EpiMono.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/Data/DFinsupp/Basic.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Fintype/Option.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Semiquot.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/Logic/Equiv/List.lean 13 3 ['Command-Master', 'github-actions', 'vihdzp'] nobody
595-17376
1 year ago
unknown
0-0
0 seconds
13156 erdOne
author:erdOne
refactor(Algebra/Module/LocalizedModule): Redefine `LocalizedModule` in terms of `OreLocalization`. --- - [x] depends on: #13151 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
519/628 Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean,Mathlib/RingTheory/OreLocalization/Ring.lean 8 4 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball'] nobody
592-78575
1 year ago
592-78575
592 days ago
51-84473
51 days
16348 urkud
author:urkud
refactor(Topology): require `LinearOrder` with `OrderTopology` While the definition formally makes sense for a preorder, this topology is usually not the right one for a non-linear order (e.g., `Real × Real`). See [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Open.20Ioi) --- This PR doesn't cleanup any API, I'm going to do it in a later PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 33/46 Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/Instances/Sign.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/Filter.lean,Mathlib/Topology/Order/MonotoneContinuity.lean 6 10 ['YaelDillies', 'github-actions', 'jcommelin', 'urkud'] nobody
592-78199
1 year ago
633-24133
633 days ago
3-83049
3 days
13965 pechersky
author:pechersky
feat(Data/DigitExpansion): reals via digit expansion are complete --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #13964 merge-conflict blocked-by-other-PR t-data 3876/0 Mathlib.lean,Mathlib/Data/DigitExpansion/Add.lean,Mathlib/Data/DigitExpansion/Defs.lean,Mathlib/Data/DigitExpansion/Hensel.lean,Mathlib/Data/DigitExpansion/Integer/Basic.lean,Mathlib/Data/DigitExpansion/Integer/Mul.lean,Mathlib/Data/DigitExpansion/Real/Basic.lean,Mathlib/Data/DigitExpansion/Real/CompleteSpace.lean,Mathlib/Data/DigitExpansion/Real/ConditionallyComplete.lean,docs/references.bib 10 4 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
591-28967
1 year ago
709-61586
709 days ago
0-600
10 minutes
16984 hrmacbeth
author:hrmacbeth
feat: extend `module` tactic to handle multiple rings, not strictly ordered by inclusion The `module` tactic currently in Mathlib handles scalars from multiple rings, but only if for any two rings `R` and `S` which appear, either `R` is an algebra over `S` or vice versa. This PR extends the tactic by providing a syntax `module T`, which will handle scalars from any ring `R` which `T` is an algebra over. For example, ```lean example : (2:ℤ) • x = (2:ℚ≥0) • x := by module ``` fails since `ℤ` is not a `ℚ≥0`-algebra and `ℚ≥0` is not a `ℤ`-algebra, but ```lean example : (2:ℤ) • x = (2:ℚ≥0) • x := by module ℚ ``` works since `ℚ` is both a `ℤ`-algebra and a `ℚ≥0`-algebra. This PR is a quick proof-of-concept implementation, just to record the desired approach and tactic syntax. It should not be merged as-is. It has with a lot of code duplication and should be rewritten more efficiently (for example, `parse` and `parseEnsuringType` should be merged to a single function, and the `some`/`none` cases in `matchScalarsAux` should be merged to a uniform treatment) before being considered for merging to Mathlib. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 158/35 Mathlib/Tactic/Module.lean,test/module.lean 2 1 ['github-actions'] nobody
589-14239
1 year ago
unknown
0-0
0 seconds
12750 Command-Master
author:Command-Master
feat: define Gray code --- Define binary reflected gray code, both as a permutation of `Nat` and as a permutation of `BitVec n`, and prove some theorems about them. Additionally, remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. - [ ] depends on: #12751 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-data new-contributor merge-conflict awaiting-author 226/0 Mathlib.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/GrayCode.lean,Mathlib/Data/Nat/Size.lean 5 5 ['Rida-Hamadani', 'alreadydone', 'github-actions', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
586-79883
1 year ago
735-61981
735 days ago
16-49744
16 days
12414 adomani
author:adomani
test: lint and unlint `·` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 64/14 Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Tactic/Linter/Multigoal.lean,test/Multigoal.lean 4 4 ['adomani', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
584-76424
1 year ago
unknown
0-0
0 seconds
16647 eric-wieser
author:eric-wieser
feat: partitions of lists The length of this list is the bell numbers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics t-data 311/0 Mathlib.lean,Mathlib/Data/List/Partition.lean 2 1 ['github-actions'] nobody
582-10498
1 year ago
unknown
0-0
0 seconds
13514 madvorak
author:madvorak
feat(Computability/ContextFreeGrammar): closure under union - [ ] depends on: #15895 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability blocked-by-other-PR 448/4 Mathlib/Computability/ContextFreeGrammar.lean 1 50 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak'] nobody
574-4811
1 year ago
651-65192
651 days ago
72-28417
72 days
5364 thorimur
author:thorimur
feat: `wlog ... replacing` This allows hypotheses to be removed from the set of generalized hypotheses. E.g. `wlog h : P replacing h'` will remove `h'` from the hypotheses of the type of `this` and from the context of the goal that will suppose `h`. See [zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/wlog.20.2E.2E.2E.20replacing.20.2E.2E.2E.3F). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 125/18 Mathlib/Tactic/WLOG.lean,test/wlog.lean 2 2 ['thorimur', 'urkud'] nobody
572-37850
1 year ago
unknown
0-0
0 seconds
9654 urkud
author:urkud
feat: add `@[mk_eq]` version of `@[mk_iff]` The new attribute generates theorems like ```lean List.chain_eq : @List.Chain = fun {α} R a a_1 => a_1 = [] ∨ ∃ b l, R a b ∧ List.Chain R b l ∧ a_1 = b :: l ``` and is useful to rewrite in a theorem that argues about the properties of an unapplied inductive predicate. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 63/9 Mathlib/Lean/Meta.lean,Mathlib/Tactic/MkIffOfInductiveProp.lean,test/MkIffOfInductive.lean 3 6 ['Vierkantor', 'github-actions', 'urkud'] nobody
572-37604
1 year ago
844-903
844 days ago
25-70825
25 days
16704 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Mathlib.Data.Ordering.Dickson): Dickson orders Dickson orders are a particular class of well founded orders characterized by the fact that every nonempty set has finitely many minimal elements. They appear in the classical theory of Groebner bases because it is easier to prove that some sets are well founded using this property. WiP. In the `tfae` function, property 2 is exactly `Set.PartiallyWellOrderedOn`, so the PR should be rewritten so as to use that property (and not define `IsDickson`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 324/0 Mathlib.lean,Mathlib/Data/Ordering/Dickson.lean,scripts/noshake.json 3 9 ['AntoineChambert-Loir', 'b-mehta', 'github-actions'] nobody
572-16161
1 year ago
623-4992
623 days ago
2-84515
2 days
16355 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: odd_{add,sub}_one --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-number-theory
label:t-algebra$
12/0 Mathlib/Algebra/Ring/Int.lean,Mathlib/Algebra/Ring/Parity.lean 2 4 ['Ruben-VandeVelde', 'github-actions', 'urkud'] nobody
571-50358
1 year ago
636-38804
636 days ago
0-57608
16 hours
8638 alreadydone
author:alreadydone
refactor: noncommutative tensor product Co-authored-by: Eric Wieser Co-authored-by: Jujian Zhang This draft PR currently only generalizes a single file TensorProduct.lean; it allows TensorProduct to be taken over a non-commutative ring. Most of the declarations in TensorProduct.lean are now generalized to the non-commutative setting, and very few are deleted (their commutative version will be restored in another file). Next plans: + Change the namespace in TensorProduct.lean from TensorProduct to NonCommTensorProduct, and remove the #aligns + I plan to use the same notation for the non-commutative and the commutative TensorProduct, and the user will need to `open scoped` different namespaces to use the one of their choice. + Start a new file TensorProduct/Comm.lean, copy the content of TensorProduct.lean on master into it, change the definition TensorProduct to be semi-reducibly defeq to NonCommTensorProduct (in order to support more instances or unify non-defeq instances that become prop-eq in the commutative setting, e.g. we've chosen the R-action on a tensor product over commutative R to come from the left factor, since the action from the right factor is the same), and reuse the NonComm constructions as much as possible. We then change all files that imports TensorProduct.lean to import TensorProduct/Comm.lean instead. Once we do that, mathlib would compile and this PR would be complete. We can gradually generalize other files about tensor products this way. In this PR: `TensorProduct.map` is now defined in terms of `lTensor` and `rTensor` rather than the other way around, which requires moving `lTensor` and `rTensor` up from their original location. The definition of `rid` also becomes more challenging and is moved down. An evident observation is that actions on the domain of AddMonoidHom / LinearMap is really natural in the context of tensor products and Hom-tensor adjunction (`TensorProduct.lift`), not the default actions on the codomain. For example, it allows us to write the "balanced biadditive monoid homs" in #8536 as simply `N →ₗ[R] M →+ P` (where the right R-action on M turns into the left action on `M →+ P`). For this reason, we disable the default instances `AddMonoidHom/LinearMap.module` at the beginning of the file and enable the `AddMonoidHom/LinearMap.domModule` instances instead. (The action on the codomain would be necessary for the non-commutative version of [TensorProduct.lTensorHomToHomLTensor](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/TensorProduct.html#TensorProduct.lTensorHomToHomLTensor) (in the form of `P ⊗[R] (M →+ Q) →+ M →+ P ⊗[R] Q`), but I've deleted it for now.) We register actions on the left factor of a tensor product as the default instance, but we also talk about actions on the right factor (`attribute [local instance] rightModule`). The Tensor-Hom adjunction #8495 is now `uncurryEquiv` in this PR. #8519 is now included in this PR and #8584 is now called `lift` in this PR. `CharacterModule.homEquiv` in #8559 can be obtained by combining `liftEquiv` and `flipMop` in this PR (except for a mop). To refactor the commutative tensor product, we'd need to transfer many R^mop-action to R-action and R^mop-LinearMaps to R-LinearMaps, which can be achieved via `Module.compHom` and `LinearMap.restrictScalars` (requires `LinearMap.CompatibleSMul` instance) given `RingEquiv.toOpposite`. `LinearMap.characterfy` and `CharacterModule.cong` could be obtained from `LinearMap.compAddMonoidHom` in this PR. TODO: + Move delarations that belong to other files. + Change docstrings that are no longer accurate. + Fix some argument order to be more natural. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
793/676 Mathlib/Algebra/Module/LinearMap.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct.lean 3 6 ['alreadydone', 'eric-wieser', 'grhkm21', 'jjaassoonn'] nobody
570-76571
1 year ago
unknown
0-0
0 seconds
14598 Command-Master
author:Command-Master
chore: add typeclasses to unify various `add_top`, `add_eq_top`, etc. Add the four typeclasses `IsTopAbsorbing`, `IsBotAbsorbing`, `NoTopSum`, `NoBotSum`, as additive equivalents for `MulZeroClass` and `NoZeroDivisors`. Add instances of these for `ENNReal`, `WithTop α`, `WithBot α`, `PUnit`, `EReal`, `PartENat`, `Measure`, `Interval` and `Filter`. Also split `Algebra/Order/AddGroupWithTop` to `Algebra/Order/Group/WithTop` and `Algebra/Order/Monoid/WithTop` --- Previous usages of lemmas with quantified names like `WithTop.add_top` have to be changed to just `add_top`. `add_lt_top` is `@[simp]`, in accordance with `ENNReal.add_lt_top` being `@[simp]`. This affects `WithTop.add_lt_top` which previously hadn't been `@[simp]`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-order new-contributor
label:t-algebra$
264/195 Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib.lean,Mathlib/Algebra/Order/Group/WithTop.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/PUnitInstances/Order.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Analytic/Meromorphic.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/NormedSpace/ENorm.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Log/ENNRealLog.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/Data/Real/EReal.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Integral/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean 57 30 ['Command-Master', 'YaelDillies', 'github-actions'] nobody
570-21759
1 year ago
570-21759
570 days ago
7-45599
7 days
18636 adomani
author:adomani
Test/latest import report dev This PR is a test accompanying #18631. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict CI 147/0 .github/workflows/latest_import.yml,lakefile.lean 2 1 ['github-actions'] nobody
569-9030
1 year ago
unknown
0-0
0 seconds
16885 metinersin
author:metinersin
feat(ModelTheory/Complexity): define literals Defines `FirstOrder.Language.BoundedFormula.IsLiteral` and `FirstOrder.Language.BoundedFormula.simpleNot` - an auxiliary operation that takes the negation of a formula and does some simplification. --- - [x] depends on: #16800 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-logic 148/5 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 4 20 ['YaelDillies', 'awainverse', 'github-actions', 'mathlib4-dependent-issues-bot', 'metinersin'] nobody
567-64280
1 year ago
603-53592
603 days ago
0-19926
5 hours
18716 jjaassoonn
author:jjaassoonn
feat(Algebra/Module/GradedModule): quotient and subgrading - [ ] depends on: #9820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR awaiting-CI merge-conflict
label:t-algebra$
997/191 Counterexamples/HomogeneousPrimeNotPrime.lean,Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Module/GradedModule/Basic.lean,Mathlib/Algebra/Module/GradedModule/QuotientGrading.lean,Mathlib/Algebra/Module/GradedModule/Subgrading.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Quotient.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,scripts/no_lints_prime_decls.txt 12 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
567-63911
1 year ago
unknown
0-0
0 seconds
9341 winstonyin
author:winstonyin
feat: Naturality of integral curves Let `v` and `v'` be sections of the tangent bundle of manifolds `M` and `M'`, respectively, and let `f : M → M'` be a differentiable map. Then `f` maps integral curves of `v` to integral curves of `v'` if and only if `v` and `v'` are `f`-related. - [x] depends on: #8483 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-differential-geometry 45/0 Mathlib/Geometry/Manifold/IntegralCurve.lean,Mathlib/Topology/Algebra/Module/Basic.lean 2 9 ['github-actions', 'grunweg', 'leanprover-community-mathlib4-bot', 'winstonyin'] nobody
564-29703
1 year ago
871-86173
871 days ago
0-28222
7 hours
13248 hcWang942
author:hcWang942
feat: basic concepts of auction theory ## Description Formalise some core concepts and results in auction theory: this includes definitions for first-price and second-price auctions, as well as several fundamental results and helping lemmas. This is the very first PR of the project formalizing core concepts and results in auction theory. Our group is working on more contributions on the formalization of game theory prefix. Co-authored-by: Ma Jiajun ## Reference Roughgarden, Tim. ***Twenty Lectures on Algorithmic Game Theory***. Cambridge University Press, 2020. [Link](https://www.cambridge.org/core/books/twenty-lectures-on-algorithmic-game-theory/A9D9427C8F43E7DAEF8C702755B6D72B) --- - [x] Will depend on #14163 once that PR is merged. The Fintype lemmas introduced by this PR have been added in that PR and will be removed from here once that PR gets merged ## Current plan for formalization of Game Theory The current plan for the formalizing of Game Theory include: #### 1. Auction Theory. 🎉 _(200+ lines, this PR)_ - Essential definitions of Sealed-bid auction, First-price auction and Second-price auction. - First-price auction has no dominant strategy. - Second-price auction has dominant strategy. (Second-price auction is DSIC) #### 2. Mechanism design & Myerson's Lemma. 🎉 (400+ lines, pending for modification to Mathlib Standard) - Mechanism design An allocation rule is implementable if there exists - Dominant Strategy Incentive Compatible (DSIC) payment rule - An allocation rule is monotone if for every bidder’s gain is nondecreasing w.r.t. her/his bid - Myerson's Lemma Implementable ⇔ Monotone In the above case, the DSIC payment rule is unique. #### 3. von Neumann‘s Minimax Theorem. 🎉 (800+ lines, pending for modification to Mathlib Standard) - Equilibrium in zero sum game - Formalization strategy: via Loomis’s theorem. #### 4. Nash Equilibrium. 🎉 (pending for modification to Mathlib Standard) #### 5. Brouwer fixed-point theorem. (Work in Progress) #### 6. More Mechanism design. (Planning) merge-conflict awaiting-author new-contributor t-logic 204/0 Mathlib.lean,Mathlib/GameTheory/Auction/Basic.lean,docs/references.bib 3 148 ['Shreyas4991', 'YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'grunweg', 'hcWang942', 'tb65536', 'urkud', 'vihdzp'] hcWang942
assignee:hcWang942
563-16712
1 year ago
577-2900
577 days ago
109-82807
109 days
17675 FR-vdash-bot
author:FR-vdash-bot
perf: do not search algebraic hierarchy when searching `FunLike` hierarchy --- Unification is still very slow. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
144/4 Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Equiv.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Util/SetSynthOrder.lean,MathlibTest/TCSynth.lean,scripts/noshake.json 24 5 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
562-78245
1 year ago
unknown
0-0
0 seconds
9344 erdOne
author:erdOne
feat: Add `AddGroup.FG` -> `Module.Finite ℤ` as instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
4/0 Mathlib/RingTheory/Finiteness.lean 1 4 ['alreadydone', 'erdOne', 'leanprover-bot'] nobody
562-1105
1 year ago
861-1548
861 days ago
21-27905
21 days
12133 ADedecker
author:ADedecker
feat: generalize instIsLowerProd to arbitrary products Also change a bit the proof of the product case to match my own taste, feel free to tell if you prefer the old one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 34/14 Mathlib/Topology/Constructions.lean,Mathlib/Topology/Order/LowerUpperTopology.lean 2 13 ['Ruben-VandeVelde', 'TwoFX', 'github-actions', 'jcommelin', 'mans0954', 'mathlib-bors', 'riccardobrasca'] nobody
561-10859
1 year ago
712-6495
712 days ago
63-69226
63 days
16637 FR-vdash-bot
author:FR-vdash-bot
perf: reorder `extends` of `(Add)Monoid` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
46/51 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean 20 3 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
561-10097
1 year ago
626-17453
626 days ago
1-49655
1 day
18765 FR-vdash-bot
author:FR-vdash-bot
chore: changing `outParam` of `MulActionSemiHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
60/34 Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 4 4 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
560-52758
1 year ago
unknown
0-0
0 seconds
15822 kmill
author:kmill
feat: greedy colorings of finite graphs Proves that the greedy coloring only takes `G.maxDegree + 1` colors. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics 159/0 Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 1 1 ['github-actions'] nobody
557-77951
1 year ago
unknown
0-0
0 seconds
8661 joelriou
author:joelriou
feat(CategoryTheory/Sites): descent of sheaves In this PR, it is shown that the category of sheaves on a site `(C, J)` identifies as a full subcategory of a category of families of sheaves equipped with a descent data (for a family of objects which cover the final object). Under suitable conditions, it shall be shown that this is an equivalence of categories (TODO). --- This shall be split in small PRs later. - [x] depends on: #8622 - [x] depends on: #8632 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 1396/26 Mathlib.lean,Mathlib/CategoryTheory/Over.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Descent.lean,Mathlib/CategoryTheory/Sites/EqualizerSheafCondition.lean,Mathlib/CategoryTheory/Sites/InducedTopology.lean,Mathlib/CategoryTheory/Sites/ObjectsCoverTop.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/SheafHom.lean,Mathlib/CategoryTheory/Sites/Sieves.lean 10 3 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
557-73479
1 year ago
unknown
0-0
0 seconds
19055 JLimperg
author:JLimperg
Test precompilation (batteries + aesop) again merge-conflict 9/8 lake-manifest.json,lakefile.lean 2 5 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
557-55122
1 year ago
unknown
0-0
0 seconds
10476 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/UniformSpace): define uniform preordered space We define the semi-uniform structure and the uniform preordered space. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 94/0 Mathlib.lean,Mathlib/Topology/UniformSpace/UniformOrder.lean,docs/references.bib 3 2 ['shuxuezhuyi'] nobody
556-60133
1 year ago
785-1161
785 days ago
52-19273
52 days
17593 astrainfinita
author:astrainfinita
chore(Algebra/Order/GroupWithZero/Unbundled): deprecate useless lemmas, use `ZeroLEOneClass` There are still some useless lemmas that were simply ported from `Algebra.Order.Monoid.Lemmas`, such as just chain an existing lemma with an assumption and lemmas whose assumptions imply `1 ≤ 0`. This PR removes them. Also, some lemmas have both assumptions like `1 < a` `0 < a`. This PR uses `ZeroLEOneClass` to remove redundant assumptions. --- - [ ] depends on: #17623 Ported from https://github.com/leanprover-community/mathlib/pull/16525 and https://github.com/leanprover-community/mathlib/pull/18158 Adapted from #9250. This version is easier to review. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR t-order
label:t-algebra$
188/48 Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Order/Field.lean 6 4 ['astrainfinita', 'github-actions', 'mathlib4-dependent-issues-bot', 'vihdzp'] nobody
555-83475
1 year ago
596-69056
596 days ago
0-74903
20 hours
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
555-83475
1 year ago
562-76034
562 days ago
33-64877
33 days
18969 alreadydone
author:alreadydone
chore: generalize Module to NonUnitalSemiring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
94/75 Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/End.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Group/Action/TypeTags.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/LinearAlgebra/FreeModule/IdealQuotient.lean,Mathlib/LinearAlgebra/LinearDisjoint.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/TensorProduct/Submodule.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/Flat/FaithfullyFlat.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Defs.lean,Mathlib/RingTheory/Ideal/Lattice.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Prod.lean,Mathlib/RingTheory/Presentation.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean 31 11 ['alreadydone', 'eric-wieser', 'github-actions', 'leanprover-bot'] nobody
554-20727
1 year ago
unknown
0-0
0 seconds
17624 FR-vdash-bot
author:FR-vdash-bot
feat(Algebra/Order/GroupWithZero/Unbundled): generalize lemmas --- - [ ] depends on: #17623 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR t-order
label:t-algebra$
121/26 Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
552-34247
1 year ago
596-67926
596 days ago
0-465
7 minutes
17513 FR-vdash-bot
author:FR-vdash-bot
perf: do not search algebraic hierarchies when using `map_*` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra awaiting-bench
label:t-algebra$
5/3 Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 2 10 ['astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
550-79669
1 year ago
594-81534
594 days ago
4-72589
4 days
17515 FR-vdash-bot
author:FR-vdash-bot
perf: do not need `simp low` now --- - [ ] depends on: #17513 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
12/10 Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/NumberTheory/LucasLehmer.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
550-79668
1 year ago
599-67180
599 days ago
0-380
6 minutes
19212 Julian
author:Julian
feat(LinearAlgebra): add a variable_alias for VectorSpace Taken directly from the variable_alias docs. Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/why.20.5Bvariable_alias.5D.20attribute.20is.20not.20used.20in.20Mathlib.3F --- This is the first actual variable alias added to mathlib. I haven't reviewed variable_alias fully, but it seems like there's at least 3 ways they could be distributed in Mathlib: * alongside whatever subfolder they "belong to" (which is what I've tentatively done here) * In a file called `Aliases` somewhere near the thing they alias (which seems less discoverable to me) * In a single file, a la `Mathlib.TrainingWheels` (with some less playful name) which is meant to define a bunch of more "friendly" aliases all in one place. I kind of like the idea of the third thing as a future module but perhaps it can be synthesized if/when there are more aliases? For now as I say I've done the first one, but please let me know if someone prefers something else. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
25/0 Mathlib.lean,Mathlib/LinearAlgebra/VectorSpace.lean,scripts/noshake.json 3 10 ['Julian', 'PieterCuijpers', 'github-actions', 'urkud'] nobody
549-84914
1 year ago
549-84914
549 days ago
7-68089
7 days
19337 zeramorphic
author:zeramorphic
feat(Data/Finsupp): generalise `Finsupp` to any "zero" value Remove the explicit dependence of `Finsupp` on `[Zero M]`, instead defining `Finsupp'` (better name pending) to be functions that are equal to a fixed value `z : M` cofinitely often. This PR is intended to do the initial work of replacing the definition of `Finsupp` with an instantiation of the more general definition, without adding any appropriate API. If accepted, the API development will follow in later PRs. Issues to consider: - Naming of `Finsupp'.` - Where should `Finsupp'` lemmas go? Do they need their own file/folder under `Data/`? Relevant Zulip threads: - https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finsupp.20generalisations - https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finsupp-like.20partial.20function Comments are welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 203/83 Archive/Wiedijk100Theorems/Partition.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean,Mathlib/RingTheory/PowerBasis.lean,scripts/nolints_prime_decls.txt 13 5 ['github-actions', 'vihdzp', 'zeramorphic'] nobody
547-60991
1 year ago
547-60991
547 days ago
4-60621
4 days
18756 astrainfinita
author:astrainfinita
refactor: deprecate `DistribMulActionSemiHomClass` `MulSemiringActionSemiHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
50/28 Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 3 4 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
536-26660
1 year ago
536-26660
536 days ago
31-53021
31 days
19125 yhtq
author:yhtq
feat: add theorems to transfer `IsGalois` between pairs of fraction rings feat: add theorems to transfer `IsGalois` between pairs of fraction rings. - [x] depends on: #18404 - [x] depends on: #19124 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra new-contributor
label:t-algebra$
121/0 Mathlib.lean,Mathlib/FieldTheory/Galois/IsFractionRing.lean,Mathlib/RingTheory/Localization/FractionRing.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'tb65536'] nobody
533-39129
1 year ago
560-511
560 days ago
0-1980
33 minutes
18841 hrmacbeth
author:hrmacbeth
chore: change some `linarith`s to `linear_combination`s Change 100 `linarith`s to `linear_combination`s; this is generally a slight speedup. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #18714 (not strictly blocked by this, but the speed comparison will be more informative after it) merge-conflict WIP 106/107 Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2021Q1.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Convex/Visible.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/MeasureTheory/Covering/BesicovitchVectorSpace.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleWith.lean,Mathlib/Probability/Distributions/Pareto.lean 30 29 ['github-actions', 'grunweg', 'hrmacbeth', 'jcommelin', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
532-55
1 year ago
554-22301
554 days ago
3-28253
3 days
11142 hmonroe
author:hmonroe
feat(ProofTheory): Define logical symbols abstractly; opens new top-level section, drawing from lean4-logic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 468/1 Mathlib.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/ProofTheory/LogicSymbol.lean 3 19 ['PatrickMassot', 'YaelDillies', 'avigad', 'fpvandoorn', 'github-actions'] nobody
526-9875
1 year ago
722-69924
722 days ago
94-3235
94 days
11210 hmonroe
author:hmonroe
Test commit --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 1950/1 Mathlib.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/ProofTheory/Calculus.lean,Mathlib/ProofTheory/FirstOrder/Arith/Language.lean,Mathlib/ProofTheory/FirstOrder/Basic/Syntax/Term.lean,Mathlib/ProofTheory/LogicSymbol.lean,Mathlib/ProofTheory/Matrix.lean,Mathlib/ProofTheory/Semantics.lean,Mathlib/ProofTheory/System.lean,docs/references.bib 10 100 ['github-actions'] nobody
526-9874
1 year ago
811-85755
811 days ago
2-67901
2 days
19621 Command-Master
author:Command-Master
feat: Multiplicity and prime-adic valuation of derivations --- - [ ] depends on: #19596 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR large-import
label:t-algebra$
397/13 Mathlib.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Derivation/Multiplicity.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/PrimeMultiplicity.lean 9 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
525-78535
1 year ago
546-17484
546 days ago
0-666
11 minutes
18262 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat/Presheaf): exterior powers of presheaves of modules --- - [x] depends on: #18261 - [ ] depends on: #18236 - [ ] depends on: #18197 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR t-category-theory merge-conflict
label:t-algebra$
874/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/FunctorOfNatTrans.lean,Mathlib/Algebra/Category/ModuleCat/Pseudofunctor.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
525-69830
1 year ago
unknown
0-0
0 seconds
18294 FR-vdash-bot
author:FR-vdash-bot
perf: make `Mul.toSMul` higher priority --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-bench t-algebra
label:t-algebra$
2/5 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Order/Field/Pointwise.lean,Mathlib/Combinatorics/Additive/AP/Three/Defs.lean,Mathlib/Topology/Algebra/Module/WeakBilin.lean 4 4 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
520-77467
1 year ago
unknown
0-0
0 seconds
15269 kkytola
author:kkytola
feat: Add ENNReal.floor A right-continuous floor function on `ENNReal`. --- - [x] depends on: #13938 - [ ] depends on: #15773 (general type class for `ENat`-valued floor functions) - [x] depends on: #15380 (topology on `ENat` is needed to state right continuity of the floor function) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR t-order merge-conflict awaiting-author
label:t-algebra$
445/0 Mathlib.lean,Mathlib/Algebra/Order/EFloor.lean,Mathlib/Data/ENNReal/Floor.lean,Mathlib/Data/Nat/Lattice.lean 4 18 ['YaelDillies', 'github-actions', 'kkytola', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
512-50764
1 year ago
661-45830
661 days ago
0-3440
57 minutes
15773 kkytola
author:kkytola
feat: Add type class for ENat-valued floor functions This PR adds a type class for extended natural number -valued floor functions. This is split off from #15269, where the suggestions were to make the floor function on ENNReal ENat-valued and to have an API mimicling FloorSemirings. Besides ENNReal, at least ENNRat would naturally satisfy the general type class. --- Two things are worth noting: * To fully mimic `FloorSemiring` API, also ceiling functions need to be added. The plan is to do that in a later PR. * The PR introduces the class `CastNatENatClass` to ensure that `natCast` and a coercion from `ENat` behave in the natural and order-respecing manner. This feels a little ad hoc, but such assumptions are needed for general `ENat`-valued floor functions to behave well. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-order 231/0 Mathlib.lean,Mathlib/Algebra/Order/EFloor.lean,Mathlib/Data/ENat/Basic.lean 3 5 ['YaelDillies', 'github-actions', 'kkytola', 'urkud'] nobody
512-50641
1 year ago
588-49994
588 days ago
66-24436
66 days
3251 kmill
author:kmill
feat: deriving `LinearOrder` for simple enough inductive types Uses the same machinery underlying the `Fintype` derive handler to derive a lexicographical `LinearOrder` for non-recursive inductive types that have no indices. In principle more complicated types can have `LinearOrder`s, but that would require a more sophisticated implementation. --- - [x] depends on: #3198 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-meta 82/0 Mathlib.lean,Mathlib/Tactic/DeriveLinearOrder.lean 2 5 ['ChrisHughes24', 'kim-em', 'kmill', 'vihdzp'] nobody
510-25294
1 year ago
1136-27325
1136 days ago
1-80343
1 day
3610 TimothyGu
author:TimothyGu
feat: derive Infinite automatically for inductive types Deals with recursive types, but not mutually recursive types or types with indices right now. See docstring for details. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 517/0 Mathlib.lean,Mathlib/Tactic/DeriveInfinite.lean,test/DeriveInfinite.lean 3 11 ['TimothyGu', 'digama0', 'eric-wieser', 'grunweg', 'kim-em', 'kmill'] kmill
assignee:kmill
510-25293
1 year ago
1122-20335
1122 days ago
9-24079
9 days
16120 awainverse
author:awainverse
feat(ModelTheory/Algebra/Ring/Basic): Ring homomorphisms are a `StrongHomClass` for the language of rings Adds an `IsAlgebraic` instance to the language of rings Adds a `StrongHomClass` instance to the type of ring homomorphisms between rings with `CompatibleRing` structures --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra RFC t-logic
label:t-algebra$
34/13 Mathlib/ModelTheory/Algebra/Ring/Basic.lean 1 10 ['ChrisHughes24', 'YaelDillies', 'awainverse', 'github-actions', 'jcommelin'] nobody
508-42834
1 year ago
508-42834
508 days ago
135-29017
135 days
20527 trivial1711
author:trivial1711
refactor(Topology/UniformSpace/Completion): more descriptive names for `α → Completion α` - We rename the various maps `α → Completion α` in order to make their names more consistent. - Let `α` be a uniform space. We rename the uniformly continuous function `α → Completion α` from `UniformSpace.Completion.coe'` to `UniformSpace.Completion.coe`. - Let `α` be a uniform additive group. We rename the additive group homomorphism `α →+ Completion α` from `UniformSpace.Completion.toCompl` to `UniformSpace.Completion.coeAddHom`. - Let `α` be a uniform ring. The ring homomorphism `α →+* Completion α` is called `UniformSpace.Completion.coeRingHom`; its name is unchanged. - Let `α` be a normed space over a field `𝕜`. We rename the linear isometry `α →ₗᵢ[𝕜] Completion α` from `UniformSpace.Completion.toComplₗᵢ` to `UniformSpace.Completion.coeₗᵢ`. - Let `α` be a normed space over a field `𝕜`. We rename the continuous linear map `α →L[𝕜] Completion α` from `UniformSpace.Completion.toComplL` to `UniformSpace.Completion.coeL`. - Let `α` be a normed additive group. We rename the norm preserving homomorphism `NormedAddGroupHom α (Completion α)` from `NormedAddCommGroup.toCompl` to `UniformSpace.Completion.coeNormedAddGroupHom`. - We analogously rename some other theorems. - We add some trivial theorems (all of which are proved by `rfl`) that state that the functions considered above are equal. We give all of them the `simp` and `norm_cast` attributes. - We add a new theorem `UniformSpace.Completion.coeAddHom_eq_coe` that states that `UniformSpace.Completion.coeAddHom` and `UniformSpace.Completion.coe` are equal as functions. - We similarly add a new theorem `UniformSpace.Completion.coeRingHom_eq_coe`. - We rename the theorem `UniformSpace.Completion.coe_toComplₗᵢ` to `UniformSpace.Completion.coeₗᵢ_eq_coe`. - We rename the theorem `UniformSpace.Completion.coe_toComplL` to `UniformSpace.Completion.coeL_eq_coe`. - We similarly add a new theorem `UniformSpace.Completion.coeNormedAddGroupHom_eq_coe`. - We change all occurrences of the string `((↑) : α → Completion α)` to `(coe : α → Completion α)` or just `coe`. - We put the statements of some theorems into simp normal form by using the plain function `coe` rather than the homomorphisms that carry more structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 130/92 Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Analysis/SpecialFunctions/NonIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/Nonarchimedean.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformRing.lean,Mathlib/Topology/Category/UniformSpace.lean,Mathlib/Topology/MetricSpace/Completion.lean,Mathlib/Topology/UniformSpace/Completion.lean 17 4 ['eric-wieser', 'github-actions', 'trivial1711'] nobody
501-73866
1 year ago
501-73866
501 days ago
6-66637
6 days
17739 Aaron1011
author:Aaron1011
feat(Topology/Order/DenselyOrdered): prove Not (IsOpen) for intervals Prove that Iic/Ici/Ioc/Ico/Icc intervals are not open in densely ordered topologies with no min/max element --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology new-contributor 27/0 Mathlib/Topology/Order/DenselyOrdered.lean 1 8 ['github-actions', 'vihdzp'] nobody
499-61141
1 year ago
592-52711
592 days ago
0-4704
1 hour
18474 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `*WithOne.to*` instances --- From #7873. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra t-data
label:t-algebra$
9/2 Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean 3 7 ['astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-bot'] nobody
499-60896
1 year ago
499-60896
499 days ago
76-66907
76 days
20656 Komyyy
author:Komyyy
feat(Mathlib/Geometry/Manifold/VectorBundle/Sphere): convert orthogonal smooth `M → 𝕊ⁿ` & `M → ℝⁿ⁺¹` to smooth `M → T𝕊ⁿ` Current Mathlib has no easy way to define function from a manifold to tangent bundles of sphere: `T𝕊ⁿ`. This PR gives this: `sphereTangentMap`. This convert orthogonal smooth `M → 𝕊ⁿ` & `M → ℝⁿ⁺¹` to smooth `M → T𝕊ⁿ`. I also proved that if `f : M → 𝕊ⁿ` & `g : M → ℝⁿ⁺¹` are smooth then `sphereTangentMap` of `f` & `g` is smooth too. --- ⚠ **CAUTION** I formalized this in my spare time. I don't have the energy to maintain the PR, but I create this PR so this may helps everyone. The only one thing to do is proof cleanup. TODO: - [x] `contDiff_uncurry_stereoInvFunAux` & `coe_sphere_comp_stereoInvFun` may have to be moved to `Mathlib.Geometry.Manifold.Instances.Sphere`. - [ ] Proof cleanup. Current proof may be redundant and ugly. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-differential-geometry 246/6 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/VectorBundle/Sphere.lean 3 1 ['github-actions'] nobody
499-9430
1 year ago
unknown
0-0
0 seconds
15711 znssong
author:znssong
feat(Combinatorics/SimpleGraph): Some lemmas about walk, cycle and Hamiltonian cycle --- These lemmas are separated from the `meow-sister/BondyChvatal` branch and will be needed for the proof of the Bondy-Chvátal theorem. - [x] depends on: #15536 - [x] depends on: #16294 merge-conflict awaiting-author t-combinatorics new-contributor 407/3 Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 4 22 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'znssong'] nobody
498-80227
1 year ago
620-4988
620 days ago
9-13962
9 days
15720 znssong
author:znssong
feat(SimpleGraph): The Bondy-Chvátal theorem The proof of the Bondy-Chvátal theorem, with Dirac's theorem and Ore's theorem as its corollary. - [x] depends on: #15536 - [ ] depends on: #15711 - [ ] depends on: #15578 merge-conflict blocked-by-other-PR t-combinatorics new-contributor 903/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/BondyChvatal.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Increasing.lean 8 3 ['github-actions', 'grunweg'] nobody
498-80227
1 year ago
656-11181
656 days ago
0-1791
29 minutes
18629 tomaz1502
author:tomaz1502
feat(Computability.Timed): Formalization of runtime complexity of List.merge This PR adds the formalization of the runtime complexity of the merge function, defined in `Data/List/Sort`. Requires: https://github.com/leanprover-community/mathlib4/pull/15450 References: - Previous PR on mathlib3: https://github.com/leanprover-community/mathlib3/pull/14494/ - First discussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/BSc.20Final.20Project/near/220647062 - Second disussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Formalization.20of.20Runtime.20Complexity.20of.20Sorting.20Algorithms/near/284184450 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 186/0 Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean 3 2 ['github-actions', 'trivial1711'] nobody
498-46146
1 year ago
538-45759
538 days ago
33-11262
33 days
14412 jjaassoonn
author:jjaassoonn
feat: show stalk of presheaf of modules is a module over stalk of ring --- - [x] depends on: #14413 - [ ] depends on: #14501 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry blocked-by-other-PR workshop-AIM-AG-2024 966/2 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/OverColimitsRing'.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/OverColimitsRing.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory.lean,Mathlib/Geometry/RingedSpace/Basic.lean,Mathlib/Geometry/RingedSpace/Module.lean,Mathlib/Topology/Sheaves/Stalks.lean 8 5 ['github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot', 'smorel394'] nobody
496-64729
1 year ago
unknown
0-0
0 seconds
8362 urkud
author:urkud
feat(Asymptotics): define `ReflectsGrowth` --- - [x] depends on: #8349 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 268/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/ReflectsGrowth.lean 2 14 ['YaelDillies', 'fpvandoorn', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
496-53400
1 year ago
688-18827
688 days ago
240-47513
240 days
6692 prakol16
author:prakol16
feat: disjoint indexed union of local homeomorphisms Add disjoint indexed union of local equivs and local homeomorphisms --- This is leading up to PRing some things related to covering spaces that I wrote a long time ago in lean 3 but never submitted a PR for. Note that this was converted using mathport. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 126/0 Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/Topology/PartialHomeomorph.lean 2 4 ['alreadydone', 'github-actions', 'winstonyin'] nobody
496-37996
1 year ago
588-48015
588 days ago
118-5497
118 days
18461 hannahfechtner
author:hannahfechtner
feat: left and right common multiples mixins add mixins for left and right common multiples. These carry the data of what factors are used to create the common multiples --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
78/0 Mathlib/Algebra/Group/Defs.lean 1 13 ['github-actions', 'hannahfechtner', 'jcommelin', 'kbuzzard', 'kim-em', 'trivial1711'] nobody
495-7326
1 year ago
495-7326
495 days ago
69-35596
69 days
19291 PieterCuijpers
author:PieterCuijpers
feat(Algebra/Order/Hom): add quantale homomorphism Definition of quantale homomorphisms as functions that are both semigroup homomorphisms and complete lattice homomorphisms. --- - [x] depends on: #19810 - [x] depends on: #19811 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
209/0 Mathlib.lean,Mathlib/Algebra/Order/Hom/Quantale.lean,scripts/noshake.json 3 29 ['PieterCuijpers', 'YaelDillies', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot'] nobody
493-67805
1 year ago
499-35206
499 days ago
29-51482
29 days
19352 hrmacbeth
author:hrmacbeth
chore: change some `nlinarith`s to `linear_combination`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 13/13 Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean,Mathlib/NumberTheory/Modular.lean 8 4 ['github-actions', 'hrmacbeth', 'leanprover-bot'] nobody
492-10616
1 year ago
554-22321
554 days ago
0-8636
2 hours
20372 jvlmdr
author:jvlmdr
feat(MeasureTheory/Function): Add ContinuousLinearMap.bilinearCompLp(L) Introduce ContinuousLinearMap.bilinearCompLp and bilinearCompLpL. Generalize eLpNorm_le_eLpNorm_mul_eLpNorm theorems to include constant C in bound condition. --- Expect this may be useful for defining tempered distributions from functions in `L^p`. The definitions more or less follow `ContinuousLinearMap.compLp...`. Names are loosely analogous to `ContinuousLinearMap.bilinearComp` and `SchwartzMap.bilinLeftCLM`. Note: I preferred the spelling `hpqr : p⁻¹ + q⁻¹ = r⁻¹` with `f` in `L^p` and `g` in `L^q` to `hpqr : 1 / p = 1 / q + 1 / r`. It's easier to obtain from `ENNReal.IsConjExponent` too. A few questions: - [ ] I defined `bilinear{Left,Right}LpL` in addition to `bilinearCompLpL` because `LinearMap.mkContinuous₂` is marked as `noncomputable` and `LinearMap.mkContinuous` is not. Is this worth the extra definitions? (Note: This is not visible in the source due to `noncomputable section`.) - [ ] Should I use `C : ℝ` instead of `C : NNReal` for `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'`? - [ ] Is it going to be painful to have `[Fact (1 ≤ p)] [Fact (1 ≤ q)] [Fact (1 ≤ r)]`? I don't think there's a way to avoid it though. Maybe providing specialized versions for `p.IsConjExponent q` with `L^1`? Naming: - [ ] Is it satisfactory to add a `'` to the `eLpNorm_le_eLpNorm_mul_eLpNorm ` definitions in `CompareExp.lean` where `≤ ‖f x‖ * ‖g x‖` has been replaced with `≤ C * ‖f x‖ * ‖g x‖`? These could replace the existing theorems, although I don't want to break backwards compatibility. There are 5 instances: `eLpNorm_le_eLpNorm_top_mul_eLpNorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm_top'`, `eLpNorm'_le_eLpNorm'_mul_eLpNorm''`, `eLpNorm_le_eLpNorm_mul_eLpNorm_of_nnnorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'` (I'm not sure why the existing theorem `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm` has an internal `'`) - [ ] Is `bilinearLeftLpL` a suitable name? Other options: `bilinearCompLpLeftL`, `bilinearCompLeftLpL`, `bilinLeftLpL` (analogous to `SchwartzMap.bilinLeftCLM`) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-measure-probability new-contributor 203/40 Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace.lean 2 1 ['github-actions'] nobody
486-85153
1 year ago
486-85153
486 days ago
27-43617
27 days
2605 eric-wieser
author:eric-wieser
chore: better error message in linarith On this mwe: ```lean import Mathlib.Tactic.Linarith example (s : Set ℕ) (h : s = s) : 0 ≤ 1 := by linarith ``` this now indicates where the internal error is coming from. Is there a better way of chaining errors than this? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 12/1 Mathlib/Tactic/Linarith/Preprocessing.lean 1 3 ['Vierkantor', 'harahu', 'kim-em', 'mo271'] nobody
484-75746
1 year ago
1132-20885
1132 days ago
51-42225
51 days
11837 trivial1711
author:trivial1711
feat: completion of a uniform multiplicative group Multiplicativize `Topology.Algebra.GroupCompletion`. That is, rewrite it in the multiplicative setting and recover the original results using `@[to_additive]`. - Because `@[to_additive]` doesn't work with `noncomputable section` (https://github.com/leanprover/lean4/pull/2610), some instances with `@[to_additive]` need to be explicitly marked with `noncomputable instance`. - One might be tempted to multiplicativize this definition from `Topology.Algebra.GroupCompletion`: ```lean instance [UniformSpace α] [Add α] : Add (Completion α) := ⟨Completion.map₂ (· + ·)⟩ ``` to this: ```lean @[to_additive] instance [UniformSpace α] [Mul α] : Mul (Completion α) := ⟨Completion.map₂ (· * ·)⟩ ``` However, as Eric Wieser pointed out, doing so would create a bad diamond with the definition ```lean instance [UniformSpace α] [TopologicalRing α] [UniformAddGroup α] [Ring α] : Mul (Completion α) := ⟨curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))⟩ ``` in `Topology.Algebra.UniformRing`. How should this diamond be resolved? Well, the definition of multiplication that uses `curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))` is the "correct" one. For example, it yields the correct result if `α` is `ℚ`, unlike the definition that uses `Completion.map₂ (· * ·)`. (This is because `Completion.map₂` yields junk values if used on a function which is not uniformly continuous. Note, however, that if multiplication on `α` *is* uniformly continuous, then `Completion.map₂ (· * ·)` and `curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))` are propositionally equal.) So, following Eric's suggestion, we remove the definition that uses `Completion.map₂ (· * ·)`, and generalize the other definition to any uniform space with a multiplication operation: ```lean @[to_additive] noncomputable instance [UniformSpace α] [Mul α] : Mul (Completion α) := ⟨curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))⟩ ``` This requires slightly modifying some of the proofs in `Topology.Algebra.GroupCompletion`. For example, suppose that `α` is a uniform group. Since we can no longer use `Completion.continuous_map₂`, it becomes more efficient to prove that the multiplication, inversion, and division operations on `Completion α` are uniformly continuous *before* we prove that `Completion α` is a group. - Previously, `Topology.Algebra.GroupCompletion` had an instance: ```lean instance [UniformSpace α] [Sub α] : Sub (Completion α) := ... ``` Naively multiplicativizing this would yield ```lean @[to_additive] instance [UniformSpace α] [Inv α] : Inv (Completion α) := ... ``` Unfortunately, this would conflict with `Topology.Algebra.UniformField`, which already instantiates `Inv (Completion α)` when `α` is a uniform field. Instead, we use two different `instance` declarations. (If `α` is an additive group, then this instantiates `Neg (Completion α)` twice, and the instances are syntactically equal.) ```lean @[to_additive] noncomputable instance [UniformSpace α] [Group α] : Inv (Completion α) := ... instance [UniformSpace α] [Neg α] : Neg (Completion α) := ... ``` This avoids the bad diamond (because a uniform field can never be a `Group`) while remaining backward compatible. Note that the `@[to_additive]` is necessary here, because it maintains the link between the additive setting and multiplicative setting. We use a similar method to instantiate `Div (Completion α)`. - Some definitions in this file involve a module structure on `α`. We leave these as is and do not attempt to multiplicativize them at all. - The instance of `DistribMulAction` must be multiplicativized to an instance of `MulDistribMulAction` manually. Zulip thread: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Completion.20of.20a.20uniform.20multiplicative.20group --- # (Small) Issue Recall the following trick that this pull request uses to define inversion and negation on uniform spaces. The idea is that we define negation on the completion of any uniform space that has a negation operation, but we define inversion on only the completion of a uniform space that has the structure of a multiplicative group. We do this to avoid creating a bad diamond with the inversion operation on a uniform field. ```lean @[to_additive] noncomputable instance {α : Type*} [UniformSpace α] [Group α] : Inv (Completion α) := ... instance {α : Type*} [UniformSpace α] [Neg α] : Neg (Completion α) := ... ``` Now, suppose that we want to prove `coe_inv_of_group` (resp. `coe_neg`), which states that the coercion `α → Completion α` commutes with inversion (resp. negation). In the current version of this pull request, `coe_inv_of_group` (resp. `coe_neg`) only applies to uniform multiplicative (resp. additive) groups. However, we do not use the fact that multiplication (resp. addition) on `α` is uniformly continuous to prove it. We only use the fact that inversion (resp. negation) is continuous. So, what we really want is to have more general statements that look like this: ```lean theorem coe_inv_of_group {α : Type*} [UniformSpace α] [Group α] [ContinuousInv α] : ... theorem coe_neg {α : Type*} [UniformSpace α] [Neg α] [ContinuousNeg α] : ... ``` Note that `coe_inv_of_group` needs the assumption `[Group α]`, because otherwise inversion is not defined on `Completion α` at all. However, `coe_neg` does not need the analogous assumption `[AdditiveGroup α]`. The question is: If `coe_inv_of_group` and `coe_neg` are written in this more general form, how can we link them using `@[to_additive]`? Here is one option, but it obviously leaves something to be desired. ```lean @[to_additive coe_neg_do_not_use_this_use_the_more_general_version] theorem coe_inv_of_group {α : Type*} [UniformSpace α] [Group α] [ContinuousInv α] : ... theorem coe_neg {α : Type*} [UniformSpace α] [Neg α] [ContinuousNeg α] : ... ``` Co-authored-by: Eric Wieser --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra merge-conflict help-wanted t-topology
label:t-algebra$
342/217 Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformField.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/Algebra/UniformRing.lean 9 14 ['eric-wieser', 'github-actions', 'trivial1711'] nobody
484-53251
1 year ago
513-65530
513 days ago
101-63310
101 days
12670 trivial1711
author:trivial1711
feat: completion of a nonarchimedean multiplicative group We prove that the completion of a nonarchimedean multiplicative group is a nonarchimedean multiplicative group. --- - [x] depends on: #12669 - [ ] depends on: #11837 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-topology blocked-by-other-PR
label:t-algebra$
358/228 Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformField.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/Algebra/UniformRing.lean 9 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
484-53128
1 year ago
511-34584
511 days ago
50-17994
50 days
21384 alreadydone
author:alreadydone
experiment: make submodule quotient reducibly defeq to additive group quotient --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
1/1 Mathlib/LinearAlgebra/Quotient/Defs.lean 1 1 ['github-actions'] nobody
480-64893
1 year ago
unknown
0-0
0 seconds
9449 hmonroe
author:hmonroe
feat: Add Turing machine with the quintet definition (TMQ) and a chainable step function for each TM type --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author 458/1 Mathlib/Computability/TuringMachine.lean,Mathlib/Logic/PartArith.lean 2 8 ['eric-wieser', 'github-actions', 'hmonroe'] nobody
479-17930
1 year ago
823-30982
823 days ago
53-6945
53 days
18719 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `SemilinearMapClass.toAddHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra awaiting-bench
label:t-algebra$
14/7 Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,MathlibTest/TCSynth.lean 3 4 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
477-79147
1 year ago
unknown
0-0
0 seconds
19697 quangvdao
author:quangvdao
feat(BigOperators/Fin): Sum/product over `Fin` intervals This PR adds new theorems about the sum/product of some vector over `Fin` intervals. One example is: ``` @[to_additive] theorem prod_Iic_succ (i : Fin n) : ∏ j ∈ Iic i.succ, v j = (∏ j ∈ Iic i.castSucc, v j) * v i.succ ``` --- - [x] depends on: #20360 This is in preparation for reworking `finSigmaFinEquiv` and `finProdFinEquiv` in #19013. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 87/12 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Data/Fintype/Fin.lean,Mathlib/Order/Interval/Finset/Fin.lean 3 20 ['Ruben-VandeVelde', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody
476-60348
1 year ago
511-9878
511 days ago
6-25961
6 days
19353 hrmacbeth
author:hrmacbeth
chore: golf some term/rw proofs using `linear_combination` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 47/102 Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean 7 5 ['github-actions', 'grunweg', 'hrmacbeth', 'leanprover-bot'] grunweg
assignee:grunweg
475-59469
1 year ago
554-22313
554 days ago
0-7781
2 hours
20248 peabrainiac
author:peabrainiac
feat(Topology/Compactness): first-countable locally path-connected spaces are delta-generated Shows that all first-countable locally path-connected spaces are delta-generated (so in particular all normed spaces and convex subsets thereof are), and that delta-generated spaces are equivalently generated by the unit interval or standard simplices. --- - [ ] depends on: #21616 In principle, this should be close to all that's required to show that all simplicial complexes and CW-complexes are delta-generated; I just haven't done it yet because I'm not sure which file to best do it in. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import new-contributor merge-conflict awaiting-author t-topology 1189/813 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/Compactness/DeltaGeneratedSpace.lean,Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/Homotopy/HSpaces.lean,Mathlib/Topology/Path.lean 9 22 ['YaelDillies', 'github-actions', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'peabrainiac'] nobody
474-42463
1 year ago
481-6980
481 days ago
39-21495
39 days
21610 JLimperg
author:JLimperg
Aesop forward benchmark: forward precomp Not a real PR, just for benchmarking. merge-conflict 30/27 Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 7 3 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
473-78354
1 year ago
unknown
0-0
0 seconds
21611 JLimperg
author:JLimperg
Aesop forward benchmark: master no-precomp Not a real PR, just for benchmarking. merge-conflict 30/27 Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 7 4 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
473-78353
1 year ago
unknown
0-0
0 seconds
21612 JLimperg
author:JLimperg
Aesop forward benchmark: master precomp Not a real PR, just for benchmarking. merge-conflict 30/27 Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 7 3 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
473-78352
1 year ago
unknown
0-0
0 seconds
10678 adri326
author:adri326
feat(Topology/UniformSpace): prove that a uniform space is completely regular Provides the pseudometric definition of a uniform space (for any open set `s` and `x ∈ s`, there exists a finite family of pseudometric spaces on `X` and an `ε > 0`, such that the intersection of the balls of these pseudometric spaces is a subset of `s`), and uses it to prove that `UniformSpace X` implies `CompletelyRegularSpace X`. --- This PR aims to close the gap of pi-base's theorem [T345](https://topology.pi-base.org/theorems/T000345), which says that topological groups are completely regular. We already have a proof that topological groups are uniform, but it turns out that we do not have any connection between `UniformSpace X` and `CompletelyRegularSpace X`. There is an equivalence between `UniformSpace X` and `CompletelyRegularSpace X`: the former implies the latter, and the latter implies *the existence of* the former. This PR provides the first half of this equivalence. The construction of the pseudometric definition is based on N. Bourbaki, Chapter 9, Theorem 4.1 The proof that a uniform space is completely regular is based on [the outline on mathexchange](https://math.stackexchange.com/questions/494718/how-to-prove-that-every-uniform-space-is-completely-regular). I tried to outline the major steps of the different proofs inside of comments; I can happily be more verbose to clear up any confusion. See [the corresponding Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Some.20missing.2C.20accessible.2C.20topology.20results) for more context. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 332/0 Mathlib.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/CompletelyRegular.lean 3 6 ['ADedecker', 'adri326'] ADedecker
assignee:ADedecker
473-53880
1 year ago
814-77559
814 days ago
17-44804
17 days
18785 erdOne
author:erdOne
feat(CategoryTheory): command that generates instances for `MorphismProperty` Co-authored-by: Calle Sönne --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory t-meta 369/0 Mathlib.lean,Mathlib/CategoryTheory/MorphismProperty/Tactic.lean,MathlibTest/AddMorphismPropertyInstances.lean,scripts/noshake.json 4 19 ['alexjbest', 'chrisflav', 'erdOne', 'github-actions', 'grunweg', 'jcommelin', 'joelriou'] nobody
471-70390
1 year ago
493-12260
493 days ago
52-4682
52 days
16311 madvorak
author:madvorak
feat(Computability): regular languages are context-free --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-computability 72/0 Mathlib.lean,Mathlib/Computability/Chomsky.lean,Mathlib/Computability/ContextFreeGrammar.lean 3 7 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'madvorak'] nobody
469-76809
1 year ago
unknown
0-0
0 seconds
19943 AlexLoitzl
author:AlexLoitzl
feat(Computability): Add Chomsky Normal Form Grammar and translation - Define Chomsky normal form grammars - Add language-preserving translation between context-free grammars and Chomsky normal form grammars Co-authored-by: Martin Dvorak martin.dvorak@matfyz.cz --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 3151/0 Mathlib.lean,Mathlib/Computability/ChomskyNormalForm/Basic.lean,Mathlib/Computability/ChomskyNormalForm/EmptyElimination.lean,Mathlib/Computability/ChomskyNormalForm/LengthRestriction.lean,Mathlib/Computability/ChomskyNormalForm/TerminalRestriction.lean,Mathlib/Computability/ChomskyNormalForm/Translation.lean,Mathlib/Computability/ChomskyNormalForm/UnitElimination.lean,Mathlib/Computability/ContextFreeGrammar.lean 8 59 ['AlexLoitzl', 'YaelDillies', 'github-actions', 'kim-em', 'madvorak'] nobody
469-76562
1 year ago
477-1784
477 days ago
37-29014
37 days
21501 sksgurdldi
author:sksgurdldi
feat(List): add sum_zipWith_eq_finset_sum ### **Description:** This PR adds the lemma `List.sum_zipWith_eq_finset_sum` to `Mathlib.Algebra.BigOperators.Group.Finset.Basic`. #### **Statement:** The sum of the `zipWith` operation on two lists equals the sum of applying the operation to corresponding elements of the two lists, indexed over the minimum of their lengths. #### **Formal Statement:** ```lean lemma sum_zipWith_eq_finset_sum [Inhabited α] [Inhabited β] [AddCommMonoid γ] {op : α → β → γ} (l : List α) (m : List β) : (List.zipWith op l m).sum = ∑ x ∈ (Finset.range (Nat.min l.length m.length)), op (l[x]!) (m[x]!) ``` #### **Remarks:** - This lemma provides a useful equivalence between `List.zipWith` and summation over a `Finset.range` indexed by `Nat.min l.length m.length`. - It can be helpful in algebraic manipulations involving list-based summations. #### **Dependencies:** No additional dependencies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
43/0 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 1 ['github-actions', 'j-loreaux'] nobody
464-45333
1 year ago
464-45333
464 days ago
13-33168
13 days
12054 adomani
author:adomani
feat: auto-bugs This PR introduces a linter for suggesting bugs in tactics. See * #12077 * #12083 * #12084 for some bugs exposed by the test suite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 737/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/MetaTesting.lean,scripts/noshake.json,test/MetaTesting.lean 5 20 ['adomani', 'eric-wieser', 'github-actions', 'joneugster', 'kim-em'] joneugster
assignee:joneugster
464-32990
1 year ago
677-5008
677 days ago
45-6051
45 days
5062 adomani
author:adomani
feat(Tactic/Prune + test/Prune): add `prune` tactic, for removing unnecessary hypotheses This tactic removes very conservatively all local declarations that 1. do not appear in the main goal, 2. do not appear in a declaration that appears in the main goal, 3. ... and so on recursively. The main motivation for this tactic is that all available variables in the current `namespace/section` appear in the goal state, not just the ones that are needed for the statement to type-check. Using `prune` mitigates this situation. The tactic also admits an optional natural number argument: `prune n` removes all variables that have not appeared at the `(n+1)`-st stage in the above list. Thus, `prune 0` only leaves the variables needed for the statement to type-check. Also, for sufficiently large `n`, `prune n` is a synonym for `prune`. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/substitute.20for.20.60include.2Fomit.60.3F) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict modifies-tactic-syntax awaiting-author t-meta 181/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Prune.lean,test/Prune.lean 4 5 ['adomani', 'j-loreaux', 'kmill'] nobody
464-297
1 year ago
884-72028
884 days ago
195-57118
195 days
22169 JLimperg
author:JLimperg
Aesop forward benchmark: forward no-precomp naive Not a real PR, just for benchmarking. merge-conflict 31/27 Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 7 6 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
462-52361
1 year ago
unknown
0-0
0 seconds
21433 grunweg
author:grunweg
chore: change more lemmas to be about enorm instead of nnnorm --- - [x] depends on: #21782 - [x] depends on: #21783 (and this PR modifies the file split, and file splits are painful to merge over) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author carleson t-measure-probability 172/71 Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean 9 18 ['RemyDegenne', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-dependent-issues-bot'] nobody
462-51550
1 year ago
469-47615
469 days ago
2-37989
2 days
22171 JLimperg
author:JLimperg
Aesop forward benchmark: forward no-precomp naive rpinf pr-release Not a real PR, just for benchmarking. merge-conflict 31/27 Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 7 5 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
461-60234
1 year ago
unknown
0-0
0 seconds
20454 urkud
author:urkud
chore(TangentCone): review names Also add some `@[simp]` attrs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 201/139 Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/RestrictScalars.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/UniqueDifferential.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,Mathlib/MeasureTheory/Integral/FundThmCalculus.lean 25 3 ['github-actions', 'sgouezel', 'urkud'] nobody
458-11730
1 year ago
507-51493
507 days ago
4-8272
4 days
21608 JLimperg
author:JLimperg
Aesop forward benchmark: forward no-precomp rpinf pr-release Not a real PR, just for benchmarking. merge-conflict 38/29 Mathlib/Data/List/InsertIdx.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 8 13 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
457-72863
1 year ago
unknown
0-0
0 seconds
21609 JLimperg
author:JLimperg
Aesop forward benchmark: forward no-precomp Not a real PR, just for benchmarking. merge-conflict 38/29 Mathlib/Data/List/InsertIdx.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain 8 13 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
457-71227
1 year ago
unknown
0-0
0 seconds
16550 awainverse
author:awainverse
feat(ModelTheory): A typeclass for languages expanding other languages Defines `L.Expands L'` to consist of a privileged injective inclusion, `L'.Inclusion L`, from `L'` to `L`, corresponding to one language being a subset of the other in set-theoretic foundations. Replaces `L.IsOrdered` with `L.Expands Language.order` and `L.OrderLHom` with `Language.order.Inclusion L` Redefines `leSymb` in terms of `Language.order.Inclusion L` Deletions: - `FirstOrder.Language.IsOrdered` - `FirstOrder.Language.OrderLHom` - `instance : IsOrdered Language.order` - `sum.instIsOrdered` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 97/43 Mathlib/ModelTheory/LanguageMap.lean,Mathlib/ModelTheory/Order.lean 2 9 ['YaelDillies', 'awainverse', 'github-actions'] nobody
457-50598
1 year ago
629-81829
629 days ago
0-61590
17 hours
10823 alexkeizer
author:alexkeizer
feat: convert curried type functions into uncurried type functions Adds a conversion `TypeFun.ofCurried : CurriedTypeFun.{u, v} n -> TypeFun.{u, v} n`, where `CurriedTypeFun.{u,v} n` is a (def-eq) abbreviation for `Type u -> ... -> Type u -> Type v`, i.e., the type of *curried* functions taking `n` arguments of type `Type u` to return an element of `Type v`, and `TypeFun.{u, v} n` is an abbreviation for `TypeVec.{u} n -> Type v`. It is generally more idiomatic to define type functions with multiple arguments in the curried style, but in the QPF development we use the uncurried equivalent `TypeVec n -> Type _`. Thus, having a canonical conversion from curried functions to uncurried gives us a canonical way to ask if a curried type function, say `Sum` is a QPF (namely, "is there an instance of `MvQPF (TypeFun.ofCurried Sum)`"). --- This is code ported from https://github.com/alexkeizer/QpfTypes, where this conversion is crucial in presenting a high-level interface, in terms of idiomatic, curried, type functions to users, while being built on QPFs (and thus, uncurried typefunctions) underneath. There is also a conversion in the other direction, from uncurried to curried, which I've decided to PR later, to keep this PR smaller and hopefully easier to review. - [x] depends on: #10818 (all changes to `Fin2.lean` are part of 10818, not the current PR) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 66/0 Mathlib.lean,Mathlib/Data/TypeFun.lean 2 9 ['YaelDillies', 'alexkeizer', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
454-63191
1 year ago
705-47791
705 days ago
15-9013
15 days
13648 urkud
author:urkud
feat(Topology/Module): generalize `ContinuousLinearMap.compSL` Generalize `ContinuousLinearMap.compSL` to topological vector spaces. --- - [ ] depends on: #15217 This PR is not polished yet, but the main statement is there. @ADedecker This answers a question I asked you on Zulip a few months ago. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict awaiting-author t-topology t-analysis
label:t-algebra$
23/18 Mathlib/Analysis/NormedSpace/OperatorNorm/Bilinear.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean 2 5 ['fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
452-86281
1 year ago
690-69208
690 days ago
28-69042
28 days
19372 Command-Master
author:Command-Master
find defeq abuse using diagnostics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #19177 merge-conflict blocked-by-other-PR large-import 169/1 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/FindDefEqAbuse.lean,MathlibTest/FindDefEqAbuse.lean,lakefile.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
452-85781
1 year ago
unknown
0-0
0 seconds
22408 JLimperg
author:JLimperg
Aesop forward bench: precomp only rpinf --- Not a real PR (yet), just for benchmarking. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict dependency-bump 5/3 lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 4 6 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
452-74685
1 year ago
unknown
0-0
0 seconds
20636 eric-wieser
author:eric-wieser
feat: multiplication of intervals in rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra
label:t-algebra$
36/1 Mathlib/Algebra/Order/Interval/Basic.lean 1 16 ['Timeroot', 'YaelDillies', 'eric-wieser', 'github-actions'] nobody
451-58250
1 year ago
487-62027
487 days ago
17-17852
17 days
22340 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Beck-Chevalley Conditions) Building on top of the API of `ExponentiableMorphism` in #22321, we state and prove Beck-Chevalley conditions. This will be crucial for our development of polynomial functors along exponentiable morphisms. Co-authored-by: Emily Riehl --- - [ ] depends on: #22321 - [ ] depends on: #22319 - [ ] depends on: #21525 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory large-import merge-conflict 1144/24 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/BeckChevalley.lean,docs/references.bib 8 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
450-74832
1 year ago
457-56759
457 days ago
0-17
17 seconds
21959 BGuillemet
author:BGuillemet
feat(Topology/ContinuousMap): Stone-Weierstrass theorem for MvPolynomial Add the subalgebra of multivariate polynomials and prove it separates points, on the same model as `ContinuousMap/Polynomial.lean`. Prove the Stone-Weierstrass theorem and some variations for multivariate polynomials. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology new-contributor 285/1 Mathlib.lean,Mathlib/Topology/ContinuousMap/MvPolynomial.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 3 1 ['github-actions'] nobody
450-71174
1 year ago
450-71174
450 days ago
16-76141
16 days
19177 adomani
author:adomani
test: the findDefEqAbuse linter This is a prototype, as per [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Locating.20defeq.20abuse) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict large-import 126/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/FindDefEqAbuse.lean,MathlibTest/FindDefEqAbuse.lean 5 1 ['github-actions'] nobody
448-73187
1 year ago
unknown
0-0
0 seconds
22359 adomani
author:adomani
feat(whitespace): do not allow indented doc-strings In a doc-string, Do not allow the first character after the first line break to be a space. --- There are approximately 2.5k exceptions. I think that they should be unindented, judging from the sample that I looked at, but won't act on it, unless there is a clear plan to fix and merge this modification! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter large-import 222/70 Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Data/Matroid/Circuit.lean,Mathlib/Init.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Encode.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean,MathlibTest/LintDocstring.lean,lakefile.lean 20 1 ['github-actions'] nobody
448-72106
1 year ago
457-11779
457 days ago
0-2590
43 minutes
18470 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `Normed*.to*` instances --- From #7873. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra t-analysis
label:t-algebra$
28/0 Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean 2 9 ['astrainfinita', 'github-actions', 'jcommelin', 'leanprover-bot'] nobody
446-42601
1 year ago
446-42601
446 days ago
129-16341
129 days
17368 Felix-Weilacher
author:Felix-Weilacher
feat(Topology/Baire/BaireMeasurable): add the Kuratowski-Ulam theorem Add the Kuratowski-Ulam theorem, which one can think of as a "Fubini" for Baire category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 187/1 Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/GDelta/Basic.lean 5 6 ['Felix-Weilacher', 'github-actions', 'urkud'] nobody
444-66670
1 year ago
581-78189
581 days ago
22-48725
22 days
8767 eric-wieser
author:eric-wieser
refactor(Cache): tidy lake-manifest parsing in Cache This now respects local copies of Mathlib dependencies (though in practice these invalidate the *online* cache because to point to local copies of Mathlib, the hash for `lakefile.lean` and `lake-manifest.json` is first invalidated). --- - [x] depends on: #11492 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 49/49 Cache/Hashing.lean,Cache/IO.lean,lake-manifest.json 3 8 ['digama0', 'eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
443-42333
1 year ago
625-8283
625 days ago
119-35643
119 days
22434 qawbecrdtey
author:qawbecrdtey
feat(Mathlib/Analysis/Normed/Lp/WithLp): Added more instances for `WithLp` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 51/22 Mathlib/Analysis/Normed/Lp/WithLp.lean 1 11 ['eric-wieser', 'github-actions', 'leanprover-bot', 'qawbecrdtey'] nobody
442-71772
1 year ago
449-41037
449 days ago
1-79072
1 day
15578 znssong
author:znssong
feat(Function): Fixed points of function `f` with `f(x) >= x` We added some lemmas of fixed points of function `f` with `f(x) >= x`, where `f : α → α` is a function on a finite type `α`. This will be needed in proof of Bondy-Chvátal theorem. --- See also branch `meow-sister/BondyChvatal`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis new-contributor 82/0 Mathlib.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Increasing.lean 3 32 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'urkud', 'vihdzp', 'znssong'] nobody
442-67000
1 year ago
625-70229
625 days ago
29-48368
29 days
22660 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: follow naming convention around Group.IsNilpotent --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
133/67 Mathlib/GroupTheory/Frattini.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean 3 1 ['github-actions'] nobody
439-7029
1 year ago
439-7029
439 days ago
10-48025
10 days
13999 adomani
author:adomani
feat: a linter to flag potential confusing conventions Currently, the linter flags all uses of * `a - b` where `a b : Nat`; * `a / b` where `a b : Nat` or `a b : Int`; * `a / 0` more or less whenever the type of `a` has a `0` and a division. This comes up often when starting to use Lean and hopefully the flag can help mitigate initial confusions. When the local context contains the relevant inequality/divisibility hypothesis, the linter is quiet. A recent [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/not.20understanding.20deliberate.20error.20with.20.60ring.60.20over.20.E2.84.95/near/445879310) --- To make sure that the linter does not produce errors, #14007 activates the linter on "all" of mathlib. The expectation is that no error is thrown, just warnings. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 251/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/Papercut.lean,MathlibTest/Papercut.lean 4 24 ['Julian', 'YaelDillies', 'adomani', 'eric-wieser', 'github-actions'] nobody
438-39063
1 year ago
699-16554
699 days ago
7-47589
7 days
19013 quangvdao
author:quangvdao
feat(Algebra/BigOperators/Fin): Add `finSigmaFinEquiv` This PR adds `finSigmaFinEquiv` which is the equivalence `(i : Fin m) × Fin (n i) ≃ Fin (∑ i, n i)`. This is the dependent version of `finProdFinEquiv`. CI should be passing, but there are two things I'd like feedback on: 1. When defining the mappings, I have to consider `m = 0` separately. Is there a more uniform definition? 2. I'm proving this as a step toward defining `Fin.join`, which is the analogue of `List.join`. I can now technically define `Fin.join` as: ``` variable {a : Fin n → ℕ} {α : (i : Fin n) → (j : Fin (a i)) → Sort*} def join (v : (i : Fin n) → (j : Fin (a i)) → α i j) (k : Fin (∑ i, a i)) : α (finSigmaFinEquiv.invFun k).1 (finSigmaFinEquiv.invFun k).2 := v (finSigmaFinEquiv.invFun k).1 (finSigmaFinEquiv.invFun k).2 ``` but this looks horrible. This highly motivates refactoring `invFun` as two new definitions: ``` def func1 {n : ℕ} (a : Fin n → ℕ) (k : Fin (∑ i, a i)) : Fin n := sorry def func2 {n : ℕ} (a : Fin n → ℕ) (k : Fin (∑ i, a i)) : Fin (a (func1 a k)) := sorry ``` I'm not sure what to call these functions. The analogues in the non-dependent case are `divNat` and `modNat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
92/16 Mathlib/Algebra/BigOperators/Fin.lean 1 14 ['YaelDillies', 'eric-wieser', 'github-actions', 'quangvdao'] nobody
436-61096
1 year ago
558-39024
558 days ago
3-28829
3 days
20389 eric-wieser
author:eric-wieser
feat: generalize results to `WithLp 0` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 116/53 Mathlib/Analysis/Normed/Lp/PiLp.lean 1 1 ['github-actions'] nobody
435-49644
1 year ago
unknown
0-0
0 seconds
19227 adomani
author:adomani
fix(CI): unwrap `lake test` in problem matcher ... and also add a `#guard_msgs` in `AssertImported` test, so that `lake test` properly fails. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/CI.3A.20noisy.20.22test.20mathlib.22/near/483126955) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 9/20 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,MathlibTest/AssertImported.lean 5 2 ['bryangingechen', 'github-actions'] nobody
433-80132
1 year ago
534-34403
534 days ago
22-71271
22 days
15774 kkytola
author:kkytola
feat: Topology on `ENat` This PR may contain some results that are not in the PR that adds a toppology on `ENat`. --- The immediate motivation is to be able to make the right continuity statement of the extended floor function on `ENNReal`, when this floor function is made `ENat`valued as suggested in the PR review of #15269. The API here is modelled on the early parts of [the corresponding ENNReal file](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Instances/ENNReal.html#top), although much of this case is more trivial. - [x] depends on: #15380 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology t-order 161/9 Mathlib/Data/ENat/Basic.lean,Mathlib/Topology/Instances/ENat.lean 2 4 ['YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
429-37664
1 year ago
654-67207
654 days ago
0-6819
1 hour
16009 Command-Master
author:Command-Master
acyclic graph --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-combinatorics 232/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 1 ['github-actions'] nobody
427-72213
1 year ago
unknown
0-0
0 seconds
20222 eric-wieser
author:eric-wieser
feat: generalize lemmas about derivatives Rather than creating a huge diff by shuffling things around, this generalizes everything in-place and swaps between `section`s for topological and normed vector spaces. The rationale for this approach is that: * we may further generalize the results of this file, and this avoids us jumbling up the order multiple times unnecessarily. * this greatly reduces the chance of merge conflicts --- - [ ] depends on: #21065 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-analysis 554/50 Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,MathlibTest/Recall.lean 3 8 ['adomani', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
425-7932
1 year ago
488-21174
488 days ago
7-27718
7 days
21018 markimunro
author:markimunro
feat(Data/Matrix): add file with key definitions and theorems about elementary row operations Prove that each elementary row operation is equivalent to a multiplication by an elementary matrix, has another row operation which inverts it, and that each elementary matrix has a left inverse. This is a very large PR and I understand it will take time. This is my first one and will likely have issues but I will be ready to answer questions/fix them as soon as possible. Co-authored-by: Christopher Lynch --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data enhancement new-contributor merge-conflict awaiting-author 1230/0 Mathlib.lean,Mathlib/Data/Matrix/ElementaryRowOperations.lean,Mathlib/Data/Matrix/GaussianElimination.lean,Mathlib/Data/Matrix/GaussianEliminationOld,Mathlib/Data/Matrix/oldnames,et --hard 18533caba32,lean-toolchain 7 17 ['chrisflav', 'eric-wieser', 'github-actions', 'j-loreaux', 'markimunro'] nobody
424-15999
1 year ago
449-44955
449 days ago
23-22681
23 days
23514 eric-wieser
author:eric-wieser
refactor: smooth over Lattice/LinearOrder inheritance This fixes the forgetful inheritance in `CompleteLinearOrder` and `ConditionallyCompleteLinearOrder`, which previously did not carry `compare` fields. (edit: moved to #23515) The following is the inheritance diagram before, where the dotted lines are manual instances. Note that every lattice typeclass that extends `LinearOrder` has to implement another dotted line edge, and remember to copy all the necessary data fields. ```mermaid graph TD LinearOrder --> Min,Max; LinearOrder --> PartialOrder; Lattice --> PartialOrder; CompleteLinearOrder --> Lattice; ConditionallyCompleteLinearOrder --> Lattice; LinearOrder-.-> Lattice; CompleteLinearOrder -.-> LinearOrder; ConditionallyCompleteLinearOrder -.-> LinearOrder; ``` This change introduces two new auxiliary typeclasses, to encapsulate these troublesome edges. `LinearOrderedLattice` can be thought of as `LinearOrder`, but with `sup`/`inf` instead of `min`/`max`. This is crucial, because it ensures the duplicate fields are merged in `extends CompleteLattice X, LinearOrderedLattice X`, which would not be the case for `extends CompleteLattice X, LinearOrder X`. The result is: ```mermaid graph TD LinearOrder --> Min,Max; LinearOrder --> LinearOrderBase; LinearOrderBase --> PartialOrder; Lattice --> PartialOrder; LinearOrderedLattice -.-> LinearOrder; LinearOrderedLattice --> LinearOrderBase; LinearOrderedLattice --> Lattice; CompleteLinearOrder --> LinearOrderedLattice; ConditionallyCompleteLinearOrder --> LinearOrderedLattice; ``` --- - [ ] depends on: #23515 - [ ] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 85/66 Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Order/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Lattice.lean 7 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
423-41829
1 year ago
424-46768
424 days ago
0-172
2 minutes
20746 JLimperg
author:JLimperg
Aesop forward branch test --- This is not a real PR; I just want to benchmark this Aesop branch. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 14/6 .github/workflows/build.yml,Mathlib/Data/Nat/Prime/Defs.lean,lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 6 11 ['JLimperg', 'Kha', 'github-actions', 'leanprover-bot'] nobody
422-85635
1 year ago
unknown
0-0
0 seconds
22810 pechersky
author:pechersky
feat(Counterexamples): metric space not induced by norm Because the distance is not homogeneous --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #22845 merge-conflict WIP t-topology t-analysis 202/1 Counterexamples.lean,Counterexamples/NotBoundedSMulMetricSpace.lean,Mathlib.lean,Mathlib/Analysis/Normed/PiNat.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/MetricSpace/Polish.lean 6 21 ['eric-wieser', 'github-actions', 'loefflerd', 'mathlib4-dependent-issues-bot', 'pechersky'] nobody
422-78291
1 year ago
438-25382
438 days ago
0-82394
22 hours
13124 FR-vdash-bot
author:FR-vdash-bot
chore: remove `CovariantClass` and `ContravariantClass` Lean cannot handle `CovariantClass` and `ContravariantClass` correctly - TC slowness - [Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/TC.20slowness) - https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1691792488 - It may also have made #6326 fail. - Needs a weird hack to find instance: #9252 --- - [x] depends on: #13154 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 602/486 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Group/Action.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/Subring/Pointwise.lean,Mathlib/Algebra/Ring/Subsemiring/Pointwise.lean,Mathlib/Analysis/SumOverResidueClass.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean 37 6 ['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
422-19868
1 year ago
unknown
0-0
0 seconds
15212 victorliu5296
author:victorliu5296
feat: Add fundamental theorem of calculus-2 for Banach spaces add the Mean Value Theorem for Banach spaces to the library and include reference for the theorem statement This theorem states that if `f : X → Y` is differentiable along the line segment from `a` to `b`, then the change in `f` equals the integral of its derivative along this path. This extends the mean value theorem to Banach spaces. This can be used for the eventual proof of the Newton-Kantorovich theorem with 1 constant contained inside the added reference. Here is the discussion on Zulipchat: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Contributing.20FTC-2.20for.20Banach.20spaces t-measure-probability new-contributor merge-conflict awaiting-author t-analysis 60/1 Mathlib/MeasureTheory/Integral/FundThmCalculus.lean 1 3 ['github-actions', 'hrmacbeth', 'victorliu5296'] nobody
419-10988
1 year ago
612-74759
612 days ago
51-85104
51 days
22888 plp127
author:plp127
perf: replace `Lean.Expr.swapBVars` with a better? implementation Replaces `Lean.Expr.swapBVars` with a version that traverses the expression. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 14/12 Mathlib/Tactic/FunProp/ToBatteries.lean 1 23 ['eric-wieser', 'github-actions', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127'] eric-wieser and joneugster
assignee:eric-wieser assignee:joneugster
418-4033
1 year ago
438-53873
438 days ago
4-80306
4 days
15943 urkud
author:urkud
feat: add `ProdQuotientMapSpace` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 731/11 Mathlib.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Maps/ProdQuotient.lean 4 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
417-29360
1 year ago
unknown
0-0
0 seconds
22579 kvanvels
author:kvanvels
doc(Topology/Defs/Induced): fix comments on three functions related to RestrictGenTopology --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology documentation awaiting-author 10/9 Mathlib/Topology/Defs/Induced.lean,Mathlib/Topology/RestrictGen.lean 2 4 ['github-actions', 'kvanvels', 'leanprover-community-bot-assistant', 'urkud'] nobody
416-17891
1 year ago
439-22268
439 days ago
12-18679
12 days
19771 robertylewis
author:robertylewis
perf: qqify two functions in linarith --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 17/24 Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Linarith/Verification.lean 2 5 ['github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'robertylewis'] nobody
415-83797
1 year ago
unknown
0-0
0 seconds
22308 plp127
author:plp127
feat (Analysis/Convex): Generalize `Convex` lemmas to `StarConvex` This PR generalizes many lemmas assuming `Convex 𝕜 s` to assume `StarConvex 𝕜 0 s`. --- - [x] depends on: #22421 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis new-contributor 30/18 Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/GaugeRescale.lean,Mathlib/Analysis/Convex/Star.lean,Mathlib/Analysis/LocallyConvex/AbsConvexOpen.lean 4 5 ['Paul-Lez', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
415-83308
1 year ago
unknown
0-0
0 seconds
21488 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): premonoidal categories Add support for premonoidal categories --- Still want to add support for: - Premonoidal braided/symmetric categories - The monoidal coherence theorem, which I've already ported in my `discretion` library - The `coherence` tactic, which should work fine for premonoidal categories too but wanted to get this in front of reviewers ASAP to make sure my general approach was alright [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory new-contributor 900/361 Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,MathlibTest/StringDiagram.lean 21 9 ['YaelDillies', 'github-actions', 'grunweg', 'imbrem', 'kim-em', 'leanprover-community-bot-assistant'] nobody
415-79576
1 year ago
415-79577
415 days ago
58-6026
58 days
21525 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Prelim) This PR defines the basic preliminaries for defining locally cartesian closed categories (LCCCs). In particular, using the calculus of mates we define certain natural isomorphisms involving `Over.star` and `Over.pullback` which will be crucial in defining the right adjoint to the pullback functor in the development of LCCCs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory large-import 338/24 Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Galois/Examples.lean 3 13 ['b-mehta', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'sinhp'] nobody
415-79574
1 year ago
415-79576
415 days ago
36-69400
36 days
22319 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Sections Right Adjoint) we define the `Over.sections` functor in the file `CategoryTheory.Comma.Over.Sections` and prove that it is a right adjoint to the `Over.star`, thereby solving an existing TODO in `Over.pullback` file. The `sections` functor is used to define the right adjoint to the pullback functor `Over.pullback` in the development of LCCCs. Moreover, the rest of added lemmas and theorems to `CategoryTheory.Comma.Over.Pullback` are crucial for the development of LCCCs in the next PR. --- - [ ] depends on: #21525 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 547/24 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean 5 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
415-79047
1 year ago
457-83082
457 days ago
0-2084
34 minutes
22321 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Definition) This PR defines locally cartesian closed categories in terms of existence of the pushforward functors (right adjoint to the pullback functor) for all morphisms. We develop basic API and prove the following: 1. Existence of the pushforward functors is equivalent to cartesian closed slices. 2. Any locally cartesian closed category with a terminal object is cartesian closed. 3. The slices of a locally cartesian closed category are locally cartesian closed. Some of the content is based on the project of formalization of polynomial functors at the Trimester "Prospect of Formal Mathematics" at the Hausdorff Institute (HIM) in Bonn. https://github.com/sinhp/Poly I found this implementation of locally cartesian closed categories amenable to polynomial functors formalization. Co-authored-by: Emily Riehl --- - [ ] depends on: #21525 - [ ] depends on: #22319 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 812/24 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean 6 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
415-79047
1 year ago
457-81823
457 days ago
0-336
5 minutes
13653 adomani
author:adomani
feat: the unusedSetOptionIn linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter large-import 199/0 Mathlib.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/UnnecessarySetOptionIn.lean,MathlibTest/UnnecessarySetOptionIn.lean 6 15 ['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
415-24012
1 year ago
unknown
0-0
0 seconds
19425 hrmacbeth
author:hrmacbeth
perf: gcongr forward-reasoning adjustment This PR changes the "forward-reasoning" component of `gcongr`, rendering it more efficient, particularly in problems with a large number of variables/hypotheses in the context. Previously `gcongr` attempted to match *every* `LocalDecl` against *every* node in the parse tree using *each* of the five implemented `@[gcongr_forward]` mini-tactics: matching directly, matching after applying `symm`, matching after applying `le_of_lt`, etc etc. The new algorithm filters out the non-Prop `LocalDecl`s, and also adjusts the `@[gcongr_forward]` extensions so that, rather than re-apply the relevant lemmas (`symm`, `le_of_lt`, etc) at every node in the parse tree, the lemmas are applied in advance to the `LocalDecl`s and the result (if successful) stored. The performance effect on mathlib as a whole is miniscule, but it speeds up the profiler's count of "tactic execution of Mathlib.Tactic.GCongr" in the newly-added test from 257 ms to 47 ms, and has a similar effect on real-life examples in an analysis project of mine. Co-authored-by: Mario Carneiro --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) (Note that Mario provided the ideas but not the code, so please review with appropriate diligence!) merge-conflict awaiting-author 130/59 Mathlib/Order/Lattice.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/ForwardAttr.lean,MathlibTest/GCongr/inequalities.lean 4 17 ['Vierkantor', 'github-actions', 'hrmacbeth', 'leanprover-bot', 'leanprover-community-bot-assistant'] Vierkantor
assignee:Vierkantor
415-5708
1 year ago
547-80525
547 days ago
1-41769
1 day
20873 vbeffara
author:vbeffara
feat(Topology/Covering): path lifting and homotopy lifting This proves the existence and uniqueness of path and homotopy lifts through covering maps. --- I tried to separate as much of the proof as possible into separate PRs (which are already in Mathlib now), but the proof here relies on a monolithic construction of an explicit lift along a well-chosen subdivision, in `partial_lift`, with associated definitions. Only one standalone lean file added. An older WIP PR #10084 by Junyan Xu @alreadydone proves similar results using a very similar construction for path lifting, with a different argument to obtain continuity for homotopy lifting. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology new-contributor 281/1 Mathlib.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/Covering/Lift.lean 3 9 ['alreadydone', 'github-actions', 'grunweg', 'vbeffara'] nobody
414-82304
1 year ago
489-75064
489 days ago
5-5648
5 days
22817 peabrainiac
author:peabrainiac
feat(CategoryTheory/Sites): local sites Defines local sites and shows that sheaves of types on them form a local topos, in that the global sections functor `Sheaf.Γ` has a right adjoint `Sheaf.codisc` that is fully faithful. --- - [x] depends on: #22816 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 263/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Shapes/Products.lean,Mathlib/CategoryTheory/Limits/Types.lean,Mathlib/CategoryTheory/Sites/GlobalSections.lean,Mathlib/CategoryTheory/Sites/LocalSite.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean 6 4 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
414-15913
1 year ago
445-17412
445 days ago
0-568
9 minutes
24040 astrainfinita
author:astrainfinita
refactor: unbundle algebra from `(NonUnital){Seminormed, Normed}(Comm)Ring` --- - [ ] depends on: #23966 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR merge-conflict slow-typeclass-synthesis t-analysis
label:t-algebra$
3775/3674 Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/DiffContOnCl.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean 630 5 ['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
410-73007
1 year ago
unknown
0-0
0 seconds
16314 FR-vdash-bot
author:FR-vdash-bot
chore(Data/Quot): deprecate `ind*'` APIs --- - [x] depends on: #16264 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 247/287 Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Computability/Reduce.lean,Mathlib/Computability/Tape.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Hom.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/PresentedGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RepresentationTheory/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean,Mathlib/Topology/Separation/Basic.lean 65 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
410-18140
1 year ago
410-18142
410 days ago
55-52030
55 days
23509 eric-wieser
author:eric-wieser
refactor: Make ENNReal an abbrev The `Coe` instance becomes `CoeTC` to match what we do for `WithTop` (such that the priority kicks in) Probably we could have both copies and things would be ok. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This includes part of #23750 merge-conflict t-data 22/66 Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/BigOperators.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/Sub.lean,Mathlib/MeasureTheory/Measure/TightNormed.lean,Mathlib/Topology/MetricSpace/PartitionOfUnity.lean 7 22 ['eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mattrobball', 'urkud'] nobody
410-1793
1 year ago
411-72921
411 days ago
5-23475
5 days
24060 eric-wieser
author:eric-wieser
chore(MeasureTheory): use `0` instead of `const _ 0` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-measure-probability 30/20 Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Function/SimpleFuncDense.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/Probability/StrongLaw.lean 7 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
409-77888
1 year ago
unknown
0-0
0 seconds
24058 FR-vdash-bot
author:FR-vdash-bot
refactor: unbundle algebra from `*NormedField` --- - [ ] depends on: #24040 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR merge-conflict slow-typeclass-synthesis t-analysis
label:t-algebra$
4602/4346 Archive/Hairer.lean,Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Pi.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Calculus/Deriv/Pow.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean 665 7 ['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
409-67798
1 year ago
unknown
0-0
0 seconds
11455 adomani
author:adomani
fix: unsqueeze simp, re Yaël's comments on #11259 This PR reverts/simplifies some of the "squeeze `simp`" changes in #11259. See #11259 for context. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 3/6 Mathlib/Algebra/Group/Conj.lean,Mathlib/Data/Seq/WSeq.lean 2 8 ['Ruben-VandeVelde', 'YaelDillies', 'grunweg', 'loefflerd', 'robertylewis', 'urkud'] nobody
409-49793
1 year ago
707-79700
707 days ago
93-60645
93 days
7325 eric-wieser
author:eric-wieser
chore: use preimageIso instead of defeq abuse for InducedCategory This makes a few things slightly more verbose, but the type casts are now explicit in those places. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory awaiting-CI 22/21 Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean 3 1 ['grunweg'] nobody
409-49672
1 year ago
unknown
0-0
0 seconds
7874 astrainfinita
author:astrainfinita
chore: make `IsScalarTower A A B` and `IsScalarTower A B B` higher priority --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra awaiting-CI
label:t-algebra$
10/9 Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/GroupTheory/GroupAction/Ring.lean 4 3 ['astrainfinita', 'grunweg', 'leanprover-bot'] nobody
409-49647
1 year ago
unknown
0-0
0 seconds
13038 adomani
author:adomani
feat: Mathlib weekly reports This PR introduces a weekly cron job that computes a "global" report on the evolution of Mathlib in the previous week. It consists of * a CI workflow with a cron job that runs at minight on Sunday (`.github/workflows/mathlib_stats.yaml`); * a Lean file extracting a categorized list of "all" the declarations in Mathlib (`scripts/count_decls.lean`); * a bash file computing Git-diff-related information and collating the data from the Lean file (`scripts/mathlib_stats.sh`); * a convenience CI workflow that is triggered on adding the `test-ci` label and results in posting on the PR and on Zulip the report (`.github/workflows/mathlib_stats_label.yaml`). The second CI workflow is intended to be removed just before/right after the PR is ready to merge. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113488-general) [Thread for the reports](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Mathlib.20weekly.20change.20report) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author CI t-meta 338/0 .github/workflows/mathlib_stats.yaml,.github/workflows/mathlib_stats_label.yaml,scripts/count_decls.lean,scripts/mathlib_stats.sh 4 10 ['adomani', 'github-actions', 'grunweg', 'kim-em', 'kmill'] nobody
409-49605
1 year ago
683-67485
683 days ago
57-4374
57 days
5952 eric-wieser
author:eric-wieser
feat: add Qq wrappers for ToExpr --- - [ ] depends on: #6699 (to appease the linter) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-CI t-meta 247/150 Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Tactic/DeriveToExpr.lean,Mathlib/Tactic/FBinop.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Util/Qq.lean,test/DeriveToExpr.lean,test/vec_notation.lean 9 7 ['eric-wieser', 'gebner', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
409-49473
1 year ago
1016-6336
1016 days ago
29-67421
29 days
15483 FR-vdash-bot
author:FR-vdash-bot
chore(GroupTheory/Coset): reduce defeq abuse --- - [x] depends on: #15482 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
114/60 Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/QuotientGroup.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/Topology/Algebra/Group/Compact.lean 6 14 ['astrainfinita', 'eric-wieser', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball', 'mergify', 'urkud'] nobody
409-49433
1 year ago
658-1363
658 days ago
4-79214
4 days
16594 FR-vdash-bot
author:FR-vdash-bot
perf: reorder `extends` and remove some instances in algebra hierarchy --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
240/92 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/Util/NoInstances.lean,scripts/noshake.json 50 8 ['astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
409-49209
1 year ago
614-2356
614 days ago
14-58900
14 days
24106 FR-vdash-bot
author:FR-vdash-bot
refactor: unbundle algebra from `*CStarAlgebra` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #24058 t-algebra blocked-by-other-PR merge-conflict slow-typeclass-synthesis t-analysis
label:t-algebra$
4702/4459 Archive/Hairer.lean,Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Hom.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/PositiveLinearMap.lean,Mathlib/Analysis/CStarAlgebra/SpecialFunctions/PosPart.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Pi.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Calculus/Deriv/Pow.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean 670 5 ['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
409-20939
1 year ago
unknown
0-0
0 seconds
13780 adomani
author:adomani
deprecate injective --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 31/9 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib/Init/Function.lean,lake-manifest.json,lakefile.lean 7 2 ['github-actions', 'grunweg'] nobody
409-16723
1 year ago
unknown
0-0
0 seconds
19467 quangvdao
author:quangvdao
feat(MvPolynomial/Equiv): Add `MvPolynomial.finSuccEquivNth` This PR adds `MvPolynomial.finSuccEquivNth`, which is the algebra isomorphism between `MvPolynomial (Fin (n + 1)) R` and `Polynomial (MvPolynomial (Fin n) R)` by identifying the `p`-th variable as the indeterminate. This generalizes `MvPolynomial.finSuccEquiv` which is only for the `0`-th variable. The supporting theorems for the `Nth` version are identical to the current version, with the `Nth` version deduced from the former. These changes require new definitions in `Finsupp/Fin`, which is a separate PR. Co-authored-by: Yaël Dillies --- - [ ] depends on: #19315 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
541/163 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Finsupp/Fin.lean,scripts/nolints_prime_decls.txt 7 9 ['acmepjz', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody
407-53549
1 year ago
550-73515
550 days ago
0-790
13 minutes
20313 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Data/Complex/Exponential): prove some useful results about the complex exponential. This PR proves two basic results about the complex exponential: * `abs_exp_mul_I (x : ℂ) : abs (Complex.exp (I * x)) = Real.exp (-x.im)` * `one_sub_rexp_re_le_abs_one_sub_cexp (x : ℂ) : 1 - Real.exp x.re ≤ Complex.abs (1 - Complex.exp x)` Both results were proved as part of the sphere packing project. There's a chance they're too specific for mathlib, but I thought they were worth PRing anyway. Would it also be a good idea to tag `abs_exp_mul_I` with `simp`? Feedback/suggestions welcome. Note: `one_sub_rexp_re_le_abs_one_sub_cexp` was proved by Bhavik Mehta @b-mehta --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis new-contributor 167/141 Mathlib.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/ERealExp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev.lean,Mathlib/Data/Complex/Exponential/Defs.lean,Mathlib/Data/Complex/Exponential/Lemmas.lean,Mathlib/Data/Complex/ExponentialBounds.lean,Mathlib/Tactic/FunProp.lean,MathlibTest/Recall.lean,MathlibTest/positivity.lean 10 12 ['b-mehta', 'github-actions', 'kim-em', 'thefundamentaltheor3m', 'trivial1711'] nobody
407-53502
1 year ago
490-64749
490 days ago
8-42257
8 days
22698 Kiolt
author:Kiolt
feat: notation for whisker(Left/Right)Iso From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory toric 175/113 Mathlib/Algebra/Homology/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Bicategory/Coherence.lean,Mathlib/CategoryTheory/Bicategory/Extension.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Strong.lean,Mathlib/CategoryTheory/Bicategory/SingleObj.lean,Mathlib/CategoryTheory/Closed/Functor.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/Enriched/FunctorCategory.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Reflection.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Monoidal/Preadditive.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/BicategoricalComp.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean 27 21 ['Kiolt', 'YaelDillies', 'b-mehta', 'github-actions', 'leanprover-bot'] nobody
407-53331
1 year ago
443-72688
443 days ago
3-29299
3 days
20730 kuotsanhsu
author:kuotsanhsu
feat(LinearAlgebra/Matrix/SchurTriangulation): prove Schur decomposition/triangulation `Matrix.schur_triangulation` shows that a matrix over an algebraically closed field is unitarily similar to an upper triangular matrix --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
317/2 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean,Mathlib/Logic/Equiv/Basic.lean 4 14 ['eric-wieser', 'github-actions', 'kim-em', 'kuotsanhsu'] nobody
407-49634
1 year ago
487-40607
487 days ago
13-56244
13 days
19117 eric-wieser
author:eric-wieser
feat: derivatives of matrix operations These are finally possible to state after #19108. However, a lot of bundled `ContinuousLinearMap`s are missing. --- - [x] depends on: #19108 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 336/22 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Matrix.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Matrix.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
405-72012
1 year ago
unknown
0-0
0 seconds
12605 FR-vdash-bot
author:FR-vdash-bot
chore: attribute [induction_eliminator] Add attribute [induction_eliminator] to `AdjoinRoot.induction_on` `ENat.recTopCoe` `ENNReal.recTopCoe` `Finset.induction` `Magma.AssocQuotient.induction_on` `ManyOneDegree.ind_on` `Module.Ray.ind` (and add `Orientation.ind` for `Orientation`, an abbrev of it. I wish that we do not need to add it in the future.) `Multiset.induction` `MvPolynomial.induction_on` `OnePoint.rec` `Opposite.rec'` `Ordinal.limitRecOn` `PartENat.casesOn` `Polynomial.induction_on'` `QuotientAddGroup.induction_on'` (and add `AddCircle.induction_on` for `AddCircle`, an abbrev of it. I wish that we do not need to add it in the future.) `QuotientGroup.induction_on'` (doesn't actually work) `Real.Angle.induction_on` `SimplexCategory.rec` `Trunc.induction_on` --- - [x] depends on: #13476 - [x] depends on: #13264 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 354/342 Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/BigOperators/Group/Multiset.lean,Mathlib/Algebra/BigOperators/Ring.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Eval.lean,Mathlib/Algebra/Polynomial/Induction.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/AlgebraicTopology/DoldKan/NCompGamma.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SplitSimplicialObject.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Asymptotics/Asymptotics.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/NormedSpace/Exponential.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/PolynomialExp.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SetFamily/Compression/Down.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SetFamily/HarrisKleitman.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/DFinsupp/Basic.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finset/Lattice.lean,Mathlib/Data/Finset/NAry.lean,Mathlib/Data/Fintype/Sum.lean,Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Fold.lean,Mathlib/Data/Multiset/Lattice.lean,Mathlib/Data/Multiset/Pi.lean,Mathlib/Data/Multiset/Powerset.lean,Mathlib/Data/Multiset/Sections.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Set/Pointwise/BigOperators.lean,Mathlib/FieldTheory/IntermediateField.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/RingedSpace/Basic.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/NoncommPiCoprod.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/FiniteDimensional.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Logic/Hydra.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue.lean,Mathlib/MeasureTheory/Integral/Marginal.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Measure/AddContent.lean 140 14 ['YaelDillies', 'astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
405-66627
1 year ago
738-11798
738 days ago
4-46495
4 days
23859 urkud
author:urkud
feat(Topology/../Order/Field): generalize to `Semifield` .. from a linear ordered field to a linear ordered semifield--- - [ ] depends on: #23857 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 245/219 Mathlib/Algebra/Order/Group/Pointwise/Interval.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Topology/Algebra/Order/Field.lean,Mathlib/Topology/Order/Basic.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
403-6050
1 year ago
416-16691
416 days ago
0-265
4 minutes
24219 Paul-Lez
author:Paul-Lez
feat: linear independence of the tensor product of two linearly independent families This is still WIP (the proofs are a little too long, and some lemmas need to be moved to other files!) From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra toric
label:t-algebra$
193/0 Mathlib/LinearAlgebra/LinearIndependent/Tprod.lean 1 1 ['github-actions'] nobody
402-71882
1 year ago
405-383
405 days ago
0-2221
37 minutes
23810 b-reinke
author:b-reinke
chore(Order/Interval): generalize succ/pred lemmas to partial orders Many lemmas in `Mathlib/Order/Interval/Set/SuccPred.lean`and `Mathlib/Order/Interval/Finset/SuccPred.lean` also work for partial orders. They are generalized in this PR by introducing different sections for `PartialOrder` and `LinearOrder` assumptions in the respective files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order 231/89 Mathlib/Order/Interval/Finset/SuccPred.lean,Mathlib/Order/Interval/Set/SuccPred.lean 2 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
400-69225
1 year ago
400-69227
400 days ago
16-29623
16 days
24285 madvorak
author:madvorak
chore(Algebra/*-{Category,Homology}): remove unnecessary universe variables Discussions: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Call.20for.20help.3A.20technical.2F.20organisational.20debt/with/513620128 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Algebra.20and.20.60Type*.60/with/513558902 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Task.2026.3A.20Replace.20Type.20u.20by.20Type*.20wherever.20possible/with/513592993 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
542/916 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Central/Basic.lean,Mathlib/Algebra/Central/Defs.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/Algebra/CharP/Pi.lean,Mathlib/Algebra/CharP/Quotient.lean,Mathlib/Algebra/CharP/Subring.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/FreeNonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Finite.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Invertible/Defs.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/TypeTags/Finite.lean,Mathlib/Algebra/Group/TypeTags/Hom.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Pi.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/NeZero.lean,Mathlib/Algebra/Lie/Abelian.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/CartanMatrix.lean,Mathlib/Algebra/Lie/CartanSubalgebra.lean,Mathlib/Algebra/Lie/Character.lean,Mathlib/Algebra/Lie/Classical.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/Ideal.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/Matrix.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TensorProduct.lean,Mathlib/Algebra/Lie/UniversalEnveloping.lean,Mathlib/Algebra/Module/Basic.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/Equiv/Opposite.lean,Mathlib/Algebra/Module/Lattice.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/MinimalAxioms.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/Opposite.lean,Mathlib/Algebra/Module/Pi.lean,Mathlib/Algebra/Module/Presentation/Differentials.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean 182 22 ['erdOne', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'madvorak', 'mattrobball'] nobody
400-57922
1 year ago
400-57923
400 days ago
2-11655
2 days
14931 eric-wieser
author:eric-wieser
feat: volume of a simplex --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-euclidean-geometry 207/0 Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/Circumcenter.lean,Mathlib/Geometry/Euclidean/Volume.lean 3 3 ['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
398-70379
1 year ago
unknown
0-0
0 seconds
22583 imathwy
author:imathwy
feat: affinespace homeomorphism There exists a homeomorphism (a continuous bijection with a continuous inverse) between an affine subspace s of a vector space V over a field 𝕜 and its direction s.direction , given a chosen point z ∈ s . --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
64/2 Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/LinearAlgebra/AffineSpace/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/ConstMulAction.lean,Mathlib/Topology/Algebra/MulAction.lean 4 6 ['JovanGerb', 'eric-wieser', 'github-actions', 'grunweg'] nobody
398-68097
1 year ago
450-80118
450 days ago
0-18122
5 hours
24243 Timeroot
author:Timeroot
feat(Analysis/Calculus/FDeriv): Fderiv on torsors Experiment to see how this goes for now, see [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Upgrade.20.60fderiv.60.20to.20.60AddTorsor.60) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 539/447 Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Analysis/Complex/RealDeriv.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/NumberTheory/EulerProduct/ExpLog.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean,MathlibTest/Recall.lean 37 3 ['github-actions', 'leanprover-community-bot-assistant'] nobody
397-51235
1 year ago
unknown
0-0
0 seconds
23593 erdOne
author:erdOne
feat(AlgebraicGeometry): the tilde construction is functorial --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 95/38 Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean 2 4 ['chrisflav', 'github-actions', 'leanprover-community-bot-assistant'] nobody
396-85293
1 year ago
422-1907
422 days ago
0-71091
19 hours
21065 eric-wieser
author:eric-wieser
feat: generalize `tangentConeAt.lim_zero` to TVS ... and then adjust the `variable`s down the rest of the file to make use of the generality. There are two key lemmas that this does not generalize, which would probably unlock the rest of the file: * `subset_tangentCone_prod_left` (and `_right`) * `zero_mem_tangentCone` --- - [ ] depends on: #20859 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 55/28 Mathlib/Analysis/Calculus/TangentCone.lean 1 16 ['ADedecker', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
396-77697
1 year ago
464-27372
464 days ago
23-20072
23 days
22721 grunweg
author:grunweg
chore(MeasureTheory/Function/LpSeminorm/Basic): generalise more results to enorm classes Done for the Carleson project. --- - depends on #22708 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson t-measure-probability 134/10 Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
395-70365
1 year ago
447-56731
447 days ago
0-6
6 seconds
24549 grunweg
author:grunweg
feat: define embedded submanifolds, attempt 1 Not meant to be merged (I think a different design is better); opening this so I can find this more easily. --- - [ ] depends on: #23040 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 1445/2 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/EmbeddedSubmanifold.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/MSplits.lean,Mathlib/LinearAlgebra/Prod.lean 8 2 ['leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
392-14417
1 year ago
392-83740
392 days ago
0-1
1 second
23921 alreadydone
author:alreadydone
Jyxu/projective trace --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
157/123 Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Relrank.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/RingTheory/LocalProperties/Projective.lean 5 1 ['leanprover-community-bot-assistant'] nobody
392-14249
1 year ago
unknown
0-0
0 seconds
22809 b-reinke
author:b-reinke
feat: Category algebras and path algebras This PR defines the category algebra of a linear category and path algebras of quivers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory new-contributor
label:t-algebra$
218/0 Mathlib/Algebra/Ring/Assoc.lean,Mathlib/CategoryTheory/Linear/CategoryAlgebra.lean,Mathlib/Combinatorics/Quiver/PathAlgebra.lean,Mathlib/Data/DFinsupp/BigOperators.lean 4 2 ['b-reinke', 'github-actions'] nobody
392-14073
1 year ago
unknown
0-0
0 seconds
21252 ADedecker
author:ADedecker
feat: redefine uniformly convex normed spaces with filters instead of epsilons And conceptualize some proofs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
301/87 Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Topology/Algebra/UniformGroup/Defs.lean,Mathlib/Topology/Algebra/UniformMulAction.lean 6 1 ['github-actions'] nobody
392-13988
1 year ago
unknown
0-0
0 seconds
19821 eric-wieser
author:eric-wieser
feat: add a Qq version of AtomM that groups by type --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP large-import t-meta 332/30 Mathlib/Data/Ineq.lean,Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Util/AtomM.lean,Mathlib/Util/Qq.lean 6 1 ['github-actions'] nobody
392-13801
1 year ago
unknown
0-0
0 seconds
19120 hrmacbeth
author:hrmacbeth
feat: stop `ring`/`abel` from seeing algebraic operations inside `let`s This draft PR illustrates a feature I would like to see in core: a variant of `whnf` which allows particular kinds of reduction, such as zeta-delta reduction, to be turned off. Here it is used to make ring-normalization and abelian-group-normalization a bit more responsive to what (I think) users expect: these normalizations would no longer look inside user-defined lets to see algebraic operations in those expressions. Note: In Lean/Mathlib 3, `ring` matched for algebraic operations on an algebraic expression `e` itself, not on `← whnfR e`. So mathlib3 `ring` didn't see algebraic operations inside `let`s -- but it also didn't see algebraic operations requiring beta-reduction (like `(fun t ↦ t + 1) x`) or see inside abbreviations. [Zulip](https://leanprover.zulipchat.com/#narrow/channel/239415-metaprogramming-.2F-tactics/topic/whnf.20variant.20which.20preserves.20let-bindings) Update: fortuitously, it looks like the new core PR https://github.com/leanprover/lean4/pull/6053 will provide this feature! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-core-PR t-meta 137/15 Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Integrals.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Data/Real/Pi/Irrational.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/SumPrimeReciprocals.lean,Mathlib/RingTheory/WittVector/DiscreteValuationRing.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Polyrith.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/RingNF.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean,Mathlib/Util/WHNF.lean,MathlibTest/abel.lean,MathlibTest/ring.lean 21 5 ['JovanGerb', 'github-actions', 'grunweg', 'hrmacbeth'] nobody
392-13781
1 year ago
unknown
0-0
0 seconds
17069 yuma-mizuno
author:yuma-mizuno
chore(CategoryTheory/Functor/Basic): put `simp` at `Functor.id_comp` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 41/30 Mathlib/CategoryTheory/Adjunction/Mates.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/CategoryTheory/GuitartExact/VerticalComposition.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Shift/CommShift.lean 5 3 ['github-actions', 'leanprover-bot', 'yuma-mizuno'] nobody
392-13771
1 year ago
unknown
0-0
0 seconds
14803 StevenClontz
author:StevenClontz
chore: use `Disjoint` nhd filters for all separation axioms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 157/122 Mathlib/Topology/Separation.lean 1 1 ['github-actions'] nobody
392-13755
1 year ago
unknown
0-0
0 seconds
14675 adomani
author:adomani
dev: the repeated variable linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter 71/0 Mathlib/Tactic/Linter/Lint.lean 1 1 ['github-actions'] nobody
392-13750
1 year ago
687-304
687 days ago
0-8
8 seconds
14330 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: split Mathlib.Algebra.Star.Basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 446/331 Mathlib.lean,Mathlib/Algebra/Module/LinearMap/Star.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Defs.lean,Mathlib/Algebra/Star/Lemmas.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Star/Pi.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Rat.lean,Mathlib/Algebra/Star/Regular.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/Analysis/NormedSpace/LinearIsometry.lean,Mathlib/Data/Complex/Basic.lean,scripts/noshake.json 15 3 ['github-actions', 'grunweg', 'j-loreaux'] nobody
392-13710
1 year ago
697-30055
697 days ago
0-45204
12 hours
14007 adomani
author:adomani
test: papercut linter working on all mathlib This PR is a testing ground for potential issues with the papercut linter #13999. It is not intended to be merged. The linter is active on all of mathlib, to make sure that the linter does not throw errors, but only emits warnings! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter 249/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/Papercut.lean,test/Papercut.lean 5 1 ['github-actions'] nobody
392-13595
1 year ago
unknown
0-0
0 seconds
20354 eric-wieser
author:eric-wieser
feat: generalize `ContinuousLinearMap.curry` to TVS Follow on from #10777 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 57/25 Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean 1 3 ['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
392-13530
1 year ago
unknown
0-0
0 seconds
8511 eric-wieser
author:eric-wieser
refactor(MeasureTheory/Measure/Haar/Basic): partially generalize to the affine case Without a `Mul` version of `AddTorsor`, this generalization can only go so far. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 52/46 Mathlib/MeasureTheory/Measure/Haar/Basic.lean 1 0 [] nobody
392-13341
1 year ago
922-71421
922 days ago
0-7
7 seconds
7994 ericrbg
author:ericrbg
chore: generalize `LieSubalgebra.mem_map_submodule` --- Not sure if we should rename to something like `mem_map_iff_mem_map_submodule` or not. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-algebra
label:t-algebra$
16/4 Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Subalgebra.lean 2 3 ['eric-wieser', 'ericrbg'] nobody
392-13329
1 year ago
945-8324
945 days ago
0-1
1 second
6317 eric-wieser
author:eric-wieser
refactor(Data/Finsupp/Defs): make Finsupp.single defeq to Pi.single By adding a `DecidableEq ι` argument to `Finsupp.single`, we remove the reference to `Classical.decEq ι` in the definition, which in turn means that when coerced to a function it is now defeq to `Pi.single`. This also brings it in line with `DFinsupp.single`. This does not go as far as making `Finsupp.single` computable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-data 269/226 Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Data/Finsupp/AList.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Fintype.lean,Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/ToDFinsupp.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/LinearAlgebra/Finsupp.lean 12 0 [] nobody
392-13323
1 year ago
unknown
0-0
0 seconds
6277 jjaassoonn
author:jjaassoonn
Dimension theory Some results are - The ring Krull dimension and the topological dimension of the prime spectrum of a ring are the same - A field is zero-dimensional and a PID that is not a field is one dimensional - An Artinian ring is zero-dimensional - The Krull dimension of ring $R$ is equal to the supremum of heights of maximal ideals [00KG](https://stacks.math.columbia.edu/tag/00KG) - two definitions of module length agree - A module is finite length iff both artinian and noetherian - length of module $M$ is equal to the sum of length of $N$ and length of $M / N$ where $N$ is a submodule of $M$. - Noetherian ring has only finitely many minimal primes #9088 - In a zero dimensional ring, prime ideals are maximal - Artinian rings has finitely many maximal ideals #9087 - zero-dimensional rings with finitely many prime ideals are products of its localizations: $R \cong \prod_{\mathfrak{p}}R_{\mathfrak{p}}$ - Let $M_0 \le ... \le M_n$, then $l(M_n/ M_0) = l(M_1/M_0) + l(M_2/M_1) + ... + l(M_n/M_{n-1})$ where $l$ denotes module length. - If $f : R \to S$ is a ring homomorphism and $M$ an $S$-module, then $l_R(M) \le l_S(M)$, when $f$ is surjective then they are equal. (Note that this is expressed using `[Algebra R S]` and `RestrictScalars R S M`, instead of a literal ring hom) - Artinian rings are noetherian ring of dimension 0. - For 0-dimensional local ring, its maximal ideal is locally nilpotent - In notherian ring, $I \le \sqrt{J}$ implies $I ^ n \le J$ for some $n$ --- - [x] depends on: #6309 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
3289/459 Mathlib.lean,Mathlib/Algebra/Module/Length.lean,Mathlib/Algebra/Module/Submodule/JordanHolder.lean,Mathlib/Algebra/PUnitInstances.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/ArtinianAndNoetherian.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/Nodup.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/Order/Cover.lean,Mathlib/Order/JordanHolder.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/ListOnPartialOrderTypes.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Artinian.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Pi.lean,Mathlib/RingTheory/KrullDimension.lean,Mathlib/RingTheory/Noetherian.lean,Mathlib/RingTheory/SimpleModule.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sheaves/SheafCondition/EqualizerProducts.lean 24 11 ['alreadydone', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
392-13318
1 year ago
unknown
0-0
0 seconds
8536 jjaassoonn
author:jjaassoonn
characteristic predicate of tensor product --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
399/7 Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/IsTensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean 4 12 ['alreadydone', 'eric-wieser', 'jjaassoonn'] nobody
392-13271
1 year ago
unknown
0-0
0 seconds
11524 mcdoll
author:mcdoll
refactor: Introduce type-class for SchwartzMap --- There are a lot of other refactors to do (`seminormAux` should have a nicer name and gobble up more theorems from `seminorm`), then one can prove `integrable` and friends with only `SchwartzMapClass`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 139/137 Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Fourier/PoissonSummation.lean,Mathlib/Topology/ContinuousFunction/ZeroAtInfty.lean 3 0 [] nobody
392-13237
1 year ago
unknown
0-0
0 seconds
11003 thorimur
author:thorimur
chore: migrate to `tfae` block tactic Migrates to the `tfae` block tactic syntax, eliminating uses of `tfae_have` and `tfae_finish`. --- - [ ] depends on: #11000 - [ ] depends on: #10991 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR t-meta 1267/1081 Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/ExactFunctor.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/CategoryTheory/Abelian/Exact.lean,Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/FieldTheory/Galois.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/LinearAlgebra/Eigenspace/Zero.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/Height.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/RingTheory/Bezout.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Flat/EquationalCriterion.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Tactic/TFAE.lean,Mathlib/Topology/Algebra/Group/SubmonoidClosure.lean,Mathlib/Topology/Category/CompHaus/EffectiveEpi.lean,Mathlib/Topology/Category/Profinite/EffectiveEpi.lean,Mathlib/Topology/Category/Stonean/EffectiveEpi.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/LocallyClosed.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Order/LeftRightNhds.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/UniformSpace/UniformConvergence.lean,scripts/noshake.json,test/tfae.lean 42 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
392-13233
1 year ago
620-61006
620 days ago
3-60883
3 days
9819 jjaassoonn
author:jjaassoonn
fg graded ring 1. if $A$ is a noetherian graded ring, then $A_0$ is a noetherian subring of $A$ and $A$ is a finitely generated algebra over $A_0$, if $M$ is a finitely generated graded module over $A$, then each $M_n$ is a finitely generated module over $A_0$. 2. Definition of additive functions over any abelian category: if $C$ is an abelian category, a function $f : C \to \mathbb Z$ is said to be additive, if $f(y) = f(x) + f(z)$ whenever $0\to x \to y \to z \to 0$ is exact. proved some basic properties such as $f(0) = 0$ and $f(x) = f(y)$ whenever $x \cong y$ and interaction of $f$ with longer exact sequences 3. The category of finitely generated module over noetherian ring is abelian 4. A proof of Hilbert-Serre theorem: the Poincare series is actually of the form $\frac{p}{\prod(1- X^i)}$ where $p$ is polynomial The code works, but poorly written. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
6745/217 Mathlib.lean,Mathlib/Algebra/Category/FGModuleCat/Abelian.lean,Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/FGModuleCat/EpiMono.lean,Mathlib/Algebra/Category/FGModuleCat/Kernels.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/HilbertSerre/AdditiveFunction.lean,Mathlib/Algebra/HilbertSerre/FiniteInstances.lean,Mathlib/Algebra/HilbertSerre/HilbertPolynomial.lean,Mathlib/Algebra/HilbertSerre/Theorem.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousIdeal.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/GradedAlgebra/Subgrading.lean,Mathlib/RingTheory/Polynomial/Hilbert.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/WellKnown.lean 25 2 ['FMLJohn', 'github-actions'] nobody
392-13219
1 year ago
unknown
0-0
0 seconds
14348 eric-wieser
author:eric-wieser
perf: disable the `unusedVariables` linter for speed I doubt we want to merge this, but it shaves two minutes of the lint time. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) performance-hack 1/0 lakefile.lean 1 3 ['eric-wieser', 'github-actions', 'leanprover-bot'] nobody
392-13103
1 year ago
unknown
0-0
0 seconds
13543 adomani
author:adomani
test: automatically undeprecate A test for `update_deprecations`. There are two files with deprecated declarations, but CI automatically fixes them, so that they pass the noisy tests (as well as passing fail-on-warning `lake build`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter 345/4 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/UpdateDeprecations.lean,Mathlib/test_depr.lean,Mathlib/test_depr_no_change.lean,lakefile.lean,scripts/update_deprecations.lean,test/UpdateDeprecations.lean 12 0 [] nobody
392-13070
1 year ago
unknown
0-0
0 seconds
14932 eric-wieser
author:eric-wieser
chore: add nndist versions of lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 108/1 Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Geometry/Euclidean/Basic.lean 2 1 ['github-actions'] nobody
392-12883
1 year ago
unknown
0-0
0 seconds
18202 ADedecker
author:ADedecker
chore: refactor algebraic filter bases --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
1086/1315 Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Barrelled.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Operator/WeakOperatorTopology.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/Module/UniformConvergence.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/UniformFilterBasis.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean 14 1 ['github-actions'] nobody
391-5554
1 year ago
unknown
0-0
0 seconds
22488 smmercuri
author:smmercuri
fix: lower priority for `UniformSpace.Completion.instSMul` Following the introduction of the `WithVal` type synonym in #22055 the following instance takes a long time to synthesise in FLT, and times out in the default heartbeats ```lean import Mathlib namespace IsDedekindDomain.HeightOneSpectrum variable (A K : Type*) [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] (v : HeightOneSpectrum A) #synth SMul (v.adicCompletionIntegers K) (v.adicCompletion K) ``` The issue is that `UniformSpace.Completion.instSMul (v.adicCompletionIntegers K) (v.adicCompletion K)` now fires during the start of instance search (because we now have `UniformSpace (WithVal (v.valuation K))` whereas previously this would be `UniformSpace K`, which was not automatic), and this takes a long time to fail (leading to ~1400 entries in the trace). The first few lines of the new trace is ```lean [Meta.synthInstance] [5.512418] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼ [] [0.000118] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000537] ✅️ apply UniformSpace.Completion.instSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.004411] ✅️ apply @WithVal.instSMul to SMul (↥(adicCompletionIntegers K v)) (WithVal (valuation K v)) ▶ [] [0.000765] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) K ▶ [] [0.000378] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) K ▶ ... [] 1339 more entries... ▶ ``` Lowering the priority of `UniformSpace.Completion.instSMul` fixes this particular issue, leading to a trace that matches that seen prior to the introduction of `WithVal`: ```lean [Meta.synthInstance] [0.016405] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼ [] [0.000119] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000491] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000403] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000134] ❌️ apply inst✝⁴ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000093] ❌️ apply inst✝⁵ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000077] ❌️ apply inst✝⁷ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000082] ❌️ apply inst✝⁹ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000075] ❌️ apply inst✝¹² to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000220] ❌️ apply Algebra.id to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.001015] ✅️ apply @ValuationSubring.instAlgebraSubtypeMem to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [resume] [0.000038] propagating Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) to subgoal Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) of SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [check] [0.013358] ✅️ Algebra.toSMul [] result Algebra.toSMul ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-topology FLT 1/1 Mathlib/Topology/Algebra/UniformMulAction.lean 1 10 ['github-actions', 'leanprover-bot', 'smmercuri', 'urkud'] nobody
390-83287
1 year ago
397-25439
397 days ago
55-70108
55 days
15161 adomani
author:adomani
feat(Linter): flag `intros x y` which can be replaced by `intro x y` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-linter 78/1 Mathlib/Tactic/Linter/Lint.lean,test/Lint.lean 2 4 ['adomani', 'github-actions', 'grunweg'] nobody
390-54362
1 year ago
unknown
0-0
0 seconds
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
389-46752
1 year ago
658-69937
658 days ago
0-179
2 minutes
19315 quangvdao
author:quangvdao
feat(Data/Finsupp/Fin): Add `Finsupp` operations on `Fin` tuple This PR adds more analogues of operations on `Fin` tuples to the `Finsupp` setting. Before, there were only `Finsupp.cons` and `Finsupp.tail`. Now there are also `Finsupp.snoc`, `Finsupp.insertNth`, `Finsupp.init`, and `Finsupp.removeNth`. These all come with supporting lemmas. I also removed the porting comment about `succAboveCases` in `Data/Fin/Basic`, and added a lemma about `succAbove` in `Data/Fin/Tuple/Basic`. --- - [x] depends on: #20361 - [x] depends on: #20771 - [x] depends on: #20770 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 193/16 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,scripts/nolints_prime_decls.txt 6 44 ['YaelDillies', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody
388-48713
1 year ago
465-73736
465 days ago
43-80684
43 days
19464 adomani
author:adomani
test: removed merge-conflict --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP CI delegated 22/1 .github/workflows/PR_summary.yml,scripts/zulip_emoji_merge_delegate.py 2 10 ['adomani', 'github-actions', 'leanprover-community-bot-assistant'] nobody
387-60037
1 year ago
unknown
0-0
0 seconds
24155 eric-wieser
author:eric-wieser
feat: add a "rw_proc" for fin vectors This seems a little nicer than an elaborator, since it means I can use the default elaboration rules to handle my first few variables. Ideally there would be something like ```lean rw_procQ {A : Type u} {B : A -> Type v} (a : A) (b : B a) : b = ?rhs => do /-- Context: u v : Level A : Q(Type u) B : Q($A -> Type v) a : Q($A) b : Q($B $a) rhs : Q($B $a) -- metavariable to assign |- MetaM Q($b = ?rhs) -/ ``` or ```lean rw_proc {A : Type u} {B : A -> Type v} (a : A) (b : B a) : b = ?rhs => do /-- Context: u v : Level A B a b : Expr rhs : MVarId |- MetaM Expr -/ ``` which would generate the code I wrote here --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author RFC t-data t-meta 27/2 Mathlib/Data/Fin/Tuple/Reflection.lean 1 2 ['github-actions', 'urkud'] nobody
386-44593
1 year ago
386-44593
386 days ago
20-83091
20 days
21276 GabinKolly
author:GabinKolly
feat(ModelTheory/Substructures): define equivalences between equal substructures Define first-order equivalences between equal substructures, and prove related properties. --- This is some preparatory work for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-logic 62/0 Mathlib/ModelTheory/Substructures.lean 1 19 ['GabinKolly', 'YaelDillies', 'fpvandoorn', 'github-actions', 'grunweg'] nobody
385-66787
1 year ago
385-66787
385 days ago
46-55730
46 days
24008 meithecatte
author:meithecatte
chore(EpsilonNFA): replace manual lemmas with @[simps] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability awaiting-author new-contributor 2/24 Mathlib/Computability/EpsilonNFA.lean 1 2 ['YaelDillies', 'github-actions', 'urkud'] nobody
384-5931
1 year ago
384-5931
384 days ago
27-52316
27 days
24642 grunweg
author:grunweg
WIP-feat: add layercake formula for ENNReal-valued functions Not much to see here yet; some significant amount of work remains. --- - [ ] depends on: #24643 - [ ] depends on: #24640 (based on that PR for simplicity) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson t-analysis 189/24 Mathlib/Analysis/SpecialFunctions/Pow/Integral.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Integral/Layercake.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
382-68712
1 year ago
unknown
0-0
0 seconds
21712 grunweg
author:grunweg
chore: generalise more lemmas to `ContinuousENorm` --- - [x] depends on: #21781 (minor drive-by clean-up) - [x] depends on: #21670 - [x] depends on: #22708 (extracted from this) - some parts depend on #21433 (or better: #22175); when the dependent PR has landed, I will re-assess whether to split these into a separate PR [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict carleson awaiting-CI t-measure-probability 76/31 Mathlib/Analysis/Normed/MulAction.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean 4 5 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
382-3996
1 year ago
unknown
0-0
0 seconds
21375 grunweg
author:grunweg
WIP: generalise lemmas to ENorm This work is part of (and a necessary pre-requisite for) the Carleson project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-CI t-measure-probability carleson merge-conflict 471/221 Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/ChebyshevMarkov.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Trim.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/Probability/Independence/Integrable.lean 13 2 ['fpvandoorn', 'grunweg'] nobody
381-84771
1 year ago
unknown
0-0
0 seconds
24378 urkud
author:urkud
feat(Algebra/Order/Field/Basic): generalize lemmas ... from linear ordered semifields to (commutative) groups with zero. --- I'm going to do another round of generalizing today or tomorrow, so making it a draft PR for now. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
183/181 Archive/OxfordInvariants/Summer2021/Week3P1.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/SpecificFunctions/Pow.lean,Mathlib/Analysis/Convex/StrictConvexSpace.lean,Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Convex/Visible.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/Normed/Field/Ultra.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Analysis/NormedSpace/HomeomorphBall.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/Analysis/NormedSpace/Pointwise.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/MulExpNegMulSqIntegral.lean,Mathlib/Analysis/SpecialFunctions/SmoothTransition.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Schnirelmann.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Data/Nat/Cast/Order/Field.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Real/Cardinality.lean,Mathlib/Data/Real/Pi/Wallis.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Measure/SeparableMeasure.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleAbs.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/NumberTheory/LSeries/Injectivity.lean,Mathlib/NumberTheory/LSeries/ZMod.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/MahlerBasis.lean,Mathlib/NumberTheory/Pell.lean,Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleNumber.lean,Mathlib/Order/Filter/AtTopBot/Floor.lean,Mathlib/Order/Interval/Set/IsoIoo.lean,Mathlib/Probability/StrongLaw.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/Topology/ContinuousMap/Polynomial.lean,Mathlib/Topology/Instances/AddCircle.lean,Mathlib/Topology/UrysohnsLemma.lean 72 3 ['github-actions', 'leanprover-community-bot-assistant'] nobody
381-69101
1 year ago
399-25653
399 days ago
0-14
14 seconds
24618 b-mehta
author:b-mehta
feat(Analysis): add Schur inequality and variants Add Schur inequality and some of its common variants. TODO: - [x] add reference to source: https://www.cip.ifi.lmu.de/~grinberg/VornicuS.pdf - [ ] add other generalisations - [ ] move some of the lemmas elsewhere --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis 145/0 Mathlib/Analysis/Convex/Schur.lean 1 16 ['b-mehta', 'eric-wieser', 'github-actions'] nobody
380-79864
1 year ago
389-59866
389 days ago
0-2
2 seconds
15115 kkytola
author:kkytola
feat: Generalize assumptions in liminf and limsup results in ENNReals In a [review comment](https://github.com/leanprover-community/mathlib4/pull/13938#discussion_r1649744441) it was pointed out that results about liminf and limsup in ENNReal hold under milder assumptions. This PR does the generalization. --- This PR is split off from #13938, where the review comment was made. The changes needed for the suggested generalization were of different kind than the simple PR's content, justifying a separate PR. - [x] depends on: #13938 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict help-wanted awaiting-author t-topology 215/27 Mathlib/MeasureTheory/Measure/Portmanteau.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Topology/Instances/ENNReal.lean 3 8 ['Ruben-VandeVelde', 'github-actions', 'grunweg', 'j-loreaux', 'kkytola', 'leanprover-community-mathlib4-bot'] nobody
379-81106
1 year ago
625-73924
625 days ago
21-25493
21 days
24957 eric-wieser
author:eric-wieser
feat: use ` binderNameHint` in sum_congr Zulip thread: [#new members > Choosing dummy variable inside summation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Choosing.20dummy.20variable.20inside.20summation/near/518492888) Co-authored-by: Joachim Breitner --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
23/16 Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/List/OfFn.lean,Mathlib/Data/Multiset/Count.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/Data/Sym/Sym2.lean 13 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
378-79008
1 year ago
378-80110
378 days ago
0-424
7 minutes
8495 jjaassoonn
author:jjaassoonn
feat : Tensor-Hom adjunction in the category of modules # Tensor-Hom adjunction Let $R$ be a commutative ring and $S$ any ring. Let $X$ be an $(S,R)$-bimoule. Then the tensor functor $(X \otimes_R \cdot)$ is a functor from left $R$-modules to left $S$-modules; and the hom-functor $Hom_S(X, \cdot)$ is a functor from left $S$-modules to left $R$-modules. For another left $S$-module $Y$, the left $R$-module structure of $Hom_S(X, Y)$ is given by $s \cdot f := x \mapsto f(s \cdot x)$. These two functors are adjoint.. In particular we have that ```math {\rm Hom}_{S}(X\otimes_R Y, Z) \cong {\rm Hom}_R (Y, {\rm Hom}_S (X, Z)) ``` ## Implementation notes 1. Why not use the `Mathlib/LinearAlgebra/TensorProduct/Tower.lean` In our setting `X` is an `(R, S)` bimodule and `Y` an `R`-module and `Z` an `S`-module so to use the `Tower` file, we need `S` to be an `R`-algebra which is a luxury we do not have. But note that in `Tower` file, `curry` and `uncurry` are both tri-linear maps. So `Tower` file allows interplay of 3 rings which is not allowed in this file. 2. We require `R` to be commutative but we never used anything commutative. This is because of tensor product requires commutativity, but thanks to @alreadydone, this assumption could be removed soon. I think this PR should wait for Junyan's attempt on removing commutativity, so it is marked as draft and wip for now --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-algebra
label:t-algebra$
214/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/TensorHomAdjunction.lean 2 88 ['alreadydone', 'bustercopley', 'eric-wieser', 'github-actions', 'jjaassoonn', 'kbuzzard', 'kim-em', 'leanprover-community-bot-assistant'] eric-wieser
assignee:eric-wieser
377-75642
1 year ago
922-13597
922 days ago
1-57685
1 day
19284 adomani
author:adomani
test: commit a change only to the "master" CI build action This PR should fail CI, since the main CI build file is incompatible with the autogenerated ones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 3/3 .github/build.in.yml,.github/workflows/actionlint.yml 2 12 ['adomani', 'bryangingechen', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant'] bryangingechen
assignee:bryangingechen
376-20646
1 year ago
494-80834
494 days ago
61-913
61 days
15254 yuma-mizuno
author:yuma-mizuno
feat(CategoryTheory/Monoidal): replace `Mon_` lemmas with `Mon_Class` lemmas We redefine algebras internal to monoidal categories, which were defined by full-bundled structures, in terms of semi-bundled type classes. The original full-bundled structure `X` is renamed to `X_Cat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 3982/96 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Bimod_Class.lean,Mathlib/CategoryTheory/Monoidal/Bimon_.lean,Mathlib/CategoryTheory/Monoidal/Bimon_Class copy.lean,Mathlib/CategoryTheory/Monoidal/Bimon_Class.lean,Mathlib/CategoryTheory/Monoidal/Braided/Opposite.lean,Mathlib/CategoryTheory/Monoidal/CommMon_Class.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/CategoryTheory/Monoidal/Comon_Class.lean,Mathlib/CategoryTheory/Monoidal/Internal/ModuleClass.lean,Mathlib/CategoryTheory/Monoidal/Mod_Class.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Mon_Class.lean,Mathlib/CategoryTheory/Monoidal/mwe.lean 14 6 ['YaelDillies', 'github-actions', 'leanprover-community-bot-assistant', 'yuma-mizuno'] nobody
372-46217
1 year ago
unknown
0-0
0 seconds
23489 plp127
author:plp127
chore: fix recursors Replace motive with `motive` and other improvements. Will probably split this PR after fixing is done. 4013 recursors left --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 4255/172 Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Lie/BaseChange.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/SubboxInduction.lean,Mathlib/CategoryTheory/Quotient.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Fin/Tuple/BubbleSortInduction.lean,Mathlib/Data/Fin/Tuple/NatAntidiagonal.lean,Mathlib/Data/FinEnum/Option.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/Fintype/CardEmbedding.lean,Mathlib/Data/Fintype/Option.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/PFun.lean,Mathlib/Data/PFunctor/Multivariate/W.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Coprod/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaEven.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/Order/DirectedInverseSystem.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/SetTheory/PGame/Algebra.lean,done.csv,print.lean,working.csv 42 3 ['github-actions', 'leanprover-community-bot-assistant'] nobody
369-76935
1 year ago
unknown
0-0
0 seconds
23349 BGuillemet
author:BGuillemet
feat: add LocallyLipschitzOn.lipschitzOnWith_of_isCompact and two small lemmas about Lipschitz functions Main feat (in Mathlib/Topology/EMetricSpace/Basic.lean): if a function `f` from an extended pseudometric space to a pseudometric space is locally Lipschitz on a compact subset `s`, then `f` is Lipschitz on `s`. The theorem is true only when the codomain of `f` is a pseudometric space, so it needs imports from Mathlib/Topology/MetricSpace. Other small feat (in Mathlib/Analysis/Calculus/ContDiff/RCLike.lean): a function that is continuously differentiable on an open subset is locally Lipschitz on this subset. --- - [ ] depends on: #22890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology large-import new-contributor 59/4 Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean 2 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] PatrickMassot
assignee:PatrickMassot
367-64672
1 year ago
367-64674
367 days ago
35-30364
35 days
12438 jjaassoonn
author:jjaassoonn
feat: some APIs for flat modules Need horseshoe lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 1674/3 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Exact.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Horseshoe.lean,Mathlib/CategoryTheory/Abelian/LeftDerived.lean,Mathlib/RingTheory/Flat/Basic.lean 8 21 ['erdOne', 'github-actions', 'jjaassoonn', 'joelriou'] nobody
362-77298
11 months ago
764-40169
764 days ago
0-20
20 seconds
17715 adomani
author:adomani
feat: the unusedVariableCommand linter This is still work-in-progress, but also help-wanted! The linter reliably flags unused variables: so far, only `example`s fool it (and that is simply because I did not implement a fix, as there are very few `variable`s that are only used in `example`s in mathlib). The work-in-progress part refers to the fact that the linter uses an `IO.Ref` to keep track of variables and this does not work well with editing the file. The linter works on a fresh parse of a file, but becomes out-of-sync with every edit. The help-wanted is to ask for help to make mathlib compliant with the linter, by checking out this branch and PR-ing a few variable removals! [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Unused.20variables) --- Known issues: * automatic namespacing and `nonrec` may cause difficulty when the newly introduced declaration is preferred in the term, rather than the original one (see examples here ```bash code -r -g ././././Mathlib/Analysis/SpecialFunctions/Arsinh.lean:183 code -r -g ././././Mathlib/Probability/Independence/Basic.lean:368 ``` where, for instance, `ContinuousOn.arsinh` is used internally instead of `Real.arsinh`). * `mutual` declarations confuse the linter ```bash code -r -g ././././Mathlib/SetTheory/Lists.lean:313 ``` * `code -r -g Mathlib/CategoryTheory/EffectiveEpi/Comp.lean:133:29` * universe annotations confuse the linter: ```bash code -r -g ././././Mathlib/Topology/Category/CompactlyGenerated.lean:53 code -r -g ././././Mathlib/AlgebraicTopology/CechNerve.lean:46 ``` * `inductive`s confusing the linter ```bash code -r -g ././././Mathlib/Deprecated/Subgroup.lean:389 code -r -g ././././Mathlib/FieldTheory/PerfectClosure.lean:55 ``` * `def`s confusing the linter ```bash code -r -g ././././Mathlib/Data/MLList/BestFirst.lean:104 ``` * special typeclass assumptions ```code code -r -g ././././Mathlib/RingTheory/WittVector/Truncated.lean:273 code -r -g ././././Mathlib/Topology/Category/Profinite/Product.lean:79 ``` * not sure what is going on here: ```bash code -r -g ././././Mathlib/RingTheory/WittVector/IsPoly.lean:95 code -r -g ././././Mathlib/Probability/Independence/Basic.lean:368 code -r -g ././././Mathlib/Analysis/Calculus/FDeriv/Star.lean:30 ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter large-import 695/22 Mathlib.lean,Mathlib/Algebra/Group/Idempotent.lean,Mathlib/Algebra/GroupWithZero/Idempotent.lean,Mathlib/Data/Finite/Defs.lean,Mathlib/Data/Int/Cast/Field.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Init.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Continuous.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/BoundedOrder/Lattice.lean,Mathlib/Order/BoundedOrder/Monotone.lean,Mathlib/Order/Monotone/Monovary.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/UnusedVariableCommand.lean,MathlibTest/UnusedVariableCommand.lean,lakefile.lean 17 3 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
360-72056
11 months ago
593-37089
593 days ago
0-92
1 minute
16020 adomani
author:adomani
feat: compare PR `olean`s size with `master` Adds two CI steps: * `print the sizes of the oleans` that prints the sizes of all the folders containing `Mathlib` `.olean`s; * `compare oleans` that compares the sizes of the previous step with the corresponding sizes on `master`. In the test runs, the two steps have taken at most 3 seconds combined (the first is virtually instantaneous, the second one depends on `curl` to find a job id and on `gh` to retrieve the logs of a previous CI run -- everything else appears to be negligible). This hopefully helps finding out if some PR is bloating up the `.olean`s. See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Error.3A.20No.20space.20left.20on.20device/near/463792355) for a PR of mine that prompted this check. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict CI 120/0 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh 5 50 ['Vtec234', 'YaelDillies', 'adomani', 'bryangingechen', 'github-actions', 'grunweg', 'kim-em', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
358-28279
11 months ago
555-75701
555 days ago
87-65841
87 days
16062 adomani
author:adomani
Test/ci olean size Tests for oleans --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author CI 114/0 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh 5 4 ['Parcly-Taxel', 'adomani', 'github-actions', 'leanprover-community-bot-assistant'] nobody
358-28279
11 months ago
646-2859
646 days ago
0-16
16 seconds
25507 eric-wieser
author:eric-wieser
chore(RingTheory/Valuation): golf using `Con` This has no particular motivation besides seeing if `Con` is a performant substitute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
20/35 Mathlib/RingTheory/Valuation/ValuationRing.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
358-19758
11 months ago
unknown
0-0
0 seconds
12799 jstoobysmith
author:jstoobysmith
feat(LinearAlgebra/UnitaryGroup): Add properties of Special Unitary Group Add properties of the special unitary group, mirroring the properties of found in Algebra/Star/Unitary.lean. In particular, I add an instance of `specialUnitaryGroup` as a `Group`, `Star`, `InvolutiveStar`, and `StarMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-algebra new-contributor merge-conflict awaiting-author
label:t-algebra$
78/0 Mathlib/LinearAlgebra/UnitaryGroup.lean 1 8 ['chrisflav', 'jcommelin', 'leanprover-community-bot-assistant'] nobody
357-36625
11 months ago
740-64278
740 days ago
9-22045
9 days
23709 plp127
author:plp127
feat: `Nat.findFrom` This PR adds `Nat.findFrom`, which is like `Nat.find`, but starting from an arbitrary `k` instead of `0`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 190/47 Mathlib/Data/Nat/Find.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
357-1914
11 months ago
419-54087
419 days ago
0-943
15 minutes
25340 dupuisf
author:dupuisf
chore(Analysis/Convex): move files pertaining to convex/concave functions to their own folder This PR creates a new folder under `Analysis/Convex` called `Analysis/Convex/Function`, which includes files that are mostly or entirely about convex/concave functions (as opposed to convex sets). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-convex-geometry 4264/4155 Mathlib.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/Deriv.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Convex/Extrema.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Function/Basic.lean,Mathlib/Analysis/Convex/Function/Continuous.lean,Mathlib/Analysis/Convex/Function/Deriv.lean,Mathlib/Analysis/Convex/Function/Extrema.lean,Mathlib/Analysis/Convex/Function/Integral.lean,Mathlib/Analysis/Convex/Function/Jensen.lean,Mathlib/Analysis/Convex/Function/Mul.lean,Mathlib/Analysis/Convex/Function/Piecewise.lean,Mathlib/Analysis/Convex/Function/Quasiconvex.lean,Mathlib/Analysis/Convex/Function/Slope.lean,Mathlib/Analysis/Convex/Function/Strong.lean,Mathlib/Analysis/Convex/Integral.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Convex/Mul.lean,Mathlib/Analysis/Convex/Piecewise.lean,Mathlib/Analysis/Convex/Quasiconvex.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/Convex/Strong.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/Analysis/SpecialFunctions/Pochhammer.lean,Mathlib/MeasureTheory/Measure/Decomposition/IntegralRNDeriv.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean 34 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
357-1099
11 months ago
357-1101
357 days ago
6-38644
6 days
21734 adomani
author:adomani
fix(PR summary): checkout GITHUB_SHA This should make the version of the script that is used on PRs more stable. Suggested by Eric Wieser on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/messageFile.2Emd/near/498941855). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author CI 2/1 .github/workflows/PR_summary.yml 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
356-17766
11 months ago
472-54045
472 days ago
0-6023
1 hour
25579 JovanGerb
author:JovanGerb
feat(Order/Notation): only allow ⊔/⊓ for non-linear orders ⊔/⊓ is the same as max/min. The difference is that it is meant to be used if and only if there is no linear order. This PR implements a check for one of the two directions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 33/7 Mathlib/Order/Notation.lean 1 1 ['github-actions'] nobody
356-3062
11 months ago
356-32066
356 days ago
0-8
8 seconds
8949 sebzim4500
author:sebzim4500
Add `by_approx` tactic for proving real inequalities using rational approximation feat: Add `by_approx` tactic for proving real inequalities by finding rational approximations --- ```lean example : |sqrt 2 - 1.414| < 0.001 := by by_approx ``` This is a work in progress, the code is messy and the tactic is often very slow. It also depends on some other PRs that haven't been merged yet. It currently supports basic operations (`+`, `-`, `*`, `/`, `abs`) and has approximation extensions for `sqrt` and `exp`. - [ ] depends on: #8167 - [x] depends on: #8832 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict modifies-tactic-syntax t-meta 1670/3 Mathlib.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ByApprox.lean,Mathlib/Tactic/ByApprox/Basic.lean,Mathlib/Tactic/ByApprox/Core.lean,Mathlib/Tactic/ByApprox/Exp.lean,Mathlib/Tactic/ByApprox/Lemmas.lean,Mathlib/Tactic/ByApprox/Test.lean,Mathlib/Tactic/ByApprox/Util.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRW.lean,Mathlib/Tactic/GRW/Core.lean,Mathlib/Tactic/GRW/Lemmas.lean,Mathlib/Tactic/NormNum/NatFactorial.lean,test/ByApprox.lean,test/GRW.lean,test/norm_num_ext.lean 18 1 ['mathlib4-dependent-issues-bot'] nobody
352-41813
11 months ago
unknown
0-0
0 seconds
20334 miguelmarco
author:miguelmarco
feat: allow polyrith to use a local Singular/Sage install Try to call a local install of Singular (either standalone or inside Sage) to find the witness for polyrith before trying to call the online sage cell server. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-meta 171/48 Mathlib/Tactic/Polyrith.lean,scripts/polyrith_sage.py 2 16 ['eric-wieser', 'github-actions', 'hanwenzhu', 'kim-em', 'miguelmarco', 'mkoeppe'] nobody
350-29178
11 months ago
488-67159
488 days ago
27-61498
27 days
25911 BoltonBailey
author:BoltonBailey
make `a / b` simp normal form This PR continues the work from #25631. Original PR: https://github.com/leanprover-community/mathlib4/pull/25631 t-algebra
label:t-algebra$
11/1 Mathlib/Algebra/Group/Defs.lean 1 2 ['BoltonBailey', 'github-actions'] nobody
348-72927
11 months ago
unknown
0-0
0 seconds
25912 BoltonBailey
author:BoltonBailey
feat: add simp lemmas for trig functions on `π * 2⁻¹` This PR adds a number of simp lemmas to reduce trig functions evaluated on `π * 2⁻¹`. This allows `simp` to reduce expressions such as `sin (π * (1 / 2))` --- - [ ] depends on: #25911 [experiment with simp normal form] Original PR: #24213 awaiting-author blocked-by-other-PR t-analysis 45/0 Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean 1 3 ['BoltonBailey', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
348-71640
11 months ago
348-72337
348 days ago
0-136
2 minutes
25918 BoltonBailey
author:BoltonBailey
feat: one time pad string diagram This PR continues the work from #10655. Original PR: https://github.com/leanprover-community/mathlib4/pull/10655 159/0 MathlibTest/StringDiagram.lean 1 2 ['BoltonBailey', 'github-actions'] nobody
348-71071
11 months ago
unknown
0-0
0 seconds
23953 b-reinke
author:b-reinke
feat(Data/Matroid/Tutte): define the Tutte polynomial of a matroid This PR defines the Tutte polynomial of a matroid and shows basic properties. - [x] depends on: #23926 - [ ] depends on #24336 - [ ] depends on: #23951 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-data 111/0 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Matroid/Tutte/Basic.lean,Mathlib/Data/Set/Image.lean 3 7 ['apnelson1', 'b-reinke', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
347-70658
11 months ago
unknown
0-0
0 seconds
25921 BoltonBailey
author:BoltonBailey
feat: scripts to analyze overlap between namespaces This PR continues the work from #11385. Original PR: https://github.com/leanprover-community/mathlib4/pull/11385 WIP migrated-from-branch t-meta 86/0 scripts/RecordNamespaces.lean,scripts/namespace-overlap.py 2 1 ['github-actions'] nobody
346-58938
11 months ago
346-58954
346 days ago
2-11832
2 days
18771 joelriou
author:joelriou
feat(LinearAlgebra/ExteriorPower): exterior powers of free modules are free Co-authored-by: sophie.morel@ens-lyon.fr --- - [ ] depends on: #18662 - [x] depends on: #18534 - [x] depends on: #18651 - [x] depends on: #18590 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
1185/160 Mathlib.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basis.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/ExteriorPower/Pairing.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorAlgebra/ToTensorPower.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 19 3 ['alreadydone', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
345-7395
11 months ago
unknown
0-0
0 seconds
18441 ADedecker
author:ADedecker
refactor(AdicTopology): use new API for algebraic filter bases, and factor some code --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
847/159 Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 3 ['ADedecker', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79240
11 months ago
576-77139
576 days ago
0-679
11 minutes
18439 ADedecker
author:ADedecker
refactor: use new algebraic filter bases API in `FiniteAdeleRing` --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
699/21 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79238
11 months ago
576-78782
576 days ago
0-619
10 minutes
18438 ADedecker
author:ADedecker
refactor: adapt `KrullTopology` to the new algebraic filter bases API --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
771/168 Mathlib.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 5 ['ADedecker', 'AntoineChambert-Loir', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79237
11 months ago
576-79424
576 days ago
0-638
10 minutes
26239 BoltonBailey
author:BoltonBailey
feat: add sample pre-commit git hook file This PR adds a sample pre-commit git hook file that runs `mk_all` and `lint-style`. The script provides instructions on how to activate these as git hooks. Installing these would be optional, but hopefully people who would install them would find it easier to avoid commits that immediately fail linters. Discussion of hooks on [Zulip here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Automatic.20setup.20and.20distribution.20of.20git.20hooks/with/525103090). Some thoughts: - Perhaps it would be better, for speed, to attempt to avoid certain commands if the staged changes suggest they would be unnecessary. - i.e. only run linters on files that have been updated / only run `mk_all` if a file has been added or deleted. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 18/0 git_hooks/pre-commit 1 1 ['github-actions'] nobody
343-50771
11 months ago
343-50771
343 days ago
0-1331
22 minutes
13964 pechersky
author:pechersky
feat(Data/DigitExpansion): begin defining variant of reals without rationals Based on a de Bruijn 1976 paper. This file is just the basic definition of a digit expansion. Will be followed up with further constructions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 518/0 Mathlib.lean,Mathlib/Data/DigitExpansion/Defs.lean,docs/references.bib 3 11 ['eric-wieser', 'github-actions', 'kim-em', 'pechersky'] dupuisf
assignee:dupuisf
341-61528
11 months ago
580-1344
580 days ago
129-57999
129 days
21450 eric-wieser
author:eric-wieser
feat: improve trace nodes for `positivity` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 25/7 Mathlib/Tactic/Positivity/Core.lean 1 1 ['github-actions'] nobody
341-47550
11 months ago
unknown
0-0
0 seconds
26327 eric-wieser
author:eric-wieser
chore: split the tests for positivity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 528/2 MathlibTest/Positivity/basic.lean,MathlibTest/positivity.lean 2 1 ['github-actions'] nobody
340-45567
11 months ago
unknown
0-0
0 seconds
18662 joelriou
author:joelriou
feat(LinearAlgebra/ExteriorPower): generators of the exterior powers --- - [x] depends on: #18534 - [x] depends on: #18590 - [ ] depends on: #26464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
818/158 Mathlib.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 15 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
337-13850
11 months ago
unknown
0-0
0 seconds
18735 joelriou
author:joelriou
feat(Algebra/Module): presentation of the exterior power Given a presentation of a `R`-module `M`, we obtain a presentation of `⋀[R]^n M`. --- (Still one sorry left.) - [ ] depends on: #18527 - [ ] depends on: #18432 - [ ] depends on: #26464 - [ ] depends on: #18534 - [ ] depends on: #18662 - [x] depends on: #18590 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
1856/157 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 20 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
337-9824
11 months ago
unknown
0-0
0 seconds
26581 nomeata
author:nomeata
ignore this: Lean pr testing 9124 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1723/1362 Archive/Arithcc.lean,Archive/Examples/Eisenstein.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2024Q1.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q5.lean,Archive/MiuLanguage/DecisionNec.lean,Archive/MiuLanguage/DecisionSuf.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/AscendingDescendingSequences.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Partition.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Cache/Lean.lean,Counterexamples/AharoniKorman.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Phillips.lean,Counterexamples/Pseudoelement.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Epi.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Equiv/TransferInstance.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Scalar.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/NoZeroSMulDivisors/Defs.lean,Mathlib/Algebra/Order/Antidiag/Pi.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Degree/CardPowDegree.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Regular/Pi.lean,Mathlib/Algebra/Ring/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/GrindInstances.lean,Mathlib/Algebra/Ring/Int/Defs.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean 567 0 [] nobody
332-77353
10 months ago
unknown
0-0
0 seconds
15213 adomani
author:adomani
dev: add Mathlib.Tactic.Linter.ForallIntro --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter large-import 608/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/ForallIntro.lean,MathlibTest/ForallIntro.lean 5 5 ['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
329-29325
10 months ago
unknown
0-0
0 seconds
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
329-27101
10 months ago
600-61144
600 days ago
0-66650
18 hours
22928 javra
author:javra
feat(CategoryTheory): infrastructure for inclusion morphisms into products in categories with 0-morphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 52/14 Mathlib/CategoryTheory/Limits/Shapes/BinaryBiproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/ZeroMorphisms.lean 3 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-26595
10 months ago
329-26596
329 days ago
112-51866
112 days
22952 eric-wieser
author:eric-wieser
refactor: reimplement `RingQuot` in terms of `RingCon.Quotient` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
157/184 Mathlib/Algebra/RingQuot.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Congruence/Defs.lean 4 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-26594
10 months ago
unknown
0-0
0 seconds
24710 chrisflav
author:chrisflav
chore(Data/Set): `tsum` version of `Set.encard_iUnion_of_finite` for non-finite types As requested here: https://github.com/leanprover-community/mathlib4/pull/23849#discussion_r2081070200 --- - [ ] depends on: #23849 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 163/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Set/Card/Arithmetic.lean,Mathlib/Data/Set/Card/InfiniteArithmetic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Instances/ENat/Lemmas.lean 7 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
329-26189
10 months ago
329-26189
329 days ago
1-80465
1 day
24823 eric-wieser
author:eric-wieser
refactor: add `hom` lemmas for the `MonoidalCategory` structure on `ModuleCat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
148/164 Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Closed.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Rep.lean 11 21 ['101damnations', 'YaelDillies', 'eric-wieser', 'github-actions', 'joelriou', 'kbuzzard', 'leanprover-community-bot-assistant'] 101damnations
assignee:101damnations
329-26188
10 months ago
329-26188
329 days ago
37-56728
37 days
25071 erdOne
author:erdOne
feat(EllipticCurve): basic API for singular cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry 320/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean 3 35 ['Multramate', 'acmepjz', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant'] nobody
329-25942
10 months ago
329-25943
329 days ago
45-4165
45 days
25197 eric-wieser
author:eric-wieser
feat: Finset.sum induction for tensor products. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
81/0 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-25940
10 months ago
unknown
0-0
0 seconds
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
329-25939
10 months ago
362-1056
362 days ago
6-47693
6 days
25247 alreadydone
author:alreadydone
Projective contraction --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
160/31 Mathlib/Data/Finsupp/Defs.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean 4 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-25936
10 months ago
367-49711
367 days ago
0-9
9 seconds
25561 callesonne
author:callesonne
feat(Category/Grpd): define the bicategory of groupoids --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 179/25 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/Functor/Strict.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/Grpd.lean 6 6 ['callesonne', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'robin-carlier'] nobody
329-25924
10 months ago
345-63647
345 days ago
10-55201
10 days
25671 eric-wieser
author:eric-wieser
refactor: generalize `OreSet` to work for bimodules --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict large-import 243/256 Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/OreLocalization/OreSet.lean,Mathlib/RingTheory/OreLocalization/Ring.lean,Mathlib/RingTheory/TensorProduct/Nontrivial.lean 6 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-25795
10 months ago
unknown
0-0
0 seconds
25988 Multramate
author:Multramate
refactor(AlgebraicGeometry/EllipticCurve/*): replace Fin 3 with products This PR continues the work from #24593. Original PR: https://github.com/leanprover-community/mathlib4/pull/24593 merge-conflict t-algebraic-geometry 1000/1022 Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean 6 3 ['Multramate', 'github-actions', 'leanprover-community-bot-assistant'] nobody
329-25630
10 months ago
329-25630
329 days ago
18-21880
18 days
26002 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/Action): action of `Type` on categories with coproducts We show that if a category admits coproducts of size `w`, then `Type w` acts on the left on that category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 213/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Action/ChosenTypeCopowers.lean 2 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-25628
10 months ago
unknown
0-0
0 seconds
26090 grunweg
author:grunweg
chore: make `finiteness` a default tactic Opening for discussion. This PR continues the work from #25119. merge-conflict 423/366 Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Convex/Integral.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Holder.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/L1Space/AEEqFun.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/ChebyshevMarkov.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Real.lean,Mathlib/MeasureTheory/Measure/Decomposition/IntegralRNDeriv.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/DistribChar.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Tilted.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/Probability/BorelCantelli.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Integration.lean,Mathlib/Probability/Kernel/Composition/IntegralCompProd.lean,Mathlib/Probability/Kernel/Disintegration/CondCDF.lean,Mathlib/Probability/Kernel/Disintegration/Density.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Moments/CovarianceBilin.lean,Mathlib/Probability/Moments/Tilted.lean,Mathlib/Probability/Moments/Variance.lean,Mathlib/Probability/UniformOn.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Perfect.lean,scripts/noshake.json 73 3 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
329-23640
10 months ago
329-23641
329 days ago
16-56825
16 days
26465 joelriou
author:joelriou
feat(Algebra/Module): presentation of the `PiTensorProduct` Given a presentation of a finite number of `R`-modules `M i`, we obtain a presentation of the module `⨂[R] i, M i`. --- - [ ] depends on: #26464 This PR continues the work from #18527. Original PR: https://github.com/leanprover-community/mathlib4/pull/18527 merge-conflict file-removed t-algebra blocked-by-other-PR
label:t-algebra$
525/4 Mathlib.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Set/ComplSingletonLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean 10 4 ['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
329-23361
10 months ago
337-10928
337 days ago
0-1271
21 minutes
26467 joelriou
author:joelriou
feat(LinearAlgebra): the tensor product of a finite family of free modules is free --- - [ ] depends on: #26464 - [ ] depends on: #26465 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR merge-conflict file-removed
label:t-algebra$
607/7 Mathlib.lean,Mathlib/Algebra/Module/Presentation/Free.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Set/ComplSingletonLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basis.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean 12 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
329-23359
10 months ago
337-6787
337 days ago
0-2
2 seconds
20784 eric-wieser
author:eric-wieser
fix: prevent `exact?` recursing forever on `n = 55` Test case thanks to @llllvvuu: ```lean import Mathlib.SetTheory.Ordinal.Basic theorem natCast_inj {m n : ℕ} : (m : Ordinal) = n ↔ m = n := sorry example (n : Nat) : n = 55 := by exact? ``` This is surely a workaround for some unreported lean bug. The bug still exists for `n = 71` or higher, so we can still track down the bug after merging this patch. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 22/3 Mathlib/SetTheory/Ordinal/Basic.lean,MathlibTest/LibrarySearchRecDepth.lean 2 15 ['Command-Master', 'eric-wieser', 'github-actions', 'kbuzzard', 'kim-em', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
328-81024
10 months ago
466-53386
466 days ago
32-73698
32 days
26647 b-mehta
author:b-mehta
feat(Data/Sym/Sym2): lift commutative operations to sym2 While we have `Sym2.lift`, it's often useful to lift operations which are known to be commutative to the typeclass system. Indeed, the existing `Sym2.mul` witnesses this already. Thus, this PR can also be seen as generalising `Sym2.mul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-data 48/28 Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Sym/Sym2/Finsupp.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean 4 12 ['b-mehta', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
327-29220
10 months ago
327-48457
327 days ago
3-71897
3 days
26878 adomani
author:adomani
feat: declaration diff script in Lean Although, it is still text-based, the parsing of the output of `git diff` is now done in Lean. The new script already performed better than the old one in a couple of situations: * #26877 See [this comment](https://github.com/leanprover-community/mathlib4/pull/26847#issuecomment-3045308885) * #26849 See [this comment](https://github.com/leanprover-community/mathlib4/pull/26849#issuecomment-3045092965) --- This is still work in progress: the parsing should be more or less done, but I have not yet hooked this into the action workflow. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 497/0 scripts/DeclarationDiff_text_based.lean 1 4 ['adomani', 'bryangingechen', 'github-actions'] bryangingechen
assignee:bryangingechen
326-9151
10 months ago
326-59102
326 days ago
0-9
9 seconds
26067 mapehe
author:mapehe
feat(Topology/StoneCech): exists_continuous_surjection_from_StoneCech_to_dense_range This lemma formalises the following version of the maximality property of the Stone–Čech compactification: If `f : α → β` is a continuous map from a topological space `α` to a Hausdorff space `β` with dense range, then there exists a continuous surjection from `StoneCech α` to `β` extending `f`. In particular, `StoneCech α` is the “largest” compact Hausdorff space into which `α` densely embeds, in the sense that any other such space is a continuous image of it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 18/0 Mathlib/Topology/StoneCech.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
326-7008
10 months ago
326-7008
326 days ago
20-8582
20 days
25999 bjoernkjoshanssen
author:bjoernkjoshanssen
feat(Topology/Compactification): projective line over ℝ is homeomorphic to the one-point compactification of ℝ This PR continues the work from #18306. Original PR: https://github.com/leanprover-community/mathlib4/pull/18306 merge-conflict t-topology 920/0 Mathlib.lean,Mathlib/Topology/Compactification/OnePointHomeomorph.lean,Mathlib/Topology/Compactification/OnePointRealLemmas.lean 3 3 ['bjoernkjoshanssen', 'github-actions', 'leanprover-community-bot-assistant'] nobody
324-13082
10 months ago
326-7010
326 days ago
21-20473
21 days
26994 Paul-Lez
author:Paul-Lez
feat(Topology/MetricSpace/Pseudo/Defs): add easy lemma about opens in topological spaces Split from #26992 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-topology easy 9/0 Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 1 4 ['Paul-Lez', 'github-actions', 'grunweg'] nobody
322-74208
10 months ago
322-75630
322 days ago
0-11233
3 hours
21039 eric-wieser
author:eric-wieser
hack: override `instance` to insert `fast_instance%` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-meta 40/4 Mathlib/Algebra/Equiv/TransferInstance.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/Tactic/FastInstance.lean,Mathlib/Topology/FiberBundle/Basic.lean 4 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
322-56110
10 months ago
unknown
0-0
0 seconds
26911 JovanGerb
author:JovanGerb
chore: fix naming of `mono` and `monotone` The naming convention says: "We use `_mono` for `a ≤ b → f a ≤ f b` and `_anti` for `a ≤ b → f b ≤ f a`, so we also use `_monotone` for `Monotone f`, `_antitone` for `Antitone f`, `_strictMono` for `StrictMono f`, `_strictAnti` for `StrictAnti f`, etc..." This PR swaps `mono`/`anti` and `monotone`/`antitone` where required so that `monotone` refers to `Monotone`, while `mono` refers to a lemma that might be tagged with `@[gcongr]` This PR does not address - `monotone_right`/`mono_right` vs `right_monotone`/`right_mono` - `monotone_arcsin` vs `arcsin_monotone` edit: TODO: `ideal_mono` and friends --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated merge-conflict 238/171 Archive/Imo/Imo1962Q1.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/Finset.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/Degree/CardPowDegree.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Convex/Deriv.lean,Mathlib/Analysis/Normed/Order/UpperLower.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Combinatorics/SetFamily/Kleitman.lean,Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Lemma.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/Nat/Choose/Factorization.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/MeasurablyGenerated.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/FermatPsp.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/Order/Concept.lean,Mathlib/Order/Filter/AtTopBot/Archimedean.lean,Mathlib/Order/Filter/AtTopBot/Defs.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Heyting/Boundary.lean,Mathlib/Order/Heyting/Regular.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/Interval/Set/Fin.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/UpperLower/Closure.lean,Mathlib/Probability/StrongLaw.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean 59 11 ['JovanGerb', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'linesthatinterlace', 'mathlib-bors', 'mathlib-merge-conflicts'] bryangingechen
assignee:bryangingechen
322-34815
10 months ago
322-75814
322 days ago
2-55296
2 days
25611 erdOne
author:erdOne
chore(RingTheory): add `Algebra (FractionRing R) (FractionRing S)` Co-authored-by: Yakov Pechersky --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
152/108 Mathlib.lean,Mathlib/Algebra/Algebra/NonZeroDivisors.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/FractionRingAlgebra.lean,Mathlib/RingTheory/Localization/Integral.lean 10 20 ['alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky'] nobody
318-82226
10 months ago
352-77912
352 days ago
2-26945
2 days
18230 digama0
author:digama0
feat(Tactic/ScopedNS): extend `scoped[NS]` to more commands refactor `ScopedNS` to remove error prone repetitiveness and extend it to other commands such as `syntax`, `macro`, `elab`, etc. Co-authored-by: Jon Eugster --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 201/26 Mathlib/Tactic/ScopedNS.lean,MathlibTest/scopedNS.lean 2 7 ['adomani', 'digama0', 'eric-wieser', 'github-actions', 'joneugster', 'kbuzzard'] nobody
317-2287
10 months ago
460-1792
460 days ago
41-32344
41 days
27330 BoltonBailey
author:BoltonBailey
feat(Tactic/Linter): add TacticMs for natural subtraction and division This is a (pair of) short tactic scripts I wrote for Project Numina while vetting formal formal statements (thanks to [this guide](https://github.com/mirefek/lean-tactic-programming-guide) for the primer). The scripts check for the presence of natural subtraction and natural division, which can often lead to mistakes. Of course, Mathlib allows natural subtraction freely, so it's not obvious this could be made useful to Mathlib itself. Still, maybe it's of use to some other project, so I'll leave it here. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter 66/0 Mathlib/Tactic/Linter/TruncatedNat.lean 1 2 ['BoltonBailey', 'eric-wieser', 'github-actions'] nobody
312-32812
10 months ago
unknown
0-0
0 seconds
25284 alreadydone
author:alreadydone
feat(LinearAlgebra/Contraction): bijectivity of `dualTensorHom` + generalize to CommSemiring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
167/32 Mathlib/Data/Finsupp/Defs.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean 5 16 ['alreadydone', 'eric-wieser', 'github-actions', 'kckennylau', 'leanprover-bot', 'leanprover-community-bot-assistant'] nobody
311-46766
10 months ago
318-12533
318 days ago
45-36570
45 days
22749 joelriou
author:joelriou
feat(CategoryTheory/Abelian): the Gabriel-Popescu theorem as a localization with respect to a Serre class This PR introduces a structure `GabrielPopescuPackage C` which contains the information to say that the abelian category `C` is a localization of a category of modules with respect to a suitable Serre class. --- - [x] depends on: #26033 - [ ] depends on: #26663 - [x] depends on: #22733 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 202/6 Mathlib.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Abelian/SerreClass/Bousfield.lean,Mathlib/CategoryTheory/Abelian/SerreClass/MorphismProperty.lean,Mathlib/CategoryTheory/ObjectProperty/ContainsZero.lean 5 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
311-3652
10 months ago
330-75853
330 days ago
0-10614
2 hours
26784 eric-wieser
author:eric-wieser
chore: remove suppress_compilation Still not exhaustive. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 0/37 Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Basic.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Bilinear.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Completeness.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Mul.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NNNorm.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/CategoryTheory/Abelian/Projective/Resolution.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean 18 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
310-62313
10 months ago
unknown
0-0
0 seconds
26987 joelriou
author:joelriou
chore: deprecating module LinearAlgebra.PiTensorProduct --- - [ ] depends on: #26464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
1209/934 Mathlib.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/SubtypeNeLift.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean 10 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
310-4665
10 months ago
323-6431
323 days ago
0-2
2 seconds
27435 callesonne
author:callesonne
feat(Normed/Algebra/Logarithm): add FormalMultilinearSeries of logarithm around `1` This PR adds the `FormalMultilinearSeries` corresponding to `log` around `1` (or rather, corresponding to `log(1 + x)`. For now, this PR just adds the definition, and copies over as many (easy) results as possible from the corresponding exponential file. In a follow up PR, we will add a criterion for when the logarithm converges on the unit disk (based on the growth of the inverse norms of naturals in the given algebra), and show that this holds for any Q_p algebra. This work has been done as part of the workshop "Formalizing Class Field Theory" in Oxford. Since much of this is copy-pasting the Exponential file, I have kept Anatole Dedecker and Eric Wieser as coauthors. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis 311/0 Mathlib/Analysis/Normed/Algebra/Logarithm.lean 1 1 ['github-actions'] nobody
309-69920
10 months ago
309-70258
309 days ago
0-29
29 seconds
24668 robertmaxton42
author:robertmaxton42
feat(LinearAlgebra): add inductive principle for the free product of algebras * Add `FreeProduct.inductionOn` and `.asPowers.inductionOn`. - [ ] depends on: #24532 --- * `simp↓` on `empty_rel'_bot`: the LHS is indeed not in simp-normal form, but `simp` can't solve the full lemma (if only because `Function.onFun` isn't marked `@[simp]`) and the actual simp-normal form of `rel'` isn't terribly useful for humans. Since I do expect users to type `rel' R A` by hand, I claim this use of `simp↓` is justified. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
205/9 Mathlib/LinearAlgebra/FreeProduct/Basic.lean 1 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
308-34234
10 months ago
387-46443
387 days ago
0-229
3 minutes
13973 digama0
author:digama0
feat: lake exe refactor, initial framework This is the initial framework code for `lake exe refactor`. To use it, you add your refactoring to `Refactor/Main.lean` (note, you have to actually write some metaprogramming code here for the refactoring itself), and the harness will run it on specified files and apply the generated edits. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 139/0 Refactor/Main.lean,lakefile.lean 2 11 ['adomani', 'digama0', 'eric-wieser', 'github-actions', 'joneugster', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
304-74225
10 months ago
653-77678
653 days ago
6-30547
6 days
12181 adomani
author:adomani
lint also `let` vs `have` This PR is symmetrical to #12157: here we lint for non-`Type`-valued `let`s. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter 797/544 Archive/Imo/Imo1962Q1.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Mathlib.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/Homology/HomologicalComplexBiprod.lean,Mathlib/Algebra/Homology/HomologySequence.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/Algebra/Homology/ShortComplex/Abelian.lean,Mathlib/Algebra/Homology/ShortComplex/ConcreteCategory.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/ExactFunctor.lean,Mathlib/Algebra/Homology/ShortComplex/Homology.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/ShortComplex/Linear.lean,Mathlib/Algebra/Homology/ShortComplex/Preadditive.lean,Mathlib/Algebra/Homology/ShortComplex/PreservesHomology.lean,Mathlib/Algebra/Homology/ShortComplex/QuasiIso.lean,Mathlib/Algebra/Homology/ShortComplex/RightHomology.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/Killing.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Localization.lean,Mathlib/Algebra/Module/Zlattice.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/DoldKan/Homotopies.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Complex/Tietze.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Rayleigh.lean,Mathlib/Analysis/NormedSpace/ContinuousAffineMap.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Completeness.lean,Mathlib/Analysis/NormedSpace/Spectrum.lean,Mathlib/Analysis/SpecialFunctions/Integrals.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Abelian/Exact.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Abelian/Transfer.lean,Mathlib/CategoryTheory/Adhesive.lean,Mathlib/CategoryTheory/Closed/Cartesian.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/EffectiveEpi/Extensive.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Functor/EpiMono.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/CategoryTheory/Galois/Decomposition.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/GradedObject/Trifunctor.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory.lean,Mathlib/CategoryTheory/Limits/Constructions/EpiMono.lean,Mathlib/CategoryTheory/Limits/Constructions/WeaklyInitial.lean,Mathlib/CategoryTheory/Limits/FilteredColimitCommutesFiniteLimit.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/IsLimit.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/FiniteLimits.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean,Mathlib/CategoryTheory/Localization/Pi.lean,Mathlib/CategoryTheory/Localization/Resolution.lean,Mathlib/CategoryTheory/Monad/Monadicity.lean,Mathlib/CategoryTheory/PUnit.lean,Mathlib/CategoryTheory/Sites/Coherent/CoherentSheaves.lean,Mathlib/CategoryTheory/Sites/Coherent/RegularSheaves.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Sites/Preserves.lean,Mathlib/CategoryTheory/Sites/Pullback.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean,Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/SetFamily/Kleitman.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity.lean 271 0 [] nobody
302-84541
9 months ago
774-7075
774 days ago
0-8
8 seconds
10190 jstoobysmith
author:jstoobysmith
feat(AlgebraicTopology): add Augmented Simplex Category - Added the definition of the category FinLinOrd of finite linear ordered sets. - Added the definition of the augmented simplex category `AugmentedSimplexCategory`, and showed it is the Skeleton of FinLinOrd. - Showed that the category of augmented simplicial objects defined as a comma category is equivalent to the category of functors from `AugmentedSimplexCategory^\op` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP t-category-theory new-contributor merge-conflict 720/0 Mathlib.lean,Mathlib/AlgebraicTopology/AugmentedSimplexCategory.lean,Mathlib/AlgebraicTopology/SimplicialObject.lean,Mathlib/Order/Category/FinLinOrd.lean 4 5 ['TwoFX', 'YaelDillies', 'joelriou', 'jstoobysmith'] nobody
302-84479
9 months ago
839-77405
839 days ago
7-63253
7 days
10084 alreadydone
author:alreadydone
draft for Van Kampen The part about the homotopy lifting property for covering maps has been extracted to #22649 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebraic-topology 91/24 Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/VanKampen.lean 2 1 ['leanprover-community-bot-assistant'] nobody
302-84388
9 months ago
unknown
0-0
0 seconds
25914 eric-wieser
author:eric-wieser
feat: add an ext lemma for the opposite category This powers up `aesop_cat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory awaiting-CI 18/56 Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/CategoryTheory/Abelian/Opposite.lean,Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/CategoryTheory/GuitartExact/Opposite.lean,Mathlib/CategoryTheory/Limits/Opposites.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Functor.lean,Mathlib/Combinatorics/Quiver/Basic.lean 9 7 ['eric-wieser', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'robin-carlier'] nobody
302-82122
9 months ago
348-71538
348 days ago
0-523
8 minutes
20208 js2357
author:js2357
feat: Define the localization of a fractional ideal at a prime ideal Define the localization of a fractional ideal at a prime ideal, and prove some basic properties. --- Alternate version of #14237 generalized to use `IsLocalization` and `IsFractionRing` rather than `Localization.AtPrime` and `FractionRing` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
248/0 Mathlib.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean 2 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
302-67365
9 months ago
522-48466
522 days ago
0-21
21 seconds
24260 plp127
author:plp127
feat(Topology): add API for Hereditarily Lindelof spaces Copies the stuff about Lindelof spaces to Hereditarily Lindelof spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 222/42 Mathlib/Topology/Compactness/Lindelof.lean 1 15 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'urkud'] urkud
assignee:urkud
302-36937
9 months ago
373-83977
373 days ago
29-42365
29 days
27181 ADedecker
author:ADedecker
chore: more conceptual definition of `ValuativeRel.ValueGroupWithZero` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
685/467 Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/NonZeroDivisors.lean,Mathlib/RingTheory/OreLocalization/Ring.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean 9 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
302-36926
9 months ago
unknown
0-0
0 seconds
27813 javra
author:javra
feat: IMO 2025 Q1 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO WIP 882/0 Archive/Imo/Imo2025Q1.lean 1 1 ['github-actions'] nobody
301-85347
9 months ago
302-145
302 days ago
0-14
14 seconds
27608 RemyDegenne
author:RemyDegenne
feat(MeasureTheory): typeclasses for measures with finite moments WIP because it seems useful for #26291 but I want to investigate more. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-measure-probability 97/17 Mathlib.lean,Mathlib/MeasureTheory/Measure/Typeclasses/FiniteMoments.lean,Mathlib/Probability/Moments/CovarianceBilin.lean 3 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
301-71802
9 months ago
305-55666
305 days ago
0-1
1 second
20008 amellendijk
author:amellendijk
feat(NumberTheory): Selberg sieve This PR is a working draft of the full proof of the fundamental theorem of the Selberg sieve. I will create dependent PRs as I clean up the code. This work was used in the first proof of the prime number theorem in PNT+. --- - [x] depends on: #20025 - [x] depends on: #20026 - [x] depends on: #20779 - [x] depends on: #21880 - [ ] depends on: #27702 - [ ] depends on: #27707 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory blocked-by-other-PR merge-conflict awaiting-author t-analysis 937/0 Mathlib/NumberTheory/SelbergSieve/Basic.lean,Mathlib/NumberTheory/SelbergSieve/Selberg.lean,docs/references.bib 3 3 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
301-69647
9 months ago
unknown
0-0
0 seconds
27050 BoltonBailey
author:BoltonBailey
doc(Control/Monad/Cont): add docstrings Split of #25917. Adds docstrings to this file. Note: this documentation was written by asking Cursor (Claude 3.5 sonnet) to write the docstrings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data LLM-generated 183/0 Mathlib/Control/Monad/Cont.lean 1 9 ['BoltonBailey', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
301-29357
9 months ago
320-47040
320 days ago
0-84441
23 hours
27225 eric-wieser
author:eric-wieser
refactor(Tactic/Lift): deprecate the third with argument We already have a number of tactics where the clearing happens all the time, and you have to opt out with `id h`. This also fixes a bug where `lift z to Nat with n hn this_is_unused` would silently ignore `this_is_unused`. --- - [ ] depends on: #27223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta merge-conflict 21/9 Mathlib/Tactic/Lift.lean,MathlibTest/lift.lean 2 9 ['JovanGerb', 'adomani', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'vihdzp'] JovanGerb
assignee:JovanGerb
300-32848
9 months ago
300-79748
300 days ago
15-64386
15 days
26383 eric-wieser
author:eric-wieser
feat: `Real.sin_eq_one_iff` and similar --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 155/101 Mathlib/Algebra/ModEq.lean,Mathlib/Analysis/SpecialFunctions/Complex/Log.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean 5 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
299-4630
9 months ago
unknown
0-0
0 seconds
25991 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve): generalise nonsingular condition This PR continues the work from #25219. Original PR: https://github.com/leanprover-community/mathlib4/pull/25219 merge-conflict t-algebraic-geometry 2127/1561 Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Span.lean 15 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
299-4512
9 months ago
329-25629
329 days ago
18-21743
18 days
25986 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve/NumberField/Height): define heights on Weierstrass curves This PR continues the work from #15786. Original PR: https://github.com/leanprover-community/mathlib4/pull/15786 t-algebraic-geometry 650/0 Mathlib/AlgebraicGeometry/EllipticCurve/NumberField/Height.lean 1 2 ['Multramate', 'github-actions'] nobody
299-4505
9 months ago
unknown
0-0
0 seconds
25985 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve/Jacobian): add equivalences between points and explicit WithZero types This PR continues the work from #14923. Original PR: https://github.com/leanprover-community/mathlib4/pull/14923 merge-conflict t-algebraic-geometry 262/66 Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,scripts/style-exceptions.txt 4 1 ['Multramate'] nobody
299-4500
9 months ago
347-47718
347 days ago
0-48
48 seconds
25982 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve/Group): compute range of baseChange This PR continues the work from #10142. Original PR: https://github.com/leanprover-community/mathlib4/pull/10142 merge-conflict t-algebraic-geometry 421/212 Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/Subgroup/Basic.lean,Mathlib/GroupTheory/Submonoid/Operations.lean 6 1 ['Multramate'] nobody
299-4486
9 months ago
347-47885
347 days ago
0-51
51 seconds
25362 adomani
author:adomani
feat: a linter for duplicated `open` This linter warns when a namespace is repeated. It makes an effort to report only the problematic namespaces, but is not especially robust. The linter has some awareness of the `namespace` command, so ```lean def X.Y := 0 open X namespace X open Y ``` will flag both `namespace X` and `open Y` as problematic, even though it was the `open `X` that became redundant with `namespace X`. However, I will not have much time to devote to polishing this and there are quite a few exception in Mathlib before a better version could be seriously considered for adoption. [#mathlib4 > linter requests @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/linter.20requests/near/520273644) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-linter large-import 191/94 Mathlib.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/GroupWithZero/Pi.lean,Mathlib/Algebra/Order/Ring/InjSurj.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Basic.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Finite/Defs.lean,Mathlib/Data/Ineq.lean,Mathlib/Data/List/Lemmas.lean,Mathlib/Data/List/NatAntidiagonal.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Nat/Prime/Basic.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Init.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Pairwise.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ApplyFun.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CongrM.lean,Mathlib/Tactic/Find.lean,Mathlib/Tactic/Lift.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DupOpen.lean,Mathlib/Tactic/NormNum/PowMod.lean,Mathlib/Tactic/Recover.lean,Mathlib/Tactic/ReduceModChar.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/SelectInsertParamsClass.lean,Mathlib/Tactic/Widget/StringDiagram.lean,Mathlib/Topology/CWComplex/Abstract/Basic.lean,Mathlib/Topology/ContinuousMap/Interval.lean,Mathlib/Topology/Germ.lean,Mathlib/Topology/Homotopy/HSpaces.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/Order/PartialSups.lean,Mathlib/Topology/Separation/DisjointCover.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Util/CountHeartbeats.lean,MathlibTest/DupOpen.lean 47 14 ['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
299-4275
9 months ago
361-84457
361 days ago
0-23
23 seconds
25238 Hagb
author:Hagb
feat(Tactic/ComputeDegree): add support for scalar multiplication with different types It would be able to deal with `a • (X : R[X])` where `a : S` is in a different type `S` with `[SMulZeroClass S R]`. --- - [x] depends on: #25237 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta new-contributor 17/5 Mathlib/Tactic/ComputeDegree.lean,MathlibTest/ComputeDegree.lean 2 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
299-4270
9 months ago
329-25939
329 days ago
38-26044
38 days
17145 Command-Master
author:Command-Master
feat(Archive/Ioi/Ioi2024Q2): a proof of the solution of question 2 from IOI 2024. --- - [x] depends on: #17189 - [x] depends on: #17190 - [x] depends on: #17191 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP IMO large-import 1013/1 Archive.lean,Archive/Ioi/Ioi2024Q2.lean,Mathlib.lean,Mathlib/Combinatorics/Orbits.lean,Mathlib/Data/List/SplitLengths.lean,Mathlib/Data/List/Transpose.lean,Mathlib/Data/List/Zip.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Defs.lean,Mathlib/Data/Vector/MapLemmas.lean,Mathlib/Data/Vector/Transpose.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/Logic/Function/Iterate.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Partition/Finpartition.lean 15 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
299-4230
9 months ago
unknown
0-0
0 seconds
27643 ADedecker
author:ADedecker
Ad bdd unif conv --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 111/26 Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/UniformConvergence.lean,Mathlib/Topology/Bornology/Absorbs.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
298-69389
9 months ago
unknown
0-0
0 seconds
26385 jjdishere
author:jjdishere
feat(RingTheory/Perfectoid): define integral perfectoid rings This PR continues the work from #22331. Original PR: https://github.com/leanprover-community/mathlib4/pull/22331 merge-conflict WIP t-ring-theory 1081/15 Mathlib.lean,Mathlib/Algebra/Ring/Aut.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/PowTransition.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/Perfectoid/BDeRham.lean,Mathlib/RingTheory/Perfectoid/FontaineTheta.lean,Mathlib/RingTheory/Perfectoid/IntergalPerfectoid.lean,Mathlib/RingTheory/Perfectoid/Untilt.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/Complete.lean,Mathlib/RingTheory/WittVector/TeichmullerSeries.lean,docs/references.bib 16 3 ['github-actions', 'jjdishere', 'leanprover-community-bot-assistant'] nobody
298-6697
9 months ago
339-31120
339 days ago
0-79
1 minute
22909 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/Pure): pure submodules A submodule `N` of an `R`-module is *pure* if all maps `S ⊗[R] N → S ⊗[R] M` deduced by base change from the injection of `N` into `M` are injective, for all `R`-algebras `S`. This is expressed by the class `Submodule.IsPure`. For type theoretic reason, the definition of `Submodule.IsPure` only considers algebras `S` in the same universe as `R`, but `Submodule.IsPure.baseChange_injective` establishes the property for all universes. * `Submodule.IsComplemented.isPure` : a complemented submodule is pure. Co-authored with @mariainesdff --- - [ ] depends on: #22898 - [ ] depends on: #22908 - [x] depends on: #22911 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory blocked-by-other-PR 592/3 Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/Pure.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/Small.lean 11 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
298-6412
9 months ago
442-43618
442 days ago
0-1047
17 minutes
22908 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/Finiteness/Small): tensor product of the system of small submodules The directed limit of a tensor product for the directed system of small submodules. Co-authored with @mariainesdff --- - [ ] depends on: #22898 - [x] depends on: #22911 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory blocked-by-other-PR 624/2 Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/Small.lean 9 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
298-6364
9 months ago
442-43617
442 days ago
0-3552
59 minutes
22898 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/TensorProduct/DirectLimit/FG): direct limit of finitely generated submodules and tensor product --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-ring-theory 399/0 Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean 5 9 ['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'leanprover-community-bot-assistant'] nobody
298-6357
9 months ago
432-38858
432 days ago
10-44390
10 days
20431 erdOne
author:erdOne
feat(RingTheory/AdicCompletion): monotonicity of adic-completeness --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 206/16 Mathlib.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Mono.lean,Mathlib/RingTheory/Finiteness/Ideal.lean 7 13 ['chrisflav', 'erdOne', 'github-actions'] nobody
298-6313
9 months ago
474-5347
474 days ago
32-78180
32 days
19596 Command-Master
author:Command-Master
feat(RingTheory/Valuation/PrimeMultiplicity): define `WithTop ℤ`-valued prime multiplicity on a fraction field Moves: - `multiplicity_addValuation` -> `AddValuation.multiplicity` - `multiplicity_addValuation_apply` -> `AddValuation.multiplicity_apply` --- - [x] depends on: #19149 - [x] depends on: #18786 - [x] depends on: #19122 - [x] depends on: #18954 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory large-import 101/37 Mathlib/Data/ENat/Basic.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Valuation/PrimeMultiplicity.lean 3 11 ['ChrisHughes24', 'Command-Master', 'Vierkantor', 'faenuccio', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
298-6298
9 months ago
502-68632
502 days ago
8-2214
8 days
18646 jxjwan
author:jxjwan
feat(RingTheory): isotypic components --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory new-contributor 308/0 Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/RingTheory/Isotypic.lean,Mathlib/RingTheory/SimpleModule.lean 3 1 ['github-actions'] nobody
298-6291
9 months ago
550-86284
550 days ago
20-16585
20 days
17246 pechersky
author:pechersky
feat(RingTheory/PrimaryDecomposition): PIR of Noetherian under jacobson condition --- - [x] depends on: #17634 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 653/1 Mathlib.lean,Mathlib/NumberTheory/KummerDedekind.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Jacobson/Ideal.lean,Mathlib/RingTheory/PrimaryDecomposition.lean,docs/references.bib 8 8 ['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] erdOne
assignee:erdOne
298-6285
9 months ago
559-28178
559 days ago
13-7138
13 days
21474 erdOne
author:erdOne
feat(RingTheory): replace `Ring.DimensionLEOne` with `Ring.KrullDimLE` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory large-import 285/170 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Basic.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/KrullDimension/Basic.lean,Mathlib/RingTheory/KrullDimension/Localization.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean,Mathlib/RingTheory/KrullDimension/Quotient.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/Nilpotent/End.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/PID/Quotient.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Maximal/Localization.lean 16 1 ['github-actions'] nobody
298-6229
9 months ago
478-72666
478 days ago
0-81
1 minute
8195 newell
author:newell
feat: add a group presentation of the `DihedralGroup n` Add group presentation $\< a, b\ |\ a ^ 2 = 1, b ^ 2 = 1, (a * b) ^ n = 1 \>$ for `DihedralGroup n`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-group-theory 206/2 Mathlib/GroupTheory/PresentedGroup.lean,Mathlib/GroupTheory/SpecificGroups/Dihedral.lean 2 6 ['kbuzzard', 'newell'] nobody
298-6028
9 months ago
unknown
0-0
0 seconds
11212 shuxuezhuyi
author:shuxuezhuyi
feat(GroupTheory/GroupAction): instance `MulAction (β ⧸ H) α` We instance this naturally from `MulAction β α` when `H` is a normal subgroup and acts trivially on `α`. We also instance `IsometricSMul (M ⧸ N) X` in this way. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-group-theory large-import 53/1 Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean 2 6 ['YaelDillies', 'github-actions', 'grunweg', 'urkud'] eric-wieser
assignee:eric-wieser
298-6021
9 months ago
511-7360
511 days ago
193-73871
193 days
27886 alreadydone
author:alreadydone
feat(Algebra): (Mv)Polynomial.X is irreducible assuming NoZeroDivisors --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
178/66 Archive/Examples/Eisenstein.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Domain.lean,Mathlib/Algebra/Polynomial/Degree/Units.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/Eisenstein/Criterion.lean 13 3 ['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
298-3756
9 months ago
299-10497
299 days ago
0-80025
22 hours
26200 adomani
author:adomani
fix: add label when landrun fails Adds the `permission-denied` label on PRs that get blocked by landrun. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict CI 68/8 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
297-41623
9 months ago
297-41623
297 days ago
46-52210
46 days
17469 joelriou
author:joelriou
feat(Algebra/ModuleCat/Differentials/Presheaf): the presheaf of relative differentials Given a functor `F : C ⥤ D`, presheaves of commutative rings `S`, `R` and a morphism `φ : S ⟶ F.op ⋙ R`, we show that derivations relative to `φ` are representable by a presheaf of `R`-modules. This is obtained by reducing to the case of absolute differentials. The construction shall allow to deduce the presheaf version of the cokernel sequence $$f^\star \Omega_{Y/S} ⟶ \Omega_{X/S} ⟶ \Omega_{X/Y} ⟶ 0$$ when `f : X ⟶ Y` and `g : Y ⟶ S` are morphisms of schemes. --- - [x] depends on: #17366 - [x] depends on: #19507 - [x] depends on: #17388 - [x] depends on: #16755 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory large-import merge-conflict t-algebraic-geometry 391/10 Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean 1 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
297-36972
9 months ago
600-80079
600 days ago
0-530
8 minutes
25288 robertmaxton42
author:robertmaxton42
feat(CategoryTheory): generalize `Discrete` to arbitrary morphism levels Using an unused `let`, add an 'anchor' to the definition of `Discrete`, allowing it to carry a second universe level that is then used to permit discrete categories to live in any `Cat.{v, u}`. (This trick was borrowed from the code of `ULiftHom`.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 38/32 Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Discrete/Basic.lean,Mathlib/CategoryTheory/IsConnected.lean 3 3 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] nobody
297-26331
9 months ago
366-16032
366 days ago
0-15615
4 hours
27709 kckennylau
author:kckennylau
chore: fix links --- See https://github.com/leanprover-community/mathlib4/pull/27545#discussion_r2238206933 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 269/256 Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/Group/Even.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Order/Field/Pi.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Order/Monovary.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Ring/Basic.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Complex/OperatorNorm.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Meromorphic/IsolatedZeros.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean,Mathlib/CategoryTheory/Abelian/Opposite.lean,Mathlib/CategoryTheory/Adjunction/Opposites.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Localization/Equivalence.lean,Mathlib/CategoryTheory/Localization/Trifunctor.lean,Mathlib/CategoryTheory/ObjectProperty/Basic.lean,Mathlib/CategoryTheory/Sites/Coherent/SheafComparison.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/Hall/Finite.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Combinatorics/Quiver/Covering.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Fin/Pigeonhole.lean,Mathlib/Data/FinEnum/Option.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/Data/Fintype/BigOperators.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Int/Basic.lean,Mathlib/Data/Int/Cast/Basic.lean,Mathlib/Data/Int/Cast/Lemmas.lean,Mathlib/Data/Int/Lemmas.lean,Mathlib/Data/Int/Order/Lemmas.lean,Mathlib/Data/Int/Range.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/Destutter.lean,Mathlib/Data/List/Forall2.lean,Mathlib/Data/List/Lattice.lean,Mathlib/Data/List/Lemmas.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/List/ProdSigma.lean,Mathlib/Data/List/Sections.lean,Mathlib/Data/List/Sublists.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matroid/Minor/Restrict.lean,Mathlib/Data/Multiset/FinsetOps.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Cast/WithTop.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/LCM.lean,Mathlib/Data/PSigma/Order.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rat/Encodable.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Data/Set/Functor.lean,Mathlib/Data/Set/Notation.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Data/Sigma/Lex.lean 157 87 ['github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
297-24542
9 months ago
303-38183
303 days ago
0-9
9 seconds
10345 newell
author:newell
feat(Algebra.Module.Zlattice): Add Voronoi Domain Adds the definition for a Voronoi Domain in regards to the $\mathbb{Z}$-lattice: $$C := \lbrace\mathbf{w} \in \mathbb{V}^n\ :\ |\mathbf{w}| \leq |\mathbf{w} - \mathbf{v}|\ \text{for all}\ \mathbf{v} \in \mathbf{L} \rbrace$$ where $\mathbf{L}\$ is the $\mathbb{Z}$-lattice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
17/0 Mathlib/Algebra/Module/Zlattice.lean 1 3 ['alreadydone', 'newell'] nobody
296-42430
9 months ago
unknown
0-0
0 seconds
28075 tristan-f-r
author:tristan-f-r
chore(Finsupp/Indicator): make non-classical This was surprising to see on a data-carrying definition. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data easy merge-conflict 11/9 Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Indicator.lean 2 4 ['github-actions', 'mathlib-merge-conflicts', 'ocfnash', 'tristan-f-r'] nobody
294-51255
9 months ago
295-8674
295 days ago
0-85904
23 hours
28168 astrainfinita
author:astrainfinita
feat: hensel's lemma for topological rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra WIP t-ring-theory t-topology
label:t-algebra$
616/0 Mathlib/RingTheory/Polynomial/Hensel.lean 1 1 ['github-actions'] nobody
293-36690
9 months ago
unknown
0-0
0 seconds
20671 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Asymptotics/SpecificAsymptotics): Proving that 𝛔ₖ(n) = O(nᵏ⁺¹) This PR proves a result about the $\sigma_k(n)$ arithmetic function, namely, that it is $O\left(n^{k+1}\right)$. Main theorem: `theorem sigma_asymptotic (k : ℕ) : (fun n ↦ (σ k n : ℝ)) =O[atTop] (fun n ↦ (n ^ (k + 1) : ℝ))` This result was proved as part of the sphere packing project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor large-import merge-conflict awaiting-author 29/0 Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean 1 3 ['b-mehta', 'github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
293-9832
9 months ago
493-71047
493 days ago
9-59130
9 days
20267 joelriou
author:joelriou
feat(CategoryTheory): comma categories are accessible --- (I shall probably not work on this PR in the near future.) - [ ] depends on: #19937 - [ ] depends on: #19945 - [ ] depends on: #19959 - [ ] depends on: #20005 - [ ] depends on: #19955 - [x] depends on: #20263 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-category-theory 1513/7 Mathlib.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/Comma/CardinalArrow.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Comma.lean,Mathlib/CategoryTheory/Limits/TypesFiltered.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/CardinalFilteredPresentation.lean,Mathlib/CategoryTheory/Presentable/Comma.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Presentable/Limits.lean,Mathlib/CategoryTheory/Presentable/LocallyPresentable.lean,Mathlib/CategoryTheory/Presentable/ParallelMaps.lean,Mathlib/SetTheory/Cardinal/HasCardinalLT.lean,docs/references.bib 15 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
293-2799
9 months ago
unknown
0-0
0 seconds
27451 kckennylau
author:kckennylau
feat(RingTheory/Valuation): define ball, closed ball, and sphere *From the 2025 Local Class Field Theory Workshop.* --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 27/0 Mathlib/RingTheory/Valuation/Basic.lean 1 13 ['JovanGerb', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky', 'wwylele'] nobody
291-74126
9 months ago
291-74127
291 days ago
17-52359
17 days
27987 kckennylau
author:kckennylau
feat(RingTheory/Valuation): define ball, closed ball, and sphere --- The pullback PR of #26827 and #27451. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory large-import 73/0 Mathlib/RingTheory/Valuation/Basic.lean 1 4 ['JovanGerb', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
291-73755
9 months ago
291-73756
291 days ago
6-6455
6 days
27444 grunweg
author:grunweg
feat: generalise more lemmas to enorms The selection of lemmas may seem eclectic, but follows a clear path: I'm working on generalising the last section of `IntegrableOn.lean` to enorms. (This will be continued in a later PR.) --- Commits can be reviewed independently. - [x] depends on: #27419 (first commits) - [x] depends on: #27456 (last commits) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) carleson WIP 10/0 Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean 1 3 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot'] nobody
291-69751
9 months ago
309-52762
309 days ago
0-259
4 minutes
24862 grunweg
author:grunweg
feat(LocallyIntegrable): generalise more to enorms --- Note: github's diff is very confused; it includes changes which very clearly are already on the master branch. I'll see which of the remaining changes after the dependencies have landed is already polished enough. - [x] depends on: #24352 - [x] depends on: #27457 (this half is settled already) - [ ] open question: filter lemmas; IsBoundedUnder is not the right condition as-is; need to think (or just not generalise) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson t-measure-probability 171/88 Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean 3 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
291-67476
9 months ago
381-48835
381 days ago
0-1
1 second
25133 erdOne
author:erdOne
feat(Tactic/NormNum): support positive characteristic Co-authored-by: Heather Macbeth --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP large-import t-meta 250/39 Mathlib/Tactic/NormNum/CharP.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/Test.lean 5 5 ['erdOne', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
290-2515
9 months ago
unknown
0-0
0 seconds
27003 eric-wieser
author:eric-wieser
chore: use `Simp.ResultQ` more often Also uses `~q` in place of manual `isDefEq` matching. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 18/22 Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/ReduceModChar.lean 3 7 ['JovanGerb', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
290-1979
9 months ago
290-1980
290 days ago
32-70098
32 days
16150 urkud
author:urkud
feat(Dynamics): Hopf decomposition Prove Hopf decomposition. - [ ] rewrite to work with the saturations right away, not with a wandering set. - [ ] generalize to an action of a countable group, use fundamental domains. --- - [ ] depends on: #16146 - [ ] depends on: #16126 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-dynamics t-measure-probability 212/0 Mathlib.lean,Mathlib/Dynamics/Ergodic/Dissipative.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean 3 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
289-56351
9 months ago
unknown
0-0
0 seconds
25401 digama0
author:digama0
feat(Util): SuppressSorry option See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 342/0 Mathlib.lean,Mathlib/Util/CommandElabHook.lean,Mathlib/Util/SuppressSorry.lean,MathlibTest/suppressSorry.lean 4 15 ['digama0', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] alexjbest
assignee:alexjbest
289-43175
9 months ago
289-43175
289 days ago
71-27957
71 days
27759 plp127
author:plp127
chore(FreeAbelianGroup): deprecate multiplication Deprecate multiplication on `FreeAbelianGroup` in favor of using `MonoidAlgebra`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
176/86 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/FreeRing.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
288-9621
9 months ago
301-76333
301 days ago
0-79663
22 hours
21776 alreadydone
author:alreadydone
Invertible modules --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
571/26 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/PicardGroup.lean 5 3 ['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
287-9170
9 months ago
472-21659
472 days ago
0-19
19 seconds
20722 ctchou
author:ctchou
feat(Counterexamples): the Vitali set is non-measurable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-measure-probability new-contributor merge-conflict awaiting-author 258/3 Counterexamples.lean,Counterexamples/VitaliSetNotMeasurable.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,docs/1000.yaml 4 76 ['ctchou', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'vihdzp'] vihdzp
assignee:vihdzp
286-85916
9 months ago
500-77886
500 days ago
0-47663
13 hours
27446 grunweg
author:grunweg
chore: more enorm lemmas Nothing to see yet: this is a big mess! Start unrolling at `eLpNorm_le_eLpNorm_top_mul_eLpNorm_enorm`; that proof could be a good next target. Need a version of `eLpNorm'_const_smul' which applies to NNReal (or ENNReal, I guess): need to generalise a bunch of lemmas for that. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson 107/9 Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean 3 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
286-77430
9 months ago
309-51905
309 days ago
0-172
2 minutes
5897 eric-wieser
author:eric-wieser
feat: add a `MonadError` instance for `ContT` We already have a `MonadExcept` instance; this promotes it to `MonadError`. Note the issue with the existing `MonadExcept` instance still applies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 16/0 Mathlib/Control/Monad/Cont.lean 1 25 ['Vierkantor', 'YaelDillies', 'eric-wieser', 'github-actions', 'kmill'] nobody
285-330
9 months ago
711-13132
711 days ago
339-54818
339 days
28276 eric-wieser
author:eric-wieser
refactor: tidy `lift_unique` lemmas --- - [ ] depends on: #28275 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
37/20 Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Lie/UniversalEnveloping.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
284-86001
9 months ago
unknown
0-0
0 seconds
28502 gilesgshaw
author:gilesgshaw
feat(Logic/Basic): avoid unnecessary uses of choice Certain proofs are modified to remove a dependence on the axoim of choice --- - [ ] depends on: #28623 blocked-by-other-PR new-contributor merge-conflict awaiting-author t-logic 83/74 Mathlib/Logic/Basic.lean 1 7 ['Ruben-VandeVelde', 'eric-wieser', 'gilesgshaw', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
284-21328
9 months ago
287-6857
287 days ago
0-35689
9 hours
28622 alreadydone
author:alreadydone
chore(Mathlib): replace `=>` by `↦` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 51792/51792 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Hom/Rat.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Spectrum/Pi.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Matrix.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Unitization.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Finsupp/Fin.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Sigma.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/AlgCat/Monoidal.lean,Mathlib/Algebra/Category/BialgCat/Basic.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CoalgCat/Basic.lean,Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/Biproducts.lean,Mathlib/Algebra/Category/Grp/CartesianMonoidal.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/Grp/FilteredColimits.lean,Mathlib/Algebra/Category/Grp/Images.lean,Mathlib/Algebra/Category/Grp/Kernels.lean,Mathlib/Algebra/Category/Grp/LargeColimits.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/Grp/Preadditive.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Category/Grp/Zero.lean,Mathlib/Algebra/Category/GrpWithZero.lean,Mathlib/Algebra/Category/HopfAlgCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Images.lean,Mathlib/Algebra/Category/ModuleCat/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Closed.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Abelian.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Category/ModuleCat/Products.lean 3838 4 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
283-46655
9 months ago
283-46656
283 days ago
0-62065
17 hours
24793 tristan-f-r
author:tristan-f-r
feat: trace of unitarily similar matrices adds a theorem relating trace to unitarily similar matrices used in the easy direction of specht's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
7/0 Mathlib/LinearAlgebra/UnitaryGroup.lean 1 4 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'tristan-f-r'] nobody
283-42294
9 months ago
381-73743
381 days ago
1-55872
1 day
27198 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): the Yoneda embedding is monoidal (for Day convolution) We show that the Yoneda embedding is monoidal when we interpret its target category as Day presheaves (i.e presheaves with the Day convolution monoidal structure). The actual way we prove it is by registering a `LawfulDayConvolutionMonoidalCategoryStruct Cᵒᵖ (Type v₁) C`, for which the "interpretation" functor `C ⥤ Cᵒᵖ ⥤ Type v₁` is the Yoneda embedding. This allows to state a result independently of any size constraint on `C`. Then, we specialize to the case of a small category `C`, in this case, using the fact that the relevant colimit of preseaves exist, we use the fact that the interpretation functor induces a monoidal functor to put a `Monoidal` instance on the functor `dayYoneda : C ⥤ (Cᵒᵖ ⊛⥤ Type v₁) := yoneda ⋙ (equiv Cᵒᵖ _).inverse`. --- I was unsure about which form of simp lemmas we want for characterization of the monoidal structure on `dayYoneda`. I opted for making the "fully applied" lemmas simp, but still leaves the "unapplied" ones as non-simp just in case. - [ ] depends on: #27175 - [x] depends on: #25732 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict file-removed blocked-by-other-PR t-category-theory 1847/26 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Types.lean,Mathlib/CategoryTheory/Monoidal/Internal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Limits/Basic.lean,Mathlib/CategoryTheory/Monoidal/Limits/Preserves.lean 8 8 ['alreadydone', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
283-19861
9 months ago
318-3948
318 days ago
0-21
21 seconds
28626 alreadydone
author:alreadydone
chore(Archive, Counterexamples): replace => by ↦ --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 288/288 Archive/Arithcc.lean,Archive/Examples/IfNormalization/Result.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Archive/Examples/PropEncodable.lean,Archive/Imo/Imo1959Q1.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1977Q6.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2019Q1.lean,Archive/Imo/Imo2024Q5.lean,Archive/MiuLanguage/Basic.lean,Archive/MiuLanguage/DecisionSuf.lean,Archive/OxfordInvariants/Summer2021/Week3P1.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/AscendingDescendingSequences.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Archive/Wiedijk100Theorems/Partition.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Counterexamples/AharoniKorman.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CharPZeroNeCharZero.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/DirectSumIsInternal.lean,Counterexamples/GameMultiplication.lean,Counterexamples/Girard.lean,Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Phillips.lean,Counterexamples/Pseudoelement.lean,Counterexamples/QuadraticForm.lean,Counterexamples/SorgenfreyLine.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean 54 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
281-75781
9 months ago
281-75782
281 days ago
2-47136
2 days
26078 kckennylau
author:kckennylau
feat(AlgebraicGeometry): add x, y, px, py for points on elliptic curves --- Split from #25218. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebraic-geometry 44/0 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean 1 12 ['MichaelStollBayreuth', 'Multramate', 'acmepjz', 'dagurtomas', 'github-actions', 'kckennylau'] nobody
281-72791
9 months ago
281-72791
281 days ago
64-11252
64 days
19582 yu-yama
author:yu-yama
feat(GroupExtension/Abelian): define `OfMulDistribMulAction.equivH2` Mainly defines: - `structure GroupExtension.OfMulDistribMulAction N G [MulDistribMulAction G N]`: group extensions of `G` by `N` where the multiplicative action of `G` on `N` is the conjugation - `structure GroupExtension.OfMulDistribMulActionWithSection N G [MulDistribMulAction G N]`: group extensions with specific choices of sections - `def GroupExtension.OfMulDistribMulAction.equivH2`: a bijection between the equivalence classes of group extensions and $H^2 (G, N)$ --- - [x] depends on: #20802 (split PR: contains changes to the `Defs` file) - [x] depends on: #20998 (split PR: mainly adds the `Basic` file) - [ ] depends on: #26670 (split PR: adds the first part of the `Abelian` file) Here is a relevant TODO in Mathlib: https://github.com/leanprover-community/mathlib4/blob/4e9fa40d7c480937e09cd6e47a591bd6f3b8be42/Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean#L46-L48 I would appreciate your comments. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR new-contributor
label:t-algebra$
750/14 Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Abelian.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,docs/references.bib 4 5 ['YaelDillies', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
281-57836
9 months ago
504-28395
504 days ago
43-22586
43 days
7300 ah1112
author:ah1112
feat: synthetic geometry This is adding synthetic geometry using Avigad's axioms and formalizing Euclid Book I, through the Pythagorean theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted t-euclidean-geometry 2661/0 Mathlib.lean,Mathlib/Geometry/Synthetic/Avigad/Axioms.lean,Mathlib/Geometry/Synthetic/Avigad/EuclidBookI.lean,Mathlib/Geometry/Synthetic/Avigad/Tactics.lean 4 74 ['ah1112', 'alreadydone', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'plp127', 'tb65536', 'urkud'] nobody
281-34467
9 months ago
981-73352
981 days ago
0-84
1 minute
27403 MoritzBeroRoos
author:MoritzBeroRoos
fix: replace probably erroneous usage of ⬝ (with old \cdot) by · (with \centerdot) Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot). Currently the abbreviations \cdot and \centerdot resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for center..). This pr replaces instances of ⬝ where · was probably meant. All of the replacement is in comments, except for the file bench_summary.lean which is used for priting the github benchmark results. Since this file is about scientific notation of numbers, sure · was meant to be used, not a rectangle. [Related](https://github.com/leanprover-community/mathlib4/pull/27399) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor 195/195 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Normed/Unbundled/InvariantExtension.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/FieldTheory/PurelyInseparable/PerfectClosure.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,Mathlib/Topology/Instances/Matrix.lean,scripts/bench_summary.lean 49 5 ['eric-wieser', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
280-22417
9 months ago
302-84739
302 days ago
7-54661
7 days
28042 kckennylau
author:kckennylau
feat(Topology/ValuativeRel): a topological basis indexed by pairs of elements --- The pullback PR of #27314 and #27163. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 140/23 Mathlib/RingTheory/Valuation/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 2 3 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
280-22371
9 months ago
289-73815
289 days ago
7-4998
7 days
23966 astrainfinita
author:astrainfinita
refactor: unbundle algebra from `{Seminormed, Normed}(Add)(Comm)Group` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #23621 - [ ] depends on: #23961 t-algebra blocked-by-other-PR merge-conflict slow-typeclass-synthesis t-analysis
label:t-algebra$
3233/2752 Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/DiffContOnCl.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Norm.lean,Mathlib/Analysis/Calculus/FDeriv/Pi.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Calculus/FDeriv/RestrictScalars.lean,Mathlib/Analysis/Calculus/FDeriv/Star.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean 579 7 ['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
279-84038
9 months ago
unknown
0-0
0 seconds
27399 MoritzBeroRoos
author:MoritzBeroRoos
chore: replace every usage of ⬝ᵥ (with old \cdot) by ·ᵥ (with \centerdot) Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot). Currently the abbreviations `\cdot` and `\centerdot` resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for `center`..): - `\cdot` gives ⬝ [U+2B1D](https://www.compart.com/en/unicode/U+2B1D) "Black Very Small Square" - `\centerdot` gives · [U+00B7](https://www.compart.com/en/unicode/U+00B7) "Middle Dot" Mathlib mostly uses the `\centerdot` variant, except for the dotProduct notation and some probably unsuspecting people wanting \centerdot but getting \cdot in their comments and 6 uses of a notation using the raw `\cdot` without any subscript at `Mathlib\Topology\Homotopy\Product.lean`. This PR replaces the dot product `⬝ᵥ` with its `\centerdot` counterpart `·ᵥ`. The related PR [here](https://github.com/leanprover/vscode-lean4/pull/639) can then overwrite the `\cdot` abbreviation, to produce the same symbol as the `centerdot` abbreviation does. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor 133/133 Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Block.lean,Mathlib/Data/Matrix/ConjTranspose.lean,Mathlib/Data/Matrix/Hadamard.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/Data/Matrix/RowCol.lean,Mathlib/Data/Matrix/Vec.lean,Mathlib/LinearAlgebra/CrossProduct.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/DotProduct.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/Orthogonal.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/SchurComplement.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/PerfectPairing/Matrix.lean,Mathlib/LinearAlgebra/Projectivization/Constructions.lean,Mathlib/Topology/Instances/Matrix.lean 25 6 ['MoritzBeroRoos', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
279-70649
9 months ago
302-84740
302 days ago
7-62439
7 days
27479 iu-isgood
author:iu-isgood
feat: Abel's Binomial Theorem We have formalized Abel's Binomial Theorem as part of an REU project. There are a few remaining sorrys, but we will finish them soon. I will edit this PR message later according to community rules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor 326/0 Mathlib/Data/Nat/Choose/AbelBinomial.lean 1 28 ['ElifUskuplu', 'FrankieNC', 'github-actions', 'iu-isgood'] nobody
279-70410
9 months ago
308-68107
308 days ago
0-237
3 minutes
28787 alreadydone
author:alreadydone
feat(Counterexamples): a domain whose ring of differences is not a domain Example produced by Gemini 2.5 Pro: https://gemini.google.com/share/9558539e1309 --- - [ ] depends on: #28468 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR large-import
label:t-algebra$
1200/204 Counterexamples.lean,Counterexamples/GrothendieckAddGroupIsDomain.lean,Mathlib.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/GroupTheory/MonoidLocalization/Archimedean.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Lemmas.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Localization/Additive.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Localization/StrongRankCondition.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean,Mathlib/RingTheory/Trace/Quotient.lean 23 6 ['alreadydone', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] nobody
278-73860
9 months ago
278-79304
278 days ago
1-13263
1 day
24719 madvorak
author:madvorak
feat(LinearAlgebra/Matrix/NonsingularInverse): inverting `Matrix` inverts its `LinearEquiv` --- Discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2324719.20cannot.20find.20home/with/517142655 awaiting-author t-algebra
label:t-algebra$
10/0 Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean 1 16 ['eric-wieser', 'github-actions', 'madvorak', 'ocfnash'] nobody
277-8947
9 months ago
298-77324
298 days ago
86-37603
86 days
27437 kckennylau
author:kckennylau
feat(RingTheory/Valuation): some lemmas about comparing with 1 and 0 and with each other *From the 2025 Local Class Field Theory Workshop.* --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-ring-theory 109/22 Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean 4 20 ['erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'matthewjasper', 'pechersky'] nobody
275-73230
9 months ago
295-37841
295 days ago
14-27134
14 days
28148 kckennylau
author:kckennylau
feat(Matrix): Simproc and Rw-proc for Matrix Transpose Co-authored by Aaron Liu. ```lean example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by rw [transpose_of% 2 3] example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by rw [transpose_of] example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by simp only [matrix_transpose] ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 267/8 Mathlib.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/LinearAlgebra/UnitaryGroup.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/Matrix.lean,MathlibTest/Simproc/Matrix.lean,MathlibTest/matrix.lean,scripts/noshake.json 8 32 ['eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'plp127'] eric-wieser
assignee:eric-wieser
275-27583
9 months ago
275-27584
275 days ago
12-78143
12 days
28686 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove the Erdős-Stone theorem Proves the Erdős-Stone theorem: If `G` has at least `(1 - 1 / r + o(1)) * n ^ 2 / 2` many edges, then `G` contains a copy of a `completeEquipartiteGraph (r + 1) t`. --- - [ ] depends on: #28685 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics merge-conflict WIP 757/14 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean 10 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-77423
9 months ago
283-7966
283 days ago
0-10
10 seconds
28687 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove the Erdős-Stone-Simonovits theorem Proves the Erdős-Stone-Simonovits theorem: If the chromatic number of `H` equals `r + 1 > 0`, then the `extremalNumber` of `H` is greater than `(1 - 1 / r - o(1)) * card V ^ 2 / 2` and at most `(1 - 1 / r + o(1)) * card V ^ 2 / 2`. --- - [ ] depends on: #28686 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR t-combinatorics 879/14 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Nat/Cast/Order/Field.lean 10 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-77422
9 months ago
283-7781
283 days ago
0-32
32 seconds
28689 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove well-known corollaries of the Erdős-Stone-Simonovits theorem Proves well-known corollaries of the Erdős-Stone-Simonovits theorem: E.g., if the chromatic number of `H` equals `r + 1 > 1`, then `extremalNumber n H` is asymptotically equivalent to `(1 - 1 / r) * n.choose 2` as `n → ∞` --- - [ ] depends on: #28687 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR t-combinatorics 958/14 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Nat/Cast/Order/Field.lean 10 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-77421
9 months ago
283-7555
283 days ago
0-45
45 seconds
26952 robin-carlier
author:robin-carlier
feat(CategoryTheory/DayConvolution): monoid objects internal to day convolutions In this file, given `F : C ⊛⥤ V`, we provide a bijective correspondence between lax monoidal structures on `F.functor` and `Mon_Class F` structures. We also prove that through this correspondance, monoidal natural transformations correspond to morphisms of internal monoid objects. --- - [ ] depends on: #26890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory 1574/19 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Mon_.lean 5 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-49632
9 months ago
324-44715
324 days ago
0-584
9 minutes
27133 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): `C ⊛⥤ V` is monoidal closed when `V` is When `V` is a monoidal closed category admitting enough limits, we show that the type alias `C ⊛⥤ V` for functors `C ⥤ V` with Day convolution monoidal structure is monoidal closed using the API for `LawfulDayConvolutionClosedMonoidalCategoryStruct` developped in #27119. We expose the required data to exhibit (realization as a functor of) the internal hom as a suitable, and we port the lemmas that characterize its functoriality in that regard, as well as the evaluation and coevaluation morphisms. --- - [ ] depends on: #27119 - [ ] depends on: #26890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory 1706/20 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Closed.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean 5 6 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-49507
9 months ago
319-75961
319 days ago
0-1192
19 minutes
27151 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): `C ⊛⥤ V` is braided/symmetric when `C` and `V` are braided/symmetric We use the machinery from #27150 to show that Day functors (the type alias for functors endowed with the Day convolution monoidal structure) are braided/symmetric when the base categories are. --- - [ ] depends on: #27150 - [ ] depends on: #26890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory 1591/20 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean 5 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-49505
9 months ago
319-10054
319 days ago
0-1022
17 minutes
27175 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): `LawfulDayConvolutionMonoidalCategoryStruct.ι C V D` is monoidal when the target is `C ⊛⥤ V` We prove a "soundness" result for our notion of `LawfulDayConvolutionMonoidalCategoryStruct`, i.e that when be interpret its field `ι` as valued in Day functors (the type alias for functors endowed with the Day convolution monoidal structure), the data from `LawfulDayConvolutionMonoidalCategoryStruct` turn `ι` in a monoidal functor, proving that the categories endowed with such a structure are precisely those that can be identified to monoidal (not necessarily full) subcategories of Day functors. Implicitly, the structure isomorphisms for this monoidal structure bundle isomorphisms asserting unicity up to isomorphisms of day convolutions. --- - [ ] depends on: #26890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory 1585/24 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean 4 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
274-49504
9 months ago
318-63586
318 days ago
0-673
11 minutes
26097 adomani
author:adomani
dev: the relative linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-linter 316/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/Local.lean,Mathlib/Util/ParseGit.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
274-26279
9 months ago
unknown
0-0
0 seconds
25741 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory/SimplicialObject): definitions of simplicial objects by generators and relation We leverage the equivalence between `SimplexCategory` and `SimplexCategoryGenRel` to give new constructors for (co)simplicial objects, as well as constructors for natural transformations (resp. isomorphism) between those. Final PR in the series of PR formalising the equivalence between `SimplexCategory` and `SimplexCategoryGenRel`. --- - [ ] depends on: #25740 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #21748.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/21748* t-algebraic-topology blocked-by-other-PR t-category-theory large-import merge-conflict 1363/9 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Equivalence.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/AlgebraicTopology/SimplicialObject/GeneratorsRelations.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
271-3299
8 months ago
340-82987
340 days ago
11-15676
11 days
26931 javra
author:javra
feat(CategoryTheory/Enriched): `V`-enriched isomorphisms Defines isomorphisms in `V`-enriched categories and relate them to ordinary isomorphisms in the case of ordinary enriched categories. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory infinity-cosmos 211/14 Mathlib.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Enriched/Iso.lean,Mathlib/CategoryTheory/Enriched/Opposite.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Basic.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Iso.lean 6 21 ['emilyriehl', 'github-actions', 'javra', 'joelriou', 'mathlib4-merge-conflict-bot', 'mckoen'] nobody
271-2689
8 months ago
305-6936
305 days ago
19-74885
19 days
27707 amellendijk
author:amellendijk
feat(NumberTheory/SelbergSieve): define Selberg's weights and prove basic results. This PR continues the work from #23635. Original PR: https://github.com/leanprover-community/mathlib4/pull/23635 - [ ] depends on: #27702 merge-conflict t-number-theory blocked-by-other-PR t-analysis 407/83 Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/SelbergSieve.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
270-56349
8 months ago
300-40028
300 days ago
1-28956
1 day
25208 erdOne
author:erdOne
feat(LinearAlgebra): `tensor_induction` macro --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
87/116 Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/Finite.lean,Mathlib/RingTheory/Unramified/Finite.lean 8 8 ['chrisflav', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
270-24056
8 months ago
368-81903
368 days ago
0-600
10 minutes
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
269-41584
8 months ago
277-79138
277 days ago
0-20585
5 hours
26935 Paul-Lez
author:Paul-Lez
feat(Analysis/SpecialFunction/NthRoot): definition and basic API of Real.nthRoot This PR continues the work from #25364. Original PR: https://github.com/leanprover-community/mathlib4/pull/25364 Co-authored-by: Eric Wieser t-analysis 311/0 Mathlib/Analysis/SpecialFunctions/NthRoot.lean 1 10 ['Paul-Lez', 'eric-wieser', 'github-actions', 'mo271', 'smmercuri', 'yury-harmonic'] nobody
268-43694
8 months ago
324-4064
324 days ago
0-74776
20 hours
27995 kckennylau
author:kckennylau
feat(RingTheory/Valuation): alternate constructors for Valuation --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-CI 82/0 Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/FieldTheory/RatFunc/Degree.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/RingTheory/Valuation/Basic.lean 4 22 ['YaelDillies', 'github-actions', 'grunweg', 'kckennylau', 'pechersky'] nobody
267-15569
8 months ago
279-73423
279 days ago
17-72481
17 days
26159 upobir
author:upobir
feat(Algebra/QuadraticDiscriminant): Adding inequalities on quadratic from inequalities on discriminant This PR continues the work from #24517. Original PR: https://github.com/leanprover-community/mathlib4/pull/24517 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra
label:t-algebra$
34/0 Mathlib/Algebra/QuadraticDiscriminant.lean 1 8 ['chrisflav', 'github-actions', 'tb65536', 'upobir'] chrisflav
assignee:chrisflav
265-74873
8 months ago
289-66401
289 days ago
55-10605
55 days
26908 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): alternative ext principle for unitors Currently, our infrastructure for left/right unitors for Day convolution of functors `C ⥤ V` do not have satisfactory extensionality principle: the current way to characterize morphisms out of `U ⊛ F` is the default extensionality principle for Day convolution, which characterizes first such functors via functors out of `U ⊠ F`. Left unitors are then obtained using the fact `U ⊠ F` is a left Kan extension of a functor from `PUnit × C` (which is equivalent to `C`) but we did not record on its own this principle. Using the transitivity of left Kan extensions proved in #26899, we directly exhibit `U ⊛ F` as a left Kan extension of `F ⋙ tensorLeft (𝟙_ V)` along `tensorLeft (𝟙_ C)`. The unit of this Kan extension is composed exactly of the morphisms that appear in the [characterization of left unitors](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/DayConvolution.html#CategoryTheory.MonoidalCategory.DayConvolutionUnit.leftUnitor_hom_unit_app). We also slightly generalize the instances that express that external products with unitors are left Kan extensions, so that they can be used when taking external products with more complicated functors than currently. This is again useful when chaining extensionality lemmas for morphisms out of terms of the form `(F ⊛ U) ⊛ G`. We prove a similar thing for right unitors With this, it should be possible to have a much more satisfactory way of working with Day convolutions: this allows to "elimiinate" units without ending up with terms in an external product. --- - [ ] depends on: #26899 - [ ] depends on: #26906 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 307/18 Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean 2 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
263-73929
8 months ago
263-73930
263 days ago
0-1812
30 minutes
27150 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): constructors for braided and symmetric structure on day convolutions monoidal categories Following the pattern in #27119, we give API to construct `BraidedCategory` and `SymmetricCategory` structures on a monoidal category equipped with a `LawfulDayConvolutionMonoidalCategoryStruct`. To achieve this, we introduce an other type class `LawfulDayConvolutionBraidedCategoryStruct` that bundles an associator isomorphism that behaves like the one constructed for functors in #27067. We provide a noncomputable constructor for this typeclass that takes as input fullness of the "realization" functor to a category of functors, and we show that the typeclasses are sufficient to define the desired structures. --- - [x] depends on: #27067 - [x] depends on: #26820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 826/9 Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean 2 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
263-68968
8 months ago
319-12263
319 days ago
0-1002
16 minutes
26462 PSchwahn
author:PSchwahn
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`. We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification). Co-authored by: - [Viviana del Barco](https://github.com/vdelbarc) - [Gustavo Infanti](https://github.com/GuQOliveira) - [Exequiel Rivas](https://github.com/erivas) --- I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
10/0 Mathlib/LinearAlgebra/Projection.lean 1 7 ['PSchwahn', 'github-actions', 'joelriou', 'kckennylau'] joelriou
assignee:joelriou
263-41778
8 months ago
263-72881
263 days ago
73-43082
73 days
27119 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): constructors for closed monoidal day convolution monoidal structures Following the pattern introduced in #26798 and #26820 and using results of #26879, we introduce a typeclass `LawfulDayConvolutionClosedMonoidalCategoryStruct` that encodes the data needed on a `LawfulDayConvolutionMonoidalCategoryStruct` to define well-behaved internal homs. We give a constructor assuming existence of relevant ends, and prove that this data defines a `MonoidalClosed` instance on the monoidal category structures one can deduce from `LawfulDayConvolutionMonoidalCategoryStruct`. --- - [x] depends on: #27079 - [x] depends on: #27091 - [x] depends on: #26879 - [x] depends on: #26820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 900/9 Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Closed.lean 2 6 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
262-82819
8 months ago
320-17731
320 days ago
0-1
1 second
28623 gilesgshaw
author:gilesgshaw
feat(Logic/Basic): minor additions and simplification of proofs Add new theorems and simplify proofs. Specifically, we add the family of related theorems `apply_dite_iff_exists`, `apply_dite_iff_forall`, `apply_ite_iff_and` and `apply_ite_iff_or`. For each other 'family' of theorems in the file that is analogous to the above, we do the following - Simplify proofs where possible, e.g. by appealing to the new theorems - Complete the family, if any of the corresponding four are missing - Rename to ensure consistency with the above pattern --- merge-conflict t-logic new-contributor 83/55 Archive/Examples/IfNormalization/Result.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Notation/Indicator.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/Logic/Basic.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/SetTheory/Ordinal/Notation.lean 9 12 ['eric-wieser', 'gilesgshaw', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] awainverse
assignee:awainverse
262-76680
8 months ago
262-76681
262 days ago
10-61840
10 days
28804 grunweg
author:grunweg
feat: a few more tactic linters All analysis passes in this list have been suggested [on zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tactic.20analysis.20framework/with/535766713). --- Untested, so may not work yet. - [ ] depends on: #28802 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-meta 204/26 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Tactic/TacticAnalysis/FunProp.lean,Mathlib/Tactic/TacticAnalysis/Misc.lean,MathlibTest/TacticAnalysis2.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
262-9844
8 months ago
279-83077
279 days ago
0-705
11 minutes
13036 joelriou
author:joelriou
feat(CategoryTheory/Sites): under certain conditions, cover preserving functors preserve 1-hypercovers Previously, in order to show that a functor between Grothendieck sites was continuous, it was necessary to show that it was "cover preserving" and "compatible preserving". There were two lemmas which could be used in order to show that a functor was "compatible preserving". Since #13012, the better condition of "1-hypercover preserving" functor was introduced and it implies that the functor is continuous. In this PR, under the same assumptions as in the two lemmas mentionned above, we show that cover preserving functors are 1-hypercover preserving functors. This gives slightly better criteria in order to show that a functor is continuous. --- - [x] depends on: #13004 - [x] depends on: #13011 - [x] depends on: #13012 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 94/7 Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/Sieves.lean 4 3 ['github-actions', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] nobody
261-46004
8 months ago
740-84936
740 days ago
0-1
1 second
29527 kim-em
author:kim-em
feat: script for checking Github URLs This adds scripts/check_github_urls.py, which checks for links for closed github issues/prs, and shows the context at the link. Of course, many links are to closed pull requests because the discussion there provides useful context. Not sure how to best filter results. WIP CI 475/0 scripts/README.md,scripts/check_github_urls.py 2 2 ['github-actions', 'kim-em'] nobody
261-35157
8 months ago
261-35902
261 days ago
0-1
1 second
27335 eric-wieser
author:eric-wieser
chore(Data/List): use simp-normal-form for boolean equalities This replaces `¬(p x = true)` with `p x = false`. It also makes explicit some adjacent `h : p x` spellings for symmetry, but the `= true`s were already implied by the coercion. Zulip: [#lean4 > `h : ¬(b = true)` vs `h : b = false` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.60h.20.3A.20.C2.AC.28b.20.3D.20true.29.60.20vs.20.60h.20.3A.20b.20.3D.20false.60/near/529976237) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 38/32 Mathlib/Data/List/DropRight.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/TakeWhile.lean 3 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
261-29646
8 months ago
312-24831
312 days ago
0-19242
5 hours
25778 thefundamentaltheor3m
author:thefundamentaltheor3m
feat: Monotonicity of `setIntegral` for nonnegative functions This PR makes it easier to prove monotonicity of the Bochner integral on sets for nonnegative functions by removing the stronger assumption required by the general monotonicity lemma that both of the functions being compared must be integrable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-measure-probability new-contributor 8/0 Mathlib/MeasureTheory/Integral/Bochner/Set.lean 1 6 ['RemyDegenne', 'github-actions', 'sgouezel', 'thefundamentaltheor3m'] nobody
260-72402
8 months ago
351-80240
351 days ago
0-11893
3 hours
29484 eric-wieser
author:eric-wieser
refactor: switch to [] notation for Stream' I'll continue fixing this only if people agree this is a good use of this notation. [#mathlib4 > Changing `Stream.Seq` to use `GetElem` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Changing.20.60Stream.2ESeq.60.20to.20use.20.60GetElem.60/near/538548680) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data large-import 195/173 Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/Basic.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Control/Fix.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/Data/Stream/Defs.lean,Mathlib/Data/Stream/Init.lean,Mathlib/Data/WSeq/Basic.lean,Mathlib/Data/WSeq/Productive.lean 12 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
260-44665
8 months ago
unknown
0-0
0 seconds
22517 j-loreaux
author:j-loreaux
feat: `ℕ+` powers in semigroups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP large-import 275/28 Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/PNatPowAssoc.lean,Mathlib/Algebra/Group/PPow.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/ULift.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Tactic/ToAdditive/Frontend.lean 14 6 ['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mattrobball'] nobody
259-49987
8 months ago
452-51568
452 days ago
0-27
27 seconds
29615 eric-wieser
author:eric-wieser
chore: add a computable shortcut for `AddCommMonoid ℂ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 9/1 Mathlib/Analysis/Complex/Basic.lean 1 1 ['github-actions'] nobody
259-4446
8 months ago
259-4529
259 days ago
259-4491
259 days
25069 erdOne
author:erdOne
feat(EllipticCurve): rational points of singular nodal cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 251/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Node.lean 3 14 ['Multramate', 'acmepjz', 'chrisflav', 'erdOne', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
257-65188
8 months ago
274-10597
274 days ago
100-20892
100 days
25070 erdOne
author:erdOne
feat(EllipticCurve): rational points on singular cuspidal cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 123/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Cusp.lean 2 12 ['Multramate', 'acmepjz', 'adamtopaz', 'erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
257-65187
8 months ago
283-66151
283 days ago
90-52970
90 days
26670 yu-yama
author:yu-yama
feat(GroupExtension/Abelian): define `conjClassesEquivH1` This PR continues the work from #21837. Original PR: https://github.com/leanprover-community/mathlib4/pull/21837 merge-conflict awaiting-author t-algebra
label:t-algebra$
162/5 Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Abelian.lean,Mathlib/GroupTheory/GroupExtension/Basic.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,docs/references.bib 5 3 ['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'yu-yama'] erdOne
assignee:erdOne
257-7081
8 months ago
281-56859
281 days ago
49-15167
49 days
26154 ADedecker
author:ADedecker
refactor: add refactored APIs for algebraic filter bases This PR continues the work from #18437. Original PR: https://github.com/leanprover-community/mathlib4/pull/18437 merge-conflict t-topology 651/0 Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 5 3 ['ADedecker', 'github-actions', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
257-2524
8 months ago
257-2525
257 days ago
87-79752
87 days
27024 grunweg
author:grunweg
feat: Gram-Schmidt orthonormalisation for sections of a vector bundle Add a parametrised version of Gram-Schmidt, for sections of a topological vector bundle with a bundle metric. This will be used to define orthonormal local frames. From the path towards geodesics and the Levi-Civita connection. Co-authored-by: Patrick Massot --- - [x] depends on: #27023 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-differential-geometry 279/11 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Topology/VectorBundle/GramSchmidtOrtho.lean,scripts/noshake.json 4 71 ['faenuccio', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
256-79581
8 months ago
288-65711
288 days ago
28-11083
28 days
28580 kmill
author:kmill
refactor: simplify implementation of `filter_upwards` This PR makes a few changes to `filter_upwards`: - it uses `focus`, which prevents multiGoalLinter from ever blaming the tactics used inside its implementation - it constructs the whole proof syntax and elaborates it at once using `evalTactic` and `refine`, rather than using the lower-level TermElab API, which can lose track of goals - it's written in a way that doesn't require goals to be in some particular order This was motivated by some multiGoalLinter issues I ran into when working on https://github.com/leanprover/lean4/pull/9942 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order t-meta 14/16 Mathlib/Order/Filter/Defs.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
256-77540
8 months ago
285-25205
285 days ago
0-8809
2 hours
27937 madvorak
author:madvorak
feat(Logic/Basic): `congr_heq₂` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-logic 6/0 Mathlib/Logic/Basic.lean 1 8 ['YaelDillies', 'fpvandoorn', 'github-actions', 'madvorak', 'vihdzp'] fpvandoorn
assignee:fpvandoorn
255-5717
8 months ago
281-6502
281 days ago
17-62644
17 days
29741 JovanGerb
author:JovanGerb
trying #28803 using lean#10178 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1111/718 .github/actionlint.yml,.github/workflows/nightly-docgen.yml,.github/workflows/nightly_detect_failure.yml,.github/workflows/report-grind-regressions.yml,Cache/Requests.lean,Mathlib.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Homology/ExactSequence.lean,Mathlib/Algebra/Order/Ring/Rat.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/SMul.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Log/Summable.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/DFinsupp/Notation.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/Data/Nat/GCD/BigOperators.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Data/Rat/Lemmas.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/Init.lean,Mathlib/Lean/Expr/Rat.lean,Mathlib/Lean/Meta/CongrTheorems.lean,Mathlib/LinearAlgebra/PID.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/Logic/Equiv/Prod.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Filter/Defs.lean,Mathlib/Probability/Distributions/Pareto.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Reassoc.lean,Mathlib/Tactic/CategoryTheory/Refs.lean,Mathlib/Tactic/DeriveFintype.lean,Mathlib/Tactic/FieldSimp.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/Datatypes.lean,Mathlib/Tactic/Linter/DeprecatedModule.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/Lint.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/StacksAttribute.lean,Mathlib/Tactic/SuppressCompilation.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/WLOG.lean,Mathlib/Testing/Plausible/Sampleable.lean,Mathlib/Util/Notation3.lean,Mathlib/Util/ParseCommand.lean,Mathlib/Util/Superscript.lean,MathlibTest/AssertExists.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/Change.lean,MathlibTest/DeprecateTo.lean,MathlibTest/FieldSimp.lean,MathlibTest/FindSyntax.lean,MathlibTest/LibrarySearch/basic.lean,MathlibTest/LibrarySearch/mathlib.lean,MathlibTest/LibrarySearch/observe.lean,MathlibTest/MinImports.lean,MathlibTest/RewriteSearch/Basic.lean,MathlibTest/RewriteSearch/Polynomial.lean,MathlibTest/StacksAttribute.lean,MathlibTest/Subsingleton.lean,MathlibTest/Use.lean,MathlibTest/Variable.lean,MathlibTest/hint.lean,MathlibTest/lift.lean,MathlibTest/linarith.lean,MathlibTest/notation3.lean,MathlibTest/propose.lean,MathlibTest/renameBvar.lean,MathlibTest/rewrites.lean,MathlibTest/ring.lean,MathlibTest/says.lean,MathlibTest/success_if_fail_with_msg.lean 105 2 ['JovanGerb', 'leanprover-bot'] nobody
255-1326
8 months ago
255-8432
255 days ago
0-15
15 seconds
7125 eric-wieser
author:eric-wieser
feat: additive monoid structure via biproducts I suspect I'm missing a trick with these transport lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory awaiting-CI 237/0 Mathlib/CategoryTheory/Limits/Skeleton.lean 1 3 ['alreadydone', 'eric-wieser', 'mathlib4-merge-conflict-bot'] nobody
254-50645
8 months ago
unknown
0-0
0 seconds
27950 alreadydone
author:alreadydone
feat(MonoidAlgebra): criteria for `single` to be a unit, irreducible or prime --- - [ ] depends on: #27936 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
714/192 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Finite.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/MonoidAlgebra/Divisibility.lean,Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Prime/Prod.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Coset/Card.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Period.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Tactic/ToAdditive/Frontend.lean 33 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
253-82267
8 months ago
298-53346
298 days ago
0-53
53 seconds
28067 grunweg
author:grunweg
Docstring enumerations Tracking PR; to be split. Audit all ocurrences of `^ \S`; exhaustive. --- - [x] depends on: #28068 - [x] depends on: #28069 - [ ] depends on: #28070 - [x] depends on: #28118 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR 264/263 Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Module/LinearMap/Polynomial.lean,Mathlib/CategoryTheory/Abelian/NonPreadditive.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Pi.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/Condensed/Discrete/Characterization.lean,Mathlib/FieldTheory/ChevalleyWarning.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/OuterMeasure/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Defs.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/RingTheory/Grassmannian.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/WittVector/Teichmuller.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/Bound/Attribute.lean,Mathlib/Tactic/ENatToNat.lean,Mathlib/Tactic/FBinop.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/TermCongr.lean,Mathlib/Util/Notation3.lean,Mathlib/Util/Superscript.lean,docs/Conv/Guide.lean 38 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
251-83844
8 months ago
296-11101
296 days ago
0-2904
48 minutes
28908 joelriou
author:joelriou
feat(CategoryTheory): Pullback functors on `Over` categories in `Type` have right adjoints Given a map `f : E → B`, in order to show that `Over.pullback f : Over B ⥤ Over E` commutes with colimits, we show that it admits a right adjoint. In order to do that, we first construct a functor `overPullback f : Over B ⥤ Over E` whose definition involves explicit types rather than categorical pullbacks, and we define its right adjoint `overPushforward f : Over E ⥤ Over B`. (In a future PR, it will be shown that the `Over.pullback` also commutes with colimits in categories of presheaves, and hopefully this will be used in the construction of the Quillen model category structure on simplicial sets.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 103/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/OverPullback.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean 3 10 ['emilyriehl', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'sinhp'] nobody
249-60210
8 months ago
264-8543
264 days ago
13-50151
13 days
29330 plp127
author:plp127
chore: define `Fin.cycleIcc` with conditions Redefine `Fin.cycleIcc` using conditionals instead of composing existing `Fin` operations together. Its worst-case runtime drops from O(n) to O(1). As a bonus, the definition no longer needs explaining. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-group-theory 61/68 Mathlib/GroupTheory/Perm/Fin.lean 1 10 ['JovanGerb', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'tb65536'] nobody
248-14121
8 months ago
248-14122
248 days ago
20-3817
20 days
29588 Periecle
author:Periecle
feat(Analysis/Complex/Residue): Implement residue theory for complex functions at isolated singularities # Add basic residue theory for complex functions This PR introduces the residue theory implementation in mathlib. ## Main additions - **`HasIsolatedSingularityAt f c`**: Predicate for functions with isolated singularities at point `c` - **`residue f c hf`**: The residue of `f` at isolated singularity `c`, defined via circle integrals - **Radius independence**: `residue_eq_two_pi_I_inv_smul_circleIntegral` - residue equals normalized circle integral for any valid radius - **Holomorphic residues**: `residue_of_holomorphic` - functions holomorphic in a neighborhood have zero residue - **Simple pole formula**: `residue_simple_pole` - for `f(z) = (z-c)⁻¹ * g(z)`, residue equals `g(c)` ## Implementation notes - Builds on existing circle integral infrastructure in `CauchyIntegral.lean` - Uses `Classical.choose` to extract witness radius from isolated singularity condition - Comprehensive documentation with mathematical context and examples - Establishes foundation for residue theorem, argument principle, and other applications ## Examples included - `residue(1/z, 0) = 1` (canonical simple pole) - Radius independence demonstration - Zero residues for holomorphic functions This provides the essential building blocks for complex analysis and first step to formalize residue theory. awaiting-author t-analysis new-contributor 383/0 Mathlib/Analysis/Complex/Residue/Basic.lean 1 17 ['Periecle', 'github-actions', 'hrmacbeth', 'llllvvuu', 'loefflerd'] nobody
247-75880
8 months ago
259-82262
259 days ago
0-976
16 minutes
29482 mattrobball
author:mattrobball
refactor (Algebra.Group.Defs): add npow/zpow/nsmul/zsmul as fields of new parents classes Adds ZPow G class and makes this a parent to DivInvMonoid and the corresponding additive versions. Updates zpow/zsmul operations to use the integrated power/scalar multiplication syntax. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
177/122 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Ring/ULift.lean,Mathlib/Data/BitVec.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/NormNum/Pow.lean 21 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
247-24379
8 months ago
262-50704
262 days ago
0-274
4 minutes
27829 dupuisf
author:dupuisf
feat: modify `cfc_tac` to use `grind` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 60/50 Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/PosPart/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Tactic/ContinuousFunctionalCalculus.lean 9 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
245-78622
8 months ago
301-76182
301 days ago
0-1
1 second
21950 erdOne
author:erdOne
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-number-theory 253/1 Mathlib.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroMulInt.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean 7 33 ['Ruben-VandeVelde', 'erdOne', 'faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky', 'smmercuri', 'xroblot'] nobody
245-75631
8 months ago
326-75568
326 days ago
73-10873
73 days
26178 ppls-nd-prs
author:ppls-nd-prs
feat(CategoryTheory/Limits): Fubini for products We show that the product of products is a product indexed by the sigma type. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 17/0 Mathlib/CategoryTheory/Limits/Shapes/Products.lean 1 6 ['chrisflav', 'github-actions', 'leanprover-community-bot-assistant', 'ppls-nd-prs', 'robin-carlier'] nobody
243-4524
8 months ago
344-13924
344 days ago
0-47665
13 hours
27214 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): Categorical pullback squares In this PR, we give the definition and first basic properties of categorical pullback squares. Using our previous work on `CategoricalPullback`, we define a typeclass `CatPullbackSquare T L R B` that asserts that a given `CatCommSq T L R B` is a "pullback square": this is the data of a chosen adjoint equivalence to the canonical functor from the top left corner of the square to the categorical pulback of its leg. Using this equivalence, be derive a universal property for functors from `X`with values in the top left corner of the square: they are equivalent to `CatCommSqOver R B X`, the category of categorical commutative squares over the cospan `R, B` with top left corner `X`. We prove some coherence result for this equivalence, most notably an isomorphism that, given `S : CatCommSqOver R B X`, bundles the two commutative triangles formed by the induced functor, and the coherence between the squares that these isomorphisms satisfy: this is conveniently bundled in the data of a single isomorphisms of `CatCommSqOver R B X`. Finally, we provide a `Prop`-class `IsCatPullbackSquare` that merely asserts the existence (via `Nonempty`) of the relevant data: we show that it is tautotogically equivalent to the propopsition that the canonical functor to the categorical pullback is an equivalence. --- - [ ] depends on: #26679 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 786/1 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65713
8 months ago
242-65714
242 days ago
0-4464
1 hour
27391 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): pseudofunctoriality structure of categorical pullback squares Using pseudofunctoriality of the construction `CatCommSqOver`, we show that categorical pullback squares have pseudofunctorial-like structures: given a `CatCommSq T L R B` and a `CatPullbackSq T' L' R' B'`, and a `CatCospanTransform R B R' B'`, there is a functor `CatPullbackSq.functorOfTransform` between the top left corners of the two squares. We give `CatCommSq` instances that relates this functor with other constructions such as `CatCommSqOver.transform`. Similarly, we construct `CatPullbackSq.functorOfTransform₂`, that maps morphisms of `CatCospanTransforms` to natural transformations. Finally, we show that `functorOfTransform` respects identities and compositions. We do not yet prove that all of this data satisfies all the expected properties of pseudofunctors: this will be the content of a follow-up PR. --- - [ ] depends on: #27214 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory 1090/1 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65711
8 months ago
310-84205
310 days ago
0-264
4 minutes
27432 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): pseudofunctoriality of categorical pulback squares In this PR, we show that the "unbundled pseudofunctor" data constructed in #27391 satisfy the axioms of an actual "unbundled pseudo-functor". This is intended to give all the required coherence for a formal bicategory-like proof of the fact that `CatCospanAdjunction`s from #26578 (resp. `CatCospanEquivalence`s from #26579) promote to adjunctions (resp. equivalences) between the top left corners of categorical pullback squares. --- - [ ] depends on: #27391 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory 1244/1 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65709
8 months ago
309-69906
309 days ago
0-1056
17 minutes
27481 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): adjunctions and equivalences of categorical pullback squares We show that a `CatCospanAdjunction` (resp `CatCospanEquivalence`) induces adjunctions (resp. equivalences) of the categories that sit at the top left corners of categorical pullback squares via the pseudofunctoriality proved in #27432. Thanks to the lemmas that proves that categorical pullback squares are fully pseudofunctorial, the proof is purely formal ("a pseudofunctor maps adjunctions (resp. equivalences) to adjunctions (resp. equivalences)"), rather than being a painful computation for the triangle equalities. In particular, the results here show that two categorical pullback squares with equivalent "underlying categorical cospan" are equivalent, which realizes the equivalence-invariance of the notion of categorical pullbacks. We do not yet show that a (not-necessarily pullback) `CatCommSq T L R B` equivalent to a `CatPullbackSquare T' L' R' B'` via a `CatCospanEquivalence R B R' B'` is also a `CatPullbackSquare`: this will be the content of a follow-up PR. --- - [ ] depends on: #27432 - [ ] depends on: #26579 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 1829/1 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65707
8 months ago
308-67704
308 days ago
0-49
49 seconds
27686 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical/Square): more API for `CatPullbackSquare` In this PR, we provide more API around the notion of categorical pullback squares. Having established the pseudofunctoriality of the notion in #27432, we characterize the behaviour of the equivalence `CatPullbackSquare.functorEquiv (π₁ R B) (π₂ R B) R B X : X ⥤ R ⊡ B ≌ CatCommSqOver R B X` via various (d)simp lemmas. This ports all the pseudofunctoriality and equivalence-invariance results of `CatPullbackSquare` to `CategoricalPullback`. We also show this equivalence is isomorphic to the one from `CategoricalPullback.functorEquiv`. Unfortunately, this small duplication is necessary, as `CatPullbackSquare.functorEquiv` is bulit using `CategoricalPullback.functorEquiv`. The equivalence `CategoricalPullback.functorEquiv` is now an implementation detail, the idiomatic way is to use `CatPullbackSquare.functorEquiv`; docstrings are updated accordingly. This deprecates some constructions and lemmas for `CategoricalPullback`: they are now special case of the API that is available for any categorical pullback square. --- - [ ] depends on: #27481 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 2245/74 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 4 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65582
8 months ago
303-71445
303 days ago
0-2752
45 minutes
27687 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): squares equivalent to a `CatPullbackSquare` We provide the last remaining piece of the "equivalence-invariance" of categorical pullback squares: given a `CatCommSq (T : C₁ ⥤ _) L R B`, a `CatPullbackSquare (T' : D₁ ⥤ _) L' R' B'`, a `ψ : CatCospanEquivalence R B R' B'` and an equivalence `C₁ ≌ D₁` that identifies to the functor induced by `ψ`, the `CatCommSq T L R B` can be promoted to a `CatPullbackSquare T L R B'`. In other words: a `CatCommSq` that is equivalent to a `CatPullbackSquare` is a `CatPullbackSquare`. --- - [ ] depends on: #27686 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 2318/74 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 4 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65580
8 months ago
303-71794
303 days ago
0-959
15 minutes
27688 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): coherence statement for `CatPullbackSquare.inverse` This PR records a "coherence" statement for `CatPullbackSquares`: it bridges the gap between the user-provided `inverse` field of the `CatPullbackSquare` structure, and the other way one can deduce an equivalence between the top left corner of the square and a categorical pullback (via the pseudofunctoriality of categorical pullback squares induced by the identity `CatCospanTransform`). We show the two possible natural isomorphisms on the inverses of the equivalences are in fact the same (hence the term "coherence"). --- - [ ] depends on: #27686 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 2351/74 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 4 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65579
8 months ago
303-71448
303 days ago
0-283
4 minutes
27689 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): horizontal pasting calculus for `CatPullbackSquare` Given two categorical commutative squares that can be horizontally pasted, we prove that if the rightmost square is a `CatPullbackSquare`, then the leftmost square is a `CatPullbackSquare` if and only if the horizontal composition of the squares is a `CatPullbackSquare`. This generalizes to `CatPullbackSquare` the well-known "pasting calculus" for pullback squares in a category. The statement is made available both in terms of the `Type`-class `CatPullbackSquare`, and in terms of the `Prop`-class `IsCatPullbackSquare`. --- - [ ] depends on: #27686 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 2562/74 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 5 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65577
8 months ago
303-70708
303 days ago
0-667
11 minutes
27690 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): vertical pasting calculus for `CatPullbackSquare` We mirror the constructions from #27689 to construct the vertical pasting calculus of `CatPullbackSquares`: given two vertically composable `CatCommSq` such that the bottom one is a `CatPullbackSquare`, the top square is a `CatPullbackSquare` if and only if the vertical composition (the "outer" square) is a `CatPullbackSquare`. --- - [ ] depends on: #27689 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 2841/74 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 5 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65575
8 months ago
303-3936
303 days ago
0-5969
1 hour
27740 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): pasting calculus for `CategoricalPullback` Specialize the pasting calculus for categorical pullback squares to `CategoricalPullback̀` by providing equivalences of categories `R ⊡ (B₁ ⋙ B₂) ≌ (π₂ R B₂) ⊡ B₁` and `(R₁ ⋙ R₂) ⊡ B ≌ R₁ ⊡ (π₁ R₂ B)`. The `@[simps!]` attribute works wonderfully on these equivalences so that their component all have the expected (d)simp lemmas. --- - [ ] depends on: #27690 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 2872/75 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean 5 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-65574
8 months ago
303-3946
303 days ago
0-1017
16 minutes
26330 Timeroot
author:Timeroot
feat: "Junk value" test file This PR continues the work from #25173. Original PR: https://github.com/leanprover-community/mathlib4/pull/25173 awaiting-author t-data 360/0 MathlibTest/Junk.lean 1 17 ['SnirBroshi', 'Timeroot', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak', 'pechersky', 'vihdzp'] pechersky
assignee:pechersky
242-32958
8 months ago
242-32958
242 days ago
48-67789
48 days
28807 alreadydone
author:alreadydone
experiment: Submodule with SMul only (no Semiring) --- `SubMulAction` already takes `SMul`. TODO: relax typeclass requirements of `Ideal` as well. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-CI merge-conflict
label:t-algebra$
54/42 Mathlib/Algebra/Module/Submodule/Defs.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
242-28747
8 months ago
unknown
0-0
0 seconds
28808 alreadydone
author:alreadydone
experiment: Ideal with Mul only (no Semiring) --- - [ ] depends on: #28807 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR awaiting-CI merge-conflict
label:t-algebra$
172/120 Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/LinearAlgebra/Matrix/Ideal.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/Ideal/Defs.lean,Mathlib/RingTheory/Ideal/Lattice.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean 10 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
242-28746
8 months ago
unknown
0-0
0 seconds
26466 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory/Augmented): the canonical monoid object in the augmented simplex category Show that in the augmented simplex category, `⦋0⦌` is an internal monoid object. Future work will show that this is in fact the universal monoid object: for any monoidal category `C`, evaluation at `⦋0⦌` induces an equivalence of categories between `Mon_ C` and the category of monoidal functors from `AugmentedSimplexCategory` to `C`. The resulting augmented cosimplicial object one gets from this construction is sometimes called the "monoidal bar construction" attached to a monoid. This PR was split from #25743. --- - [ ] depends on: #25743 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-topology t-category-theory 571/111 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Mon_.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented/Monoidal.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean 6 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
241-85115
7 months ago
337-5999
337 days ago
0-1708
28 minutes
28074 grunweg
author:grunweg
Isbilinearmap TODO see if it builds, move everything to the right place, add docs. update Pr description - written by Patrick, part of #26221 (and prereq for #28056) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 64/0 Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/LinearAlgebra/BilinearMap.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
241-51482
7 months ago
296-10998
296 days ago
0-2
2 seconds
26579 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Pullbacks/Categorical/CatCospanTransform): equivalences of categorical cospans Building on the notion of adjunctions of categorical cospans, we define equivalences of categorical cospans as a structure extending that of an adjunction, with the extra data of a chosen inverse of the unit and counit morphisms. To mirror the design for usual equivalences of categories, we provide an alternative constructor that requires the forward and inverse direction of the equivalence, as well as unit and counits already as isomorphisms, and only a proof of the left triangle identity. Finally, we also provide a third constructor that builds such an equivalence out of the data of 3 component equivalences of categories, as well as chosen `CatCommSq` on the functors of the these equivalences. This notion of equivalence of categorical cospans is intended to encode the required data to show the full equivalence invariance of the categorical pullback defined in #26366. --- - [ ] depends on: #26578 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 438/0 Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean 1 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
241-5579
7 months ago
333-10120
333 days ago
0-838
13 minutes
26578 robin-carlier
author:robin-carlier
feat(CategoryTheory/Limits/Pullbacks/Categorical/CatCospanTransform): adjunctions of categorical cospans We build upon the bicategory-like structure developed in #26447 and #26412 to define the notion of adjunctions of categorical cospans. This is a structure encoding the data of two `CatCospanTransform`s, along with the usual unit and counit morphisms as part of the data, satisfying the usual left and right triangle identities. We provide basic API for these, such as extracting adjunctions between individual components. We also provide a proof that the notion satisfies a "coherence": with our chosen constructor, the forward direction of the structure `CatCommSq` on the left adjoints correspond to the inverse of the square for the right adjoints through `mateEquiv`. These adjunctions will be used as a substrate for defining equivalences of categorical cospans in a future PR: such an equivalence will be a structure extending a `CatCospanAdjunction` with isomorphisms data on the unit and co-unit (we will however provide alternative constructors in sync with the constructor for equivalences of categories). --- - [x] depends on: #26447 - [x] depends on: #26547 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory large-import 205/0 Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean 1 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
241-1940
7 months ago
333-11112
333 days ago
0-625
10 minutes
26115 grunweg
author:grunweg
WIP/proof of concept,feat: the inverse function theorem for manifolds --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry 348/0 Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Geometry/Manifold/InverseFunctionTheorem.lean,Mathlib/Topology/PartialHomeomorph.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
240-3827
7 months ago
unknown
0-0
0 seconds
28245 robin-carlier
author:robin-carlier
feat(CategoryTheory/Bicategory/NaturalTransformation/Icon): strict associativity and unitality of icon composition We show that the vertical composition of icons defined in #28244 satisfies strict associativity and strict unitality. This morally shows that icons are fit as the 2-cells of a bicategory structure on bicategories and lax functors, though we do not record an instance of this sort. --- - [ ] depends on: #28244 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory awaiting-CI large-import merge-conflict 975/33 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/EqToHom.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Icon.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Oplax.lean,Mathlib/CategoryTheory/Bicategory/Strict.lean,Mathlib/CategoryTheory/EqToHom.lean,scripts/noshake.json 8 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
239-56851
7 months ago
291-71796
291 days ago
0-331
5 minutes
30079 dagurtomas
author:dagurtomas
feat(CategoryTheory): IsSheafFor as a multiequalizer condition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory 112/0 Mathlib/CategoryTheory/Sites/Multifork.lean 1 3 ['chrisflav', 'github-actions', 'joelriou'] nobody
239-44175
7 months ago
242-22981
242 days ago
0-1
1 second
26601 yuma-mizuno
author:yuma-mizuno
feat(CategoryTheory): make `Functor.comp` irreducible [#mathlib4 > Functor identity `𝟭 _ ⋙ F = F` is definitional equality](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Functor.20identity.20.60.F0.9D.9F.AD.20_.20.E2.8B.99.20F.20.3D.20F.60.20is.20definitional.20equality/with/523978659) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 514/261 Mathlib/AlgebraicTopology/DoldKan/Compatibility.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/CatCommSq.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/CategoryTheory/Category/ULift.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Discrete/Basic.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Functor/Const.lean,Mathlib/CategoryTheory/Functor/Currying.lean,Mathlib/CategoryTheory/Functor/CurryingThree.lean,Mathlib/CategoryTheory/Functor/FullyFaithful.lean,Mathlib/CategoryTheory/Functor/Functorial.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Basic.lean,Mathlib/CategoryTheory/Functor/TwoSquare.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoid.lean,Mathlib/CategoryTheory/Join/Basic.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/FullSubcategory.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/PathCategory/Basic.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Products/Associator.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/CategoryTheory/Quotient.lean,Mathlib/CategoryTheory/Sigma/Basic.lean,Mathlib/CategoryTheory/Whiskering.lean,Mathlib/CategoryTheory/Yoneda.lean 34 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
238-71454
7 months ago
unknown
0-0
0 seconds
23621 astrainfinita
author:astrainfinita
chore: deprecate `LinearOrderedComm{Monoid, Group}WithZero` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #20676 merge-conflict t-algebra t-order
label:t-algebra$
261/205 Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/Integral.lean,Mathlib/RingTheory/Valuation/Minpoly.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValExtension.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/UnitInterval.lean,MathlibTest/instance_diamonds.lean,scripts/noshake.json 44 24 ['YaelDillies', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] kbuzzard
assignee:kbuzzard
237-70055
7 months ago
408-42428
408 days ago
5-42380
5 days
28630 Antidite
author:Antidite
feat(Archive/Imo): right isosceles configuration in the complex plane feat(Archive/Imo): right isosceles configuration in the complex plane This adds `Archive/Imo/Imo1975Q3.lean`, formalizing a triangle configuration with points A=0, B=1, C=z and auxiliary points R, P, Q built via complex rotations and sine-based scale factors. Main results: * `angle_and_distance`: ∠QRP = π/2 and dist Q R = dist R P. * Key identity `QRP_rot90`: (Q z).z − R.z = e^{iπ/2} · ((P z).z − R.z). Design/Style: * Minimal imports; module docstring; semantic lemma names; all definitions and theorems live under the namespace `IMO.TriangleConfig`. Moves: - (none) Deletions: - (none) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO awaiting-author new-contributor 196/0 Archive.lean,Archive/Imo/Imo1975Q3.lean 2 36 ['Antidite', 'LLaurance', 'github-actions', 'jsm28'] jsm28
assignee:jsm28
237-56670
7 months ago
237-56670
237 days ago
46-25852
46 days
30192 erdOne
author:erdOne
feat(RingTheory): valuative topology = adic topology for discrete rank 1 valuations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-ring-theory t-topology 190/2 Mathlib.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Integers.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 6 3 ['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
236-85778
7 months ago
237-80223
237 days ago
0-331
5 minutes
26886 pechersky
author:pechersky
feat(NumberTheory/Padics/ValuativeRel): ValuativeRel ℚ_[p] as well as instances for IsRankLeOne, IsNontrivial, IsDiscrete --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #26827 WIP t-number-theory blocked-by-other-PR t-algebra merge-conflict t-analysis
label:t-algebra$
310/25 Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 4 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
236-43255
7 months ago
326-28183
326 days ago
0-1386
23 minutes
27314 pechersky
author:pechersky
feat(TopologyValued): `Valued` based on a range topology Switch from a topology based on `fun γ : Γ₀ˣ => (v.ltAddSubgroup γ : AddSubgroup R)` to ``` fun rs : {rs : R × R // v rs.1 ≠ 0 ∧ v rs.2 ≠ 0} ↦ (v.ltAddSubgroup (Units.mk0 (v rs.val.2 / v rs.val.1) (by simp [rs.prop])) : AddSubgroup R) ``` This is in preparation for using `IsValuativeTopology` instead. In fact, that basis is precisely what `ValuativeTopology` asserts. `Valued.mk'` is kept, we do not yet rely on `IsValuativeTopology` and `UniformSpace`. The new `Valued` behaves the same way as it did before for `MulArchimedean` valuation codomains, which are all of the current in-mathlib uses of `Valued`. This is, for rank-one valuations. For valuations which rank one, but do not pass to the whole codomain, there are helper lemmas to discuss open/closed/clopen sets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #27264 - [x] depends on: #27265 - [ ] depends on: #27163 - [x] depends on: #27339 merge-conflict t-topology blocked-by-other-PR 733/259 Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean 12 9 ['github-actions', 'kckennylau', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
235-76306
7 months ago
313-31012
313 days ago
0-22127
6 hours
30135 erdOne
author:erdOne
feat(RingTheory): `ValuativeRel` on subrings --- @pechersky do we want this? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-ring-theory 19/0 Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean 1 5 ['erdOne', 'github-actions', 'pechersky'] nobody
235-70351
7 months ago
236-43043
236 days ago
3-20137
3 days
28328 pechersky
author:pechersky
chore(Topology/Valued): golf using local finite order of WithZeroTopology have to juggle in a version of `mrangeRestrict` which works on valuations, and also juggle the scoped topology over the subtype topology --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #28325 t-number-theory blocked-by-other-PR t-algebra large-import merge-conflict t-topology
label:t-algebra$
187/88 Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
232-1327
7 months ago
290-18289
290 days ago
0-1600
26 minutes
16773 arulandu
author:arulandu
feat(Probability/Distributions): formalize Beta distribution Formalize Beta distribution, using Gamma distribution as a reference. Added real-valued beta wrapper, in the manner of gamma. Thanks to @EtienneC30 for help with casting real <-> complex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability 286/1 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Probability/Distributions/Beta.lean 3 50 ['EtienneC30', 'arulandu', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] arulandu
assignee:arulandu
231-65975
7 months ago
622-7124
622 days ago
1-21124
1 day
30359 JLimperg
author:JLimperg
[Not a PR] Benchmark for Aesop RPINF precompilation --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict file-removed 5/3 lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 4 5 ['JLimperg', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
231-57982
7 months ago
unknown
0-0
0 seconds
30425 JLimperg
author:JLimperg
[Not a PR] Benchmark Aesop with precompiled RPINF at instance transparency --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 5/3 lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 4 3 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
231-40116
7 months ago
unknown
0-0
0 seconds
30438 JLimperg
author:JLimperg
[Not a PR] Benchmark Aesop change that computes fewer RPINFs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 5/3 lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 4 5 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
230-70464
7 months ago
unknown
0-0
0 seconds
30440 JLimperg
author:JLimperg
[Not a PR] Benchmark Aesop with no `hypTypes` in `ForwardState` and `instances` RPINF transparency --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 5/3 lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 4 3 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
230-65945
7 months ago
unknown
0-0
0 seconds
30452 JLimperg
author:JLimperg
[Not a PR] Benchmark Aesop with no `hypTypes` in `ForwardState`, RPINF at `instances` transparency and lazy forward state --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 5/3 lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 4 3 ['JLimperg', 'github-actions', 'leanprover-bot'] nobody
230-46824
7 months ago
unknown
0-0
0 seconds
26284 plp127
author:plp127
feat: faster implementation of `Nat.primeFactorsList` + `@[csimp]` lemma Add a function `Nat.primeFactorsListFast` that `#eval`s faster, and a `@[csimp]` lemma `Nat.primeFactorsList_eq_primeFactorsListFast` that shows `Nat.primeFactorsList = Nat.primeFactorsListFast`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data 95/0 Mathlib/Data/Nat/Factors.lean 1 11 ['b-mehta', 'github-actions', 'grunweg', 'plp127'] b-mehta
assignee:b-mehta
229-82853
7 months ago
230-23666
230 days ago
111-15071
111 days
27990 kckennylau
author:kckennylau
feat(Counterexamples): a nontrivial valuation with discrete topology This file constructs a valuation on `K[X]` satisfying `IsValuativeTopology K[X] ∧ Nonempty (valuation K[X]).RankOne ∧ IsNontrivial K[X] ∧ DiscreteTopology K[X]`, and proves that `IsValuativeTopology F ∧ IsNontrivial F ∧ DiscreteTopology F` is not possible if `F` is a field. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 172/0 Counterexamples.lean,Counterexamples/DiscreteTopologyWithNontrivialValuation.lean 2 14 ['github-actions', 'grunweg', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky'] nobody
229-72186
7 months ago
229-72187
229 days ago
67-79609
67 days
28243 robin-carlier
author:robin-carlier
chore(CategoryTheory/Bicategory): move some `eqToHom` lemmas The file `CategoryTheory/Bicategory/EqToHom.lean` introduced in #28242 is a more suitable hom for the lemmas `CategoryTheory.Bicategory.whiskerLeft_eqToHom` and `CategoryTheory.Bicategory.eqToHom_whiskerRight` than the current `CategoryTheory/Bicategory/Strict.lean`. We move these lemmas to the new file, and make `CategoryTheory/Bicategory/Strict` import these lemmas. --- - [x] depends on: #28242 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 165/23 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/EqToHom.lean,Mathlib/CategoryTheory/Bicategory/Strict.lean,Mathlib/CategoryTheory/EqToHom.lean,scripts/noshake.json 5 9 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
229-68924
7 months ago
239-56854
239 days ago
0-9063
2 hours
26913 Paul-Lez
author:Paul-Lez
feat(NumberTheory/{*}): add a few lemmas about number field and cyclotomic extensions The motivation for this PR is that the main statement in [this PR](https://github.com/google-deepmind/formal-conjectures/pull/297) shouldn't need to assume `p` has type `PNat` for the instances to work. This is still WIP as I need to clean up (currently waiting on the build!) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-number-theory t-algebra awaiting-CI merge-conflict
label:t-algebra$
52/0 Mathlib/NumberTheory/ClassNumber/Temporary.lean,Mathlib/NumberTheory/Cyclotomic/Basic.lean,Mathlib/NumberTheory/Cyclotomic/Embeddings.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/TotallyRealComplex.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
226-73762
7 months ago
325-48136
325 days ago
0-28
28 seconds
27302 tristan-f-r
author:tristan-f-r
feat(Fintype/Quotient): finLiftOn₂ The combination of [`Quotient.finLiftOn`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fintype/Quotient.html#Quotient.finLiftOn) and [`liftOn₂`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Quotient.liftOn%E2%82%82). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data 19/0 Mathlib/Data/Fintype/Quotient.lean 1 12 ['github-actions', 'kckennylau', 'pechersky', 'tristan-f-r', 'vihdzp'] pechersky
assignee:pechersky
226-23718
7 months ago
226-23718
226 days ago
6-5358
6 days
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
226-18794
7 months ago
277-50591
277 days ago
0-1
1 second
19616 adamtopaz
author:adamtopaz
fix: fix the definition of the absolute Galois group of a field Previously it was defined as the Galois group of the algebraic closure, as opposed to the separable closure. Also, this adds some missing instances for this group. Still missing is compactness, but that seems like a bigger project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-number-theory
label:t-algebra$
23/8 Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/FieldTheory/KrullTopology.lean 2 4 ['acmepjz', 'alreadydone', 'github-actions'] nobody
224-12565
7 months ago
542-77461
542 days ago
3-64280
3 days
28826 alreadydone
author:alreadydone
feat(CategoryTheory): Additive and Linear when Hom types are only monoids + introduce Presemiadditive categories, which generalizes Preadditive categories: the Hom sets are commutative monoids rather than groups, and `comp_zero` and `zero_comp` is no longer automatic. The new file Preadditive/Semi.lean is adapted from Preadditive/Basic.lean, though many contents can't be generalized. + generalize Functor.Additive and Functor.Linear to take Presemiadditive categories instead. The former needs a `map_zero` field since it's not automatic for Presemiadditive categories. + introduce SemimoduleCat, the category of semimodules (mathlib's Module) over a Semiring. The new file ModuleCat/Semi.lean is copied from ModuleCat/Basic.lean. TODOs: additive/linear equivalence between SemimoduleCat and ModuleCat and use it to transfer results; monoidal structure on SemimoduleCat; change `CommRing.Pic` to use SemimoduleCat. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory awaiting-CI 978/123 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/MonCat/Presemiadditive.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Preadditive/Basic.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/CategoryTheory/Preadditive/Semi.lean 9 4 ['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] nobody
224-6350
7 months ago
279-41195
279 days ago
0-1
1 second
16428 astrainfinita
author:astrainfinita
test use `QuotLike` APIs --- - [ ] depends on: #16421 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 1501/564 Mathlib.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Quandle.lean,Mathlib/CategoryTheory/IsomorphismClasses.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/Data/Finmap.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Multiset/Functor.lean,Mathlib/Data/QPF/Multivariate/Constructions/Fix.lean,Mathlib/Data/QPF/Univariate/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/QuotLike.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/Subgroup/Center.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Lists.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/Topology/Inseparable.lean,test/QuotLike.lean 43 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
223-20929
7 months ago
unknown
0-0
0 seconds
16210 astrainfinita
author:astrainfinita
Clean up quotient APIs ~~We may migrate to `Quot` and `IsEquiv` APIs in the future, but it might be a good start to clean up `Quotient` APIs anyway.~~ The diffs in this PR did not include `QuotLike` APIs, but eventually I decided to migrate to `QuotLike` before deprecating some old APIs. This is because some lemmas don't have alternatives that don't use `· ≈ ·`, and the alternatives that use `· ≈ ·` are in the core. See [Zulip](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/.60.28.C2.B7.20.E2.89.88.20.C2.B7.29.60.20in.20.60Quotient.60.20APIs/near/466970386). --- - [x] depends on: #16254 - [x] depends on: #16256 - [x] depends on: #16258 - [x] depends on: #16260 - [x] depends on: #16264 - [x] depends on: #16267 - [ ] depends on: #16314 - [x] depends on: #16410 - [x] depends on: #17588 - [x] depends on: #17594 - [x] depends on: #17940 - [ ] depends on: #17941 --- `QuotLike` - [ ] depends on: #16421 - [ ] depends on: #16428 --- [remaining diffs](https://github.com/leanprover-community/mathlib4/compare/FR_quot_now..FR_quot) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict tech debt blocked-by-other-PR t-data 1015/1114 Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/CharZero/Quotient.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/Module/Zlattice/Basic.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Periodic.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Group/SemiNormedGrp/Kernels.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Limits/Types.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Quiver/ConnectedComponent.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Computability/Reduce.lean,Mathlib/Computability/TuringMachine.lean,Mathlib/Data/Countable/Defs.lean,Mathlib/Data/FinEnum.lean,Mathlib/Data/Finite/Basic.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/GroupTheory/Abelianization.lean,Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Coprod/Basic.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/DoubleCoset.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/LinearAlgebra/Isomorphisms.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/LinearAlgebra/QuotientPi.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Group/FundamentalDomain.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Ultraproducts.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RepresentationTheory/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean 134 6 ['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
223-20928
7 months ago
unknown
0-0
0 seconds
30642 thorimur
author:thorimur
bench: lean4#10832 merge-conflict large-import 507/460 .github/workflows/nightly-docgen.yml,Cache/IO.lean,Mathlib.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Computability/DFA.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Finset/Attach.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Int/LeastGreatest.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Data/String/Basic.lean,Mathlib/Data/String/Defs.lean,Mathlib/Data/String/Lemmas.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/LebesgueDifferentiationThm.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean,Mathlib/SetTheory/PGame/Basic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linter/CommandStart.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Says.lean,Mathlib/Tactic/SuccessIfFailWithMsg.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,Mathlib/Tactic/Widget/InteractiveUnfold.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,Mathlib/Tactic/Widget/SelectPanelUtils.lean,Mathlib/Util/CompileInductive.lean,Mathlib/Util/Superscript.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/Change.lean,MathlibTest/DeprecateTo.lean,MathlibTest/FieldSimp.lean,MathlibTest/FindSyntax.lean,MathlibTest/LibraryRewrite.lean,MathlibTest/LibrarySearch/basic.lean,MathlibTest/LibrarySearch/mathlib.lean,MathlibTest/LibrarySearch/observe.lean,MathlibTest/Simps.lean,MathlibTest/Subsingleton.lean,MathlibTest/Use.lean,MathlibTest/Util/PrintSorries.lean,MathlibTest/Variable.lean,MathlibTest/fast_instance.lean,MathlibTest/grind/pairwise_disjoint.lean,MathlibTest/hint.lean,MathlibTest/propose.lean,MathlibTest/rewrites.lean,MathlibTest/ring.lean,MathlibTest/says.lean,MathlibTest/says_whitespace.lean,MathlibTest/success_if_fail_with_msg.lean,MathlibTest/toAdditive.lean,lake-manifest.json,lakefile.lean,lean-toolchain,scripts/check-yaml.lean,scripts/noshake.json 92 4 ['github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'thorimur'] nobody
222-67139
7 months ago
unknown
0-0
0 seconds
30643 thorimur
author:thorimur
bench: before lean4#10832 merge-conflict large-import 507/460 .github/workflows/nightly-docgen.yml,Cache/IO.lean,Mathlib.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Computability/DFA.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Finset/Attach.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Int/LeastGreatest.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Data/String/Basic.lean,Mathlib/Data/String/Defs.lean,Mathlib/Data/String/Lemmas.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/LebesgueDifferentiationThm.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean,Mathlib/SetTheory/PGame/Basic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linter/CommandStart.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Says.lean,Mathlib/Tactic/SuccessIfFailWithMsg.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,Mathlib/Tactic/Widget/InteractiveUnfold.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,Mathlib/Tactic/Widget/SelectPanelUtils.lean,Mathlib/Util/CompileInductive.lean,Mathlib/Util/Superscript.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/Change.lean,MathlibTest/DeprecateTo.lean,MathlibTest/FieldSimp.lean,MathlibTest/FindSyntax.lean,MathlibTest/LibraryRewrite.lean,MathlibTest/LibrarySearch/basic.lean,MathlibTest/LibrarySearch/mathlib.lean,MathlibTest/LibrarySearch/observe.lean,MathlibTest/Simps.lean,MathlibTest/Subsingleton.lean,MathlibTest/Use.lean,MathlibTest/Util/PrintSorries.lean,MathlibTest/Variable.lean,MathlibTest/fast_instance.lean,MathlibTest/grind/pairwise_disjoint.lean,MathlibTest/hint.lean,MathlibTest/propose.lean,MathlibTest/rewrites.lean,MathlibTest/ring.lean,MathlibTest/says.lean,MathlibTest/says_whitespace.lean,MathlibTest/success_if_fail_with_msg.lean,MathlibTest/toAdditive.lean,lake-manifest.json,lakefile.lean,lean-toolchain,scripts/check-yaml.lean,scripts/noshake.json 92 4 ['github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'thorimur'] nobody
222-67138
7 months ago
unknown
0-0
0 seconds
26291 RemyDegenne
author:RemyDegenne
feat(Probability): Cameron-Martin theorem - Definition of the Cameron-Martin space of a Gaussian measure - The Cameron-Martin theorem: shifting a Gaussian measure by an element of the Cameron-Martin space gives an equivalent measure, and shifting by an element which is not in the Cameron-Martin space gives a mutually singular measure. --- - [x] depends on: #24975 - [x] depends on: #24969 - [x] depends on: #24930 - [x] depends on: #24925 - [x] depends on: #24900 - [x] depends on: #25532 - [x] depends on: #27022 - [x] depends on: #27027 - [x] depends on: #27029 - [x] depends on: #27123 - [x] depends on: #27610 - [x] depends on: #28342 - [x] depends on: #28343 - [x] depends on: #30167 - [x] depends on: #30346 - [x] depends on: #30348 - [ ] depends on: #30582 - [x] depends on: #31551 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24430.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24430* WIP blocked-by-other-PR t-measure-probability merge-conflict 1963/13 Mathlib.lean,Mathlib/Probability/Distributions/Gaussian/CameronMartin.lean,Mathlib/Probability/Distributions/Gaussian/CameronMartinThm.lean,Mathlib/Probability/Distributions/Gaussian/CompletionResultsToBeMoved.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/Probability/Moments/Variance.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/UniformSpace/AbstractCompletion.lean,docs/1000.yaml 14 13 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
221-77728
7 months ago
341-10720
341 days ago
0-2
2 seconds
30460 janithamalith
author:janithamalith
feat(Nat): add lemma nat_card_orbit_mul_card_stabilizer_eq_card_group Added a lemma `nat_card_orbit_mul_card_stabilizer_eq_card_group` which is the Nat.card version of MulAction.card_orbit_mul_card_stabilizer_eq_card_group --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-group-theory new-contributor 6/0 Mathlib/GroupTheory/GroupAction/CardCommute.lean 1 17 ['github-actions', 'kckennylau', 'plp127', 'tb65536'] tb65536
assignee:tb65536
221-76225
7 months ago
221-76225
221 days ago
8-8414
8 days
25737 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms): Normal forms for `P_δ`s We prove that admissible lists indeed provide a normal form for morphisms of satisfying `P_δ`. To this end, we introduce `standardδ`, a construction that takes a list and turn it into a composition of `δ i`s in `SimplexCategoryGenRel`. We then prove that, thanks to the first simplicial identity, composition on the left corresponds to simplicial insertion in the list. This gives existence of a normal form for every morphism satisfying `P_δ`. For unicity, we introduce an auxiliary function `simplicialEvalδ : (List ℕ) → ℕ → ℕ` and show that for admissible lists, it lifts to `ℕ` the `orderHom` attached to `toSimplexCategory.map standardδ`, and that we can recover elements of the list only by looking at values of this function. Part of a series of PR formalising that `SimplexCategoryGenRel` is equivalent to `SimplexCategory`. --- - [x] depends on: #25736 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #21746.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/21746* t-algebraic-topology delegated t-category-theory 182/2 Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean 1 6 ['github-actions', 'joelriou', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
220-77013
7 months ago
221-68729
221 days ago
0-22513
6 hours
30209 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: some TwoSidedIdeal.span lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-ring-theory FLT 16/0 Mathlib/RingTheory/TwoSidedIdeal/Operations.lean 1 2 ['erdOne', 'github-actions'] erdOne
assignee:erdOne
220-47519
7 months ago
220-47519
220 days ago
17-9153
17 days
25225 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 16/0 Mathlib/Combinatorics/SimpleGraph/Trails.lean 1 6 ['IvanRenison', 'github-actions', 'vlad902'] kmill
assignee:kmill
220-39757
7 months ago
220-39757
220 days ago
148-3286
148 days
27206 grhkm21
author:grhkm21
feat(CategoryTheory/Adjunction): partial adjoints are adjoints Partial adjunctions `F.partial{Left,Right}Adjunction` are adjunctions when fully defined i.e. `F.{left,right}AdjointObjIsDefined = ⊤`. awaiting-author t-category-theory 48/2 Mathlib/CategoryTheory/Adjunction/PartialAdjoint.lean 1 1 ['github-actions'] nobody
219-71993
7 months ago
317-84198
317 days ago
0-53
53 seconds
27196 YaelDillies
author:YaelDillies
refactor(Polynomial/Bivariate): swap `X` and `Y` for improved notation This way, `X` keeps on being `X`. From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra toric
label:t-algebra$
3/3 Mathlib/Algebra/Polynomial/Bivariate.lean 1 7 ['YaelDillies', 'alreadydone', 'github-actions', 'kckennylau'] nobody
219-65546
7 months ago
302-16257
302 days ago
15-75841
15 days
24532 robertmaxton42
author:robertmaxton42
feat(LinearAlgebra/FreeProduct): fill out the `FreeProduct.asPowers` namespace * Replicate the existing API for `LinearAlgebra.FreeProduct` under `FreeProduct.asPowers`, for convenience when working primarily with the power algebra representation * Adds convenience lemmas for using the corresponding quotient relation `rel'` (used in the above). --- - [x] depends on: #24531 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
122/5 Mathlib/LinearAlgebra/FreeProduct/Basic.lean 1 26 ['YaelDillies', 'adomani', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robertmaxton42'] nobody
219-29607
7 months ago
384-17038
384 days ago
0-47665
13 hours
27683 dupuisf
author:dupuisf
feat: grind tags for set operations This PR adds `grind` tags for various set operations (union, intersection, complement, etc). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 29/9 Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Operations.lean 2 5 ['dupuisf', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
218-67296
7 months ago
303-76608
303 days ago
0-292
4 minutes
30828 DeVilhena-Paulo
author:DeVilhena-Paulo
feat: implementation of `Finmap.merge` The main contribution of this pull request is the implementation of a `merge` function for finite maps (`Finmap`). The construction relies on the definition of a `merge` function for association lists (`AList`). There is also a side (unrelated) contribution on `Mathlib/Data/List/Permutation.lean`: the addition of a theorem about the permutation of a list with a head element (that is, a list of the form `a :: l`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 449/3 Mathlib/Data/Finmap.lean,Mathlib/Data/List/AList.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/List/Sigma.lean 4 1 ['github-actions'] nobody
218-63189
7 months ago
218-63260
218 days ago
0-80
1 minute
29355 girving
author:girving
feat(Trigonometric): Taylor series bounds for sin and cos Zulip discussion here: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Better.20.60Real.2Esin.60.20bounds/near/535035576 We also include the full set of intervals on which sin and cos are monotone/antitone. --- Questions to resolve as part of review: 1. I've left the `Finset.sum_range_even` in the new `SeriesBounds` file, but presumably it should go somewhere else (unless you want me to inline it, but that seems worse). 2. Is putting the new Taylor series bounds in a new `SeriesBounds` file right, or should it go in the current `Bounds.lean` file? When I started writing the PR I thought the new bounds would need more imports via more analysis, but it turns out the only new import needed would be `Mathlib.Algebra.BigOperators.Field` which seems lightweight. I am happy with whatever the preference is in terms of file structure. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 158/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/SeriesBounds.lean 4 28 ['Parcly-Taxel', 'Ruben-VandeVelde', 'adomani', 'girving', 'github-actions', 'llllvvuu', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
218-58679
7 months ago
266-58468
266 days ago
0-76697
21 hours
28298 thorimur
author:thorimur
chore: dedent `to_additive` docstrings This PR uses automation to dedent `to_additive` docstrings throughout Mathlib. It does not lint against indentation or in any way enforce indentation standards for future docstrings. The convention was chosen in accordance with the discussion and polls at [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Poll.3A.20Indentation.20style.20for.20.60to_additive.60.20docstrings/with/534285603). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict documentation awaiting-author 949/949 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/FilteredColimits.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/Grp/Ulift.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/Semigrp/Basic.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Pi.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Embedding.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Equiv/Opposite.lean,Mathlib/Algebra/Group/Even.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Indicator.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/Pi/Units.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/Units/Opposite.lean,Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Algebra/Opposites.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Group/OrderIso.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Submonoid.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/Units.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Regular/Defs.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Fintype/BigOperators.lean,Mathlib/Data/Set/MulAntidiagonal.lean,Mathlib/Data/Set/SMulAntidiagonal.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/Dynamics/FixedPoints/Prufer.lean,Mathlib/Geometry/Manifold/Algebra/SmoothFunctions.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Coprod/Basic.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Divisible.lean,Mathlib/GroupTheory/EckmannHilton.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/FreeGroup/Reduce.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/FixedPoints.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/Primitive.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean 141 11 ['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'thorimur'] nobody
216-6861
7 months ago
289-59086
289 days ago
0-46097
12 hours
28737 astrainfinita
author:astrainfinita
refactor: deprecate `MulEquivClass` This PR continues the work from #18806. Original PR: https://github.com/leanprover-community/mathlib4/pull/18806 merge-conflict awaiting-author t-algebra
label:t-algebra$
67/77 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/GroupWithZero/Equiv.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Star/MonoidHom.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/FreeModule/Finite/CardQuotient.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 26 20 ['Vierkantor', 'alreadydone', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
214-9276
7 months ago
277-55849
277 days ago
2-39213
2 days
28676 sun123zxy
author:sun123zxy
feat(NumberTheory/ArithmeticFunction): wrap `Nat.totient` as an `ArithmeticFunction` This wraps the Euler's totient function `Nat.totient` into a new `ArithmeticFunction` `ϕ`, with some basic identities such as `ϕ * ζ = id` and `μ * id = ϕ.` --- We use the notation `ϕ` to distinguish from `Nat.totient`'s notation `φ`, however this might be controversial. Suggestions are welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor large-import merge-conflict awaiting-author 45/5 Mathlib/NumberTheory/ArithmeticFunction.lean 1 19 ['MichaelStollBayreuth', 'SnirBroshi', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'riccardobrasca', 'sun123zxy'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
214-9228
7 months ago
229-70304
229 days ago
47-58311
47 days
30299 franv314
author:franv314
feat(Topology/Instances): Cantor set Prove that the Cantor set has empty interior and the cardinality of the continuum as discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/A.20few.20results.20about.20the.20Cantor.20set/with/543560670) Moves: - Mathlib.Topology.Instances.CantorSet -> Mathlib.Topology.Instances.CantorSet.Basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict file-removed awaiting-author t-topology 355/2 Mathlib.lean,Mathlib/Topology/Instances/CantorSet/Basic.lean,Mathlib/Topology/Instances/CantorSet/Cardinality.lean,Mathlib/Topology/Instances/CantorSet/Lemmas.lean 4 5 ['github-actions', 'grunweg', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
214-958
7 months ago
234-69987
234 days ago
0-2409
40 minutes
30303 franv314
author:franv314
chore(Topology/Instances): add deprecated module Add deprecated module to moved Cantor set file. --- - [ ] depends on: #30299 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor 486/124 Mathlib.lean,Mathlib/Topology/Instances/CantorSet.lean,Mathlib/Topology/Instances/CantorSet/Basic.lean,Mathlib/Topology/Instances/CantorSet/Cardinality.lean,Mathlib/Topology/Instances/CantorSet/Lemmas.lean 5 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
214-956
7 months ago
234-67856
234 days ago
0-340
5 minutes
30575 urkud
author:urkud
feat: lemmas about `_ • _` on Filters as well as `Set.Finite.f?derivWithin_eq`. I wrote these lemmas for #24019, but the final version of that PR doesn't need them. I moved them here so that I don't forget to prepare a non-draft PR with these lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 51/0 Mathlib/Topology/TODO.lean 1 3 ['github-actions', 'plp127', 'urkud'] nobody
213-66524
7 months ago
unknown
0-0
0 seconds
27976 smmercuri
author:smmercuri
feat: `ramificationIdx` for `NumberField.InfinitePlace` This PR continues the work from #24884. Original PR: https://github.com/leanprover-community/mathlib4/pull/24884 merge-conflict WIP t-number-theory 22/0 Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
212-73198
7 months ago
298-2783
298 days ago
0-57
57 seconds
26357 javra
author:javra
feat(CategoryTheory): linear categories as `ModuleCat R`-enriched categories Continues #23826. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory large-import 197/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/CategoryTheory/Enriched/Linear.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Monoidal/Linear.lean 5 10 ['adamtopaz', 'github-actions', 'javra', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
211-31793
6 months ago
255-58446
255 days ago
78-29556
78 days
26085 grunweg
author:grunweg
feat: disjoint unions distribute with products of manifolds This PR continues the work from #22611. Original PR: https://github.com/leanprover-community/mathlib4/pull/22611 please-adopt WIP t-differential-geometry merge-conflict 75/6 Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean 2 3 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
211-3796
6 months ago
345-80998
345 days ago
0-74
1 minute
27180 ADedecker
author:ADedecker
feat: quotient of a monoid with zero by a multiplicative congruence --- My motivation is getting a more conceptual construction of [ValuativeRel.ValueGroupWithZero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/ValuativeRel.html#ValuativeRel.ValueGroupWithZero), but I think this is of independent interest. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra delegated
label:t-algebra$
141/26 Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean 5 32 ['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'ocfnash'] ocfnash
assignee:ocfnash
210-78932
6 months ago
290-8067
290 days ago
28-12053
28 days
29570 eric-wieser
author:eric-wieser
fix: substitute infotrees in linters I don't know whether this is necessary in these particular cases, but I've seen places where it is. There are a handful more of these cases in Batteries. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 2/2 Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/TacticAnalysis.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
210-75433
6 months ago
unknown
0-0
0 seconds
30790 urkud
author:urkud
chore: partially migrate from `ContinuousMap.continuous` ... to `map_continuous` or `by fun_prop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 37/45 Mathlib/AlgebraicGeometry/Morphisms/Constructors.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Restrict.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Condensed/TopComparison.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/Topology/Category/CompHausLike/Limits.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean,Mathlib/Topology/Compactness/CompactlyGeneratedSpace.lean,Mathlib/Topology/ContinuousMap/CompactlySupported.lean,Mathlib/Topology/ContinuousMap/Units.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/PartitionOfUnity.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/TietzeExtension.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Dini.lean,Mathlib/Topology/UrysohnsLemma.lean 24 6 ['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
210-74736
6 months ago
219-61518
219 days ago
0-12151
3 hours
30631 ADedecker
author:ADedecker
refactor: evaluation of power series in semirings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 665/71 Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/RingTheory/MvPowerSeries/EvaluationSemi.lean,Mathlib/Topology/Algebra/LinearTopology.lean,Mathlib/Topology/Algebra/LinearUniformity.lean,Mathlib/Topology/Algebra/TopologicallyNilpotent.lean 5 1 ['github-actions'] nobody
209-74686
6 months ago
unknown
0-0
0 seconds
29871 zach1502
author:zach1502
feat(Matrix/Transvection): Gauss pivot determinant identity and pivot preservation This PR adds two lemmas formalizing standard Gaussian pivot identities: * `Matrix.Transvection.listTransvecCol_mul_mul_listTransvecRow_pivot`: After applying the canonical left/right transvection products that clear the last column and row, the pivot (bottom-right) entry of a matrix is unchanged. Marked `@[simp]`. * `Matrix.Transvection.det_eq_detTopLeft_mul_pivot`: If the pivot entry is nonzero, then the determinant of the matrix factors as the determinant of the top-left block times the pivot entry, after performing the canonical transvections. This is the usual Gauss–pivot determinant identity. * Added simple usage tests in `MathlibTest/matrix.lean` to check that the new lemmas are usable by `simp`/`simpa`. --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
94/0 Mathlib/LinearAlgebra/Matrix/Transvection.lean,MathlibTest/matrix.lean 2 3 ['github-actions', 'riccardobrasca', 'zach1502'] nobody
208-479
6 months ago
208-479
208 days ago
41-53449
41 days
25692 Whysoserioushah
author:Whysoserioushah
feat(RingTheory/MatrixAlgebra): add a more general version of `matrixEquivTensor` This adds `tensorMatrixLinearEquiv : A ⊗[R] Matrix n n B ≃ₐ[S] Matrix n n (A ⊗[R] B)` which is a more general version of `matrixEquivTensor : Matrix n n A ≃ₐ[R] (A ⊗[R] Matrix n n R)`. The latter is then implemented as a trivial consequence of the former. Many internal implementation details are deleted without deprecation, although strictly these were not private. Co-authored-by: @erdOne Co-authored-by: Eric Wieser --- - [ ] depends on: #28367 - [ ] depends on: #28359 - [ ] depends on: #28368 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 129/110 Mathlib/RingTheory/MatrixAlgebra.lean 1 28 ['Whysoserioushah', 'chrisflav', 'eric-wieser', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mattrobball'] chrisflav
assignee:chrisflav
207-74456
6 months ago
284-10952
284 days ago
47-13209
47 days
25012 urkud
author:urkud
refactor(*): migrate from `Matrix.toLin'` to `Matrix.mulVecLin` or `Matrix.mulVec` whenever we don't need the `LinearEquiv.symm` part. See [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Matrix.2EtoLin'.20vs.20Matrix.2EmulVecLin/with/515188548). It makes sense to have only one normal form, and `Matrix.toLin'` has an extra `DecidableEq` assumption. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 165/126 Mathlib/Algebra/Lie/Matrix.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Minpoly.lean,Mathlib/LinearAlgebra/Matrix/Diagonal.lean,Mathlib/LinearAlgebra/Matrix/Gershgorin.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/ToLinearEquiv.lean,Mathlib/LinearAlgebra/UnitaryGroup.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean 19 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
207-56857
6 months ago
355-82335
355 days ago
14-81673
14 days
29638 yuma-mizuno
author:yuma-mizuno
feat(CategoryTheory): define descent data by presieves --- Addendum: I realized that there is prior work in #24434. Since this PR uses a slightly different definition, I plan to make this PR a follow-up to #24434. Until then, I’ll keep it marked as WIP. See the comment: https://github.com/leanprover-community/mathlib4/pull/29638#issuecomment-3290041719 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 408/2 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Stack/Basic.lean,Mathlib/CategoryTheory/Stack/Descent.lean 6 7 ['chrisflav', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'yuma-mizuno'] nobody
207-52954
6 months ago
257-83304
257 days ago
0-74
1 minute
30158 nicolaviolette
author:nicolaviolette
feat: combinatorics simplegraph basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 9/4 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 3 ['b-mehta', 'github-actions'] b-mehta
assignee:b-mehta
207-20009
6 months ago
207-20009
207 days ago
31-69826
31 days
28132 dupuisf
author:dupuisf
feat: preliminary `grind` tags for `IsUnit` This PR adds preliminary `grind` tags for the `IsUnit` predicate. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
61/17 Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Ring/Units.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean 6 3 ['github-actions', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
206-48784
6 months ago
206-48785
206 days ago
80-71575
80 days
25903 pfaffelh
author:pfaffelh
feat(MeasureTheory): finite unions of sets in a semi-ring (in terms of measure theory) form a ring : Finite unions of sets in a semi-ring (in terms of measure theory) form a ring The set containing finite unions of sets in a semi-ring are a ring. Part of `MeasureTheory.SetSemiring` is moved to the new file `MeasureTheory.SetRing`. --- - [ ] depends on: #25902 [contains changes in `SetSemiring` as well] --- *This PR continues the work from #23117.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/23117* merge-conflict blocked-by-other-PR large-import t-measure-probability 648/131 Mathlib.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Module/Bimodule.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/Pi.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetAlgebra.lean,Mathlib/MeasureTheory/SetRing.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ExtractLets.lean,lake-manifest.json,lakefile.lean 16 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
206-36496
6 months ago
284-47042
284 days ago
0-11144
3 hours
28863 yury-harmonic
author:yury-harmonic
ignore: make CI build oleans It looks like CI doesn't build oleans unless I open a PR. Or I can't see this workflow. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict large-import 624/100 Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/Nat/Factorial/Basic.lean,Mathlib/Data/Nat/ModEq.lean,Mathlib/Data/Nat/NthRoot/Defs.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Tactic/NormNum/Basic.lean,MathlibTest/norm_num_ext.lean 13 4 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
206-16507
6 months ago
unknown
0-0
0 seconds
29992 vlad902
author:vlad902
feat(Order): finite (Max)Chains always contains a top/max element --- - [ ] depends on: #29835 [optional extra text] - [ ] depends on: #29993 [optional extra text] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order large-import 35/0 Mathlib/Order/Preorder/Chain.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
204-68588
6 months ago
246-14549
246 days ago
0-56
56 seconds
26901 5hv5hvnk
author:5hv5hvnk
feat: a simproc version of `compute_degree` Wrap `compute_degree` in a simproc for use by simp. Closes #22219. --- awaiting-CI new-contributor merge-conflict awaiting-author t-meta 198/0 Mathlib.lean,Mathlib/Tactic/Simproc/PolynomialDegree.lean,MathlibTest/polynomial_degree_simproc.lean 3 19 ['5hv5hvnk', 'YaelDillies', 'adomani', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
204-66677
6 months ago
322-83671
322 days ago
2-71043
2 days
26391 grunweg
author:grunweg
feat: immersed submanifolds Still under construction --- - [ ] depends on: #26087 - [ ] depends on: #23040 Better version of #24549. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 1418/0 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/EmbeddedSubmanifold.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/MSplits.lean 5 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
204-53437
6 months ago
unknown
0-0
0 seconds
31020 grunweg
author:grunweg
feat: mfderiv of Sum.inl and Sum.inr Nothing to see yet: waiting on the cache, then I will state the sorries and Newell Jansen has expressed interest in trying to prove this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 64/0 Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 1 4 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
204-52205
6 months ago
213-66684
213 days ago
0-1
1 second
31340 kim-em
author:kim-em
feat: helper script to summarize CI errors --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 235/0 scripts/README.md,scripts/failing_ci.py 2 1 ['github-actions'] nobody
204-38359
6 months ago
unknown
0-0
0 seconds
25775 emilyriehl
author:emilyriehl
feat(AlgebraicTopology/SimplicialSet/NerveAdjunction): to Strict Segal 2 Under a suitable hypothesis, a map of 2-truncated simplicial sets can be generated from a refl prefunctor between the underlying reflexive quivers --- provided the codomain is `StrictSegal`. This abstracts a previously formalized result that requires the codomain to be the 2-truncated nerve of a category. Co-authored-by: Aaron Liu --- The current draft displays the old code for comparison with new versions labeled ALT. After initial review this will be cut. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #23848.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/23848* t-algebraic-topology t-category-theory merge-conflict awaiting-author infinity-cosmos 421/206 Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/HomotopyCat.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/StrictSegal.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/EqToHom.lean 7 38 ['emilyriehl', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'robin-carlier'] robin-carlier
assignee:robin-carlier
201-68015
6 months ago
282-60741
282 days ago
17-16247
17 days
26827 pechersky
author:pechersky
feat(Analysis/Normed/ValuativeRel): helper instance for NormedField --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26713 - [x] depends on: #26826 merge-conflict t-algebra t-number-theory t-analysis
label:t-algebra$
211/27 Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 3 34 ['ADedecker', 'adamtopaz', 'erdOne', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] kbuzzard
assignee:kbuzzard
198-77388
6 months ago
198-77388
198 days ago
122-64394
122 days
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
198-29668
6 months ago
238-8334
238 days ago
1-160
1 day
27135 JovanGerb
author:JovanGerb
feat: `gconvert` tactic The `gconvert` tactic calls `gcongr` internally, and it can be used as replacement/generalization of `peel`. One drawback is that `peel` can unfold definitions until they are a binder, while `gconvert` cannot, but I think this is acceptable. TODO: replace all uses of `peel` with either `gconvert` or `congr!` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 320/17 Mathlib/Tactic/GCongr/Core.lean,MathlibTest/GConvert.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
197-58813
6 months ago
319-73410
319 days ago
0-5
5 seconds
25765 JovanGerb
author:JovanGerb
feat(gcongr): lemma for rewriting inside divisibility TODO: add test to show that we can rewrite using `a ≡ b [ZMOD n]` inside `n ∣ 2 * a + 1`. edit: it's not yet entirely clear if this is the right thing to do. edit: This lemma should be written using iff (or =), so that we can use it specifically when rewriting with a symmetric relation. Supporting equality in `gcongr` is still work in progress. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated t-data 5/0 Mathlib/Data/Int/ModEq.lean 1 3 ['fpvandoorn', 'github-actions', 'mathlib-bors'] nobody
197-2534
6 months ago
350-75214
350 days ago
1-19951
1 day
30978 dagurtomas
author:dagurtomas
Draft: adic spaces --- This is work in progress, mostly ported from the perfectoid project [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict large-import 1407/45 Mathlib.lean,Mathlib/AdicSpace/AdicSpace.lean,Mathlib/AdicSpace/HuberPair.lean,Mathlib/AdicSpace/Spa/RationalOpenData.lean,Mathlib/AdicSpace/Spa/StalkValuation.lean,Mathlib/AdicSpace/Spa/StructurePresheaf.lean,Mathlib/AdicSpace/Spv.lean,Mathlib/Topology/Category/TopCommRingCat.lean 8 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
196-70367
6 months ago
214-63186
214 days ago
0-12
12 seconds
30824 grunweg
author:grunweg
wip: another smoothness lemma for local frames --- Can I prove in general that the coefficients of a smooth section w.r.t. a smooth local frame are smooth? This is certainly true for orthonormal frames... [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry 57/9 Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean 1 3 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
195-58705
6 months ago
218-70182
218 days ago
0-6
6 seconds
30770 robertmaxton42
author:robertmaxton42
(WIP) Limits and Colimits in Quiv WIP PR for the oleans --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 3652/31 Mathlib.lean,Mathlib/CategoryTheory/Category/Quiv.lean,Mathlib/CategoryTheory/Category/Quiv/AsFunctor/Defs.lean,Mathlib/CategoryTheory/Category/Quiv/Colimits.lean,Mathlib/CategoryTheory/Category/Quiv/Limits.lean,Mathlib/CategoryTheory/Category/Quiv/Shapes.lean,Mathlib/CategoryTheory/Category/Quiv/WalkingQuiver.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Filtered/Level.lean,Mathlib/CategoryTheory/Limits/Constructions/LimitsOfProductsAndEqualizers.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/FunctorToTypes.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/ObjectProperty/FullSubcategory.lean,Mathlib/CategoryTheory/Topos/Classifier.lean,Mathlib/CategoryTheory/Topos/Presheaf.lean,Mathlib/Combinatorics/Quiver/Shapes.lean,Mathlib/Combinatorics/Quiver/WalkingQuiver.lean,Mathlib/Data/ULift.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Sum.lean,Mathlib/Logic/Small/Defs.lean 23 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
194-29133
6 months ago
unknown
0-0
0 seconds
31593 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: some lemmas about MonoidAlgebra --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
26/0 Mathlib/Algebra/MonoidAlgebra/Basic.lean 1 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'themathqueen'] nobody
194-22783
6 months ago
196-78443
196 days ago
0-85235
23 hours
26885 pechersky
author:pechersky
feat(Topology/ValuativeRel): ValuativeTopology 𝒪[K] and even when not a field, `ValuativeRel 𝒪[K]` This is an example of something achievable with the new declarations that wasn't possible with Valued Such that we can discuss the valuations on the subring without always using coercions But to achieve this, one needs some juggling of the value groups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26834 - [ ] depends on : #30135 t-algebra t-number-theory t-topology
label:t-algebra$
66/0 Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 1 10 ['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] alreadydone
assignee:alreadydone
193-61929
6 months ago
193-74949
193 days ago
131-51114
131 days
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
193-46800
6 months ago
612-74188
612 days ago
45-84611
45 days
12032 mcdoll
author:mcdoll
feat: delta distribution as a limit --- - [ ] depends on: #11496 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis 58/0 Mathlib/Analysis/Distribution/DiracDelta.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
193-29774
6 months ago
780-74340
780 days ago
0-1
1 second
9693 madvorak
author:madvorak
feat: Linear programming in the standard form --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) - [x] depends on: #9652 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
86/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/LinearProgramming.lean 2 15 ['apurvanakade', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak', 'mathlib4-merge-conflict-bot'] nobody
192-80546
6 months ago
696-2138
696 days ago
168-78821
168 days
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
192-63041
6 months ago
538-26571
538 days ago
23-54870
23 days
4786 thorimur
author:thorimur
feat: AppBuilder utils This supplements `Lean.Meta.AppBuilder`, introducing variants of `mkAppN` and `mkAppM` which allow for more fine-grained management of existing and created metavariables. [Description pending] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 205/0 Mathlib.lean,Mathlib/Lean/Meta/AppBuilder.lean 2 1 ['mathlib4-merge-conflict-bot'] nobody
192-14501
6 months ago
unknown
0-0
0 seconds
5745 alexjbest
author:alexjbest
feat: a tactic to consume type annotations, and make constructor nicer During the copenhagen masterclass I found some situations where applying the constructor tactic left the goal in a difficult to read state when autoParams were present. We add a simple tactic to clean these up, and a macro for `constructor` to behave more like the constructor notation and do this automatically (constructor is in core) It seems that these things should be cleaned up by simp, but a simp lemma to remove these annotations is not accepted by lean as the types are too similar. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 41/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Consume.lean,test/consume.lean 4 5 ['alexjbest', 'digama0', 'kim-em', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
192-14500
6 months ago
1007-37362
1007 days ago
51-33889
51 days
5863 eric-wieser
author:eric-wieser
feat: add elaborators for concrete matrices --- - [x] depends on: #5866 - [ ] depends on: #5897 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted blocked-by-other-PR t-meta 257/7 Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Matrix/Auto.lean,MathlibTest/matrix_auto.lean 3 8 ['eric-wieser', 'github-actions', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
192-14499
6 months ago
1051-80560
1051 days ago
0-1
1 second
5919 MithicSpirit
author:MithicSpirit
feat: implement orthogonality for AffineSubspace Define `AffineSubspace.orthogonal` and `AffineSubspace.IsOrtho`, as well as develop an API emulating that of `Submodule.orthogonal` and `Submodule.IsOrtho`, respectively. Additionally, provide some relevant lemmas exclusive to affine subspaces, which are mostly to do with the relationship between orthogonality and `AffineSubspace.Parallel`. Closes #5539 --- Still WIP as I need to add more docstrings as well as notations for the new definitions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor merge-conflict help-wanted t-analysis 287/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/AffineSubspace.lean 2 7 ['MithicSpirit', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] MithicSpirit
assignee:MithicSpirit
192-14498
6 months ago
875-39393
875 days ago
0-433
7 minutes
7386 madvorak
author:madvorak
feat: Define linear programs Linear programs over a general `Module` with constraints given in the form "aᵀx - b ≥ 0" and the objective function as an `AffineMap` to be minimized. --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
87/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean 2 64 ['Shreyas4991', 'YaelDillies', 'eric-wieser', 'github-actions', 'kim-em', 'madvorak', 'mathlib4-merge-conflict-bot'] nobody
192-14495
6 months ago
696-2126
696 days ago
232-74885
232 days
9352 chenyili0818
author:chenyili0818
feat: arithmetic lemmas for `gradient` This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties Co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 404/0 Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Lemmas.lean 2 31 ['chenyili0818', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sgouezel', 'winstonyin'] nobody
192-14370
6 months ago
829-79219
829 days ago
52-1358
52 days
9795 sinhp
author:sinhp
feat: the type `Fib` of fibre of a function at a point This is the most basic file of the theory of fibred categories developed here: https://github.com/sinhp/LeanFibredCategories/tree/master --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 74/0 Mathlib.lean,Mathlib/Data/Fiber.lean 2 18 ['adri326', 'joelriou', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody
192-14369
6 months ago
862-10540
862 days ago
2-35530
2 days
10660 eric-wieser
author:eric-wieser
feat(LinearAlgebra/CliffordAlgebra): construction from a basis This is adapted from https://github.com/eric-wieser/lftcm2023-clifford_algebra, which only worked for the special case of `Q = 0`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-algebra
label:t-algebra$
573/0 Mathlib.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basis.lean 2 16 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-14365
6 months ago
unknown
0-0
0 seconds
10977 grunweg
author:grunweg
feat: germs of smooth functions Define the space of germs of smooth functions (between manifolds). Endow it with a ring structure if the target manifold is a smooth ring (e.g., a Lie group or a field). From the sphere eversion project, rewritten by me. Co-authored-by: Patrick Massot ------- Particular questions for review - is the authorship/copyright information appropriate? (`PatrickMassot` created the file `SmoothGerm` which I adapted; I didn't trace this far back through sphere-eversion.) - is providing all the intermediate algebraic structures (such as, an additive subgroup) on the space of smooth germs useful in practice? (The sphere eversion project only needs a ring structure.) - any further particular API lemmas (e.g., around coercions) which would be good to add? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry merge-conflict awaiting-author t-topology t-analysis 150/0 Mathlib.lean,Mathlib/Geometry/Manifold/Algebra/SmoothGerm.lean 2 34 ['YaelDillies', 'github-actions', 'grunweg', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot', 'mcdoll'] fpvandoorn
assignee:fpvandoorn
192-14364
6 months ago
640-76399
640 days ago
144-63944
144 days
10998 hmonroe
author:hmonroe
feat(Logic): Arithmetization of partial recursive functions (toward Gödel's first incompleteness theorem) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 364/0 Mathlib.lean,Mathlib/Logic/Godel/PartArith.lean 2 4 ['Ruben-VandeVelde', 'YaelDillies', 'mathlib4-merge-conflict-bot'] nobody
192-14363
6 months ago
722-69291
722 days ago
99-83915
99 days
11890 adomani
author:adomani
feat: the terminal refine linter A linter that warns on usages of `refine` and `refine'` as a finishing tactic. See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Usage.20of.20refine'). ### Conclusion of the experiment Systematic replacements of terminal `refine` with `exact` leads to an overall slow-down. --- - [ ] depends on: #15616 (disable the linter in downstream projects) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 77/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TerminalRefineLinter.lean 3 15 ['adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
192-14239
6 months ago
654-48745
654 days ago
18-28993
18 days
11991 adomani
author:adomani
draft: syntax data linter A linter that prints `SyntaxNodeKind`s and `Range`s for all the nodes of a command. See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/undocumented.20things). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 152/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SyntaxDataLinter.lean 3 1 ['mathlib4-merge-conflict-bot'] nobody
192-14238
6 months ago
unknown
0-0
0 seconds
12006 adomani
author:adomani
feat: the `suffa` tactic The `suffa` tactic. `suffa tac` runs the tactic sequence `tac` and returns a `Try this:` suggestion of the form `suffices [target_after_tac] by tac; assumption`. For example ```lean example {m n : Nat} (h : m = n) : 0 + m = n := by suffa rewrite [Nat.zero_add] assumption ``` suggests the replacement ```lean example {m n : Nat} (h : m = n) : 0 + m = n := by suffices m = n by rewrite [Nat.zero_add] assumption assumption ``` See [this thread](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Try.20this.3A.20suffices.20simpa) as well as [this message](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2311822.20flexible.20tactics.20linter/near/431895664). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 161/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Suffa.lean,test/Suffa.lean 4 4 ['MoritzBeroRoos', 'YaelDillies', 'mathlib4-merge-conflict-bot'] nobody
192-14236
6 months ago
722-86014
722 days ago
59-762
59 days
13442 dignissimus
author:dignissimus
feat: mabel tactic for multiplicative abelian groups Mabel tactic for multiplicative abelian groups (#10361) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict modifies-tactic-syntax awaiting-author help-wanted t-meta 439/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MAbel.lean,MathlibTest/mabel.lean 4 11 ['BoltonBailey', 'dignissimus', 'github-actions', 'joneugster', 'kbuzzard', 'mathlib4-merge-conflict-bot'] joneugster
assignee:joneugster
192-14234
6 months ago
642-6320
642 days ago
0-16
16 seconds
14237 js2357
author:js2357
feat: Define the localization of a fractional ideal at a prime ideal Define the localization of a fractional ideal at a prime ideal, and prove some basic properties. --- This PR is part 3 out of 4 of a proof of `isDedekindDomain_iff_isDedekindDomainDvr`. Part 4 is available here: #14242 - [x] depends on: #14099 Part 1 - [x] depends on: #14216 Part 2 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
230/0 Mathlib.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean 3 22 ['Vierkantor', 'YaelDillies', 'github-actions', 'js2357', 'kbuzzard', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
192-14232
6 months ago
640-74455
640 days ago
6-3525
6 days
14345 digama0
author:digama0
feat: the Dialectica category is monoidal closed - [x] depends on: #14274 The monoidal closed structure of the Dialectica category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 252/0 Mathlib.lean,Mathlib/CategoryTheory/Dialectica/Closed.lean 2 4 ['github-actions', 'kim-em', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] nobody
192-14109
6 months ago
683-66063
683 days ago
12-20456
12 days
14727 jjaassoonn
author:jjaassoonn
feat(RingTheory/Flat/CategoryTheory): a flat module has vanishing higher Tor groups [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 37/1 Mathlib/RingTheory/Flat/CategoryTheory.lean 1 4 ['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-14107
6 months ago
681-48108
681 days ago
3-28223
3 days
14733 jjaassoonn
author:jjaassoonn
feat(RingTheory/Flat/CategoryTheory): a module is flat iff tensoring preserves finite limits --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 99/1 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/RightExact.lean,Mathlib/RingTheory/Flat/CategoryTheory.lean 4 3 ['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-14105
6 months ago
678-59969
678 days ago
6-6256
6 days
15055 sinhp
author:sinhp
feat: the category of pointed objects of a concrete category This file defines the category of pointed objects of a concrete category. After this we will have the categories of pointed groups, pointed abelian groups, pointed groupoids, etc. To define `Pointed.functor`, we need to add the following "pullback" construction to the category of elements. ``` @[simps obj map] def pullback (F : D ⥤ Type w) (G : C ⥤ D) : (G ⋙ F).Elements ⥤ F.Elements where obj X := ⟨G.obj X.1, X.2⟩ map {X Y} f := ⟨G.map f.1, f.2⟩ ``` This is called pullback since the display map of `G ⋙ F` (i.e. `π (G ⋙ F)`) is a pullback of the display map of `F`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 185/0 Mathlib.lean,Mathlib/CategoryTheory/ConcreteCategory/Pointed.lean,Mathlib/CategoryTheory/Elements.lean 3 14 ['dagurtomas', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-14104
6 months ago
667-85846
667 days ago
7-80557
7 days
15224 AnthonyBordg
author:AnthonyBordg
feat(CategoryTheory/Sites): covering families and their associated Grothendieck topology Define covering families on a category and their associated Grothendieck topology by using the API for `Coverage`. Give an explicit characterization of the covering sieves of the said topology. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 112/0 Mathlib.lean,Mathlib/CategoryTheory/Sites/CoveringFamilies.lean 2 21 ['AnthonyBordg', 'adamtopaz', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] nobody
192-14103
6 months ago
667-66734
667 days ago
1-48443
1 day
15453 tomaz1502
author:tomaz1502
Track formalization of runtime complexity I finished porting https://github.com/leanprover-community/mathlib3/pull/14494/ to Lean 4 and made several small PRs, as suggested. This meta PR is used to track the progress of the smaller PRs. ## Pending PRs - [Formalization of List.insertionSort](https://github.com/leanprover-community/mathlib4/pull/15449) - [Lemmas about Split](https://github.com/leanprover-community/mathlib4/pull/15450) - [Formalization of List.merge](https://github.com/leanprover-community/mathlib4/pull/15451) - [Formalization of List.mergeSort](https://github.com/leanprover-community/mathlib4/pull/15452) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 525/0 Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean,Mathlib/Computability/Timed/MergeSort.lean,Mathlib/Computability/Timed/Split.lean 5 5 ['joneugster', 'mathlib4-merge-conflict-bot', 'mergify'] nobody
192-14101
6 months ago
654-5991
654 days ago
11-43846
11 days
16303 grunweg
author:grunweg
feat(CI): check for badly formatted titles or missing/contradictory labels --- The zulip workflow is entirely cargo-culted from #16296; please review carefully. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 325/0 .github/build.in.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ValidatePRTitle.lean,MathlibTest/ValidatePRTitle.lean,lakefile.lean,scripts/README.md,scripts/check-title-labels.lean 8 45 ['Command-Master', 'adomani', 'bryangingechen', 'edegeltje', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] bryangingechen
assignee:bryangingechen
192-14099
6 months ago
510-49592
510 days ago
78-4556
78 days
17587 kmill
author:kmill
feat: Sym2-as-Finset theory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 105/3 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/RingTheory/Polynomial/Vieta.lean 4 11 ['FordUniver', 'YaelDillies', 'github-actions', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
192-13949
6 months ago
unknown
0-0
0 seconds
18236 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat/Presheaf): the endofunctor of presheaves of modules induced by an oplax natural transformation An endomorphism of ` ModuleCat.restrictScalarsPseudofunctor`, i.e. a "compatible" family of functors `ModuleCat A ⥤ ModuleCat A` for all (commutative) rings `A` induces a functor `PresheafOfModules R ⥤ PresheafOfModules R` for any presheaf of (commutative) rings `R`. In #18262, this is applied to the construction of exterior powers of a presheaves of modules. --- - [x] depends on: #18197 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory awaiting-CI merge-conflict awaiting-author
label:t-algebra$
180/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/FunctorOfNatTrans.lean 2 6 ['github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13948
6 months ago
unknown
0-0
0 seconds
18630 tomaz1502
author:tomaz1502
feat(Computability.Timed): Formalization of runtime complexity of List.mergeSort This PR adds the formalization of the runtime complexity of the merge sort algorithm, defined in `Data/List/Sort`. Requires: https://github.com/leanprover-community/mathlib4/pull/15451 References: - Previous PR on mathlib3: https://github.com/leanprover-community/mathlib3/pull/14494/ - First discussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/BSc.20Final.20Project/near/220647062 - Second disussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Formalization.20of.20Runtime.20Complexity.20of.20Sorting.20Algorithms/near/284184450 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability new-contributor 526/0 Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean,Mathlib/Computability/Timed/MergeSort.lean,Mathlib/Computability/Timed/Split.lean 5 9 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13947
6 months ago
570-65750
570 days ago
0-77273
21 hours
18749 GabinKolly
author:GabinKolly
feat(ModelTheory): preparatory work for the existence of Fraïsse limits Define the map of a PartialEquiv through an embedding, and related properties. Define embeddings and equivalences between equal structures or equal substructures, and related properties. Add miscellaneous lemmas which will be used to prove the existence of fraisse limits. --- This is preparation for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 308/5 Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean 5 10 ['GabinKolly', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] nobody
192-13945
6 months ago
494-62905
494 days ago
73-63475
73 days
18876 GabinKolly
author:GabinKolly
feat(ModelTheory/Fraisse): add proof that Fraïssé limits exist Fraïssé limits exist. --- All the preparatory work done in other files is contained in the pull request #18749, this pull request adds the work done in ModelTheory/Fraisse, the definition of the sequence of structures whose limit will be the Fraïssé limit, lemmas about this sequence, and then the proof that the limit is indeed a Fraïssé limit. - [ ] depends on: #18749 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-logic 666/5 Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13943
6 months ago
564-71677
564 days ago
0-37
37 seconds
19323 madvorak
author:madvorak
feat: Function to Sum decomposition --- Discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Function.20to.20Sum.20decomposition merge-conflict WIP t-data 50/0 Mathlib.lean,Mathlib/Data/Sum/Decompose.lean 2 3 ['github-actions', 'madvorak', 'mathlib4-merge-conflict-bot'] nobody
192-13942
6 months ago
511-80575
511 days ago
43-18002
43 days
19378 adamtopaz
author:adamtopaz
feat: Explanation widgets This adds some simple widgets, wrapped in a tactic, term and command elaborator, for displaying markdown explanations in the infoview. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 101/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Widget/Explain.lean 3 9 ['adamtopaz', 'eric-wieser', 'github-actions', 'joneugster', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
192-13941
6 months ago
503-71312
503 days ago
49-76666
49 days
19456 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Data/Finsupp/MonomialOrder/DegRevLex): homogeneous reverse lexicographic order Definition of the homogeneous reverse lexicographic order --- - [x] depends on: #19453 - [x] depends on: #19455 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-order t-data merge-conflict t-algebraic-geometry 362/0 Mathlib.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Finsupp/MonomialOrder/DegRevLex.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13940
6 months ago
551-5116
551 days ago
0-27
27 seconds
19797 eric-wieser
author:eric-wieser
refactor: use Qq in the nlinarith preprocessor This also provides the machinery needed to Qq-ify linarith itself. This is still doing far more `synthInstanceQ`/`isDefEq`(`Q`) than should be needed, but at least drops the `mkAppM`s. Currently, this takes a different approach to the one used by `NormNum.Result`: * `NormNum.Result` deliberately avoids adding any `Expr` parameters to types, as this makes defeq problem at compile-time hard * This PR allows the Expr parameters, but adds casting helpers to easily transport along defeq(Q)s. A few `unsafeIntro`s are left, which correspond to either a Qq bug, or a flaw in the idea behind this approach. I don't know if this pattern is an improvement. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta large-import 260/28 Mathlib/Data/Ineq.lean,Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Util/Qq.lean 5 9 ['eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13813
6 months ago
unknown
0-0
0 seconds
20051 Timeroot
author:Timeroot
feat: `Clone` and some instances Defines clones (`Clone`). And there is a file, `Instances.lean`, that gives several most important examples of Clones. In particular, it has all of the clones (in an appropriately general form) that occur in [Post's Lattice](https://en.wikipedia.org/wiki/Post%27s_lattice), and [later proving](https://github.com/leanprover-community/mathlib4/pull/24744) the completeness of Post's Lattice is why I'm making this PR. (Edit: Used to also say "Defined operads (`Operad`), symmetric operads (`SymmOperad`), and clones ... There is a proof that all clones have a natural operad structure.". This has been scrapped.) --- - [x] depends on: #20133 [basics and notations] - [x] depends on: #20134 [permutations] - [x] depends on: #20138 [operad] - [x] depends on: #20141 [clone] - [x] depends on: #23459 [defs] - [ ] depends on: #23460 [basic] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra blocked-by-other-PR
label:t-algebra$
623/0 Mathlib.lean,Mathlib/Algebra/Clone/Basic.lean,Mathlib/Algebra/Clone/Defs.lean,Mathlib/Algebra/Clone/Instances.lean,Mathlib/Data/Fin/Basic.lean 5 33 ['Timeroot', 'YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'kbuzzard', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'wmacmil'] nobody
192-13812
6 months ago
unknown
0-0
0 seconds
20466 MohanadAhmed
author:MohanadAhmed
feat: Sherman Morrison formula for rank 1 update of the matrix inverse Provides the Sherman Morrison rank 1 update of the matrix inverse https://en.wikipedia.org/wiki/Sherman%E2%80%93Morrison_formula. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 37/0 Mathlib/Data/Matrix/Invertible.lean 1 5 ['eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13810
6 months ago
487-73994
487 days ago
23-30652
23 days
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
192-13809
6 months ago
389-46738
389 days ago
75-77754
75 days
20649 GabinKolly
author:GabinKolly
feat(ModelTheory/Graph): prove characterization of the fraisse limit of finite simple graphs Prove that a countable graph with the extension property must be the Fraisse limit of finite simple graphs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import merge-conflict t-combinatorics t-logic 175/0 Mathlib/ModelTheory/Graph.lean,Mathlib/ModelTheory/Substructures.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13807
6 months ago
unknown
0-0
0 seconds
20652 jjaassoonn
author:jjaassoonn
feat: categorical description of center of a ring We show the isomorphism between `Z(R)` and `End(1 Mod-R)` --- - [x] depends on:#20721 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-category-theory
label:t-algebra$
212/21 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/Ring/Center.lean,Mathlib/CategoryTheory/Conj.lean,Mathlib/CategoryTheory/Endomorphism.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Preadditive/Basic.lean 7 42 ['alreadydone', 'github-actions', 'jcommelin', 'jjaassoonn', 'kbuzzard', 'mathlib4-merge-conflict-bot', 'qawbecrdtey'] nobody
192-13806
6 months ago
480-11236
480 days ago
5-77051
5 days
20924 tomaz1502
author:tomaz1502
feat(Computability/QueryComplexity): Oracle-based computation This PR adds the types and lemmas for oracle-based computation. In this model, computations are run on a monad which also counts the number of oracle queries executed. With it, it becomes possible to reason about the upper bound of the query complexity of algorithms. In the future, we could extend this work to include the necessary bits from information theory and probability to also reason about lower bounds on query complexity, like the work in https://github.com/girving/debate. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2318629.20runtime.20complexity.20of.20sorting.20a.20list Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability 305/0 Mathlib.lean,Mathlib/Computability/QueryComplexity/Basic.lean,Mathlib/Computability/QueryComplexity/Defs.lean 3 60 ['eric-wieser', 'girving', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao', 'tomaz1502'] nobody
192-13805
6 months ago
461-35100
461 days ago
27-32630
27 days
20956 tomaz1502
author:tomaz1502
feat(Computability/QueryComplexity/Sort.lean): Formalization of upper bound of queries for merge sort This PR builds on top of #20924 to prove that merge sort (as defined in Lean's library) never executes more than `3 * n * ceil_log2 n` comparisons, where `n` is the size of the input list and `ceil_log2` is the ceil of the logarithm in base 2, which is defined in this PR. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2318629.20runtime.20complexity.20of.20sorting.20a.20list - [ ] depends on: #20924 Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability blocked-by-other-PR 676/0 Mathlib.lean,Mathlib/Computability/QueryComplexity/Basic.lean,Mathlib/Computability/QueryComplexity/Defs.lean,Mathlib/Computability/QueryComplexity/Sort.lean 4 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13803
6 months ago
492-68764
492 days ago
0-41
41 seconds
21270 GabinKolly
author:GabinKolly
feat(ModelTheory/Bundled): first-order embeddings and equivalences from equalities Add first-order embeddings and equivalences from equalities between bundled structures. --- Add two definitions to get embeddings and equivalences from equalities between bundled structures, and simple properties. This is some preparatory work for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author large-import t-logic 102/0 Mathlib/ModelTheory/Bundled.lean 1 27 ['GabinKolly', 'Vierkantor', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13801
6 months ago
411-15614
411 days ago
50-58472
50 days
21277 GabinKolly
author:GabinKolly
feat(ModelTheory/PartialEquiv): Define the mapping of a self-partialEquiv through an embedding Define the mapping of a self-partialEquiv through an embedding and the notion of fully extendable partialEquiv. --- This is some preparatory work for #18876 - [ ] depends on: #21276 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-logic 215/5 Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13799
6 months ago
484-50177
484 days ago
0-668
11 minutes
21616 peabrainiac
author:peabrainiac
feat(Topology): concatenating countably many paths Adds `Path.countableConcat`, the concatenation of a sequence of paths leading up to some point `x`. --- - [x] depends on: #21591 - [x] depends on: #21607 This work is a prerequisite to #20248, where it is used to show that the topology of first-countable locally path-connected spaces is coinduced by all the paths in that space. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 229/0 Mathlib.lean,Mathlib/Topology/Path/CountableConcat.lean 2 31 ['YaelDillies', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac'] nobody
192-13796
6 months ago
405-13177
405 days ago
56-56728
56 days
21624 sinhp
author:sinhp
feat(CategoryTheory): The (closed) monoidal structure on the product category of families of (closed) monoidal categories Given a family of closed monoidal categories, we show that the product of these categories is a closed monoidal category with the pointwise monoidal structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 144/0 Mathlib.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Pi/Monoidal.lean,Mathlib/CategoryTheory/Pi/MonoidalClosed.lean 4 20 ['TwoFX', 'YaelDillies', 'b-mehta', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody
192-13795
6 months ago
417-28037
417 days ago
50-48893
50 days
21829 Whysoserioushah
author:Whysoserioushah
feat(LinearAlgebra/TensorProduct/HomTensor): Add TensorProduct of Hom-modules Co-authored-by: Andrew Yang --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
174/0 Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/HomTensor.lean 2 27 ['Whysoserioushah', 'YaelDillies', 'erdOne', 'github-actions', 'kbuzzard', 'mathlib4-merge-conflict-bot'] nobody
192-13793
6 months ago
424-8468
424 days ago
46-53039
46 days
21903 yhtq
author:yhtq
feat: add from/toList between `FreeSemigroup` and `List` with relative theorems Add from/toList between `FreeSemigroup` and `List` with relative theorems, as well as an incidental definition of lexicographic order on `FreeSemigroup`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-CI large-import merge-conflict
label:t-algebra$
169/0 Mathlib/Algebra/Free.lean 1 12 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13669
6 months ago
418-84024
418 days ago
50-9294
50 days
22159 shetzl
author:shetzl
feat: add definition of pushdown automata Add the definition of pushdown automata and their two acceptance conditions: acceptance based on empty stack and acceptance based on final state. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 70/0 Mathlib.lean,Mathlib/Computability/PDA.lean 2 35 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody
192-13663
6 months ago
439-7676
439 days ago
20-81245
20 days
22194 eric-wieser
author:eric-wieser
feat: oracle computations (alternative) This explores a simpler version of #20924 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability 698/0 Archive/Examples/SumOracle.lean,Mathlib.lean,Mathlib/Computability/QueryComplexity/Defs.lean,Mathlib/Computability/QueryComplexity/Sort.lean 4 5 ['eric-wieser', 'girving', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13660
6 months ago
unknown
0-0
0 seconds
22231 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion` initial defns --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-topology
label:t-algebra$
299/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 8 ['Thmoas-Guan', 'github-actions', 'grunweg', 'jcommelin', 'mathlib4-merge-conflict-bot'] jcommelin
assignee:jcommelin
192-13659
6 months ago
270-83340
270 days ago
158-37126
158 days
22232 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion.apprUpto` --- - [ ] depends on: #22231 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR 399/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13657
6 months ago
460-29950
460 days ago
0-414
6 minutes
22233 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion.evalAt` --- - [ ] depends on: #22231 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR 488/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13656
6 months ago
460-29951
460 days ago
0-412
6 minutes
22302 658060
author:658060
feat: add `CategoryTheory.Topos.Power` This is a continuation of #21281 with the end goal of defining topoi in Mathlib. It introduces the notion of a power object in a category with a subobject classifier, which is a special case of an internal hom. The definition `HasPowerObjects C` contained in this PR is all that remains before `IsTopos C` can be defined. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 312/0 Mathlib.lean,Mathlib/CategoryTheory/Topos/Power.lean 2 3 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
192-13654
6 months ago
458-47656
458 days ago
0-1528
25 minutes
22389 adomani
author:adomani
feat: the variableVariable linter The motivation comes from [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/style.20proposal.3A.20avoid.20.60variable.20.7BX.7D.20.2E.2E.2E.20variable.20.28X.29.60). Summarising, updating a variable binder for a single declaration can be confusing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter large-import 167/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/VariableVariable.lean,variableDeclarationVariable_replacements.py 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13650
6 months ago
unknown
0-0
0 seconds
22497 adomani
author:adomani
test: decl diff in lean Testing branch for #22464. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP CI test-ci 161/0 .github/workflows/PR_summary_lean.yml,Mathlib.lean,Mathlib/Test.lean,scripts/README.md,scripts/declarations_diff.lean,scripts/declarations_diff_lean_shell_glue.sh 6 8 ['github-actions', 'mathlib4-merge-conflict-bot', 'mergify'] nobody
192-13648
6 months ago
unknown
0-0
0 seconds
22662 plp127
author:plp127
feat: Localization.Away.lift (computably) This PR adds `Localization.Away.lift'` and `Localization.Away.lift`, computable alternatives to `Localization.awayLift`. --- - [x] depends on: #24791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
74/0 Mathlib/RingTheory/Localization/Away/Basic.lean 1 18 ['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] kim-em
assignee:kim-em
192-13647
6 months ago
192-13648
192 days ago
257-28368
257 days
22790 mhk119
author:mhk119
feat: Extend `taylor_mean_remainder_lagrange` to `x < x_0` The `taylor_mean_remainder_lagrange` theorem has the assumption that $x_0 < x$. In many applications, we need $x < x_0$ and one cannot use the current version to obtain this (see [zulip](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Taylor's.20theorem)). This PR introduces a set of theorems that push negations through Taylor expansions so that one can extend `taylor_mean_remainder_lagrange` to the case when $x < x_0$. These theorems should also be useful elsewhere since they are quite general. merge-conflict awaiting-author t-analysis new-contributor 111/1 Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/Taylor.lean 3 13 ['Paul-Lez', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'mhk119'] nobody
192-13641
6 months ago
420-28758
420 days ago
23-16830
23 days
22861 eric-wieser
author:eric-wieser
feat: add the trace of a bilinear form Following the steps at [#Is there code for X? > Laplacian @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Laplacian/near/450834505). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Some questions: * Does this generalize to multilinear maps? * Is there an `RCLike` generalization? * Does this generalize to `BilinMap` instead of just `BilinForm`? Perhaps the approach in [#mathlib4 > Stating Schrodinger's equation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Stating.20Schrodinger's.20equation/near/500409890) of using `ContinuousLinearMap.adjoint'` is better. merge-conflict awaiting-author t-algebra
label:t-algebra$
100/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/Trace.lean 2 4 ['github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot'] nobody
192-13639
6 months ago
420-78187
420 days ago
23-44995
23 days
22919 plp127
author:plp127
feat(Data/Fintype/Pi): Make `Fintype` instance for `RelHom`s computable Makes the `Fintype` instance for rel homs computable. See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Classical.20vs.20constructive.20logic.20in.20computation/near/496220816) message. --- - [x] depends on: #24748 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 178/44 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Data/Fintype/CardEmbedding.lean,Mathlib/Data/Fintype/Pi.lean 5 31 ['IvanRenison', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] b-mehta
assignee:b-mehta
192-13637
6 months ago
366-26908
366 days ago
71-41637
71 days
22954 eric-wieser
author:eric-wieser
feat(RingTheory/Congruence/Hom): copy from GroupTheory This was motivated in review of #22355, but I no longer recall why. It also helps with #29357. Either way, this captures a definition that was inlined in a later file. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 214/16 Mathlib/Algebra/RingQuot.lean,Mathlib/GroupTheory/Congruence/Hom.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Hom.lean,Mathlib/RingTheory/TwoSidedIdeal/Kernel.lean 5 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
192-13636
6 months ago
440-81750
440 days ago
0-135
2 minutes
23285 AntoineChambert-Loir
author:AntoineChambert-Loir
refactor: directed systems in terms of functors This is a WIP aiming to refactor the work on directed systems using the category theory library. But there are universes nightmares. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory large-import merge-conflict
label:t-algebra$
111/45 Mathlib/Order/DirectedInverseSystem.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13630
6 months ago
431-45758
431 days ago
0-24
24 seconds
23460 Timeroot
author:Timeroot
feat: Definition of `Clone` Basics about Clones. Part of #20051 --- - [ ] depends on: #26329 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
326/0 Mathlib.lean,Mathlib/Algebra/Clone/Basic.lean,Mathlib/Algebra/Clone/Defs.lean,Mathlib/Data/Fin/Basic.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13628
6 months ago
274-62400
274 days ago
65-54502
65 days
23503 apnelson1
author:apnelson1
feat(Topology/Instances/ENat): ENat and tsum We give API for the interactions between `tsum` and `ENat`. The type is especially nice, because every function is summable, and there are simplifying lemmas like the statement that a sum is infinite iff either some term is infinite, or the support is infinite. This provides one of the missing pieces for working painlessly with discrete objects, 'propositional' finiteness and cardinality. For instance, one can sum a function `f : a -> ENat` over an arbitrary set with the term `∑' a : s, 1`, and it will be provable that `∑' a : s, 1 = s.encard` and `(support f).encard ≤ ∑' a, f a` without ever having to split into finite/infinite cases. As is pointed out in the module docstring for `Data.ENat`, there are strong analogies between `ENat` and `ENNReal`, and the API runs parallel to the API for `tsum`/`ENNReal`. One could call it 'duplication', but I have yet to find a common generalization of the two that saves work, or a third example of a natural type with these same properties. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology large-import 205/2 Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Topology/Instances/ENat.lean 3 3 ['eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13626
6 months ago
410-54579
410 days ago
14-6036
14 days
23585 plp127
author:plp127
feat: `Filter.atMax` and `Filter.atMin` Adds `atMax` and `atMin`, filters. Making an analogy, `atMax` : `atTop` :: `IsMax` : `IsTop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 148/0 Mathlib.lean,Mathlib/Order/Filter/AtMaxMin.lean 2 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'urkud'] nobody
192-13625
6 months ago
unknown
0-0
0 seconds
23758 erdOne
author:erdOne
feat(Topology/Algebra): linearly topologized iff non-archimedean ...for topological modules over compact rings or `ℤ`-finite rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import merge-conflict awaiting-author t-topology
label:t-algebra$
138/3 Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Topology/Algebra/LinearTopology.lean 2 22 ['ADedecker', 'AntoineChambert-Loir', 'erdOne', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] ADedecker and AntoineChambert-Loir
assignee:AntoineChambert-Loir assignee:ADedecker
192-13623
6 months ago
293-24488
293 days ago
124-78308
124 days
24161 urkud
author:urkud
feat(Analysis/Calculus/Schwarzian): new file --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 190/3 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/Schwarzian/Basic.lean 3 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
192-13489
6 months ago
unknown
0-0
0 seconds
24333 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): cycle graph implementation for generic vertex types The existing `cycleGraph` implementation under Combinatorics/SimpleGraph/Circulant.lean only operates over `Fin n`. This PR implements a cycle graph implementation over any generic vertex type. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics new-contributor 187/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean 2 42 ['IvanRenison', 'github-actions', 'mathlib4-merge-conflict-bot', 'vlad902'] kmill
assignee:kmill
192-13488
6 months ago
278-12069
278 days ago
123-18878
123 days
24540 robertmaxton42
author:robertmaxton42
feat(Quiv): add the empty, vertex, point, interval, and walking quivers Add: * The empty quiver * The vertex quiver (one vertex, and no edges) and the point quiver (one vertex, one self-edge) * The interval quiver (two vertices with an edge between them) * The walking quiver (vertices `0` and `1` with two edges both `0 -> 1`. Functors from the walking quiver to `Type` define quivers, by interpreting `F.obj 0` as the type of vertices, `F.obj 1` as the type of edges, using one of the two edges to label the source of every edge and using the other to label the target.) - [x] depends on: #24538 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 370/0 Mathlib.lean,Mathlib/CategoryTheory/Category/Quiv/Shapes.lean,Mathlib/CategoryTheory/Category/Quiv/WalkingQuiver.lean,Mathlib/Logic/Small/Defs.lean 4 14 ['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robertmaxton42', 'robin-carlier'] nobody
192-13483
6 months ago
386-45064
386 days ago
0-6849
1 hour
24744 Timeroot
author:Timeroot
Post's lattice Draft PR for now so I can get CI checks. Eventually want to prove Post's Lattice --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 758/0 Mathlib.lean,Mathlib/Algebra/Clone/Basic.lean,Mathlib/Algebra/Clone/Defs.lean,Mathlib/Algebra/Clone/Instances.lean,Mathlib/Algebra/Clone/PostLattice.lean,Mathlib/Data/Fin/Basic.lean 6 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13478
6 months ago
unknown
0-0
0 seconds
24850 pechersky
author:pechersky
feat(Topology/UniformSpace/Ultra): uniform spaces induced by pseudometrics are ultra if system is ultra Any uniform space has a natural system of pseudometrics definable on it, comprised of those pseudometrics constructed from a descending chain of equivalence relation entourages. In a nonarchimedean uniformity, this pseudometric system induces the uniformity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #23111 merge-conflict t-topology 509/1 Mathlib.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Ultra/Pseudometrizable.lean 3 9 ['ADedecker', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] urkud
assignee:urkud
192-13475
6 months ago
192-13476
192 days ago
177-43034
177 days
25324 eric-wieser
author:eric-wieser
feat: more functorial results about DFinsupp We have these already for Finsupp. The `DFinsupp` statements need some extra casts in some places. --- - [ ] depends on: #27182 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) [#mathlib4 > Equiv.cast for structures @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Equiv.2Ecast.20for.20structures/near/521390935) merge-conflict awaiting-author t-algebra t-data
label:t-algebra$
137/16 Mathlib/Data/DFinsupp/Defs.lean,Mathlib/LinearAlgebra/DFinsupp.lean 2 13 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] pechersky
assignee:pechersky
192-13470
6 months ago
242-33741
242 days ago
19-26510
19 days
25585 Paul-Lez
author:Paul-Lez
feat(Tactic/Linters/DeprecatedSimpLemma): lint for deprecated simp lemmas The deprecated simp lemma linter flags declarations that have both the `deprecated` and `simp` attributes. See Zulip discussion: [#mathlib4 > Help with Mathlib.Order.Interval.Finset.Defs @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Help.20with.20Mathlib.2EOrder.2EInterval.2EFinset.2EDefs/near/505994843) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 105/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/DeprecatedSimpLemma.lean,MathlibTest/DeprecatedSimpLemmaTest.lean 4 8 ['adomani', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
192-13343
6 months ago
355-85438
355 days ago
0-87
1 minute
25683 eric-wieser
author:eric-wieser
feat: Enumeration of NonemptyInterval --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data large-import 52/4 Mathlib/Data/Sym/Sym2/Fin.lean,Mathlib/Data/Sym/Sym2/Order.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13340
6 months ago
unknown
0-0
0 seconds
25739 literandltx
author:literandltx
feat(NumberTheory/LegendreSymbol): Add sqrt‐of‐residue theorems for p=4k+3 and p=8k+5 Add a new file `QuadraticResidueRoots.lean` under `Mathlib/NumberTheory/LegendreSymbol/` that proves two explicit “square-root of quadratic residue” theorems for primes of the specific form. - **`exists_sqrt_of_residue_mod4_eq3`** for primes `p = 4*k + 3` - **`exists_sqrt_of_residue_mod8_eq5`** for primes `p = 8*k + 5` It also introduces the helper lemmas `euler_criterion_traditional` and `legendreSym.at_two_mod8_eq_5`. Import lines in `Mathlib.lean` and `Mathlib/NumberTheory/LegendreSymbol/Basic.lean` have been updated accordingly. merge-conflict awaiting-author t-number-theory new-contributor 217/0 Mathlib.lean,Mathlib/NumberTheory/LegendreSymbol/Basic.lean,Mathlib/NumberTheory/LegendreSymbol/QuadraticReciprocity.lean,Mathlib/NumberTheory/LegendreSymbol/QuadraticResidueRoots.lean 4 3 ['github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] literandltx
assignee:literandltx
192-13339
6 months ago
334-36902
334 days ago
17-63153
17 days
25746 robin-carlier
author:robin-carlier
feat(Tactic/CategoryTheory): `Cancelable` boilerplate for the `rotate_isos` WIP tactic This PR adds some boilerplate that will be used in a forthcoming PR implementing a `rotate_isos` tactic that aims to provide easy ways of moving one or more morphisms that can be inferred to be isomorphisms (not necessarily through the `IsIso typeclass, but also directly by recognizing them as e.g components of natural isomorphisms, or functor application to such morphisms). The boilerplate in this PR abstracts the notion of a cancelable expression for a morphism in a composition of (iso)morphisms in a category, and records a global reference to a list of "cancelable factories", _i.e_ functions that try to recognize term in an expression as a "cancelable" morphism, and provides helper to register such functions. --- First part of a series of 3 PRs contributing the `rotate_isos` tactic to mathlib. Second part will actually implement the tactic, and provide a test suite. Please read the description of the second PR (#24454) to get more details. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24452.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24452* merge-conflict awaiting-author t-category-theory t-meta 162/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Cancelable.lean,scripts/noshake.json 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13337
6 months ago
352-12590
352 days ago
0-2
2 seconds
25747 robin-carlier
author:robin-carlier
feat(Tactic/CategoryTheory): the `rotate_isos` tactic We define a `rotate_isos` tactic for category theory in mathlib. At its core, the tactic transform terms of type `α(1) ≫ ⋯ ≫ α(k) = β(1) ≫ ⋯ ≫ β(l)` where `α` and `β` are families of morphisms in whith the first `i` morphisms of the left-hand side and the last `j` morphisms of the right-hand side are isomorhisms, into terms of type `α(k-i) ≫ ⋯ ≫ α(k) ≫ inv β(l) ≫ ⋯ ≫ β(l-j+1) = inv α(j) ≫ ⋯ ≫ inv α(1) ≫⋯ ≫ β(l-j)`. The construction of the inverses of expression are caried at the `Expr` levels are built out of the expressions of the morphisms, for instance, for this tactic, the inverse of `F.map (G.map (H.map f.hom)))` will directly be `F.map (G.map (H.map f.inv)))` (which would have to be re-simplified), rather than an `inv` term form an `IsIso` instance. The tactic can be applied at a local hypothesis or at the main goal, or can be used through a `rotate_isos%` term elaborator if e.g one wants to add such a "rotated" form to a `simp` or `rw` call. We also support removing morphisms "from the right" of the lhs, rather than from the right. --- The motivations behind this tactic are the following : - This tactic can "autogenerate" lemmas and terms generalizing lemmas such as [CategoryTheory.Iso.hom_inv_id_app_app_app](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/NatIso.html#CategoryTheory.Iso.hom_inv_id_app_app_app). This can also generate lemmas `F.map (G.map f.hom) ≫F.map (G.map f.inv) = 𝟙 _`, and can be used to unlock a `simp` call that blocks at an expression of the form `F.map (G.map f.hom) ≫F.map (G.map f.inv) `. - Currently, cancelling morphisms "from the right" in an expression in category theory is a bit of a pain. You have to first reassociate the expression, perform multiple calls to `Iso.inv_comp_eq`, reassociate, etc. This at least automates this process in a fairly straightforward way. - There are expressions in category theory that have no "right forms", e.g the pentagon axiom for monoidal categories, which has many variations in the way one can read the diagram of isomorphisms that represents it. Elaborators such as `rotate_iso%` easily generates all possible forms of such identities from one single form, and avoids having to state multiple forms of the same equality as individual lemmas. - I have been playing with medium-sized diagrams of isomorphisms recently (think for example vertical/horizontal compositions of `CatCommSq`, whiskering a corner of such diagrams, etc.), and it made me wish a lot of time that such easy way to transforms equalities to equivalent forms were available. - [ ] depends on: #25746 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24454.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24454* WIP blocked-by-other-PR t-category-theory merge-conflict awaiting-author t-meta 871/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Cancelable.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Core.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Lemmas.lean,MathlibTest/CategoryTheory/RotateIsos.lean,scripts/noshake.json 7 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13336
6 months ago
352-12229
352 days ago
0-2
2 seconds
25748 robin-carlier
author:robin-carlier
feat(Tactic/CategoryTheory): Initial lemmas for the `rotate_iso` tactic This PR records an initial set of lemmas to be used by the WIP `rotate_isos` tactic. --- - [ ] depends on: #25746 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24506.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24506* merge-conflict blocked-by-other-PR t-meta 496/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Cancelable.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Lemmas.lean,scripts/noshake.json 5 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13334
6 months ago
352-11321
352 days ago
0-599
9 minutes
25750 robin-carlier
author:robin-carlier
feat(Tactic/CategoryTheory): bicategory extension for `rotate_isos` This PR registers some lemmas to the `rotate_isos` tactic so that it applies in bicategorical contexts. For instance, if `α : g ⟶ h` is an invertible 2-cells, the term `f ◁ α ` is also recognized as invertible, with inverse `f ◁ α' `, where `α'` is the expression for the inverse constructed by the tactic. Without this extension, the tactic would only construct the generic `inv (f ◁ α)` as inverse for this term. --- - [ ] depends on: #25747 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24633.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24633* merge-conflict blocked-by-other-PR t-category-theory t-meta 1206/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Bicategory.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Cancelable.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Core.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Lemmas.lean,MathlibTest/CategoryTheory/RotateIsos.lean,scripts/noshake.json 8 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13332
6 months ago
352-11426
352 days ago
0-1
1 second
25751 robin-carlier
author:robin-carlier
feat(Tactic/CategoryTheory): monoidal extension of `rotate_isos` This PR registers some lemmas to the `rotate_isos` tactic so that it applies in monoidal contexts. For instance, if α : y ⟶ z is an invertible morphism, the term x ◁ α is also recognized as invertible, with inverse x ◁ α' , where α' is the expression for the inverse constructed by the tactic. Without this extension, the tactic would only construct the generic inv (x ◁ α) as inverse for this term. We also take care of terms of the form `f ⊗ g` --- - [ ] depends on: #25747 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24634.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24634* merge-conflict blocked-by-other-PR t-category-theory t-meta 1362/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Cancelable.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Core.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Lemmas.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Monoidal.lean,MathlibTest/CategoryTheory/RotateIsos.lean,scripts/noshake.json 8 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13331
6 months ago
352-11072
352 days ago
0-2
2 seconds
25752 robin-carlier
author:robin-carlier
feat(Tactic/CategoryTheory): whiskering lemmas for `rotate_isos` This PR extends the base set of terms recognized by the `rotate_isos` tactic to include terms of the form `whiskerLeft F f`, `isoWhiskerLeft F e`, and `NatTrans.hcomp`/ `NatIso.hcomp`. --- - [ ] depends on: #25747 Technically, it could depend solely on #24506, but there’s not much point getting this merged if the base tactic is not there. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24650.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24650* merge-conflict blocked-by-other-PR t-meta 1365/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Cancelable.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Core.lean,Mathlib/Tactic/CategoryTheory/RotateIsos/Lemmas.lean,MathlibTest/CategoryTheory/RotateIsos.lean,scripts/noshake.json 7 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13329
6 months ago
352-10883
352 days ago
0-50
50 seconds
25838 Bergschaf
author:Bergschaf
feat(Order/Atoms): Finsets are Atomistic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order large-import 31/0 Mathlib/Order/Atoms.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13318
6 months ago
351-780
351 days ago
0-5594
1 hour
25987 Multramate
author:Multramate
refactor(AlgebraicGeometry/EllipticCurve/Affine/*): some minor changes This PR continues the work from #24571. Original PR: https://github.com/leanprover-community/mathlib4/pull/24571 merge-conflict t-algebraic-geometry 0/12 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean 2 4 ['Multramate', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
192-13306
6 months ago
347-46988
347 days ago
0-588
9 minutes
25990 Multramate
author:Multramate
chore(NumberTheory/EllipticDivisibilitySequence): rename definitions This PR continues the work from #25132. Original PR: https://github.com/leanprover-community/mathlib4/pull/25132 merge-conflict t-number-theory 265/45 Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 1 3 ['Multramate', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13303
6 months ago
347-46976
347 days ago
0-449
7 minutes
26165 oliver-butterley
author:oliver-butterley
feat(MeasureTheory.VectorMeasure): add lemma which shows that variation of a `ℝ≥0∞` VectorMeasure is equal to itself Add a lemma for the variation of a VectorMeasure which tells that if `μ` is `VectorMeasure X ℝ≥0∞` then ``μ.ennrealVariation = μ`. Co-authored-by: @yoh-tanimoto --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author merge-conflict blocked-by-other-PR new-contributor 467/0 Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/Order/Partition/Finpartition.lean 3 9 ['github-actions', 'leanprover-radar', 'mathlib4-merge-conflict-bot', 'oliver-butterley', 'yoh-tanimoto'] nobody
192-13150
6 months ago
329-8105
329 days ago
15-66224
15 days
26298 adomani
author:adomani
test: the commandStart linter only acts on modified files. Test for #26299: should flag issues in the new file and also in the modified file `Mathlib/Data/Array/Extract.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-linter 63/1 Mathlib.lean,Mathlib/Data/Array/Extract.lean,Mathlib/New.lean,Mathlib/Tactic/Linter/CommandStart.lean 4 21 ['adomani', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13128
6 months ago
340-85758
340 days ago
0-168
2 minutes
26300 igorkhavkine
author:igorkhavkine
feat(Analysis/Calculus/FDeriv): continuous differentiability from continuous partial derivatives on an open domain in a product space If a function `f : E × F → G` is continuously differentiable, then its partial derivatives along `E` and `F` are also continuous. The non-trivial converse implication holds when the partial derivatives are continuous on an open domain, and they can be added together to give the total derivative of `f`. See this [#mathlib4 > Partial derivatives @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Partial.20derivatives/near/520995477) and the containing thread for some discussion. The PR creates a new import (`Mathlib.Analysis.Calculus.FDeriv.Partial`), where other results about partial derivatives could go in the future. --- *this is the migration of #25304 to the PR-from-fork workflow* - [x] depends on: #25564 - [x] depends on: #26273 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor awaiting-author t-analysis merge-conflict 468/0 Mathlib/Analysis/Calculus/FDeriv/Partial.lean 3 23 ['YaelDillies', 'agjftucker', 'github-actions', 'igorkhavkine', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
192-13127
6 months ago
288-61517
288 days ago
44-77029
44 days
26329 Timeroot
author:Timeroot
feat: Definition of `Clone` notations and typeclasses Definitions and notation typeclasses for #20051 --- This PR continues the work from #23459. Original PR: https://github.com/leanprover-community/mathlib4/pull/23459 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra awaiting-CI
label:t-algebra$
100/0 Mathlib.lean,Mathlib/Algebra/Clone/Defs.lean 2 4 ['Timeroot', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13123
6 months ago
340-10032
340 days ago
0-21917
6 hours
26398 ChrisHughes24
author:ChrisHughes24
feat(ModelTheory): definable functions --- Possibly this should be generalized to partial functions. I migrated the PR by hand instead of using the script. - [x] depends on: #20166 - [x] depends on: #20161 - [x] depends on: #20115 - [x] depends on: #20174 - [x] depends on: #20175 - [x] depends on: #21948 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-logic 618/0 Mathlib.lean,Mathlib/ModelTheory/FunctionalFormula.lean 2 13 ['ChrisHughes24', 'github-actions', 'jcommelin', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'staroperator'] nobody
192-13110
6 months ago
214-2575
214 days ago
87-76183
87 days
26399 ChrisHughes24
author:ChrisHughes24
refactor(ModelTheory): tidy up proof of Ax-Grothendieck with definable functions I migrated this PR by hand instead of using the script. --- - [x] depends on: #20166 - [x] depends on: #20161 - [x] depends on: #20115 - [x] depends on: #20174 - [x] depends on: #20175 - [x] depends on: #20180 - [x] depends on: #21948 - [ ] depends on: #26398 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-logic 639/60 Mathlib.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/ModelTheory/FunctionalFormula.lean 3 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13109
6 months ago
339-7312
339 days ago
0-958
15 minutes
26432 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Data.Nat.LogFueled): fueled version of `clog` This PR continues the work from #25557. Original PR: https://github.com/leanprover-community/mathlib4/pull/25557 merge-conflict t-data 201/0 Mathlib.lean,Mathlib/Data/Nat/LogFueled.lean 2 3 ['AntoineChambert-Loir', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13108
6 months ago
192-13109
192 days ago
145-77007
145 days
26594 metakunt
author:metakunt
feat(Algebra/Polynomial/ZMod): Add Polynomial.equiv_of_nat_of_polynomial_zmod This adds an explicit bijection between the naturals and $$\mathbb{Z}/n\mathbb{Z}[X]$$ in a canonical way. --- I feel that some API is missing to make the theorem shorter, I have no idea what lemmas to extract though. Also I don't know when to use spaces and when not, so I did it best effort. merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
465/0 Mathlib.lean,Mathlib/Algebra/Polynomial/ZMod.lean 2 3 ['Ruben-VandeVelde', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-12979
6 months ago
307-56737
307 days ago
25-5233
25 days
26644 kckennylau
author:kckennylau
feat(SetTheory/ZFC): Define the language of sets and state the ZFC axioms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-set-theory 381/0 Mathlib.lean,Mathlib/SetTheory/ZFC/Axioms.lean,docs/references.bib 3 50 ['b-mehta', 'digama0', 'github-actions', 'kckennylau', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'staroperator', 'vihdzp'] b-mehta
assignee:b-mehta
192-12977
6 months ago
278-64240
278 days ago
40-52145
40 days
26648 eric-wieser
author:eric-wieser
chore(TensorProduct): remove more `suppress_compilation`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-core-PR t-algebra
label:t-algebra$
3/7 Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean 3 5 ['eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
192-12976
6 months ago
328-15011
328 days ago
3-19989
3 days
26757 fweth
author:fweth
feat(CategoryTheory/Topos): define elementary topos This commit begins the formalization of the notion of an *elementary topos*, following the definition in \[Mac Lane & Moerdijk, *Sheaves in Geometry and Logic* (1992), Ch. IV, Section 1]. It introduces the file `Mathlib/CategoryTheory/Topos/Basic.lean`, which currently includes: * The definition of an elementary topos. * Proof that the power object map is a functor * Theorem about pullbacks of characterstic maps Subobject classifiers, which are used in the definition, have already been defined in `CategoryTheory/Topos/Classifier.lean` Work in progress: further formalization of the section is planned. Questions: * Should the definition of power objects be separated into its own file/module, perhaps under `CategoryTheory/Topos/PowerObject.lean`? * Is the notation `P` / `P_morph` / `P_functor` for the power object functor on objects / morphisms / total acceptable? * Should the comments and docstrings rather use the notation from the book, where `g ∘ f` denotes arrow composition from righ to left, or the Lean variant `f ≫ g`? Klaus Gy klausgy@gmail.com --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 401/66 Mathlib.lean,Mathlib/CategoryTheory/Closed/PowerObjects.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/CommSq.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Equalizer.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean 9 17 ['fweth', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
192-12974
6 months ago
221-65993
221 days ago
62-6838
62 days
26914 quangvdao
author:quangvdao
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence. We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute Some things I'm not clear on: - I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level? - Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation. - Need a double-check on the priority of notation. Some future definitions to add: - Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`. - Definitions of Lenses and Charts (each of them will be a file or even a folder) - Exponential objects (corresponding to both `prod` and `tensor`) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 144/5 Mathlib/Data/PFunctor/Univariate/Basic.lean 1 20 ['alexkeizer', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao'] eric-wieser
assignee:eric-wieser
192-12953
6 months ago
192-12954
192 days ago
133-23955
133 days
26920 yuma-mizuno
author:yuma-mizuno
feat(Tactic.CategoryTheory): add associator inserting tactic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory t-meta 714/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Associators.lean,MathlibTest/CategoryTheory/Associators.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-12952
6 months ago
325-15326
325 days ago
0-16
16 seconds
26990 joelriou
author:joelriou
feat(CategoryTheory/Abelian): Noetherian objects form a Serre class This PR continues the work from #22367. Original PR: https://github.com/leanprover-community/mathlib4/pull/22367 merge-conflict WIP t-category-theory 311/14 Mathlib.lean,Mathlib/CategoryTheory/Abelian/SerreClass/NoetherianObject.lean,Mathlib/CategoryTheory/Abelian/Subobject.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-12942
6 months ago
323-1504
323 days ago
0-45
45 seconds
27098 Paul-Lez
author:Paul-Lez
feat(Algebra/Category/ModuleCat/Sheaf/VectorBundle): define vector bundles This PR defines vector bundles (upstreamed from [formal-conjectures](https://github.com/google-deepmind/formal-conjectures/pull/28/files)). I plan on adding some more API about the definition in this PR, but figured it would be nice to get some initial feedback about the definition before doing so! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
53/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/VectorBundle.lean 2 5 ['Kiolt', 'Raph-DG', 'chrisflav', 'github-actions', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
192-12939
6 months ago
303-55609
303 days ago
16-82477
16 days
27155 Pjotr5
author:Pjotr5
feat: Shearer's bound on the independence number of triangle free graphs I added the file IndependenceNumber.lean to the Mathlib.Combinatorics.SimpleGraph.Triangle folder. It contains a proof of a theorem by Shearer on the independence number of triangle-free graphs . I was told this might be useful to add to Mathlib a Zullip thread linked [here](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Convexity.20of.20a.20specific.20function/with/510469526). I tried to comply as much as I could with the Mathlib style guide, but I realise that there is probably still a significant amount of editing to be done. For one thing: there are probably some lemmas and theorems in there that might be better suited in other files, but since this is my first PR I though I would all put it in one file before starting to edit a bunch of files. I was also advised to split up the file into multiple smaller PRs, but since everything is basically serving this one proof I could not really find a natural way to do that. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics new-contributor 1266/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/IndependenceNumber.lean 2 10 ['Pjotr5', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
192-12937
6 months ago
279-69646
279 days ago
39-17587
39 days
27163 pechersky
author:pechersky
feat(Topology/ValuativeRel): of and to basis of compatible valuations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #30262 t-number-theory t-algebra merge-conflict awaiting-author t-topology
label:t-algebra$
229/62 Mathlib/NumberTheory/LocalField/Basic.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 3 73 ['erdOne', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky', 'smmercuri'] alreadydone
assignee:alreadydone
192-12936
6 months ago
193-44727
193 days ago
84-31691
84 days
27215 kckennylau
author:kckennylau
feat(AlgebraicGeometry): Define the Zariski site on `CommRingCatᵒᵖ` We define the Zariski site on `CommRingCatᵒᵖ` by inducing the topology from `Scheme`, and then we show that this topology is equal to the one generated by the pretopology of finite, surjective, and standard open morphisms. --- - [x] depends on: #28614 - [x] depends on: #28615 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 312/0 Mathlib.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Sites/BigAffineZariski.lean 3 33 ['chrisflav', 'github-actions', 'joelriou', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
192-12934
6 months ago
249-5498
249 days ago
3-70573
3 days
27309 kckennylau
author:kckennylau
feat(CategoryTheory): a presheaf on `CostructuredArrow F d` can be extended to a presheaf on `C` --- Depends on: * [ ] #27321 Zulip: [#Is there code for X? > over category via a functor](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/over.20category.20via.20a.20functor/with/529574191) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 218/0 Mathlib.lean,Mathlib/CategoryTheory/Comma/Presheaf/LeftExtension.lean 2 4 ['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'robin-carlier'] erdOne
assignee:erdOne
192-12803
6 months ago
298-3002
298 days ago
15-69033
15 days
27321 kckennylau
author:kckennylau
feat(CategoryTheory): Colimit can be computed fiberwise We consider category `J` equipped with a functor `F : J ⥤ D` to a discrete category `D`. Then the colimit of any diagram `diagram : J ⥤ C` can be computed using the following algorithm: 1. For each `d : D`, compute the colimit of the restricted diagram `F.fiberIncl d ⋙ diagram`. 2. Take the coproduct of these colimits over all `d : D`. We call this "computing the colimit fiberwise". --- Zulip: [#Is there code for X? > over category via a functor](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/over.20category.20via.20a.20functor/with/529574191) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory awaiting-CI 136/0 Mathlib.lean,Mathlib/CategoryTheory/FiberedCategory/Fiber.lean,Mathlib/CategoryTheory/Limits/Shapes/Fiberwise.lean 3 25 ['github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
192-12801
6 months ago
276-15225
276 days ago
19-5489
19 days
27417 PierreQuinton
author:PierreQuinton
feat: add `SigmaCompleteLattice` A $\sigma$-complete lattice is a lattice in which every countable subset `s` has a least upper bound and a greatest lower bound, denoted below by `sSup s` and `sInf s`. This PR adds the classes `SigmaCompleteLattice` as well as some theorems (mainly adapted from `CompleteLattice` and `ConditionallyCompleteLattice`). This is an adaptation of #26318 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-order 394/0 Mathlib.lean,Mathlib/Order/SigmaCompleteLattice.lean 2 9 ['PierreQuinton', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] nobody
192-12798
6 months ago
297-67658
297 days ago
12-24971
12 days
27753 YunkaiZhang233
author:YunkaiZhang233
feat(CategoryTheory): implemented proofs for factorisation categories being equivalent to iterated comma categories in two ways --- Completed one of the tasks in TODOs, shown and implemented the details for (X/C)/f ≌ Factorisation f ≌ f/(C/Y). This is migrated from my previous PR #22390 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 70/1 Mathlib/CategoryTheory/Category/Factorisation.lean 1 13 ['YunkaiZhang233', 'b-mehta', 'github-actions', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
192-12782
6 months ago
302-70345
302 days ago
0-3448
57 minutes
27824 ChrisHughes24
author:ChrisHughes24
feat(Calculus): exists_gt_of_deriv_pos and variants --- I created a new file for this as I anticipate there will be many lemmas relating derivatives and monotonicity in future. Some lemmas relating deriviatives to monotonicity are already in mathlib and should maybe moved to the file (e.g. docs#HasDerivWithinAt.nonneg_of_monotoneOn). I stated them in as much generality as I could, copying the generality of `HasDerivWithinAt.nonneg_of_monotoneOn`. - [x] depends on: #28039 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 103/0 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Order.lean 2 37 ['ChrisHughes24', 'EtienneC30', 'b-mehta', 'github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] hrmacbeth
assignee:hrmacbeth
192-12781
6 months ago
206-60110
206 days ago
81-53032
81 days
27850 fyqing
author:fyqing
feat: 0-dimensional manifolds are discrete and countable This is the converse direction of the classification of 0-dimensional manifolds. The other direction was shown in #22105. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-differential-geometry new-contributor 80/0 Mathlib.lean,Mathlib/Geometry/Manifold/ZeroDim.lean 2 14 ['fyqing', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'tb65536'] grunweg
assignee:grunweg
192-12780
6 months ago
301-45007
301 days ago
0-5718
1 hour
27973 smmercuri
author:smmercuri
feat: the ring of integers of a `ℤₘ₀`-valued field is compact whenever it is a DVR and the residue field is finite This PR continues the work from #21844. Original PR: https://github.com/leanprover-community/mathlib4/pull/21844 merge-conflict awaiting-author t-algebra large-import
label:t-algebra$
54/2 Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean 2 9 ['github-actions', 'mathlib4-merge-conflict-bot', 'pechersky', 'smmercuri'] nobody
192-12654
6 months ago
246-24012
246 days ago
37-63652
37 days
28124 kckennylau
author:kckennylau
feat(Tactic): Call an arbitrary Simproc In the current framework, `Simproc`s are declared by name, and can only be referred to by name. For example, [Nat.divisors_ofNat](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Tactic/Simproc/Divisors.html#Nat.divisors_ofNat) is declared as: ```lean dsimproc_decl Nat.divisors_ofNat (Nat.divisors _) := fun e => do ``` This declaration syntax does not allow for a `Simproc` to depend on any arguments, and even if one constructed a `Simproc` that depends on e.g. a natural number, such as `foo : ℕ → Simproc`, one still cannot call it using the syntax `by simp [foo 37]`. Therefore, this new function aims to solve this problem, by allowing an arbitrary `Simproc` to be executed, using the newly defined function `Lean.Meta.Simp.Simproc.apply (s : Simproc) : TacticM Unit`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 79/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/Apply.lean,MathlibTest/Simproc/Apply.lean 4 28 ['JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'hrmacbeth', 'kckennylau', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
192-12649
6 months ago
262-4118
262 days ago
23-23815
23 days
28125 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics): basic definition of simplicial complexes This PR introduces the basic definition of a finite (abstract) simplicial complex, located in Mathlib/Combinatorics/SimplicialComplex/Basic.lean. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this is a small stepping stone in that direction. Some other commits will shortly depend on this one. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. We would also like to thank our group members Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. merge-conflict t-combinatorics new-contributor 374/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
192-12648
6 months ago
192-12649
192 days ago
99-64548
99 days
28316 eric-wieser
author:eric-wieser
feat(Tactic/NormNum): better trace nodes Comparing the infoview on the first example in the test file | Before | After | |---|---| | image | image| In the after version, the extension names are all clickable. Similar to #21450. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 136/5 Mathlib.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Util/Trace.lean,MathlibTest/norm_num_trace.lean 4 20 ['JovanGerb', 'eric-wieser', 'github-actions', 'kmill', 'leanprover-bot', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'plp127'] JovanGerb
assignee:JovanGerb
192-12642
6 months ago
274-55929
274 days ago
15-76174
15 days
28325 pechersky
author:pechersky
feat(WithZeroTopology): `locallyCompactSpace_iff_locallyFiniteOrder_units` On the way to golf/generalize the proof that locally compact valued fields have locally finite valuation groups as embodied in `Valued.integer.locallyFiniteOrder_units_mrange_of_isCompact_integer` ] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-order large-import 81/2 Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean 3 13 ['erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'ocfnash'] PatrickMassot
assignee:PatrickMassot
192-12641
6 months ago
196-67319
196 days ago
93-41632
93 days
28349 kckennylau
author:kckennylau
feat(Meta): add notation for naming stacked polynomials This PR changes the notation for naming formal variables associated to recursive polynomial-like objects. Registration is done only once per each polynomial-like functor. Usage: ```lean register_poly_vars "[" "]" Polynomial Polynomial.C Polynomial.X register_poly_vars (mv := true) "[" "]" MvPolynomial MvPolynomial.C MvPolynomial.X name_poly_vars R[a,b][C] name_poly_vars _[x,y,z] ``` `_[[x,y,z]]` allows for the hole to be substituted by any base ring, so `(x : R[[x,y,z]])` will be valid syntax. There has been some discussion about its implementation: * It has been suggested that `R[x,y][z]` should mean that `R[x,y]` is a subring, i.e. `x` should live in `R[x,y]`, but in my implementation `x` lives in the big ring `R[x,y][z]`. There are two ways to get the other behaviour: * One can do `R[x,y]` and then `(R[x,y])[z]`. * One can do `R[a,b]` and `R[x,y][z]`. I personally prefer this one because we should make it clearer that they are different rings. * There has been some discussion over what `R` means. In my implementation, if you ever refer to a `variable` called `R`, then `R` is fixed to that variable, meaning that if you later define a variable with the same name, `R` will still refer to the old variable. Also, this does not respect namespace, meaning that if you refer to `Foo.bar[x,y]`, and later open `Foo`, you will not be able to access the declared ring with `bar[x,y]`. --- I have not mass deployed the new syntax at every possible location, I plan to do that in a future PR following this. Zulip: [#mathlib4 > Notation for polynomial variables](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Notation.20for.20polynomial.20variables) This is a refactor of the currently existing [Mathlib.Tactic.namePolyVarsOver](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Tactic/Ring/NamePolyVars.html#Mathlib.Tactic.namePolyVarsOver). More explicitly, the current invocation `name_poly_vars x,y over R` is now `poly_variable R[x,y]`. The behaviours inherited from `name_poly_vars` are: * We do not synthesize the necessary instances (such as `[CommRing R]`) at the point of declaration, but only when the new notations are used. * We refer to an explicit term (`R` in the examples) which is "fixed", in the sense that: * it is only valid for `R` explicitly, and not any other `variable` such as `S`. * it has built-in hygiene, so if you shadow the variable by declaring a new `variable (R : Type*)`, it will still refer to the old one. And the new behaviours are: * Currently only `x` and `y` are new notations, but in the new tactic the whole ring `R[x,y]` is also available as notation. * Currently only the forward direction (i.e. elaboration, going from `x` to `MvPolynomial.X 0`) is implemented, but in the new tactic we also implement the backward direction, printing `MvPolynomial.X 0` back as `x` (and `MvPolynomial (Fin 2) R` is printed as `R[x,y]`). * Support beyond just `MvPolynomial`. * Support for nested polynomial-like rings, such as `R[x,y][t][[z]]` for `PowerSeries (Polynomial (MvPolynomial (Fin 2) R))`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 778/87 Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/PolyVariable.lean,Mathlib/Tactic/Ring/NamePolyVars.lean,MathlibTest/PolyVariable.lean,scripts/noshake.json 10 110 ['JovanGerb', 'adamtopaz', 'chrisflav', 'eric-wieser', 'github-actions', 'j-loreaux', 'kckennylau', 'kim-em', 'mathlib4-merge-conflict-bot', 'plp127', 'robertmaxton42', 'sgouezel'] adamtopaz
assignee:adamtopaz
192-12638
6 months ago
199-3978
199 days ago
58-1196
58 days
28530 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics/SimplicialComplex/Topology): add standard simplices and geometric realisation (colimit + functoriality) Introduce the standard simplex on a finite vertex set and build the geometric realisation |X| of a simplicial complex. Prove that |X| is the colimit of the face diagram δ_X : X.faces ⥤ TopCat, and define the induced map on realisations |φ| : |X| ⟶ |Y| for a simplicial map φ. Show that the abstract map from colimit functoriality agrees with the concrete push-forward of barycentric coordinates. Package these into a functor SimplicialComplexCat ⥤ TopCat. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this lays the groundwork to do this. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. I would also like to thank our group members Sebastian Kumar, Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. - [ ] depends on: #28125 merge-conflict blocked-by-other-PR t-combinatorics new-contributor 1826/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Colimit.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Diagram.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Functor.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/GeomReal/Map.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/Simplex.lean,Mathlib/Combinatorics/SimplicialComplex/Topology/SimplexMap.lean 12 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-12634
6 months ago
286-52862
286 days ago
0-591
9 minutes
28868 yury-harmonic
author:yury-harmonic
feat(Positive): add `OfNat` instance Also fix defeq for `Div` in the `Group` instance. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
41/13 Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Data/PNat/Defs.lean 3 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'yury-harmonic'] nobody
192-12496
6 months ago
278-56885
278 days ago
0-2821
47 minutes
28871 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Tournaments Define orientations and tournaments. Related to #26771. Co-authored-by: Rida Hamadani --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 62/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean 3 6 ['JaafarTanoukhi', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib4-merge-conflict-bot'] kmill
assignee:kmill
192-12495
6 months ago
192-12496
192 days ago
55-54919
55 days
29108 JonBannon
author:JonBannon
feat(MeasureTheory): add `LInfty.lean` with `Mul` and `const` related results. Continuing to develop pieces needed for a `CStarAlgebra` instance for `Lp R ∞ μ`, we introduce a file `MeasureTheory.Function.LInfty.lean` that takes `MeasureTheory.Function.LpSpace.Basic` and `MeasureTheory.Function.Holder` as imports, and introduces the `Mul` instance on Linfty, and const-related results. In a future PR we will handle `One`, as this will require dealing with `AEEqFun` as well as `Lp` level objects and it's probably best to handle these together in a single PR. We opted to add this file to keep imports light, since adding the `Mul` results to `Basic` would require importing `Holder`, and including these results in `Holder` seemed too specific and would make `Holder` heavier. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 91/0 Mathlib.lean,Mathlib/MeasureTheory/Function/LInfty.lean 2 6 ['JonBannon', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] nobody
192-12488
6 months ago
269-64385
269 days ago
4-7234
4 days
29481 llllvvuu
author:llllvvuu
feat(LinearAlgebra/Eigenspace): roots of matrix minpoly give spectrum This is derived from the corresponding result on linear maps. --- - [x] depends on: #29478 for some simp lemmas [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
13/0 Mathlib/LinearAlgebra/Eigenspace/Minpoly.lean 1 5 ['github-actions', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-12463
6 months ago
262-40779
262 days ago
0-13173
3 hours
29526 llllvvuu
author:llllvvuu
feat: `Multiset.map f` identifies `f` up to permutation Motivation: Reason about `Fintype`-indexed families via `Multiset` equality. Example use case 1: ```lean theorem Matrix.IsHermitian.cfc_eigenvalues {d : Type*} [Fintype d] [DecidableEq d] {M : Matrix d d 𝕜} (hM : M.IsHermitian) (f : ℝ → ℝ) (hcfc : Matrix.IsHermitian (cfc f M) := cfc_predicate f M) : ∃ (e : d ≃ d), hcfc.eigenvalues = f ∘ hM.eigenvalues ∘ e := by have := hcfc.roots_charpoly_eq_eigenvalues.symm rw [hM.charpoly_cfc_eq f, Polynomial.roots_prod] at this; swap · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this have he := (Multiset.compTriple_equivOfMapUnivEq this).comp_eq simp_rw [← Function.comp_def RCLike.ofReal, ← Function.comp_def f, Function.comp_assoc] at he exact ⟨_, RCLike.ofReal_injective.comp_left he.symm⟩ ``` Example use case 2 (on top of https://github.com/leanprover-community/mathlib4/pull/29610): ```lean theorem LinearMap.Eigenbasis.μ_equiv {ι ι' R G : Type*} [Fintype ι] [Fintype ι'] [CommRing R] [IsDomain R] [AddCommGroup G] [Module R G] [Module.Free R G] [Module.Finite R G] {f : Module.End R G} (B₁ : f.Eigenbasis ι) (B₂ : f.Eigenbasis ι') : ∃ e : ι ≃ ι', B₁.μ = B₂.μ ∘ e := by classical have := congr(Polynomial.roots $(B₁.charpoly_eq.symm.trans B₂.charpoly_eq)) rw [Polynomial.roots_prod, Polynomial.roots_prod] at this; rotate_left · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this exact ⟨Multiset.equivOfMapUnivEq this, (Multiset.compTriple_equivOfMapUnivEq this).comp_eq.symm⟩ ``` Co-authored-by: Aristotle Harmonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 35/0 Mathlib/Data/Multiset/Fintype.lean 1 9 ['Ruben-VandeVelde', 'github-actions', 'llllvvuu', 'mathlib4-merge-conflict-bot', 'vihdzp', 'wwylele'] pechersky
assignee:pechersky
192-12457
6 months ago
192-12458
192 days ago
69-23034
69 days
29675 yury-harmonic
author:yury-harmonic
feat(Wolstenholme): new file Co-authored-by: @Aristotle-Harmonic --- I still need to cleanup the proof and write the docs. For now, it's just what the AI generated, forward-ported to the latest Mathlib. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted t-data 198/0 Mathlib.lean,Mathlib/Data/Nat/Choose/Wolstenholme.lean 2 5 ['Alex-Linhares', 'github-actions', 'mathlib4-merge-conflict-bot', 'yury-harmonic'] nobody
192-11886
6 months ago
256-75987
256 days ago
0-125
2 minutes
29720 javra
author:javra
feat(CategoryTheory): `TransportEnrichment` and `ForgetEnrichment` as 2-functors --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 63/1 Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Enriched/EnrichedCat.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-11879
6 months ago
255-77410
255 days ago
0-24
24 seconds
29827 js2357
author:js2357
feat: define two (trivial) ContinuousMulEquivs Define two trivial `ContinuousMulEquiv`s: `ContinuousMulEquiv.piUnique` is the topological version of `MulEquiv.piUnique`. `ContinuousMulEquiv.piEquivPiSubtypeProd` is the multiplicative version of `Homeomorph.piEquivPiSubtypeProd`. Done for the FLT project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology FLT large-import 25/0 Mathlib/Topology/Algebra/ContinuousMonoidHom.lean 1 3 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
192-11865
6 months ago
252-13627
252 days ago
0-18297
5 hours
29947 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Maps Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics new-contributor 476/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Maps.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
192-11861
6 months ago
192-11862
192 days ago
54-82760
54 days
30022 ADedecker
author:ADedecker
feat: theory of `IsRightUniformGroup` and `IsLeftUniformGroup` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 799/150 Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean 2 7 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-11847
6 months ago
unknown
0-0
0 seconds
30042 JovanGerb
author:JovanGerb
feat(push): `@[push]` attributes for `∈` in `Set`, `Finset` and `Multiset` This PR adds `@[push]` annotations for the membership relations, for `Set`, `Finset` and `Multiset`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 171/105 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/ListOfFn.lean,Mathlib/Algebra/Order/Group/Multiset.lean,Mathlib/Data/DFinsupp/Interval.lean,Mathlib/Data/Finmap.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Disjoint.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Finset/Pi.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Range.lean,Mathlib/Data/Finset/SDiff.lean,Mathlib/Data/Finset/Sigma.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/Finset/Sum.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Multiset/AddSub.lean,Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Dedup.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/FinsetOps.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Multiset/Pi.lean,Mathlib/Data/Multiset/Range.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Multiset/Sort.lean,Mathlib/Data/Multiset/Sum.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Interval/Multiset.lean,Mathlib/Order/Interval/Set/Defs.lean,Mathlib/Order/SetNotation.lean,MathlibTest/push.lean 49 14 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] grunweg
assignee:grunweg
192-11842
6 months ago
199-71639
199 days ago
23-81049
23 days
30330 Bergschaf
author:Bergschaf
feat(Algebra/Group/Action/Equidecomp): Mathlib's definition of Equidecomposability is equivalent to the standart one using partitions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
329/1 Mathlib/Algebra/Group/Action/Equidecomp.lean 1 6 ['Bergschaf', 'Felix-Weilacher', 'github-actions', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
192-11684
6 months ago
214-75524
214 days ago
15-53183
15 days
30374 amellendijk
author:amellendijk
feat(Tactic): `algebra` and `polynomial` tactic suite Implement a suite of tactics for normalizing expressions in an algebra over a ring. Handles all of the normal `ring` operations as well as scalar multiplication over a fixed base ring. Using these, implement tactics to normalize `(Mv)Polynomial` expressions into a sum-of-monomials form. Specifically, * `algebra` proves equality of expressions in an algebra over a ring like `ring1` * `algebra_nf` puts expressions in an algebra into a normal form, like `ring_nf` * `match_scalars_alg` (name pending) closes an equality goal by calling `algebra_nf` and creating side goals equating matching coefficients in the base ring. Like `match_scalars`. * `polynomial` proves equality of (mv)polynomials * `polynomial_nf` expands polynomials into a sum-of-monomials form, combining coefficients in the base ring (e.g. `C a * X + C b * X` normalizes to `C(a+b) * X` * `match_coefficients` expands polynomials and produces side goals equating matching coefficients. - [x] depends on: #31506 - [x] depends on: #31508 - [ ] depends on: #31513 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author blocked-by-other-PR t-meta 2371/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Algebra.lean,Mathlib/Tactic/Algebra/Lemmas.lean,Mathlib/Tactic/Polynomial.lean,Mathlib/Tactic/Polynomial/Core.lean,MathlibTest/Polynomial.lean,MathlibTest/algebra.lean,scripts/noshake.json 9 7 ['FLDutchmann', 'github-actions', 'hrmacbeth', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-11665
6 months ago
unknown
0-0
0 seconds
30392 urkud
author:urkud
feat: define pullback quotient maps --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 287/0 Mathlib.lean,Mathlib/Topology/ClusterPt.lean,Mathlib/Topology/Maps/PullbackQuotient.lean 3 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-11660
6 months ago
unknown
0-0
0 seconds
30933 joelriou
author:joelriou
feat(CategoryTheory): the linearization of a category Let `C` be a category and `R` be a commutative ring. We construct a `R`-linear category `Linearization C R` and a functor `toLinearization C R : C ⥤ Linearization C R`. The morphisms in `Linearization C R` are the free `R`-modules on the types of morphisms in `C`. (In the context of singular homology with coefficients `R`, chains of a fixed degree shall identify to morphisms in `Linearization TopCat R`, and doing certain computations for arbitrary coefficients should reduce to computations with `R := ℤ`.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 134/0 Mathlib.lean,Mathlib/CategoryTheory/Linear/Linearization.lean 2 4 ['github-actions', 'joelriou', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-11352
6 months ago
213-39370
213 days ago
2-33570
2 days
31314 hrmacbeth
author:hrmacbeth
feat: linters for recommended `field_simp` style --- - [x] depends on: #31472 - [x] depends on: #31483 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-CI 93/1 Mathlib.lean,Mathlib/Lean/Meta/WarningAsError.lean,Mathlib/Tactic/Field.lean 3 5 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-11152
6 months ago
unknown
0-0
0 seconds
31351 grunweg
author:grunweg
feat: manifolds with smooth boundary Needs polish, and closing the remaining sorries (or deciding they can be postponed later). From my bordism theory project. --- - [x] depends on: #22070 - [x] depends on: #22128 - [x] depends on: #22131 - [x] depends on: #22082 - [x] depends on: #22113 - [x] depends on: #22105 - [x] depends on: #26099 - [x] depends on: #30049 (preliminary code clean-up) - [x] depends on: #29589 - [x] ~~depends on: https://github.com/grunweg/mathlib4/tree/mfderiv-prodmap for actually proving the mfderiv sorry about products I need~~ done now - [ ] depends on: #31200 (and its companion result, about Sum.map) - [ ] depends on #23040 for the mathlib-level definition of smooth immersions and embeddings This PR continues the work from #22059. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry 591/0 Mathlib.lean,Mathlib/Geometry/Manifold/HasSmoothBoundary.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
192-10926
6 months ago
204-7694
204 days ago
0-13
13 seconds
14704 Command-Master
author:Command-Master
feat(FieldTheory): define typeclass for simple extensions, and prove some properties Define `SimpleExtension F K`, which says that `K` is a simple field extension of `F`, and show that together with transcendentality it implies `IsFractionRing F[X] K`. --- - [x] depends on: #14710 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra new-contributor merge-conflict awaiting-author
label:t-algebra$
120/0 Mathlib.lean,Mathlib/FieldTheory/SimpleExtension.lean 2 19 ['Command-Master', 'acmepjz', 'github-actions', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] nobody
192-8693
6 months ago
636-1807
636 days ago
48-65595
48 days
31356 adomani
author:adomani
feat: add inspect-like functions Produces a tree-like formatting for `Syntax`, `Expr` and `InfoTree`. Especially for the `InfoTree`s, there are *many* parts of it that do not get printed. For instance, this is how the `InfoTree`s of `set_option linter.missingDocs true` get printed: ```lean inspectIT set_option linter.missingDocs true /- commandCtx |-Info.ofCommandInfo: Lean.Elab.Command.elabSetOption, 'set_option…gDocs true' | |-Info.ofCompletionInfo.CompletionInfo.option 'set_option…issingDocs' | |-Info.ofOptionInfo: linter.missingDocs, Linter.linter.missingDocs -/ ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 720/0 Mathlib.lean,Mathlib/Util/Inspect.lean,MathlibTest/Inspect.lean 3 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] kim-em
assignee:kim-em
192-6882
6 months ago
192-6883
192 days ago
11-61697
11 days
31604 maksym-radziwill
author:maksym-radziwill
feat: analyticity of dslope This adds a few simple functions to show that ``dslope f a`` is analytic when ``f`` is. This is needed for Borel-Caratheodory, see https://github.com/leanprover-community/mathlib4/pull/30424 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 51/0 Mathlib.lean,Mathlib/Analysis/Analytic/Dslope.lean 2 26 ['github-actions', 'grunweg', 'maksym-radziwill', 'mathlib4-merge-conflict-bot'] nobody
192-6586
6 months ago
197-47902
197 days ago
0-3879
1 hour
31738 robertmaxton42
author:robertmaxton42
feat: quivers can be represented as functors from the walking quiver Add definitions and associated lemmas for representing quivers as functors from the category `1 ⇉ 0`, i.e. `WalkingParallelPairᵒᵖ`. New definitions: * `asFunctor` itself, which is defined as a bare function with an associated `Functorial` instance so that it can be used with generalized projection notation * `src` and `tgt`, abbreviations for `F.map left.op` and `F.map right.op` for a functor `F : WalkingParallelPairᵒᵖ ⥤ Type w` * `Vertex`, `Edges`, and `Edge`, abbreviations for `F.obj 0` (interpreted as the type of vertices), `F.obj 1` (interpreted as the total type of all edges), and `{e : F.obj 1 // src e = s ∧ tgt e = t}` for some pair of vertices `s` and `t` (interpreted as the hom-type `s ⟶ t`) * `edgeOfEq`, the equivalent of `Quiver.homOfEq` for edges in quivers in functor form. --- This PR begins the first of a series proving that the category `Quiv.{v, u}` is equivalent to the subcategory of $$\mathbf{PSh}(\mathbf{WQuiv}^\mathrm{op})$$ which are appropriately '`u`-small' and 'locally `v`-small'. The original PR (prior to the move to forks) created a custom type `WalkingQuiver` for this purpose; ultimately I found that `WalkingParallelPairᵒᵖ` served my purposes well enough. Following this PR will be one constructing the adjoint `ofFunctor`, plus several showing that `asFunctor` and `ofFunctor` can be assembled into an equivalence and proving various properties of quivers in functor form necessary for the construction of colimits. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 397/0 Mathlib.lean,Mathlib/CategoryTheory/Category/Quiv/AsOfFunctor.lean 2 13 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'robertmaxton42'] nobody
192-6543
6 months ago
194-21658
194 days ago
0-1741
29 minutes
31590 SuccessMoses
author:SuccessMoses
chore: tag `commutatorElement_def` with `simp` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor merge-conflict
label:t-algebra$
1/0 Mathlib/Algebra/Group/Commutator.lean 1 3 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
191-72968
6 months ago
191-72968
191 days ago
6-8213
6 days
25802 dagurtomas
author:dagurtomas
feat(AlgebraicTopology): anodyne morphisms of simplicial sets --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #20201.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/20201* WIP t-topology 145/0 Mathlib/AlgebraicTopology/Anodyne.lean,Mathlib/AlgebraicTopology/KanFibration.lean,Mathlib/CategoryTheory/MorphismProperty/WeakSaturation.lean 3 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-72875
6 months ago
352-1639
352 days ago
0-2
2 seconds
6268 eric-wieser
author:eric-wieser
fix: fixups to #3838 This is an attempt to make #3838 universe polymorphic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) * Depends on #6271 * Depends on #8876 merge-conflict WIP 186/107 Mathlib/Control/Random.lean,Mathlib/Tactic/SlimCheck.lean,Mathlib/Testing/SlimCheck/Functions.lean,Mathlib/Testing/SlimCheck/Gen.lean,Mathlib/Testing/SlimCheck/Sampleable.lean,Mathlib/Testing/SlimCheck/Testable.lean,test/slim_check.lean 7 10 ['github-actions', 'kim-em'] nobody
191-72219
6 months ago
unknown
0-0
0 seconds
6859 MohanadAhmed
author:MohanadAhmed
feat: TryLean4Bundle: Windows Bundle Creator # `TryLean4Bundle`: Windows Bundle Creator A Windows batch script and a CI yml file that create an self extracting archive. The user should 1. just download the archive, 2. double click the archive to expand 3. double click the `RunLean.bat` script in the expanded archive. The script currently downloads 7 dependencies into CI then unpacks them in the appropriate locations and finally packs them back. To try a bundle created using these scripts but from a different repo see (https://github.com/MohanadAhmed/TryLean4Bundle/releases) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP help-wanted CI 114/0 .github/workflows/mk_windows_bundle.yml,scripts/windowsBundle.bat 2 0 [] nobody
191-72211
6 months ago
1004-40924
1004 days ago
0-434
7 minutes
6993 jjaassoonn
author:jjaassoonn
feat: lemmas about `AddMonoidAlgebra.{divOf, modOf}` --- - [x] depends on: #7582 - [x] depends on: #8975 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
147/3 Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/MvPolynomial/Basic.lean,Mathlib/Data/MvPolynomial/CommRing.lean,Mathlib/Data/MvPolynomial/Division.lean 5 42 ['YaelDillies', 'alreadydone', 'digama0', 'eric-wieser', 'github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
191-72206
6 months ago
861-76959
861 days ago
103-330
103 days
7427 MohanadAhmed
author:MohanadAhmed
feat: eigenvalues sorted in ascending/descending order In the file `Analysis.InnerProductSpace.Spectrum` todo notes were left saying: > TODO Postcompose with a permutation so that these eigenvectors are listed in increasing order of eigenvalue. > TODO Postcompose with a permutation so that these eigenvalues are listed in increasing order. - This is a start in that direction --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 162/4 Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/NormedSpace/PiLp.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean 3 0 [] nobody
191-72174
6 months ago
unknown
0-0
0 seconds
9339 FMLJohn
author:FMLJohn
feat(RingTheory/GradedAlgebra/HomogeneousIdeal): given a finitely generated homogeneous ideal of a graded semiring, construct a finite spanning set for the ideal which only contains homogeneous elements --- - [ ] depends on: #8187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 402/4 Mathlib.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousIdeal.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean 8 11 ['FMLJohn', 'github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
191-72159
6 months ago
875-77137
875 days ago
6-63597
6 days
9564 AntoineChambert-Loir
author:AntoineChambert-Loir
chore: weaken commutativity assumptions for AdjoinRoot.lift and AdjoinRoot.liftHom I weaken a commutativity assumption for docs#AdjoinRoot.liftHom that the target algebra be commutative. It is only assumed to be a Semiring. For that, I need to generalize docs#AdjoinRoot.lift which takes `i : R ->+* S`, `a : S` with `f.eval₂ i a = 0` and defines `AdjoinRoot f ->+* S` that extends `i ` and sends `AdjoinRoot.root f` to `a`. --- The initial version of the PR was to define `AdjoinRoot.lift'` where `S` is only a Semiring, with the additional assumption `hcomm : ∀ r, Commute (i r) a` that the element `a` commutes with the image of `i`. @jcommelin suggested to provide this argument as an `autoParam`, filled in by an ad hoc `commutativity` tactic. However, such an argument cannot be made implicit and a first version required to have this argument given each time, most of the time by `_`, even for all subsequent lemmas, `AdjoinRoot.lift_mk`, etc. To avoid this, I tried to make this assumption a `⦃hcomm : ∀ r, Commute (i r) a⦄`. This appears to have some side effects that proofs using an `exact` tactic or in term mode do not work well, but one can resort on `by simp […]`. Maybe @eric-wieser or @Vierkantor will have opinions on that. In some cases one can still give the argument as `(hcomm := by commutativity)`. (There are 3 options : - separate lemmas for the fully commutative case and for the case where a proof is needed - using the `commutativity` tactic, but with an argument `_` sometimes - using the optional argument.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
146/30 Mathlib.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Commutativity.lean,Mathlib/Tactic/Commutativity/Init.lean 8 14 ['AntoineChambert-Loir', 'Vierkantor', 'eric-wieser', 'jcommelin'] nobody
191-72153
6 months ago
788-64459
788 days ago
16-71959
16 days
10026 madvorak
author:madvorak
feat: linear programming according to Antoine Chambert-Loir's book --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
86/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean 2 10 ['eric-wieser', 'madvorak', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] nobody
191-72147
6 months ago
696-8556
696 days ago
154-48765
154 days
10159 madvorak
author:madvorak
feat: linear programming according to Antoine Chambert-Loir's book — affine version --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
83/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean 2 8 ['eric-wieser', 'madvorak', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] nobody
191-72140
6 months ago
696-8539
696 days ago
152-72231
152 days
10349 Shamrock-Frost
author:Shamrock-Frost
refactor(CategoryTheory/MorphismProperty): some clean-ups We make explicit some of the galois connections/closure operators in the existing MorphismProperty file, rewrite some proofs to take advantage of these structures, and change map/inverseImage by (1) swapping their argument order, for consistency with Set.range and Set.preimage and (2) making "map" perform the strict, evil map while "essMap" (previously called map) forms the closure of the image under isomorphisms. Finally we add `IsMultiplicative` instances for isos/epis/monos, with an eye towards constructing the wide subcategory on these classes of maps. --- - [x] depends on: #10347 - [x] depends on: #10348 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 474/318 Mathlib/CategoryTheory/Localization/Composition.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean,Mathlib/CategoryTheory/MorphismProperty.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Order/Closure.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Order/RelIso/Basic.lean 8 1 ['leanprover-community-mathlib4-bot'] nobody
191-72117
6 months ago
842-40861
842 days ago
0-418
6 minutes
11021 jstoobysmith
author:jstoobysmith
feat(AlgebraicTopology): add join of augmented SSets This pull-request adds the definition of the join of augmented SSets defined as contravariant functors from `WithInitial SimplexCategory` to `Type u`. In addition it shows that the join of two standard augmented SSets is again an augmented SSets. From this the definition of the join of simplicial sets should follow easily. To aid the above theory, an api for `WithInitial SimplexCategory` has been created, with the notion of the `join` and `split` (forming a sort of inverse to join) of objects in this category are defined. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebraic-topology new-contributor 2137/1 .gitignore,Mathlib.lean,Mathlib/AlgebraicTopology/Join.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SimplexCategoryWithInitial.lean,Mathlib/AlgebraicTopology/SimplicialSet.lean 6 47 ['github-actions', 'jcommelin'] nobody
191-72109
6 months ago
821-39554
821 days ago
1-20227
1 day
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
191-72075
6 months ago
667-5957
667 days ago
123-25636
123 days
12087 JADekker
author:JADekker
feat: complete API for K-Lindelöf spaces --- - [ ] depends on: #11800 (which is now awaiting a design decision) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-topology blocked-by-other-PR 789/17 Mathlib.lean,Mathlib/Order/Filter/CardinalInter.lean,Mathlib/Topology/Compactness/KLindelof.lean,Mathlib/Topology/Compactness/Lindelof.lean 4 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
191-72068
6 months ago
667-5832
667 days ago
99-11243
99 days
12251 ScottCarnahan
author:ScottCarnahan
refactor(RingTheory/HahnSeries): several generalizations This PR is a container for several smaller PRs that refactor and generalize the existing Hahn series theory. It is (I think) all we need from Hahn series to get a palatable theory of vertex algebras off the ground (other prerequisites from Lie algebras will eventually come in a different PR). Major changes include: - equivalence between iterated Hahn series and Hahn series on Lex products. - introduce `orderTop` and `leadingCoeff` functions. Here, `orderTop` is a `WithTop Γ`-valued version of `order` that does not need `[Zero Γ]` and `leadingCoeff` returns the coefficient of the minimal element of support (or zero if empty). - introduce ordered and cancellative vector addition classes together with some basic theory e.g., finiteness of antidiagonals for partially well-ordered sets. - `HahnSeries Γ R`-module structure on `HahnModule Γ' R V`, when `Γ` is an `OrderedCancelAddCommMonoid`, `Γ'` is a `PartialOrder` with `OrderedCancelVAdd Γ Γ'`, `R` is a semiring, and `V` is an `R`-module. - Move `AddVal` to a separate file - the underlying function is just `orderTop`, but the description of the valuation needs an additional import and an `IsDomain` hypothesis. Results that depended on `AddVal` are changed to use `orderTop` and generalized. --- - [x] depends on: #10781 [HahnSeries on Lex product] - [x] depends on: #10846 [HahnModule] - [x] depends on: #11965 [orderTop] - [x] depends on: #11979 [OrderedVAdd] - [x] depends on: #12996 [leadingTerm] - [x] depends on: #16649 - [x] depends on: #16701 - [x] depends on: #17004 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra t-order
label:t-algebra$
1059/97 Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
191-72053
6 months ago
677-38200
677 days ago
42-37118
42 days
12394 JADekker
author:JADekker
feat: define pre-tight and tight measures Define tight measures (by first defining separable and pre-tight measures). Define some api for all three concepts Prove Ulam's tightness theorem and a strengthened version of this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict awaiting-author t-measure-probability 503/0 Mathlib.lean,Mathlib/MeasureTheory/Measure/Tight.lean 2 34 ['EtienneC30', 'JADekker', 'github-actions', 'sgouezel'] nobody
191-72048
6 months ago
753-80099
753 days ago
2-24297
2 days
12452 JADekker
author:JADekker
feat(Cocardinal): add some more api Just a small PR to add a bit more API for cocardinal filters. Not everything seems to generalise nicely from cofinite, so I didn't include such results. Currently the file has one `sorry`, I'm not sure how to complete this proof. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-CI 75/0 Mathlib/Order/Filter/Cocardinal.lean 1 0 [] nobody
191-72044
6 months ago
763-68324
763 days ago
0-2075
34 minutes
14426 adomani
author:adomani
feat: `#min_imps` command (development branch) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 142/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinImports.lean,test/MinImports.lean 4 2 ['adomani', 'github-actions'] nobody
191-72015
6 months ago
694-51496
694 days ago
0-31
31 seconds
14686 smorel394
author:smorel394
feat(AlgebraicGeometry/Grassmannian): define the Grassmannian scheme # The Grassmannian scheme Define the Grassmannian scheme by gluing affine charts. We fix a commutative ring `K`, a free `K`-module of finite type `V` and two natural numbers `r` and `c`. The scheme we define should parametrize surjective `K`-linear maps `V →ₗ[K] (Fin r → K)`, assuming that `V` is of rank `r + c`. We actually define the scheme without assuming the condition on the rank of `V`, but it is empty unless the rank of `V` is `r + c`. Main definitions: * `Grassmannian.glueData K V r c`: the `AlgebraicGeometry.Scheme.GlueData` defining the Grassmannian scheme. * `Grassmannian K V r c`: the Grassmannian scheme, defined as `(Grassmannian.glueData K V r c).glued`. * `Grassmannian.structMorphism K V r c`: the structural morphism from `Grassmannian K V r c` to `Spec K`. # Implementation We use as index type for the charts the type `Basis (Fin (r + c)) K V` (so this is empty unless `V` is free of rank `r + c`). All the charts are the same and equal to the affine space with coordinates indexed by `Fin c × Fin r`, that is, to `Spec (MvPolynomial (Fin c × Fin r) K)`. The idea is that, for `i` in `Basis (Fin (r + c)) K V`, the corresponding chart will parametrize all surjective `K`-linear maps `φ : V →ₗ[K] (Fin r → K)` that become isomorphisms when restricted to the `K`-submodule generated by the first `r` vectors of the basis `i`. To get the point of the chart corresponding to `φ`, we take the matrix of `φ` in the basis `i` of `V` and the canonical basis of `Fin r → K`, we divide it on the right by its top `r × r` square submatrix (which is invertible by assumption), and we taken the botton `c × r` submatrix. This is almost the usual description of the Grassmannian by charts, with three differences: * We consider the Grassmannian parametrizing `r`-dimensional quotients of `V` instead of `r`-dimensional subspaces of `V`, because this is more natural when working over a general ring (or scheme). * In the usual description, we fix a basis of `V` and index the chart by its subsets `I` of cardinality `r`. Here, to avoid making a choice, we instead index charts by the set of bases of `V` and always choose the subset `I` to consist of the first `r` vectors. * Instead of working with `FiniteDimensional.finrank K V - r`, which would cause technical trouble because of the way subtraction works on `ℕ`, we introduce the codimension `c` as an auxiliary variable, and our constructions are only interesting when `r + c` is equal to `FiniteDimensional.finrank K V`. # Why is this a WIP * There a bunch of lemmas in the file `AlgebraicGeometry/Grassmannian/Lemmas.lean` that either should not be necessary or should be put in another PR for some other part of mathlib. * The proofs in `AlgebraicGeometry/Grassmannian/Basic.lean` are probably too complicated, and the names suck. # Notes. This contribution was created as part of the AIM workshop "Formalizing algebraic geometry" in June 2024. --- - [x] depends on: #14711 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt WIP workshop-AIM-AG-2024 merge-conflict t-algebraic-geometry 1002/0 Mathlib.lean,Mathlib/AlgebraicGeometry/Grassmannian/Basic.lean,Mathlib/AlgebraicGeometry/Grassmannian/Lemmas.lean 3 15 ['erdOne', 'github-actions', 'joelriou', 'leanprover-community-mathlib4-bot', 'smorel394'] nobody
191-72004
6 months ago
686-58011
686 days ago
0-201
3 minutes
17071 ScottCarnahan
author:ScottCarnahan
feat(LinearAlgebra/RootSystem): separation, base, cartanMatrix This PR defines an abstract separation structure for roots, together with the associated base and Cartan Matrix. In general, the good properties will follow from additional order hypotheses on the base ring (implemented in a future PR). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
111/0 Mathlib.lean,Mathlib/LinearAlgebra/RootSystem/Separation.lean 2 1 ['github-actions'] nobody
191-71969
6 months ago
592-62429
592 days ago
20-56416
20 days
17471 joelriou
author:joelriou
feat(Algebra/ModuleCat/Differentials/Sheaf): the sheaf of relative differentials --- - [ ] depends on: #17366 - [x] depends on: #17388 - [x] depends on: #16755 - [ ] depends on: #17469 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory large-import merge-conflict t-algebraic-geometry 740/10 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Sheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/AlgebraicGeometry/Modules/Differentials.lean,Mathlib/Geometry/RingedSpace/SheafedSpace.lean 9 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
191-71962
6 months ago
unknown
0-0
0 seconds
18626 hannahfechtner
author:hannahfechtner
feat: define Artin braid groups Define the Artin braid group on infinitely many strands. Includes a toGroup function which defines a function out of the braid group to any other group (given a function which satisfies the braid relations) (more to come in this file; next up: Artin braid groups on finitely many strands) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
91/0 Mathlib.lean,Mathlib/GroupTheory/SpecificGroups/BraidGroup/Basic.lean 2 22 ['github-actions', 'hannahfechtner', 'jcommelin', 'joelriou'] nobody
191-71956
6 months ago
554-78835
554 days ago
15-38478
15 days
18784 erdOne
author:erdOne
feat(AlgebraicGeometry): use `addMorphismPropertyInstances` --- - [ ] depends on: #18785 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry blocked-by-other-PR 435/91 Mathlib.lean,Mathlib/AlgebraicGeometry/Cover/Open.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/FinitePresentation.lean,Mathlib/AlgebraicGeometry/Morphisms/FiniteType.lean,Mathlib/AlgebraicGeometry/Morphisms/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyClosed.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/CategoryTheory/MorphismProperty/Composition.lean,Mathlib/CategoryTheory/MorphismProperty/Limits.lean,Mathlib/CategoryTheory/MorphismProperty/Tactic.lean,MathlibTest/AddMorphismPropertyInstances.lean 18 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
191-71947
6 months ago
567-8752
567 days ago
0-1869
31 minutes
19062 hannahfechtner
author:hannahfechtner
feat(Algebra/PresentedMonoid/Basic): facts about rel Add in a number of useful theorems (reflexivity, closure under multiplication) and lemmas about when the PresentedMonoid.rel holds as an API for users --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra
label:t-algebra$
38/0 Mathlib/GroupTheory/Congruence/Defs.lean 1 8 ['github-actions', 'hannahfechtner', 'kbuzzard', 'riccardobrasca'] nobody
191-71942
6 months ago
458-82902
458 days ago
87-64575
87 days
19607 madvorak
author:madvorak
feat: block matrices are totally unimodular --- Discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/TU.20block.20matrix.20.2319607 - [ ] depends on: #19323 - [ ] depends on: #20428 - [ ] depends on: #20433 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR 156/0 Mathlib.lean,Mathlib/Data/Sum/Decompose.lean,Mathlib/LinearAlgebra/Matrix/Determinant/TotallyUnimodular.lean 3 11 ['github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'madvorak', 'mathlib4-dependent-issues-bot'] nobody
191-71932
6 months ago
unknown
0-0
0 seconds
20029 FrederickPu
author:FrederickPu
feat(Tactic/simps): allow for Config attributes to be set directly Allow for Config attributes to be set directly when using initialize_simp_projection as per issue #19895 Basically modified initialize_simp_projection so that the user has the option of specifying a tuple of config option values. Ex: ``` initialize_simp_projection MulEquiv (toFun → apply, invFun → symm_apply) (fullyApplied := false) ``` These config options are then converted into projections.  --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP new-contributor t-meta 34/4 Mathlib/Tactic/Simps/Basic.lean 1 11 ['FrederickPu', 'YaelDillies', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant'] nobody
191-71893
6 months ago
528-2742
528 days ago
0-34081
9 hours
21269 658060
author:658060
feat(CategoryTheory/Topos): basic definitions and results in topos theory This code contains basic definitions and results in topos theory, including the definition of a subobject classifier, power objects, and topoi. It is proved that every topos has exponential objects, i.e. "internal homs". The mathematical content follows chapter IV sections 1-2 of Mac Lane and Moerdijk's text "Sheaves in Geometry and Logic". --- - [x] depends on: #21281 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory new-contributor merge-conflict awaiting-author 1269/0 Mathlib.lean,Mathlib/CategoryTheory/Topos/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean,Mathlib/CategoryTheory/Topos/Exponentials.lean,Mathlib/CategoryTheory/Topos/Power.lean 5 10 ['658060', 'gio256', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
191-71866
6 months ago
484-50680
484 days ago
0-13879
3 hours
22805 ScottCarnahan
author:ScottCarnahan
feat(FieldTheory/Finite): fixed points of Frobenius automorphism This PR identifies the prime field with the fixed points of frobenius. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
325/7 Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/GaloisField.lean 4 1 ['github-actions'] nobody
191-71854
6 months ago
unknown
0-0
0 seconds
23772 SEU-Prime
author:SEU-Prime
feat: Amice equivalence i built amice equiv [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-number-theory 283/0 Mathlib/NumberTheory/Padics/Amice.lean 1 2 ['grunweg'] nobody
191-71835
6 months ago
417-81086
417 days ago
0-4483
1 hour
23990 robertmaxton42
author:robertmaxton42
feat(Types.Colimits): Quot is functorial and colimitEquivQuot is natural Add `Functor.quotFunctor` to parallel `Functor.sectionsFunctor`, witnessing that `Quot` is functorial; add `colimNatIsoQuotFunctor` to parallel `limNatIsoSectionsFunctor`, witnessing that `colimitEquivQuot` is natural in the diagram $F$. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 33/0 Mathlib/CategoryTheory/Limits/Types/Colimits.lean 1 5 ['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'robertmaxton42'] nobody
191-71749
6 months ago
403-70684
403 days ago
8-27136
8 days
24533 robertmaxton42
author:robertmaxton42
feat(ULift): conjugation by ULift.up/down, misc cast/heq lemmas * Adds the convenience def `ULift.conj x := `down (f (up x))`, and corresponding basic lemmas * Adds lemmas showing that `ULift.up` and `.down` commute with casts and preserve `HEq`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data 31/0 Mathlib/Data/ULift.lean 1 23 ['eric-wieser', 'github-actions', 'grunweg', 'robertmaxton42'] nobody
191-71745
6 months ago
275-13133
275 days ago
118-2181
118 days
24690 ScottCarnahan
author:ScottCarnahan
feat(Data.Prod): reverse lexicographic order This PR implements the type synonym RevLex as a one-field structure, defines an order on products, and proves an order isomorphism with the Lex product with factors switched. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 141/0 Mathlib.lean,Mathlib/Data/Prod/RevLex.lean 2 5 ['ScottCarnahan', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71735
6 months ago
367-30860
367 days ago
19-33859
19 days
24692 ScottCarnahan
author:ScottCarnahan
feat(RingTheory/HahnSeries/Basic): isomorphism of Hahn series induced by order isomorphism This PR introduces an isomorphism of Hahn series induced by an order isomorphism on the exponent posets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 35/0 Mathlib/RingTheory/HahnSeries/Basic.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71729
6 months ago
355-15784
355 days ago
31-47622
31 days
25034 ScottCarnahan
author:ScottCarnahan
feat(Algebra/Module/Equiv/Basic): Restriction of scalars from a semilinear equivalence to a linear equivalence If `M` and `M₂` are both `R`-modules and modules for `S` and `S₂`, respectively, then for any ring isomorphism `e` between `S` and `S₂` and any `e`-semilinear equivalence between `M` and `M₂` that respects the `R`-action, we obtain an `R`-linear equivalence between `M` and `M₂`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra
label:t-algebra$
28/0 Mathlib/Algebra/Module/Equiv/Basic.lean 1 1 ['github-actions'] nobody
191-71722
6 months ago
355-15746
355 days ago
20-11468
20 days
25831 ScottCarnahan
author:ScottCarnahan
feat(RingTheory/HahnSeries): Powers of a binomial This PR introduces powers of a binomial `single g 1 - single g' 1` in a Hahn series, where the powers take values in a binomial ring. These series behave as one would expect with respect to addition of powers, and comparison with natural number powers. They are often used in the theory of vertex algebras. --- - [x] depends on: #25830 - [x] depends on: #27497 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24102.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24102* merge-conflict WIP t-ring-theory 132/0 Mathlib.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Binomial.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean 5 14 ['ScottCarnahan', 'github-actions', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] kbuzzard
assignee:kbuzzard
191-71694
6 months ago
208-2746
208 days ago
80-45817
80 days
26455 ScottCarnahan
author:ScottCarnahan
feat(LinearAlgebra/RootSystem): API for CartanMatrix Some attempts at working out good ways to eliminate bad Cartan matrices. Very much WIP --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
815/26 Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/LinearAlgebra/RootSystem/CartanMatrix.lean,Mathlib/LinearAlgebra/RootSystem/Finite/CanonicalBilinear.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Lemmas.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Relations.lean,Mathlib/LinearAlgebra/RootSystem/IsValuedIn.lean,Mathlib/LinearAlgebra/RootSystem/RootPositive.lean 9 8 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
191-71568
6 months ago
337-41238
337 days ago
0-17731
4 hours
26804 kckennylau
author:kckennylau
feat(SetTheory): ZFSet is a model of ZFC --- Depends on: * [ ] #26644 `Mathlib/SetTheory/ZFC/Model.lean` is the main file, and it starts at Line 346. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-set-theory 1245/0 Mathlib.lean,Mathlib/SetTheory/ZFC/Axioms.lean,Mathlib/SetTheory/ZFC/Model.lean,docs/references.bib 4 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
191-71521
6 months ago
328-36246
328 days ago
0-163
2 minutes
26890 robin-carlier
author:robin-carlier
feat(CategoryTheory/Monoidal/DayConvolution): more API for `DayFunctor` We provide some lemmas that helps characterizing the monoidal structure on `DayFunctor`, they are special cases of the lemmas for `LawfulDayConvolutionMonoidalCategoryStruct`. --- - [x] depends on: #26824 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 1372/19 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean 4 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
191-71509
6 months ago
326-10118
326 days ago
0-517
8 minutes
26310 kckennylau
author:kckennylau
feat: binary forms This PR provides the basic definition of binary forms, which are homogeneous polynomials in two variables. --- - [ ] depends on: #26312 - [ ] depends on: #26313 - [ ] depends on: #26314 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
73/0 Mathlib.lean,Mathlib/RingTheory/MvPolynomial/BinaryForm.lean 2 14 ['MichaelStollBayreuth', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash'] ocfnash
assignee:ocfnash
191-71487
6 months ago
283-68508
283 days ago
57-1096
57 days
26283 kckennylau
author:kckennylau
feat: resultant of polynomials --- This is a WIP PR for resultant for me to get cache. PRs produced: * [x] #25139 (migrated to #26091) * [x] #25270 * [x] #25279 * [x] #25293 * [x] #25294 * [x] #25305 * [x] #26285 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
1190/0 Mathlib.lean,Mathlib/Algebra/Polynomial/Resultant/Basic.lean,Mathlib/Algebra/Polynomial/Resultant/MvPolynomial.lean,Mathlib/RingTheory/Polynomial/Discriminant.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71463
6 months ago
341-40177
341 days ago
0-19
19 seconds
27991 sinianluoye
author:sinianluoye
feat(Rat): add Rat.den_eq_of_add_den_eq_one and its dependent lemmas ```lean4 example {q r : ℚ} (h : (q + r).den = 1) : q.den = r.den := by ``` It is so simple, but I couldn't find it in current mathlib repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor 22/0 Mathlib/Data/Rat/Lemmas.lean 1 33 ['github-actions', 'kim-em', 'mathlib-bors', 'pechersky', 'sinianluoye', 'themathqueen'] pechersky
assignee:pechersky
191-71432
6 months ago
223-8626
223 days ago
74-56654
74 days
28215 5hv5hvnk
author:5hv5hvnk
feat: strong and Weak connectivity for Digraphs strong and weak connectivity in Digraphs --- Should resolve a part of issue #26771 Main additions in the PR: 1. Walks in Digraphs (Walk.lean) - Basic walk structure with start and end vertices - Support for walk operations: append, reverse, length - Support functions: getVert, copy, support 2. Walk Decompositions (WalkDecomp.lean) - takeUntil and dropUntil functions to split walks - rotate operation for loop walks - Theorems relating to walk decomposition properties 3. Subgraphs (subgraph.lean) - Subgraph structure for digraphs - Induced and spanning subgraph predicates - Lattice structure (sup, inf, top, bot) - Coercion to standalone digraphs 4. Paths (Paths.lean) - Trail, Path, Circuit, Cycle definitions - Path structure with no repeating vertices - Theorems relating different path types - Basic connectivity definitions (reachable, weakly/strongly connected) 5. Connectivity (Connected.lean) - Reachability relations and properties - Strong and weak connectivity definitions - Connected component types: - StronglyConnectedComponent - WeaklyConnectedComponent - ConnectedComponent - Component properties and equivalence relations --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor merge-conflict awaiting-author t-combinatorics 1266/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Connected.lean,Mathlib/Combinatorics/Digraph/Paths.lean,Mathlib/Combinatorics/Digraph/Subgraph.lean,Mathlib/Combinatorics/Digraph/Walk.lean,Mathlib/Combinatorics/Digraph/WalkDecomp.lean 6 4 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
191-71411
6 months ago
279-68993
279 days ago
12-41939
12 days
28970 Whysoserioushah
author:Whysoserioushah
feat(Algebra/Algebra/ReducedNorm): defines reduced norm and trace TODO : 1. add the theorem proving reduced charpoly is independent from the choice of AlgEquiv (blocked by this [discussion](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Algebra.2ETensorProduct.2Eassoc/with/536349758)) 2. prove reduced charpoly is "actually" in the polynomial ring of base field (blocked by this [discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.E2.9C.94.20Refactor.20Subfield)) therefore content about this topic is basically the best I could do for now :-( --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
66/0 Mathlib.lean,Mathlib/Algebra/Algebra/ReducedNorm.lean 2 19 ['Whysoserioushah', 'chrisflav', 'erdOne', 'eric-wieser', 'github-actions', 'kbuzzard', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
191-71359
6 months ago
235-62882
235 days ago
40-66926
40 days
29212 Whysoserioushah
author:Whysoserioushah
feat(Algebra/CrossProductAlgebra/Defs): define Cross Product Algebra PS: All to-dos listed in the file has been fully sorry-freed and will be (slowly) upstreamed by either me or Yaël Co-authored-by: Yaël Dillies Co-authored-by: Jujian Zhang --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
270/0 Mathlib.lean,Mathlib/RepresentationTheory/CrossProductAlgebra/Defs.lean,docs/references.bib 3 9 ['Whysoserioushah', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71348
6 months ago
265-12133
265 days ago
5-62087
5 days
29514 grunweg
author:grunweg
feat(CI): use more strict mode --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP CI 192/33 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ValidatePRTitle.lean,lakefile.lean,scripts/README.md,scripts/check_title_labels.lean 10 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71307
6 months ago
261-60882
261 days ago
0-1
1 second
29574 JarodAlper
author:JarodAlper
feat: regular local rings are domains We have added three new files in Mathlib/RingTheory/LocalRing * EmbeddingDimension.lean * LocalRingDimension.lean * RegularLocalRings.lean We have added two lemmas and an instance in Mathlib/RingTheory/LocalRing/RingHom/Basic.lean This work was done by Jarod Alper and Brian Nugent. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory new-contributor 910/3 Mathlib.lean,Mathlib/RingTheory/LocalRing/EmbeddingDimension.lean,Mathlib/RingTheory/LocalRing/LocalRingDimension.lean,Mathlib/RingTheory/LocalRing/RegularLocalRings.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,lake-manifest.json 6 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71300
6 months ago
258-72555
258 days ago
1-50449
1 day
28718 imbrem
author:imbrem
feat: class for chosen finite coproducts Added basic `ChosenFiniteCoproducts` class, and started porting some of the lemmas about `ChosenFiniteProducts` suitably translated --- This, combined with #20182 modified to use chosen finite coproducts and premonoidal categories (#21488), should be enough for me to formalize strong Elgot categories, and hence a lot of categorical iteration theory for my PhD thesis. Re-done from #21603 to deal with changes in #24399 and #24390 Eventually, if we really want to harmonize approaches, we could introduce an `AddMonoidalCategory` struct and do the analogous to #24399 and #24390 for additive monoidal structure, but that seems like a massive overcomplication for now. It would allow formalizing fun things like rig categories, though. - [ ] depends on: #30150 blocked-by-other-PR t-category-theory new-contributor merge-conflict awaiting-author 290/0 Mathlib.lean,Mathlib/CategoryTheory/ChosenFiniteCoproducts.lean 2 9 ['YaelDillies', 'github-actions', 'imbrem', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
191-71212
6 months ago
282-21366
282 days ago
0-24930
6 hours
30366 sinhp
author:sinhp
feat(CategoryTheory): The Preliminaries for Locally Cartesian Closed Categories See https://github.com/leanprover-community/mathlib4/pull/21525 This PR defines the basic preliminaries for defining locally cartesian closed categories (LCCCs). First, we develop a computable implementation of pullbacks, by introducing a new type-class `ChosenPullback`. The non-computable `HasPullbacksAlong` and `HasPullbacks` predicates yield instances of `ChosenPullback` using global choice, but interestingly in the category of types every morphism has chosen pullbacks. Also, cartesian monoidal categories, morphisms to the terminal object and the product projections have chosen pullbacks. We prove that `ChosenPullback` has good closure properties, e.g., isos have chosen pullbacks, and composition of morphisms with chosen pullbacks have chosen pullbacks. Separately, we prove that pull-push along a morphism with chosen pullbacks gives the (cartesian) binary product of that morphism, seen as an object of a slice category, and any other object of the same slice category. In fact, we also prove the stronger statement, namely that the pull-push composition `(Over.ChosenPullback.pullback Z.hom) ⋙ (Over.map Z.hom)` is naturally isomorphic to the right tensor product functor `_ × Y` in `Over X`. _This is going to be crucial in our mate-based approach to LCCCs_. Also, using the calculus of mates we define certain natural isomorphisms involving `Over.star` and `Over.pullback` which will be used in defining the right adjoint to the pullback functor in the development of LCCCs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 4865/526 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/Grp/Subobject.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/CharP/Frobenius.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean,Mathlib/Algebra/Homology/DerivedCategory/Linear.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomologicalFunctor.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/AlgebraicGeometry/Modules/Presheaf.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/IsUniquelyCodimOneFace.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Pairing.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nerve.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Calculus/IteratedDeriv/ConvergenceOnBall.lean,Mathlib/Analysis/Complex/OperatorNorm.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/Meromorphic/TrailingCoefficient.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Basic.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/CategoryTheory/Adjunction/Mates.lean,Mathlib/CategoryTheory/Bicategory/Strict/Pseudofunctor.lean,Mathlib/CategoryTheory/Category/ULift.lean,Mathlib/CategoryTheory/Closed/Cartesian.lean,Mathlib/CategoryTheory/Comma/StructuredArrow/Small.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/Discrete/StructuredArrow.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Filtered/Final.lean,Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean,Mathlib/CategoryTheory/Generator/Abelian.lean,Mathlib/CategoryTheory/Generator/Basic.lean,Mathlib/CategoryTheory/Generator/StrongGenerator.lean,Mathlib/CategoryTheory/GuitartExact/KanExtension.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Filtered.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Final/Connected.lean,Mathlib/CategoryTheory/Limits/Final/Type.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Preserves/Filtered.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Types/ColimitType.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Prelim.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/ClosedUnderIsomorphisms.lean,Mathlib/CategoryTheory/ObjectProperty/CompleteLattice.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsClosure.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsOfShape.lean,Mathlib/CategoryTheory/ObjectProperty/Small.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Shift/ShiftedHom.lean,Mathlib/CategoryTheory/Sites/Descent/IsPrestack.lean,Mathlib/CategoryTheory/Sites/Equivalence.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Sites/PreservesSheafification.lean,Mathlib/CategoryTheory/Sites/Whiskering.lean,Mathlib/Combinatorics/Enumerative/Bell.lean,Mathlib/Condensed/Discrete/Basic.lean,Mathlib/Condensed/Light/AB.lean,Mathlib/Condensed/Light/CartesianClosed.lean,Mathlib/Condensed/Light/Instances.lean,Mathlib/Condensed/Light/Module.lean,Mathlib/Data/Rel/Separated.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean 131 40 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody
191-71186
6 months ago
213-53350
213 days ago
3-54729
3 days
26765 KiringYJ
author:KiringYJ
feat(MeasureTheory/PiSystem): add π-λ theorem and SetLike instance Add two small features to `MeasureTheory/PiSystem`: 1. SetLike instance `instance : SetLike (DynkinSystem α) (Set α)` This lets us write `s ⊆ d` and `t ∈ d` for a DynkinSystem `d`, matching usual mathlib style. 2. `DynkinSystem.pi_lambda` lemma Classical π‑λ theorem: if a π‑system `s` is contained in a Dynkin system `d`, every set measurable for `σ(s)` is also in `d`. Currently, mathlib exposes this result only indirectly (e.g. via `generateFrom_eq`). Although logically equivalent, it is not obvious at first glance that those lemmas are the π‑λ theorem. The new lemma states the result in its familiar textbook form, so users can recognise and cite it immediately. Both pieces are under 10 lines, term‑mode only, and do not modify existing APIs. No breaking changes. No dependencies. awaiting-author t-measure-probability new-contributor 13/0 Mathlib/MeasureTheory/PiSystem.lean 1 14 ['EtienneC30', 'KiringYJ', 'dagurtomas', 'github-actions', 'ocfnash'] RemyDegenne
assignee:RemyDegenne
191-57608
6 months ago
191-57608
191 days ago
138-3922
138 days
29409 Julian
author:Julian
feat(Mathlib/Analysis): deriv_eq_self and deriv_exp_iff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-analysis 29/0 Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean 1 9 ['Julian', 'Paul-Lez', 'eric-wieser', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] j-loreaux
assignee:j-loreaux
190-71573
6 months ago
248-62980
248 days ago
15-76317
15 days
27306 xyzw12345
author:xyzw12345
feat: `lie_ring` tactic and `LieReduce` command This PR continues the work from #22196. Original PR: https://github.com/leanprover-community/mathlib4/pull/22196 t-meta merge-conflict 789/2 Mathlib.lean,Mathlib/Algebra/Lie/Derivation/AdjointAction.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LieAlgebra/Basic.lean,Mathlib/Tactic/LieAlgebra/LieRingNF.lean,Mathlib/Util/AtomM.lean,MathlibTest/lie_ring.lean,scripts/noshake.json 8 34 ['FLDutchmann', 'JovanGerb', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'xyzw12345'] JovanGerb
assignee:JovanGerb
190-885
6 months ago
193-84024
193 days ago
114-72392
114 days
27694 grunweg
author:grunweg
feat: Gram-Schmidt orthonormalisation preserves continuity of sections provided the bundle metric used in the process is continuous. From the path towards geodesics and the Levi-Civita connection. Co-authored-by: Patrick Massot [patrickmassot@free.fr](mailto:patrickmassot@free.fr) --- - [ ] depends on: #27024 - [x] depends on: #27021 Baby version of #27025. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry blocked-by-other-PR 390/11 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Geometry/Manifold/VectorBundle/GramSchmidtOrtho.lean,scripts/noshake.json 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
189-50297
6 months ago
303-62658
303 days ago
0-696
11 minutes
27025 grunweg
author:grunweg
feat: Gram-Schmidt procedure on smooth vector bundles yields smooth sections For the Gram-Schmidt process on a vector bundle, deduce that smoothness of the bundle metric implies smoothness of the resulting sections. From the path towards geodesics and the Levi-Civita connection. Co-authored-by: Patrick Massot --- A few sorries remain to prove the continuous case. - [x] depends on: #27021 - [x] depends on: #27023 - [ ] depends on: #27024 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry blocked-by-other-PR 927/11 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Geometry/Manifold/Elaborators.lean,Mathlib/Geometry/Manifold/Traces.lean,Mathlib/Geometry/Manifold/VectorBundle/GramSchmidtOrtho.lean,scripts/noshake.json 6 6 ['faenuccio', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
189-50293
6 months ago
322-7967
322 days ago
0-218
3 minutes
30637 strihanje01
author:strihanje01
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions add Lindstrom's theorem and its strengthening for equal intersections --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 209/0 Mathlib/Combinatorics/SetFamily/Lindstrom.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
188-79757
6 months ago
192-11516
192 days ago
31-61152
31 days
25902 pfaffelh
author:pfaffelh
feat: The finite product of semi-rings (in terms of measure theory) is a semi-ring. ~~Move results for rings (in terms of measure theory) to a separate file; was in Semiring.lean before.~~ For `∀ i ∈ s, IsSetSemiring (C i))`, the product `s.pi '' s.pi C` is a semiring. Prove two auxiliary lemmas in `Data.Set.Prod` needed on the way. --- *This PR continues the work from #22714.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/22714* t-measure-probability brownian large-import merge-conflict awaiting-author 260/14 Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/Pi.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetSemiring.lean 5 7 ['github-actions', 'mathlib4-merge-conflict-bot', 'sgouezel'] kex-y
assignee:kex-y
187-76752
6 months ago
252-85552
252 days ago
29-55524
29 days
31571 erdOne
author:erdOne
feat(RingTheory): existence of local algebra with given residue field --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-ring-theory 225/0 Mathlib.lean,Mathlib/RingTheory/LocalRing/SeparableResidueField.lean 2 7 ['chrisflav', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
187-51541
6 months ago
187-54998
187 days ago
9-73312
9 days
29517 pechersky
author:pechersky
feat(RingTheory/Torsion): torsion = union of roots of unity with additional API for Associates and rootsOfUnity sups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #29988 - [x] depends on: #29989 - [x] depends on: #29990 - [x] depends on: #29991 merge-conflict awaiting-author t-algebra
label:t-algebra$
149/8 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/RingTheory/RootsOfUnity/Basic.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/Torsion.lean 5 35 ['chrisflav', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] chrisflav
assignee:chrisflav
187-44365
6 months ago
207-52168
207 days ago
37-73610
37 days
24627 pechersky
author:pechersky
feat(Topology/Algebra/Valued): `IsLinearTopology 𝒪[K] K` and `𝒪[K] 𝒪[K]` as well as `IsLinearTopology ℤ_[p] ℤ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26829 merge-conflict awaiting-author t-topology 219/26 Mathlib.lean,Mathlib/NumberTheory/Padics/LinearTopology.lean,Mathlib/Topology/Algebra/Valued/LinearTopology.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean 5 55 ['ADedecker', 'erdOne', 'faenuccio', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'loefflerd', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] jcommelin
assignee:jcommelin
186-84487
6 months ago
192-13483
192 days ago
36-378
36 days
31948 ADedecker
author:ADedecker
feat: move `ContinuousSMul` to a finite extension with the module topology My motivation is the following: to define the topology on test functions (see #31806), we take the inductive limit in the category of *real* locally convex topological vector spaces (we don't want the result to depend on the base field!). But then, we need a way to get that complex-valued test functions are also a *complex* topological vector space, which we will obtain by combining this PR with [isModuleTopologyOfFiniteDimensional](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Algebra/Module/FiniteDimension.html#isModuleTopologyOfFiniteDimensional). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 109/57 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Module/ModuleTopology.lean 8 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
186-42754
6 months ago
unknown
0-0
0 seconds
24016 plp127
author:plp127
feat: fine uniformity Adds the fine uniformity, and proves some properties. --- - [ ] depends on: #24096 for showing the induced topology is equal on completely regular spaces [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 283/0 Mathlib.lean,Mathlib/Topology/UniformSpace/FineUniformity.lean,Mathlib/Topology/UniformSpace/Uniformizable.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
186-31876
6 months ago
408-40626
408 days ago
2-85308
2 days
30995 kckennylau
author:kckennylau
feat(RingTheory): replace ofLinearEquiv with limit For an `I`-adically complete `M` we define `limit : AdicCompletion I M ≃ₗ[R] M`. This replaces the existing `ofLinearEquiv : M ≃ₗ[R] AdicCompletion I M` which goes in the opposite direction, and should make #30989 and subsequent PR's smoother. It is intended to be used together with [AdicCompletion.mk](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/AdicCompletion/Basic.html#AdicCompletion.mk) : `AdicCompletion.AdicCauchySequence I M →ₗ[R] AdicCompletion I M`. We also introduce `adicExpansion (ϖ : R) (hϖ : ϖ ∈ I) : (ℕ → M) →ₗ[R] AdicCauchySequence I M`, which sends a sequence `a : ℕ → M` to the Cauchy sequence `∑ ϖ ^ i • a i`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 77/49 Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/RingHom.lean 3 8 ['erdOne', 'github-actions', 'jjdishere', 'kckennylau', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
186-14740
6 months ago
188-43825
188 days ago
13-8190
13 days
32094 grunweg
author:grunweg
feat(runLinter): allow only running certain linters This adds a script `run_linter`, which is a fork of batteries' `runLinter` with extra features: - rewrite as a CLI app, so --help messages etc. come for free - add a `--list` option, which prints the list of linters it was about to run, and exists - add `--select`, `--ignore` and `--only` options which ensure certain linters are always run, never resp. that only a certain list of linters are run. (`add` takes priority over `exclude` or `only`.) - add an `update_only_remove` flag which only runs linters mentioned in the `nolints` file: this only removes entries (by design), but is often much faster. - renamed to `run_linter`: actually, per the [zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Naming.20convention/near/450896930), this should be `run-linter` --- and one could as well use the opportunity to rename this to e.g. `env-linter`. Asked [here](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Configuring.2Fmodernizing.20runLinter). Intended use cases 1. Run `update_only_remove` when updating the nolints file. In fact, it is so fast that it could even run during regular CI, after the normal `lint` step... 2. Run the mathlib linters locally. The simpNF linters are slow enough (for a reason, but still) that doing so is currently annoying. On my notebook, they can easily take half an hour, during which my notebook is otherwise hardly usable. 3. You're developing a new linter and only want to run *that* one (as there was no change about the other ones). Probably, the nicest result would be this PR landing in batteries (perhaps in pieces) instead of here. --- I'm not happy about one detail: - many options take an `Array String`: how can I pass this to the executable? This is not obvious to me... - TODO: address the comment at https://github.com/leanprover-community/mathlib4/pull/14654#discussion_r1685824917 Continuation of #14654. Proof-of-concept; the real implementation should be in batteries/a separate repository. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter CI 154/0 lakefile.lean,scripts/run_linter.lean 2 1 ['github-actions'] nobody
185-85612
6 months ago
185-85678
185 days ago
185-85640
185 days
32095 grunweg
author:grunweg
chore: fix some explicitVarOfIff linter errors Needs a merge, and removing the linter changes... should be re-done and split out! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt WIP merge-conflict 320/146 Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/MeasureTheory/Measure/EverywherePos.lean,Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Monoid.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Clopen.lean,Mathlib/Topology/CompactOpen.lean,Mathlib/Topology/Compactness/LocallyCompact.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/DenseEmbedding.lean,Mathlib/Topology/Gluing.lean,Mathlib/Topology/Homeomorph.lean,Mathlib/Topology/IndicatorConstPointwise.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/Irreducible.lean,Mathlib/Topology/IsLocalHomeomorph.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/Maps/Basic.lean,Mathlib/Topology/MetricSpace/Isometry.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/Partial.lean,Mathlib/Topology/PartialHomeomorph.lean,Mathlib/Topology/PartitionOfUnity.lean,Mathlib/Topology/QuasiSeparated.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/TietzeExtension.lean,Mathlib/Topology/UniformSpace/Ascoli.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Completion.lean,Mathlib/Topology/UniformSpace/Equicontinuity.lean,Mathlib/Topology/UniformSpace/Matrix.lean,Mathlib/Topology/UniformSpace/Pi.lean,Mathlib/Topology/UnitInterval.lean,Mathlib/Topology/UrysohnsBounded.lean,Mathlib/Topology/UrysohnsLemma.lean,Mathlib/Topology/VectorBundle/Basic.lean,lakefile.lean,scripts/run_linter.lean 49 0 [] nobody
185-85520
6 months ago
185-85561
185 days ago
0-8
8 seconds
29899 eric-wieser
author:eric-wieser
chore: add `=Q` arguments to ring casting operations This also detects an `isDefeq` which is unifying across universes and types, which I remember rumors about being sometimes a bad idea. I'm a little worried that the `=Q` design here runs into DTT hell, but it works in the one place that is "Qq-clean" right now, so I'd be inclined to apply it to help us learn more about the pattern in future. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 36/23 Mathlib/Tactic/Ring/Basic.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
185-26571
6 months ago
unknown
0-0
0 seconds
31920 thorimur
author:thorimur
test: `env_linter` for unused decidable instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 128/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/UnusedAssumptionInType.lean 5 19 ['github-actions', 'leanprover-bot', 'leanprover-radar', 'mathlib4-merge-conflict-bot', 'thorimur'] nobody
185-23185
6 months ago
unknown
0-0
0 seconds
27258 JovanGerb
author:JovanGerb
feat: Imo2020 q6 Original PR: #23431 This PR adds a solution to IMO 2020 Q6. It follows the solution that I found when I was participating in the IMO. I used the statement formalization that was given by @jsm28. --- - [x] depends on: #27257 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO awaiting-author 335/0 Archive.lean,Archive/Imo/Imo2020Q6.lean 2 14 ['JovanGerb', 'dwrensha', 'github-actions', 'jsm28', 'mathlib4-dependent-issues-bot'] dwrensha
assignee:dwrensha
184-79077
6 months ago
184-79077
184 days ago
64-4663
64 days
26138 xroblot
author:xroblot
Development branch (2) --- WIP merge-conflict 331/70 Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Embeddings.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/TotallyRealComplex.lean,Mathlib/Sandbox.lean 11 16 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
184-68053
6 months ago
345-11887
345 days ago
0-12
12 seconds
29357 eric-wieser
author:eric-wieser
refactor: generalize IsSimpleRing to semirings --- - [ ] depends on: #26277 - [ ] depends on: #22954 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 26/9 Mathlib/Data/Setoid/Basic.lean,Mathlib/RingTheory/SimpleRing/Basic.lean,Mathlib/RingTheory/SimpleRing/Defs.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
184-67549
6 months ago
unknown
0-0
0 seconds
31729 thorimur
author:thorimur
chore: log on theorem type signature in unused instances in type linters Logs on the type signature in the unused instances in types linter, and tests this using `#guard_msgs (positions := true)`. --- - [ ] depends on: #31730 - [x] depends on: #31142 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR large-import 636/3 Mathlib.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/Lean/Environment.lean,Mathlib/Lean/Expr.lean,Mathlib/Lean/Expr/Basic.lean,Mathlib/Lean/Syntax.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/UnusedInstancesInType.lean,Mathlib/Util/DeclarationManipulation.lean,MathlibTest/UnusedInstancesInType.lean 12 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
184-52379
6 months ago
194-40561
194 days ago
0-697
11 minutes
32157 peabrainiac
author:peabrainiac
feat(Analysis/Calculus): Hadamard's lemma Add [Hadamard's lemma](https://en.wikipedia.org/wiki/Hadamard%27s_lemma) for functions from finite-dimensional normed spaces to Banach spaces. --- - [ ] depends on: #31141 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis blocked-by-other-PR 314/5 Mathlib.lean,Mathlib/Analysis/Calculus/Hadamard.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/ParametricIntervalIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean 5 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
184-42914
6 months ago
184-42915
184 days ago
0-1385
23 minutes
26436 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Mathlib/Data/Nat/Prime/Defs): fuel Nat.minFac This is a fueled version of docs#Nat.minFacAux that can now be checked by `decide`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data awaiting-author 53/48 Mathlib/Data/Nat/Prime/Defs.lean 1 3 ['digama0', 'github-actions', 'leanprover-community-bot-assistant'] nobody
184-10365
6 months ago
337-81553
337 days ago
0-60
1 minute
24514 b-mehta
author:b-mehta
chore(Int/GCD): use fuel in xgcd Modify the definition of xgcd to use fuel recursion, to allow it to be reduced in the kernel. As a consequence, this means the evaluation of field operations in ZMod p become provable by `rfl` and `decide`. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/opaque.20recursion.20definitions.20break.20mergeSort.20decidability --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data merge-conflict 44/22 Mathlib/Data/Int/GCD.lean 1 6 ['astrainfinita', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'nomeata', 'urkud'] nobody
184-895
6 months ago
335-40773
335 days ago
58-34020
58 days
30375 sinhp
author:sinhp
feat(CategoryTheory): Basics of Locally Cartesian Closed Categories Supersedes https://github.com/leanprover-community/mathlib4/pull/22321 This PR defines locally cartesian closed categories in terms of existence of the pushforward functors (right adjoint to the pullback functor) for all morphisms. We develop basic API and prove the following: 1. Existence of the pushforward functors is equivalent to cartesian closed slices. 2. Any locally cartesian closed category with a terminal object is cartesian closed. 3. The slices of a locally cartesian closed category are locally cartesian closed. --- - [ ] depends on: #31033 - [ ] depends on: #30373 - [ ] depends on: #31332 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory merge-conflict WIP blocked-by-other-PR 1085/0 Mathlib.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ChosenPullbacksAlong.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ExponentiableMorphism.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Sections.lean 5 9 ['Jlh18', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody
183-49377
6 months ago
232-72357
232 days ago
0-2073
34 minutes
32169 saodimao20
author:saodimao20
feat: add convolution_comp_add_right This PR adds a lemma `convolution_comp_translation_right` showing that convolution commutes with translation on the right operand. Specifically, it proves that for an additive commutative group $G$, the convolution of a function $f$ with a translated function $x \mapsto g(a + x)$ is equal to the convolution of $f$ and $g$ evaluated at $x + a$. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor awaiting-author 14/0 Mathlib/Analysis/Convolution.lean 1 3 ['github-actions', 'urkud'] nobody
183-13779
6 months ago
183-13779
183 days ago
0-82278
22 hours
28244 robin-carlier
author:robin-carlier
feat(CategoryTheory/Bicategory/NaturalTransformation): Icons We define icons (short for Identity Component Oplax Natural transformations) between lax functors in bicategories. Such transformations bundle an oplax natural transformation, along with the assertion that the source and target functor agree on objects, and the fact that the app-component of the underlying natural transformation is the `eqToHom` morphism along that equality. We define vertical composition of such natural transformations. Strict associativity and strict unitality of the composition of icons will be the content of a follow-up PR. In future work, icons will constitute the 2-cells of a strict bicategory structure on bicategories, with 1-cells (strictly unitary) pseudofunctors. This bicategory structure will define a category structure on strictly unitary pseudofunctors from `LocallyDiscrete (Fin n)` to a bicategory `C` (i.e "pseudo-composable arrows" in `C`), which will be part of the definition of the 2-nerve of `C`, which is a simplicial category that encodes higher compositions within a bicategory `C`. --- - [ ] depends on: #25825 - [ ] depends on: #28243 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory awaiting-CI large-import merge-conflict 816/33 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/EqToHom.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Icon.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Oplax.lean,Mathlib/CategoryTheory/Bicategory/Strict.lean,Mathlib/CategoryTheory/EqToHom.lean,scripts/noshake.json 8 4 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
182-69713
6 months ago
291-71626
291 days ago
0-1160
19 minutes
29933 smmercuri
author:smmercuri
chore: fix `def` naming isses in `Normed/Field/WithAbs.lean` --- - [x] depends on: #29932 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 33/23 Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Completion.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
182-60838
6 months ago
246-69241
246 days ago
1-17350
1 day
31350 grunweg
author:grunweg
feat: (unoriented) bordism groups We define the unoriented bordism group of a topological space and prove that it is an abelian group: we don't prove transitivity of bordisms yet, as that requires the collar neighbourhood theorem and gluing of smooth manifolds, which are both not in mathlib and a sizable piece of work. --- This PR is not ready for review yet; I'm merely opening this to track this branch' state better. In particular, this PR depends on several preliminary PRs: - [ ] depends on: #15906 for defining singular manifolds - [ ] depends on: #23040: define immersions and smooth embeddings: in finite dimensions, these are easy to describe; for mathlib, we will want a correct definition for e.g. Banach manifolds also. - [ ] depends on: #28793 is the first step for this - [ ] depends on: #31351 defines manifolds with smooth boundary: the main dependence are smooth embeddings (and some basic results about these), then the definition needs redoing. - depends on: #22874 for some constructions - defining unoriented bordisms, and proving some basic constructions about them: will be another PR This PR continues the work from #23138. merge-conflict WIP t-differential-geometry blocked-by-other-PR 1084/2 Mathlib.lean,Mathlib/Geometry/Manifold/Bordisms.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/HasSmoothBoundary.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
182-53544
6 months ago
204-7809
204 days ago
0-77
1 minute
32126 nielsvoss
author:nielsvoss
feat(Analysis/Normed/Operator): definition of singular values for linear maps This PR defines a generalization of singular values, the approximation numbers, for continuous linear maps between normed vector spaces. It proves basic lemmas about the approximation numbers and shows that for finite-dimensional vector spaces, the approximation numbers coincide with the standard definition of singular values. See the discussion on Zulip: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Singular.20Value.20Decomposition/with/558914024 Co-authored-by: Arnav Mehta Co-authored-by: Rawad Kansoh --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis new-contributor 331/0 Mathlib/Analysis/Normed/Operator/SingularValues.lean 1 2 ['github-actions', 'nielsvoss'] nobody
182-51320
6 months ago
unknown
0-0
0 seconds
26389 jjdishere
author:jjdishere
feat(RingTheory): Perfectoid Field This PR continues the work from #19972. Original PR: https://github.com/leanprover-community/mathlib4/pull/19972 t-algebra WIP t-topology t-analysis
label:t-algebra$
150/0 Mathlib/RingTheory/Perfectoid.lean 1 2 ['github-actions', 'jjdishere'] nobody
182-9203
6 months ago
339-30118
339 days ago
0-69
1 minute
32285 awainverse
author:awainverse
chore(ModelTheory/Bundled): Replace CategoryTheory.Bundled Replaces the use of CategoryTheory.Bundled L.Structure with a bespoke type for bundled L.Structures, L.StrucType. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic awaiting-author merge-conflict 95/55 Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Order.lean,Mathlib/ModelTheory/Satisfiability.lean 5 3 ['github-actions', 'jcommelin', 'mathlib-merge-conflicts'] nobody
179-79007
5 months ago
179-79007
179 days ago
0-66385
18 hours
28895 yury-harmonic
author:yury-harmonic
feat(NumberTheory): prove Zsigmondy's theorem --- - [x] depends on: #28879 - [x] depends on: #28825 - [x] depends on: #28833 - [x] depends on: #28888 - [x] depends on: #28830 - [x] depends on: #28765 - [x] depends on: #28886 - [x] depends on: #28934 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 1307/0 Mathlib.lean,Mathlib/NumberTheory/Zsigmondy.lean 2 8 ['dupuisf', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'yury-harmonic'] nobody
178-67141
5 months ago
unknown
0-0
0 seconds
31950 callesonne
author:callesonne
feat(CategoryTheory/Product/Basic): make `Hom` into a 1-field structure This should help unification. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 80/68 Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/CategoryTheory/Discrete/SumsProducts.lean,Mathlib/CategoryTheory/Functor/Currying.lean,Mathlib/CategoryTheory/Functor/CurryingThree.lean,Mathlib/CategoryTheory/Functor/Hom.lean,Mathlib/CategoryTheory/Groupoid.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean,Mathlib/CategoryTheory/Products/Associator.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/CategoryTheory/Products/Unitor.lean,Mathlib/CategoryTheory/Sums/Products.lean,Mathlib/CategoryTheory/Yoneda.lean 14 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
178-66276
5 months ago
188-71226
188 days ago
0-6
6 seconds
8224 Kha
author:Kha
chore: add `lean4checker` benchmark WIP merge-conflict 16/0 scripts/bench/temci-config.run.yml 1 4 ['Kha', 'grunweg', 'kim-em', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
178-52550
5 months ago
935-85735
935 days ago
0-7460
2 hours
22416 JLimperg
author:JLimperg
chore: fix benchmark script for precompilation The benchmarking script used to fail when precompilation was enabled anywhere in the dependency graph. --- Fix courtesy of @Kha. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 2/0 scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
178-51408
5 months ago
unknown
0-0
0 seconds
30966 gasparattila
author:gasparattila
refactor: disable `simp` in `measurability` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 5/3 Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean,Mathlib/Tactic/Measurability.lean 5 8 ['github-actions', 'grunweg', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
177-74022
5 months ago
unknown
0-0
0 seconds
29315 kbuzzard
author:kbuzzard
chore: raise priority of `IsTopologicalSemiring.toIsModuleTopology` Instances of the form `SMul A B -> SMul (F A) (F B)` can be problematic for several reasons, one of them being that if `A = B` is a ring and if `F A` is also ring then this can cause a diamond with `Algebra.id`. In mathlib we attempt to coerce typeclass inference away from such problems by raising the priority of `Algebra.id` to 1100; this hack (implemented in #13032) seems to work well, indeed it seems sensible to try this instance early because it should be quick to fail and is always the right idea when it doesn't (the change also made mathlib faster and made a proof better). By the same logic it seems safe to raise the priority of `IsTopologicalSemiring.toIsModuleTopology` by the same amount; in FLT there is a mathematically natural but mathlib-problematic instance `Algebra K L -> Algebra (𝔸 K) (𝔸 L)` and then another instance `Algebra K L -> IsModuleTopology (𝔸 K) (𝔸 L)` where `𝔸 K` is the adele ring of the number field `K`, and the change in this PR solves timeouts when `K = L`. Zulip: [#mathlib4 > product of modules over product of rings @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/product.20of.20modules.20over.20product.20of.20rings/near/532799613) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) There are other solutions to this problem -- I am certainly not claiming that the FLT project needs this PR to be merged! We can tinker with priorities locally in FLT for example. However when I noticed that `Algebra.id` had a raised priority in mathlib I realised that mathlib might be amenable to this further ~~hack~~change. awaiting-author t-topology 6/1 Mathlib/Topology/Algebra/Module/ModuleTopology.lean 1 9 ['github-actions', 'j-loreaux', 'kbuzzard', 'leanprover-bot', 'ocfnash'] ocfnash
assignee:ocfnash
176-77909
5 months ago
243-76273
243 days ago
25-3388
25 days
32474 mattrobball
author:mattrobball
perf(Module.LinearMap.Defs): deprioritize projections to parents for SemilinearMapClass Trying to figure out if a given type has a SemilinearMapClass instance when all we want is an AddHomClass or a MulActionSemiHomClass can be quite expensive since there are multiple ways to crawl the algebraic hierarchy to generate LinearMapClass instances. If these fail, then they fail slowly. We deprioritize the projections from SemilinearMapClass to AddHomClass and MulActionSemiHomClass to make this one of the last choices. --- This PR continues #23214 which was delegated by @j-loreaux but I let it slip. Will re-bench and see the effect. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/0 Mathlib/Algebra/Module/LinearMap/Defs.lean 1 1 ['github-actions'] nobody
175-76889
5 months ago
175-77289
175 days ago
175-77251
175 days
30525 515801431
author:515801431
feat(Mathlib/Combinatorics/Enumerative/Polya): Add Polya Counting This PR introduces basic definitions and results about colorings under permutation group actions. A coloring is defined as a function X → Y, and the permutation group Equiv.Perm X acts on colorings by precomposition: (g • c) x = c (g⁻¹ • x) This formalizes the natural action of relabeling the elements of X. Main definitions MulAction (Equiv.Perm X) (X → Y): The action of the permutation group on colorings via precomposition. coloringEquiv (c₁ c₂ : X → Y) : Prop: Two colorings are equivalent if they lie in the same orbit under this action, i.e. ∃ f : Equiv.Perm X, f • c₁ = c₂. Main results smul_eq_iff_mem_stabilizer: Characterizes when two group actions on the same coloring are equal, showing that g • c = f • c ↔ f⁻¹ * g ∈ stabilizer c. coloringEquiv_equivalence: Proves that coloringEquiv defines an equivalence relation on X → Y. orbit_size_eq_index: Reformulates the orbit–stabilizer theorem in the context of colorings: |orbit c| = |Perm X| / |stabilizer c| Motivation These results provide foundational infrastructure for studying Burnside’s lemma and Pólya’s enumeration theorem in Mathlib, where the enumeration of distinct colorings up to symmetry plays a central role. t-combinatorics new-contributor awaiting-author merge-conflict 113/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean 2 8 ['IvanRenison', 'alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot'] awainverse
assignee:awainverse
175-58918
5 months ago
184-16061
184 days ago
39-43570
39 days
31113 515801431
author:515801431
feat(Mathlib/Combinatorics/Enumerative/Polya.lean): Add additional theorem in `Polya.lean` --- - [ ] depends on: #30525 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor blocked-by-other-PR merge-conflict 302/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean 2 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
175-58794
5 months ago
184-81220
184 days ago
16-78251
16 days
24441 MrSumato
author:MrSumato
feat(Data/List): add Lyndon-Schutzenberger theorem on list commutativity Add Lyndon-Schutzenberger theorem on list commutativity. Included definition for List.repeatSelf that returns list repeated n times. --- This is my first mathlib PR, so any comments are highly appreciated. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data new-contributor 129/1 Mathlib.lean,Mathlib/Data/List/Commutativity.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Lemmas.lean 4 38 ['MrSumato', 'github-actions', 'grunweg', 'madvorak', 'mathlib4-merge-conflict-bot', 'plp127'] grunweg
assignee:grunweg
175-54396
5 months ago
357-80740
357 days ago
29-59355
29 days
28057 plp127
author:plp127
feat(SuccOrder): simp lemma to refold `Order.succ` and `Order.pred` Adds `SuccOrder.succ_eq_succ` and `PredOrder.pred_eq_pred` to refold `SuccOrder.succ` and `PredOrder.pred` into `Order.succ` and `Order.pred`. These lemmas are marked `@[simp]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-order merge-conflict 8/2 Mathlib/Order/SuccPred/Basic.lean 1 4 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] bryangingechen
assignee:bryangingechen
175-34024
5 months ago
252-49732
252 days ago
44-13238
44 days
31601 BoltonBailey
author:BoltonBailey
feat(Data/Nat/Choose): A new strictly positive binomial coefficient This is an experimental PR relating to replacing `Nat.choose` with a strictly positive function equivalently to `Nat.choose a (a + b)`. Currently this introduces a new function `Nat.binom`, but we could also modify `Nat.multinomial`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 226/1 Mathlib/Data/Nat/Choose/Binomial.lean,Mathlib/Data/Nat/Choose/Multinomial.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
175-12284
5 months ago
unknown
0-0
0 seconds
32473 mattrobball
author:mattrobball
chore(Kaehler.JacobiZariski): remove egregious local instance hack This code looks terrible and is no longer strictly necessary. Local timings give `lake build Mathlib/RingTheory/Kaehler/JacobiZariski.lean 39.77s user 1.07s system 263% cpu 15.482 total` after removal and `lake build Mathlib/RingTheory/Kaehler/JacobiZariski.lean 36.93s user 1.01s system 251% cpu 15.113 total` before the removal. So the preformance impact of removal is small. One could argue that keeping is a remainder that everything here needs to be seriously changed but the miminmal performance difference suggests that these local instances would be a red herring in that regard. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author merge-conflict 0/4 Mathlib/RingTheory/Kaehler/JacobiZariski.lean 1 14 ['chrisflav', 'erdOne', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'mattrobball'] nobody
174-78019
5 months ago
174-78019
174 days ago
1-301
1 day
27525 Hagb
author:Hagb
(WIP) feat(Tactic/Linter/Indentation): add a linter for general indentation --- todo: - [x] check whether some (direct or indirect) children of some kinds of parents are intended _strictly_ deeper than this parent. For example: ```lean example : Nat := Nat.add 1 -- should be strictly deeper than `Nat.add`? 2 ``` - [ ] check whether some (direct or indirect) children of some kinds of parents are intended exactly N spaces deeper than this parent. For example: ```lean example : True := trivial -- should be exact 2 spaces deeper than 0 space of `example` ``` - [ ] some special cases, such as `calc`. https://github.com/leanprover-community/mathlib4/blob/5ebccb65951c70539ba1c36e53e079ac28b3fd23/Mathlib/Geometry/Manifold/Riemannian/Basic.lean#L452-L454 - [ ] add test cases [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter large-import 1364/1 Mathlib/Init.lean,Mathlib/Tactic/Linter/Indentation.lean,Mathlib/Tactic/Linter/Indentation/Basic.lean,Mathlib/Tactic/Linter/Indentation/Defs.lean,Mathlib/Tactic/Linter/Indentation/Linters.lean,MathlibTest/IndentationLinter.lean,lakefile.lean 7 15 ['Hagb', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
174-33583
5 months ago
unknown
0-0
0 seconds
31147 daefigueroa
author:daefigueroa
feat(Dynamics): point transitive monoid actions and transitive points We define point transitivity for a monoid action on a topological space and define the set of transitive points. We add some basic lemmas and implications between topological transitivity and point transitivity. --- - [x] depends on: #28001 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor awaiting-author 114/6 Mathlib/Dynamics/Transitive.lean 1 6 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
172-79629
5 months ago
172-79629
172 days ago
18-38983
18 days
30711 kim-em
author:kim-em
experiment: which `omega` can not be replaced with `grind`? 1/0 lakefile.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
172-72702
5 months ago
unknown
0-0
0 seconds
30718 kim-em
author:kim-em
experiment: merge rewrites t-meta 1/0 lakefile.lean 1 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
172-72700
5 months ago
unknown
0-0
0 seconds
30720 kim-em
author:kim-em
experiment: merge with subsequent grind 1/0 lakefile.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
172-72700
5 months ago
unknown
0-0
0 seconds
25871 eric-wieser
author:eric-wieser
refactor: generalize rank lemmas to semirings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
18/8 Mathlib/LinearAlgebra/Dimension/Finite.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
172-27678
5 months ago
unknown
0-0
0 seconds
30119 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: WithTop/Bot.mapD To replace Option.elim; working towards #27918 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-order merge-conflict 32/4 Mathlib/Order/Hom/WithTopBot.lean,Mathlib/Order/WithBot.lean 2 5 ['JovanGerb', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
172-19807
5 months ago
228-7899
228 days ago
12-3204
12 days
32328 ADedecker
author:ADedecker
feat: template for distributions and their API --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-analysis merge-conflict 888/5 Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean 4 4 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
171-49941
5 months ago
unknown
0-0
0 seconds
23040 grunweg
author:grunweg
feat: define immersions and smooth embeddings in infinite dimensions Sadly, we cannot prove most nice things about them yet, as we don't have the inverse function theorem yet. TODO: prove the few things we can already say --- - [ ] depends on: #28796 - [x] depends on: #28853 - [x] depends on: #23175 (preliminaries) - [x] depends on: #23186 - [ ] depends on: another PR, about `MSplitAt` (to be filed) - and perhaps some prerequisites about products of complemented modules etc. - [x] depends on: #23219 (preliminaries about local diffeomorphisms) - [x] depends on: #8738 - in fact, #9273 is not a strict pre-requisite for this. It suffices to know "extended charts have invertible differentials", which [isInvertible_mfderiv_extChartAt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Geometry/Manifold/MFDeriv/Atlas.html#isInvertible_mfderiv_extChartAt) mostly proves. (There's nothing wrong with completing that PR, for all interior points.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 967/0 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/MSplits.lean 5 4 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
170-79786
5 months ago
unknown
0-0
0 seconds
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
170-53921
5 months ago
223-22774
223 days ago
0-81
1 minute
32706 CoolRmal
author:CoolRmal
feat: a set is Gdelta iff it is completely metrizable This PR proves that 1. A Gdelta subset of a completely metrizable space is completely metrizable. 2. We prove that under certain conditions we can always extends a continuous function on a set A to a Gdelta set. We then use this lemma to prove that if `A` is a completely metrizable subset in a metric space `M`, then `A` is Gdelta. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 29/0 Mathlib/Topology/Metrizable/CompletelyMetrizable.lean 1 1 ['github-actions'] nobody
170-44665
5 months ago
unknown
0-0
0 seconds
30847 joelriou
author:joelriou
feat(CategoryTheory/Presentable): the representation theorem If `C` is an essentially `w`-small category, then the category of `κ`-continuous functors `Cᵒᵖ ⥤ Type w` is locally `κ`-presentable, and any locally `κ`-presentable category is equivalent to such a category. In particular, we show that a locally `κ`-presentable category has limits. This is a draft... --- - [ ] depends on: #32423 - [ ] depends on: #32424 - [ ] depends on: #32034 - [ ] depends on: #31137 - [ ] depends on: #30817 - [x] depends on: #30795 - [ ] depends on: #30755 - [ ] depends on: #30731 - [ ] depends on: #30554 - [ ] depends on: #30533 - [ ] depends on: #30513 - [x] depends on: #30509 - [x] depends on: #30507 - [x] depends on: #30492 - [x] depends on: #30464 - [x] depends on: #30459 - [x] depends on: #30269 - [ ] depends on: #30247 - [ ] depends on: #30241 - [x] depends on: #30168 - [x] depends on: #30160 - [x] depends on: #29881 - [x] depends on: #29854 - [x] depends on: #29565 - [x] depends on: #29543 - [x] depends on: #29519 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory merge-conflict 2137/27 Mathlib.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Functor/KanExtension/Dense.lean,Mathlib/CategoryTheory/Generator/Basic.lean,Mathlib/CategoryTheory/Generator/Type.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Shapes/Multiequalizer.lean,Mathlib/CategoryTheory/Limits/Types/Limits.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/IsSmall.lean,Mathlib/CategoryTheory/ObjectProperty/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/ClosedUnderIsomorphisms.lean,Mathlib/CategoryTheory/ObjectProperty/ColimitsCardinalClosure.lean,Mathlib/CategoryTheory/ObjectProperty/ColimitsOfShape.lean,Mathlib/CategoryTheory/ObjectProperty/CompleteLattice.lean,Mathlib/CategoryTheory/ObjectProperty/Equivalence.lean,Mathlib/CategoryTheory/ObjectProperty/FunctorCategory/Limits.lean,Mathlib/CategoryTheory/ObjectProperty/FunctorCategory/Presheaf.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsOfShape.lean,Mathlib/CategoryTheory/ObjectProperty/Local.lean,Mathlib/CategoryTheory/ObjectProperty/Small.lean,Mathlib/CategoryTheory/Presentable/Adjunction.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/Continuous.lean,Mathlib/CategoryTheory/Presentable/Dense.lean,Mathlib/CategoryTheory/Presentable/EssentiallyLarge.lean,Mathlib/CategoryTheory/Presentable/Limits.lean,Mathlib/CategoryTheory/Presentable/LocallyPresentable.lean,Mathlib/CategoryTheory/Presentable/OrthogonalReflection.lean,Mathlib/CategoryTheory/Presentable/Presheaf.lean,Mathlib/CategoryTheory/Presentable/Representation.lean,Mathlib/CategoryTheory/Presentable/StrongGenerator.lean,Mathlib/CategoryTheory/Presentable/Type.lean,Mathlib/CategoryTheory/Yoneda.lean 35 7 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
170-6461
5 months ago
218-8995
218 days ago
0-1
1 second
30817 joelriou
author:joelriou
feat(CategoryTheory): `κ`-continuous presheaves Given categories `C`, `D` and a regular cardinal `κ : Cardinal.{w}`, we define `isCardinalContinuous C D κ : ObjectProperty (C ⥤ D)` as the property of functors which preserves limits indexed by categories `J` such that `HasCardinalLT (Arrow J) κ`. When `C : Type w` is a small category, we show that `κ`-continuous functors `Cᵒᵖ ⥤ Type w` are exactly the objects that are local with respect to a suitable `w`-small family of morphisms. DRAFT --- - [ ] depends on: #32725 - [x] depends on: #32423 - [x] depends on: #32424 - [x] depends on: #30168 - [x] depends on: #30160 - [x] depends on: #29881 - [x] depends on: #29854 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory blocked-by-other-PR merge-conflict 292/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/Limits.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/IsSmall.lean,Mathlib/CategoryTheory/ObjectProperty/FunctorCategory/Presheaf.lean,Mathlib/CategoryTheory/ObjectProperty/Local.lean,Mathlib/CategoryTheory/Presentable/Continuous.lean 7 10 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
169-85159
5 months ago
219-11422
219 days ago
0-1
1 second
6633 adomani
author:adomani
feat(..Polynomial..): `MvPolynomial`s have no zero divisors This PR continues #6627, placing the `NoZeroDivisors` instance on `MvPolynomial`s and removing auxiliary intermediate results that are no longer needed. Affected files: ``` Data/MvPolynomial/Basic.lean Data/Polynomial/RingDivision.lean RingTheory/Polynomial/Basic.lean ``` --- - [x] depends on: #6227 for the `NoZeroDivisors` instance on `AddMonoidAlgebra`s [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
143/57 Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Data/MvPolynomial/Basic.lean,Mathlib/Data/Polynomial/RingDivision.lean,Mathlib/RingTheory/Polynomial/Basic.lean 4 6 ['SnirBroshi', 'YaelDillies', 'adomani', 'eric-wieser'] nobody
169-73556
5 months ago
1016-57898
1016 days ago
0-19485
5 hours
28865 grunweg
author:grunweg
feat: a map is smooth iff its post-composition with an immersion is The continuous case is mostly solved --- except for one detail where I'm not even sure if this is true. Maybe!, I need to require continuity, at least in general. (Perhaps not for interior points... we'll see!) A future PR will use this to golf the results in `Icc/Instances.lean`. --- - [x] depends on: #28793 - [ ] depends on: #28796 - [x] depends on: #28853 (for simplicity) - [ ] depends on: #28905 history bifurcates here: merge that PR first, then rebase this one [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 1026/7 Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Topology/PartialHomeomorph.lean,docs/references.bib,temp_.sh 12 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac'] nobody
169-40646
5 months ago
278-66092
278 days ago
0-11
11 seconds
26950 alreadydone
author:alreadydone
Primitives of holomorphic functions and path integral --- - [ ] depends on: #31925 - [x] depends on: #24983 - [x] depends on: #22771 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict t-topology t-analysis blocked-by-other-PR 1288/361 Mathlib.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/Analysis/Complex/Primitive.lean,Mathlib/CategoryTheory/Groupoid.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/Covering.lean,Mathlib/Topology/EtaleSpace.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Homotopy/HomotopyGroup.lean,Mathlib/Topology/Homotopy/Lifting.lean,Mathlib/Topology/Homotopy/Product.lean,Mathlib/Topology/IsLocalHomeomorph.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean 21 3 ['alreadydone', 'grunweg', 'mathlib4-dependent-issues-bot'] nobody
169-2937
5 months ago
unknown
0-0
0 seconds
32827 erdOne
author:erdOne
perf: `@[simp high]` on `*Hom.map_add` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
10/0 Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Ring/Hom/Defs.lean 4 4 ['WenrongZou', 'erdOne', 'github-actions', 'leanprover-radar'] nobody
168-28234
5 months ago
unknown
0-0
0 seconds
31987 saodimao20
author:saodimao20
feat: add monotonicity and relation lemmas for mgf and cgf Add two lemmas about moment-generating and cumulant-generating functions: - `mgf_mono_in_t_of_nonneg`: For nonnegative random variables, the mgf is monotone in the parameter `t` - `cgf_zero_of_mgf_one`: The cgf equals zero iff the mgf equals one These lemmas are useful for studying properties of mgf and cgf in probability theory. Contributed by sequential-intelligence-lab(SIL), University of Virginia --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor awaiting-author 21/0 Mathlib/Probability/Moments/Basic.lean 1 5 ['DavidLedvinka', 'github-actions'] RemyDegenne
assignee:RemyDegenne
166-71735
5 months ago
166-71735
166 days ago
21-31799
21 days
32211 ADedecker
author:ADedecker
feat: inclusion from `ContDiffMapSupportedIn` to `TestFunction` is a topological embedding --- - [ ] depends on: #32210 - [x] depends on: #31806 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis blocked-by-other-PR merge-conflict 136/2 Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean 2 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
165-53662
5 months ago
182-73502
182 days ago
0-2371
39 minutes
32602 adamtopaz
author:adamtopaz
feat: Refactor graph Work in progress --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 1312/0 RefactorGraph/DAG.lean,RefactorGraph/Main.lean,RefactorGraph/Test.lean,lakefile.lean 4 1 ['github-actions'] nobody
165-47783
5 months ago
172-56976
172 days ago
0-1
1 second
26912 pechersky
author:pechersky
chore(Algebra/Ring/Subring): simp tag `Subring.smul_def` s-multiplying by a subtype is easiest to manipulate when both terms are in the ambient type. Many places that had to use the _def lemma for a rewrite, or to include it in a simp set, no longer have to. Ported from #25308 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) I found this being not-simp frustrating when talking about submodules over a valuation subring. merge-conflict t-algebra
label:t-algebra$
67/66 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Exact.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Ring/Periodic.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean,Mathlib/RingTheory/OreLocalization/Basic.lean 25 26 ['artie2000', 'eric-wieser', 'github-actions', 'j-loreaux', 'kckennylau', 'leanprover-bot', 'leanprover-radar', 'linesthatinterlace', 'mathlib4-merge-conflict-bot', 'pechersky'] joelriou
assignee:joelriou
165-44660
5 months ago
186-80609
186 days ago
63-23787
63 days
32737 j-loreaux
author:j-loreaux
refactor: rename `MulAction` to `MonoidAction` Given that we now have [SemigroupAction](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Group/Action/Defs.html#SemigroupAction) we are in the unfortunate scenario that the name which seems to have less structure actually has *more* structure. This PR: 1. renames `MulAction` to `MonoidAction` to reflect this additional structure, as well as declarations referencing `MulAction` in their names. `Prop`-valued mixins in the `MulAction` namespace are also renamed (e.g., `MulAction.{IsMinimal,IsTopologicallyTransitive}` → `MonoidAction.{IsMinimal,IsTopologicallyTransitive`). 2. The additive version are also renamed (`AddAction` → `AddMonoidAction`) and the corresponding `Prop`-valued mixins. 3. does *not* rename modules with `MulAction` in the name 4. does *not* rename `DistribMulAction`, `SubMulAction`, `MulActionWithZero`, etc. If these need to happen, that can occur at a later time. 5. does *not* rename `SemigroupAction` to `MulAction`. Even if this rename is desired, because of the prevalence of `MulAction` in Mathlib, I think we should not conduct a move of this magnitude all at once. If we want to rename this to `MulAction`, we should wait for the 6 month embargo period during which time that name is deprecated, to give everyone downstream the opportunity to switch instead of silently breaking their builds. Of course, another potential name is `MulOneAction`, but I don't think that's too helpful. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 3623/1862 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Pi.lean,Mathlib/Algebra/BigOperators/Group/Finset/Preimage.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Action.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/Field/Action/ConjAct.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/GradedMulAction.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/End.lean,Mathlib/Algebra/Group/Action/Equidecomp.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Group/Action/Opposite.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Pi.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Action/Pointwise/Set/Finite.lean,Mathlib/Algebra/Group/Action/Pretransitive.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Group/Action/Sigma.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/Group/Action/TransferInstance.lean,Mathlib/Algebra/Group/Action/TypeTags.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Equiv/Finite.lean,Mathlib/Algebra/Group/Nat/Range.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Density.lean,Mathlib/Algebra/Group/Pointwise/Finset/Scalar.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Card.lean,Mathlib/Algebra/Group/Pointwise/Set/Finite.lean,Mathlib/Algebra/Group/Pointwise/Set/Lattice.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Group/Shrink.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/TransferInstance.lean,Mathlib/Algebra/Group/TypeTags/Finite.lean,Mathlib/Algebra/GroupWithZero/Action/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/ConjAct.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/End.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/Algebra/GroupWithZero/Action/Opposite.lean,Mathlib/Algebra/GroupWithZero/Action/Pi.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Finset.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Set.lean,Mathlib/Algebra/GroupWithZero/Action/Prod.lean,Mathlib/Algebra/GroupWithZero/Action/TransferInstance.lean,Mathlib/Algebra/GroupWithZero/Action/Units.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/GroupWithZero/Pointwise/Finset.lean,Mathlib/Algebra/GroupWithZero/Pointwise/Set/Basic.lean,Mathlib/Algebra/GroupWithZero/Pointwise/Set/Card.lean,Mathlib/Algebra/GroupWithZero/Subgroup.lean,Mathlib/Algebra/GroupWithZero/Submonoid/Pointwise.lean,Mathlib/Algebra/GroupWithZero/TransferInstance.lean,Mathlib/Algebra/GroupWithZero/Units/Lemmas.lean,Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/PUnit.lean,Mathlib/Algebra/Module/PointwisePi.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/Invariant.lean,Mathlib/Algebra/Module/Submodule/LinearMap.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Module/ULift.lean,Mathlib/Algebra/Order/Group/Action.lean,Mathlib/Algebra/Order/Group/Action/End.lean 349 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
165-6022
5 months ago
166-10937
166 days ago
2-52776
2 days
32717 adomani
author:adomani
perf: small speed up of the flexible linter This just rearranges an array accumulation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter merge-conflict 7/8 Mathlib/Tactic/Linter/FlexibleLinter.lean 1 4 ['adomani', 'github-actions', 'leanprover-radar', 'mathlib4-merge-conflict-bot'] nobody
164-24885
5 months ago
unknown
0-0
0 seconds
25141 eric-wieser
author:eric-wieser
feat: basis for multilinear maps This attempts to tease an intermediate result out of #11155, which lets us show that multilinear maps are free even if their codomain is not finite. I guess this continues from https://github.com/leanprover-community/mathlib3/pull/10504 and https://github.com/leanprover-community/mathlib3/pull/14199. --- - [ ] depends on: #11155 - [ ] depends on: #25142 - [ ] depends on: #25169 - [ ] depends on: #25166 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
507/45 Mathlib.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/DFinsupp/PiTensorProduct.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/DirectSum/PiTensorProduct.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basis.lean,Mathlib/LinearAlgebra/Multilinear/DFinsupp.lean,Mathlib/LinearAlgebra/Multilinear/DirectSum.lean,Mathlib/LinearAlgebra/Multilinear/FiniteDimensional.lean,Mathlib/LinearAlgebra/Multilinear/Pi.lean 11 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
163-85785
5 months ago
unknown
0-0
0 seconds
29274 Jlh18
author:Jlh18
feat(CategoryTheory): HasLimits instance on Grpd Use the free-forgetful adjunction to show that `Grpd` has all limits in `CategoryTheory.Category.Grpd.Limit`, as a reflective subcategory of `Cat`. - [ ] depends on: #29250[Renamings in Grpd file] - [ ] depends on: #29278[Quotient of a groupoid is a groupoid] - [ ] depends on: #29279[Free forgetful adjunction] - [ ] depends on: #29283 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed blocked-by-other-PR t-category-theory merge-conflict 243/65 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoidOfCategory.lean,Mathlib/CategoryTheory/Groupoid/Grpd.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Core.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Free.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Limit.lean,Mathlib/CategoryTheory/Quotient.lean 9 6 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
163-56797
5 months ago
195-76700
195 days ago
0-8803
2 hours
29283 Jlh18
author:Jlh18
feat(CategoryTheory): define forgetful-core adjunction between Cat and Grpd * Define `CategoryTheory.Core.functor`: the functor `Cat ⥤ Grpd` that on objects takes the core of a category * Define `CategoryTheory.Core.adjunction`: the adjunction with the forgetful functor `Grpd.forgetToCat` on the left, and the core functor `Core.functor` on the right. * Hence provide an instance that `Grpd.forgetToCat` is coreflective. --- - [x] depends on: #29284 [Extra lemmas in CategoryTheory.Core] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-category-theory awaiting-author merge-conflict 209/64 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoidOfCategory.lean,Mathlib/CategoryTheory/Groupoid/Grpd.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Core.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Free.lean 7 25 ['Jlh18', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
163-56796
5 months ago
170-55423
170 days ago
13-74712
13 days
33015 thorimur
author:thorimur
share: stress test plugins via pluginizing Mathlib.Init This PR is only created for conveniently sharing this branch via `gh` for the purpose of experimenting with plugins. There's no plan to make Mathlib.Init a plugin any time soon. :) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 999/1080 Mathlib.lean,Mathlib/Algebra/Expr.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Note.lean,Mathlib/CategoryTheory/Category/Init.lean,Mathlib/CategoryTheory/ConcreteCategory/Bundled.lean,Mathlib/Combinatorics/Matroid/Init.lean,Mathlib/Combinatorics/SimpleGraph/Init.lean,Mathlib/Control/Combinators.lean,Mathlib/Control/ULift.lean,Mathlib/Data/Array/Defs.lean,Mathlib/Data/Array/Extract.lean,Mathlib/Data/Finset/Attr.lean,Mathlib/Data/Int/DivMod.lean,Mathlib/Data/Int/Notation.lean,Mathlib/Data/List/Monad.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Nat/Notation.lean,Mathlib/Data/Nat/NthRoot/Defs.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/String/Defs.lean,Mathlib/Data/Sym/Sym2/Init.lean,Mathlib/Data/UInt.lean,Mathlib/Deprecated/Aliases.lean,Mathlib/Deprecated/Sort.lean,Mathlib/Lean/ContextInfo.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/Lean/Elab/Tactic/Meta.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Lean/EnvExtension.lean,Mathlib/Lean/Environment.lean,Mathlib/Lean/Exception.lean,Mathlib/Lean/Expr/Basic.lean,Mathlib/Lean/Expr/Rat.lean,Mathlib/Lean/GoalsLocation.lean,Mathlib/Lean/Json.lean,Mathlib/Lean/LinterCopies.lean,Mathlib/Lean/LinterCopiesTest.lean,Mathlib/Lean/LocalContext.lean,Mathlib/Lean/Meta.lean,Mathlib/Lean/Meta/Basic.lean,Mathlib/Lean/Meta/DiscrTree.lean,Mathlib/Lean/Meta/KAbstractPositions.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/Lean/Meta/Simp.lean,Mathlib/Lean/Meta/Tactic/Rewrite.lean,Mathlib/Lean/Name.lean,Mathlib/Lean/PrettyPrinter/Delaborator.lean,Mathlib/Lean/Thunk.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/OpClass.lean,Mathlib/Tactic.lean,Mathlib/Tactic/AdaptationNote.lean,Mathlib/Tactic/ApplyCongr.lean,Mathlib/Tactic/ApplyWith.lean,Mathlib/Tactic/ArithMult/Init.lean,Mathlib/Tactic/Attr/Register.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/Bound/Init.lean,Mathlib/Tactic/CC/Lemmas.lean,Mathlib/Tactic/Cases.lean,Mathlib/Tactic/CasesM.lean,Mathlib/Tactic/CategoryTheory/CategoryStar.lean,Mathlib/Tactic/CategoryTheory/Coherence/Datatypes.lean,Mathlib/Tactic/Change.lean,Mathlib/Tactic/Check.lean,Mathlib/Tactic/Clean.lean,Mathlib/Tactic/ClearExcept.lean,Mathlib/Tactic/ClearExclamation.lean,Mathlib/Tactic/Clear_.lean,Mathlib/Tactic/Coe.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Constructor.lean,Mathlib/Tactic/Continuity/Init.lean,Mathlib/Tactic/Conv.lean,Mathlib/Tactic/Core.lean,Mathlib/Tactic/DepRewrite.lean,Mathlib/Tactic/Eqns.lean,Mathlib/Tactic/ErwQuestion.lean,Mathlib/Tactic/Eval.lean,Mathlib/Tactic/ExistsI.lean,Mathlib/Tactic/Explode/Datatypes.lean,Mathlib/Tactic/ExtendDoc.lean,Mathlib/Tactic/FailIfNoProgress.lean,Mathlib/Tactic/FastInstance.lean,Mathlib/Tactic/FieldSimp/Attr.lean,Mathlib/Tactic/Find.lean,Mathlib/Tactic/FindSyntax.lean,Mathlib/Tactic/Finiteness/Attr.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Mor.lean,Mathlib/Tactic/FunProp/ToBatteries.lean,Mathlib/Tactic/GCongr/ForwardAttr.lean,Mathlib/Tactic/Generalize.lean,Mathlib/Tactic/GuardGoalNums.lean,Mathlib/Tactic/GuardHypNums.lean,Mathlib/Tactic/Have.lean,Mathlib/Tactic/HaveI.lean 211 0 [] nobody
163-51650
5 months ago
unknown
0-0
0 seconds
21447 erdOne
author:erdOne
feat(AlgebraicGeometry): the split algebraic torus --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 419/0 Mathlib.lean,Mathlib/AlgebraicGeometry/Torus.lean 2 6 ['erdOne', 'github-actions', 'jcommelin', 'joelriou', 'mathlib4-merge-conflict-bot'] nobody
163-11321
5 months ago
476-49891
476 days ago
2-69252
2 days
32938 0xTerencePrime
author:0xTerencePrime
feat(Order/LocallyFinite): prove DenselyOrdered and LocallyFiniteOrder are incompatible ## Summary This PR proves that a nontrivial densely ordered linear order cannot be locally finite. ## Main results * `not_locallyFiniteOrder`: A densely ordered locally finite linear order must be subsingleton. * `not_locallyFiniteOrder_of_nontrivial`: The main theorem - incompatibility of the two properties. Note: This implementation imports `Mathlib.Order.Interval.Set.Infinite` to reuse the existing `Set.Icc_infinite` theorem, ensuring standard library consistency. ## Mathematical content The key insight is that in a densely ordered type, we can always find a new element between any two distinct elements. This means any nontrivial interval contains infinitely many elements. However, `LocallyFiniteOrder` requires intervals to be finite. This contradiction implies that such a type cannot exist (unless it is trivial). ## Motivation This resolves a TODO mentioned in #7987 (Data/Finset/LocallyFinite entry). ## Verification - [x] `lake build Mathlib.Order.LocallyFinite.Basic` passes - [x] `lake exe runLinter Mathlib.Order.LocallyFinite.Basic` passes t-order new-contributor awaiting-author 28/0 Mathlib/Order/Interval/Finset/Basic.lean 1 10 ['0xTerencePrime', 'CoolRmal', 'github-actions', 'jcommelin', 'plp127'] nobody
162-8737
5 months ago
162-8777
162 days ago
3-22290
3 days
33077 YaelDillies
author:YaelDillies
feat(Data/Rel): balls Define `SetRel.ball` and use it in place of `UniformSpace.ball`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-data 38/3 Mathlib/Data/Rel.lean,Mathlib/Topology/UniformSpace/Defs.lean 2 1 ['github-actions'] nobody
162-722
5 months ago
162-779
162 days ago
0-9
9 seconds
31226 erdOne
author:erdOne
chore(RingTheory): add `@[ext]` to `Ideal.Quotient.algHom_ext` See [`Ideal.Quotient.ringHom_ext`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=Ideal.Quotient.ringHom_ext#doc) which also has @[ext 1100]. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-ring-theory easy merge-conflict 3/2 Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean 2 7 ['erdOne', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] nobody
161-76799
5 months ago
204-62500
204 days ago
3-12761
3 days
21495 alreadydone
author:alreadydone
experiment: reducible HasQuotient.quotient' --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 2/0 Mathlib/Algebra/Quotient.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
161-62118
5 months ago
477-84948
477 days ago
0-200
3 minutes
32698 farruhx
author:farruhx
feat(List): add aesop / simp annotations to selected lemmas for improved automation This PR adds `@[aesop safe]` and `@[simp]` annotations to a set of List lemmas whose proofs are routine and benefit from standardized automation. No statements or definitions are changed; only proof annotations are added. The lemmas updated in this PR are: * `or_exists_of_exists_mem_cons` * `append_subset_of_subset_of_subset` * `map_subset_iff` * `append_eq_has_append` * `append_right_injective` * `append_left_injective` * `reverse_surjective` * `reverse_bijective` * `mem_getLast?_append_of_mem_getLast?` * `mem_dropLast_of_mem_of_ne_getLast` * `idxOf_eq_length_iff` * `idxOf_append_of_mem` * `length_eraseP_add_one` The goal is to make these commonly used lemmas easier for `aesop`-based automation to resolve, while avoiding any interference with simp-normal-form lemmas or canonical rewrite rules. There are no API changes and no new theorems—only improved automation behavior. t-data new-contributor awaiting-author 18/1 Mathlib/Data/List/Basic.lean 1 8 ['artie2000', 'euprunin', 'farruhx', 'github-actions'] pechersky
assignee:pechersky
161-43506
5 months ago
161-43506
161 days ago
7-31364
7 days
29203 Hagb
author:Hagb
feat(RingTheory/MvPolynomial/Groebner): add Gröbner basis This PR adds some definitions and theorems of Gröbner basis theory. Definitions: - `MonomialOrder.IsRemainder` - `MonomialOrder.IsGroebnerBasis` Main theorems: * `MonomialOrder.remainder_eq_zero_iff_mem_ideal_of_isGroebnerBasis`: Given a remainder of a polynomial on division by a Gröbner basis of an ideal, the remainder is 0 if and only if the polynomial is in the ideal. * `MonomialOrder.isGroebnerBasis_iff_subset_ideal_and_isRemainder_zero`: A finite set of polynomials is a Gröbner basis of an ideal if and only if it is a subset of this ideal and 0 is a remainder of each member of this ideal on division by this finite set. * `MonomialOrder.existsUnique_isRemainder_of_isGroebnerBasis`: Remainder of any polynomial on division by a Gröbner basis exists and is unique. * `MonomialOrder.ideal_eq_span_of_isGroebnerBasis`: Gröbner basis of any ideal spans the ideal. * `MonomialOrder.isGroebnerBasis_iff_isRemainder_sPolynomial_zero` (Buchberger Criterion): a basis of an ideal is a Gröbner basis of it if and only if 0 is a remainder of echo sPolynomial between two polynomials on the basis. The previous `Mathlib/RingTheory/MvPolynomial/Groebner.lean` is moved to `Mathlib/RingTheory/MvPolynomial/Groebner/Division.lean`, and used by `Mathlib/RingTheory/MvPolynomial/Groebner/Remainder.lean` for the proof of remainder's existence. The PR is upstreamized from https://github.com/WuProver/groebner_proj. Co-authored-by: Hao Shen [3118181069@qq.com](mailto:3118181069@qq.com) --- CC @tsuki8 TODO / WIP: - [x] clean up some proofs - [x] split lemmas - [x] squeeze Non-terminal `simp`s - [x] add comments to explain the proof of Buchberger Criterion. - [x] refactor something with `WithBot (σ →₀ ℕ)` variant of `MonomialOrder.degree` (`MonomialOrder.withBotDegree`, #34759). - [x] refactor to use namespaces `MonomialOrder.{IsGroebnerBasis,IsRemainder}` instead of `*_of_{isGroebnerBasis,isRemainder}` in theorem names. - [ ] reduced Groebner Basis (done, not yet submitted) - [x] refactor to avoid too many `IsUnit` or `nonZeroDivisors` - [x] split `IsRemainder` and `IsGroebnerBasis` - [ ] embedding of monomial order (done, not yet submitted), and properties about it and Groebner basis. - [ ] some theorems can be generalized to avoid requiring `IsUnit` Dependencies: - [x] depends on: #26039 - [ ] depends on: #34759 S-polynomial and other lemmas in other files are split from this PR, leaving only changes of `Mathlib/RingTheory/MvPolynomial/Groebner{.lean,/*.lean}` in this PR. The following are PRs split from this PR. - [x] depends on: #32336 - [x] depends on: #32344 - [x] depends on: #32780 - [x] depends on: #32787 - [x] depends on: #32788 - [x] depends on: #32801 - [x] depends on: #32876 - [x] depends on: #32877 - [ ] depends on: #34873 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import blocked-by-other-PR WIP merge-conflict awaiting-author 1649/220 Mathlib.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Combinatorics/Matroid/Closure.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Logic/Basic.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/Groebner/Division.lean,Mathlib/RingTheory/MvPolynomial/Groebner/Groebner.lean,Mathlib/RingTheory/MvPolynomial/Groebner/Remainder.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,docs/references.bib 5 21 ['Hagb', 'SnirBroshi', 'erdOne', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] alreadydone and erdOne
assignee:alreadydone assignee:erdOne
161-33756
5 months ago
161-33806
161 days ago
3-68616
3 days
27817 zhuyizheng
author:zhuyizheng
feat: add IMO2025P1 Add a solution to IMO2025P1, the original problem statement from https://github.com/jsm28/IMOLean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO awaiting-author new-contributor merge-conflict 1310/0 Archive.lean,Archive/Imo/Imo2025Q1.lean 2 9 ['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot', 'zhuyizheng'] dwrensha
assignee:dwrensha
160-75703
5 months ago
220-40271
220 days ago
59-36769
59 days
33157 wwylele
author:wwylele
feat(Combinatorics): partitions and pentagonal numbers --- - [ ] depends on: #33143 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 506/1 Mathlib.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/Pentagonal.lean,Mathlib/RingTheory/PowerSeries/Pentagonal.lean,Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean,Mathlib/Topology/Algebra/InfiniteSum/Ring.lean,docs/1000.yaml 8 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
159-75193
5 months ago
unknown
0-0
0 seconds
33218 Blackfeather007
author:Blackfeather007
feat(Algebra): Define the associated graded ring to filtered ring Define the associated graded ring to a filtered ring. --- - [ ] depends on: #33217 migrated from https://github.com/leanprover-community/mathlib4/pull/26858 t-ring-theory new-contributor blocked-by-other-PR 450/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-21968
5 months ago
158-27253
158 days ago
0-132
2 minutes
33219 Blackfeather007
author:Blackfeather007
feat(Algebra): Define associated graded algebra Define the associated graded algebra of a filtered algebra, constructed from a special case of associated graded ring. --- - [ ] depends on: #33218 migrated from #26859 t-ring-theory new-contributor blocked-by-other-PR 563/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-21860
5 months ago
158-27027
158 days ago
0-133
2 minutes
33220 Blackfeather007
author:Blackfeather007
feat(Algebra): Define associated graded module Define the associated graded module to a filtered module. --- - [ ] depends on: #33218 migrated from #26860 t-ring-theory new-contributor blocked-by-other-PR 669/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-21776
5 months ago
158-26839
158 days ago
0-137
2 minutes
33227 Blackfeather007
author:Blackfeather007
feat(Algebra): exact of associated graded exact We proved that a chain complex is exact if its associated graded complex is exact. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33226 migrated from #26869 t-ring-theory new-contributor blocked-by-other-PR 728/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/Exactness.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19448
5 months ago
158-19449
158 days ago
0-1208
20 minutes
33226 Blackfeather007
author:Blackfeather007
feat(Algebra): associated graded exact of exact and strict In this file, we define the concept of exhaustive filtrations. We also prove a AssociatedGradedRingHom sequence is exact iff each GradedPieceHom is exact. And when a sequence is strict exact, the corresponding AssociatedGradedRingHom sequence is also exact. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33222 migrated from #26868 t-ring-theory new-contributor blocked-by-other-PR 529/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/Exactness.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19446
5 months ago
158-19447
158 days ago
0-1307
21 minutes
33225 Blackfeather007
author:Blackfeather007
feat(Algebra): filtered module hom In this PR we defined the filtered semi-linear map for filtered module and the associated graded module hom. --- - [ ] depends on: #33220 - [ ] depends on: #33223 migrated from #26867 t-ring-theory new-contributor blocked-by-other-PR 1205/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19445
5 months ago
158-19446
158 days ago
0-1805
30 minutes
33224 Blackfeather007
author:Blackfeather007
feat(Algebra): define filtered alghom In this PR, we define the filtered algebra homomorphisms on algebras and prove some basic properties of them. --- - [ ] depends on: #33219 - [ ] depends on: #33223 migrated from #26863 t-ring-theory new-contributor blocked-by-other-PR 1055/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19443
5 months ago
158-19444
158 days ago
0-2046
34 minutes
33223 Blackfeather007
author:Blackfeather007
feat(Algebra): define filtered ring homomorphism In this PR, we define the filtered ring morphisms on rings and prove some basic properties of them. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33218 - [ ] depends on: #33222 migrated from #26862 t-ring-theory new-contributor blocked-by-other-PR 824/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19440
5 months ago
158-19443
158 days ago
0-2257
37 minutes
33222 Blackfeather007
author:Blackfeather007
feat(Algebra): define filtered add group hom In this file we define filtered hom and the corresponding associated graded hom for abelian groups. Co-authored-by: Huanyu Zheng @Yu-Misaka [suzuka@misaka-yu.com](mailto:suzuka@misaka-yu.com) Co-authored-by: Yi Yuan @yuanyi-350 [kysyy1@126.com](mailto:kysyy1@126.com) Co-authored-by: Weichen Jiao @AlbertJ-314 [albertjiao314@gmail.com](mailto:albertjiao314@gmail.com) --- - [ ] depends on: #33217 migrated from #26861 new-contributor t-ring-theory blocked-by-other-PR 368/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean,Mathlib/RingTheory/FilteredAlgebra/FilteredHom.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
158-19439
5 months ago
158-19440
158 days ago
0-2249
37 minutes
33134 faenuccio
author:faenuccio
feat(Normed/Module/WeakDual): add Goldstine lemma We add Goldstine lemma stating that the weak*-closure of the image in the double dual of the unit ball coincides with the unit ball. As a corollary we derive that the image of `inclusionInDoubleDual` is weak*-dense. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis merge-conflict 148/3 Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,docs/references.bib 3 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
157-60227
5 months ago
160-59455
160 days ago
0-16
16 seconds
33269 urkud
author:urkud
feat(MeasureTheory/Covering): generalize some lemmas to outer measures --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 29/19 Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean 2 1 ['github-actions'] nobody
156-21351
5 months ago
156-21392
156 days ago
0-30
30 seconds
33138 gasparattila
author:gasparattila
chore(MeasureTheory/Measure/Stieltjes): remove `backward.privateInPublic` In #32482, some definitions in this file were rewritten using private declarations. However, this made `StieltjesFunction.length` unusable, since its API uses private declarations even in statements. This PR fixes this by problem by specializing `length_eq` to `NoMinOrder` and adding a new lemma for the `OrderBot` case. The other lemmas involving the private declarations are made private, except for `length_subadditive_Icc_Ioo`, which is reverted to the previous statement. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability tech debt awaiting-author 35/30 Mathlib/MeasureTheory/Measure/Stieltjes.lean 1 6 ['github-actions', 'grunweg', 'sgouezel', 'vihdzp'] sgouezel
assignee:sgouezel
155-48680
5 months ago
155-48680
155 days ago
5-1594
5 days
33307 grunweg
author:grunweg
Orientable manifolds updated --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry 377/4 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/Orientable.lean 3 2 ['github-actions'] nobody
154-79592
5 months ago
unknown
0-0
0 seconds
5934 eric-wieser
author:eric-wieser
feat: port Data.Rat.MetaDefs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This needs some eyes from people familiar with Qq merge-conflict help-wanted mathlib-port t-meta 183/0 Mathlib.lean,Mathlib/Data/Rat/MetaDefs.lean,test/rat.lean 3 5 ['eric-wieser', 'gebner', 'vihdzp'] nobody
154-59537
5 months ago
unknown
0-0
0 seconds
4960 eric-wieser
author:eric-wieser
chore: use `open scoped` Earlier versions of mathport did not know about this. This was done by searching for all `open` commands referencing: * `Classical` * `BigOperators` * `Topology` * `Pointwise` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-CI 1026/981 Mathlib/Algebra/AddTorsor.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/BigOperators/Order.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring.lean,Mathlib/Algebra/BigOperators/RingEquiv.lean,Mathlib/Algebra/Bounds.lean,Mathlib/Algebra/Category/GroupCat/Biproducts.lean,Mathlib/Algebra/Category/GroupCat/FilteredColimits.lean,Mathlib/Algebra/Category/GroupCat/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/Mon/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/FilteredColimits.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/GCDMonoid/Div.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Commute.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/Homology.lean,Mathlib/Algebra/Homology/Homotopy.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean,Mathlib/Algebra/Homology/ImageToKernel.lean,Mathlib/Algebra/IndicatorFunction.lean,Mathlib/Algebra/LinearRecurrence.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/Algebra/Module/PointwisePi.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Chebyshev.lean,Mathlib/Algebra/Order/Module.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Algebra/Order/SMul.lean,Mathlib/Algebra/Order/UpperLower.lean,Mathlib/Algebra/Periodic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/GroupRingAction.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Algebra/Support.lean,Mathlib/Algebra/TrivSqZeroExt.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Maximal.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/AlgebraicTopology/ExtraDegeneracy.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Asymptotics.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Filter.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/BoxIntegral/Partition/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/Partition/Tagged.lean,Mathlib/Analysis/Calculus/ContDiffDef.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean 788 1 ['vihdzp'] nobody
154-59434
5 months ago
1084-44164
1084 days ago
0-753
12 minutes
4127 kmill
author:kmill
refactor: create HasAdj class, define Digraph, and generalize some SimpleGraph API --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics 1403/551 Mathlib.lean,Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Graph/Classes.lean,Mathlib/Combinatorics/Graph/Dart.lean,Mathlib/Combinatorics/Graph/Hom.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Finsubgraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 18 2 ['SnirBroshi', 'vihdzp'] nobody
154-55409
5 months ago
1097-75250
1097 days ago
8-43930
8 days
32264 jjtowery
author:jjtowery
feat(Bicategory): add lax slice bicategory --- In this PR, I define the lax slice bicategory for a lax functor over an object. I also give the change of slice strict pseudofunctor. These are from Section 7.1 of Johnson & Yau and are essential for their Whitehead theorem for bicategories (lax functor biequivalence iff essentially surjective, essentially full, and fully faithful), which I'd like to prove at some point. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author 527/0 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/LaxSlice.lean 2 12 ['dagurtomas', 'github-actions', 'jjtowery', 'robin-carlier'] dagurtomas
assignee:dagurtomas
154-47925
5 months ago
177-51382
177 days ago
3-47959
3 days
27752 plp127
author:plp127
feat(Order): `NoBotOrder α` implies `NoMinOrder α` under `IsDirected α (· ≥ ·)` This PR continues the work from #24266. Original PR: https://github.com/leanprover-community/mathlib4/pull/24266 awaiting-author t-order merge-conflict 14/0 Mathlib/Order/Directed.lean 1 5 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'plp127'] nobody
154-39142
5 months ago
302-72767
302 days ago
0-2869
47 minutes
32921 faenuccio
author:faenuccio
refactor Submodule.map Following [#mathlib4 > on the definition of Submodule.map](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/on.20the.20definition.20of.20Submodule.2Emap/with/563900347) this PR refactors the definition of `Submodule.map` removing the requirement that the underlying ring homomorphism be surjective. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-author t-algebra merge-conflict
label:t-algebra$
32/20 Mathlib/Algebra/Module/Submodule/Map.lean 1 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
153-83505
5 months ago
165-58795
165 days ago
0-1
1 second
32889 artie2000
author:artie2000
feat(Algebra): forgetful lemmas for `map` and `comap` on substructures * Standardise the form of forgetful lemmas for `map` and `comap` (ie, `(co)map_toSubfoo`) * Add missing lemmas of this form * Mark all such lemmas as `simp` --- - [x] depends on: #21031 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict blocked-by-other-PR
label:t-algebra$
72/17 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/Subalgebra.lean 6 30 ['YaelDillies', 'artie2000', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'vihdzp'] nobody
153-77033
5 months ago
163-51580
163 days ago
2-56660
2 days
32960 dleijnse
author:dleijnse
feat(FieldTheory): adjoin pth roots For a field `k` of exponential characteristic `p` and a subset `S` of `k`, we define the extension of `k` obtained by adjoining all `p`-th roots of elements of `S`. We prove that this is a purely inseparable extension, and provide some basic API. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
131/0 Mathlib.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean 2 13 ['artie2000', 'chrisflav', 'dleijnse', 'erdOne', 'github-actions', 'leanprover-radar'] erdOne
assignee:erdOne
153-64577
5 months ago
153-64577
153 days ago
10-12739
10 days
33163 Aaron1011
author:Aaron1011
feat: prove subgroup of (M -> Z) is finitely generated --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 5/0 Mathlib/RingTheory/DedekindDomain/Dvr.lean 1 2 ['erdOne', 'github-actions'] alreadydone
assignee:alreadydone
153-57527
5 months ago
153-57527
153 days ago
5-81520
5 days
28972 themathqueen
author:themathqueen
feat(LinearAlgebra/Matrix): star-algebra automorphisms on matrices are unitarily inner Characterization of star-algebra automorphisms on matrices: for any star-algebra automorphism `f` on matrices, there exists a unitary matrix `U` such that `f x = U * x * star U`. More generally, this shows that given star-homomorphisms `f` and `g` from `B` to a star-algebra `A` and that the centralizer of `range g` is trivial, then `f x = U * g x * U⁻¹` for some invertible element `U` if and only if `f x = U * g x * star U` for some unitary `U`. Then a corollary to this and [AlgEquiv.eq_linearEquivConjAlgEquiv](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/GeneralLinearGroup/AlgEquiv.html#AlgEquiv.eq_linearEquivConjAlgEquiv) is that star-algebra automorphisms on matrices are unitarily inner. Another quick corollary to this and [ContinuousAlgEquiv.eq_continuousLinearEquivConjContinuousAlgEquiv](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.html#ContinuousAlgEquiv.eq_continuousLinearEquivConjContinuousAlgEquiv) is that star-algebra automorphisms on endomorphisms in `ℂ`-Hilbert spaces are unitarily inner. (See #33066 for the more general version of this.) --- - [x] depends on: #28100 - [x] depends on: #28182 - [x] depends on: #28881 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-analysis awaiting-author
label:t-algebra$
138/0 Mathlib.lean,Mathlib/Analysis/Matrix/StarAlgEquiv.lean 2 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] nobody
152-55710
5 months ago
152-55710
152 days ago
1-44470
1 day
14444 digama0
author:digama0
fix(GeneralizeProofs): unreachable! bug As [reported on Zulip](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Unreachable.20code.20reached.20in.20Lean.204.2E8.2E0/near/449286780). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 1/1 Mathlib/Tactic/GeneralizeProofs.lean 1 6 ['github-actions', 'jcommelin', 'kmill', 'mathlib4-merge-conflict-bot', 'plby'] nobody
152-33825
5 months ago
683-49229
683 days ago
10-36842
10 days
25138 chrisflav
author:chrisflav
chore(RingTheory/Ideal): make `RingHom.ker` take a `RingHom` instead of `RingHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
317/309 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Hom/Rat.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Module/AEval.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/PurelyInseparable/Tower.lean,Mathlib/LinearAlgebra/Semisimple.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/Adjoin/Tower.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Congruence/Hom.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Extension/Cotangent/Basis.lean,Mathlib/RingTheory/Extension/Cotangent/LocalizationAway.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FiniteStability.lean,Mathlib/RingTheory/Finiteness/NilpotentKer.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean,Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/MvPowerSeries/Evaluation.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Nullstellensatz.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/UniqueFactorization.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean,Mathlib/RingTheory/Smooth/AdicCompletion.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Flat.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/Smooth/NoetherianDescent.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/RingTheory/Unramified/Finite.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/ContinuousMap/Ideals.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 68 8 ['chrisflav', 'erdOne', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
152-21233
5 months ago
371-38761
371 days ago
0-3642
1 hour
33386 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): decidable instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP RFC 76/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/Decidable.lean 2 1 ['github-actions'] nobody
151-63828
5 months ago
unknown
0-0
0 seconds
33402 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/Generation): prove exceptional case in Dieudonné's theorem Establish the fourth part of Dieudonné's theorem: is a linear equivalence is exceptional, it is the product of `finrank K (V ⧸ e.fixedSubmodule)` transvections and one dilatransvection. --- - [ ] depends on: #33348 - [ ] depends on: #33347 - [ ] depends on: #33387 - [ ] depends on: #33282 - [ ] depends on: #33392 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR file-removed
label:t-algebra$
1572/222 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean 8 12 ['AntoineChambert-Loir', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
151-3926
5 months ago
151-3927
151 days ago
0-705
11 minutes
24665 Komyyy
author:Komyyy
feat(Mathlib/Topology/Metrizable/Uniformity): every uniform space is generated by a family of pseudometrics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-topology merge-conflict 54/0 Mathlib/Topology/Metrizable/Uniformity.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
150-50357
4 months ago
387-57299
387 days ago
0-1
1 second
33381 urkud
author:urkud
feat: add a version of the Schwarz lemma Add a version of the Schwarz lemma that is midway between the original lemma and Pick's version. Use it to show that a function that is separately holomorphic on a polydisc and is bounded on this polydisc must be continuous on it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #33368 - [x] depends on: #33362 t-analysis blocked-by-other-PR merge-conflict 475/91 Mathlib.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/Complex/UnitDisc/Schwarz.lean,Mathlib/Analysis/Complex/UnitDisc/Shift.lean 5 22 ['girving', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
150-21066
4 months ago
151-75946
151 days ago
0-947
15 minutes
18805 astrainfinita
author:astrainfinita
refactor: deprecate `SemilinearMapClass` --- I'm not sure if we want to do this, but let's see if we can get a speed up from it first. - [ ] depends on: #18755 - [ ] depends on: #18756 - [ ] depends on: #18806 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-bench t-algebra blocked-by-other-PR merge-conflict
label:t-algebra$
546/318 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/BigOperators/Balance.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/Rat.lean,Mathlib/Algebra/Module/LocalizedModule/Int.lean,Mathlib/Algebra/Module/Submodule/EqLocus.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory/WithAlgebraicStructures.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/Data/Complex/BigOperators.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/Ideal/Norm.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/Polynomial/Opposites.lean,Mathlib/RingTheory/RootsOfUnity/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,Mathlib/Topology/Algebra/MulAction.lean,Mathlib/Topology/Homeomorph.lean,Mathlib/Topology/MetricSpace/Isometry.lean,scripts/no_lints_prime_decls.txt 55 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
149-13646
4 months ago
unknown
0-0
0 seconds
33448 astrainfinita
author:astrainfinita
refactor: deprecate `ContinuousLinearMapClass` This PR continues the work from #18748. Original PR: https://github.com/leanprover-community/mathlib4/pull/18748 t-topology t-algebra awaiting-author merge-conflict
label:t-algebra$
55/41 Mathlib/Analysis/CStarAlgebra/PositiveLinearMap.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean 11 11 ['Ruben-VandeVelde', 'astrainfinita', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
149-1270
4 months ago
149-1270
149 days ago
0-17239
4 hours
33462 eric-wieser
author:eric-wieser
feat: teach `fun_prop` about `ContinousMultilinearMap.compContinuousLinearMap` For now I've omitted the curried version --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 46/0 Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean 1 3 ['github-actions', 'sgouezel'] nobody
148-51591
4 months ago
148-64829
148 days ago
148-64791
148 days
32725 joelriou
author:joelriou
feat(CategoryTheory): presheaves of types which preserve a limit Let `F : J ⥤ Cᵒᵖ` be a functor. We show that a presheaf `P : Cᵒᵖ ⥤ Type w` preserves the limit of `F` iff `P` is a local object with respect to a suitable family of morphisms in `Cᵒᵖ ⥤ Type w` (this family contains `1` or `0` morphism depending on whether the limit of `F` exists or not). --- - [x] depends on: #38257 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author WIP 187/0 Mathlib.lean,Mathlib/CategoryTheory/ObjectProperty/FunctorCategory/Presheaf.lean 5 8 ['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier'] nobody
148-8227
4 months ago
148-8227
148 days ago
3-82684
3 days
32840 joelriou
author:joelriou
chore(CategoryTheory): remove the old Ext API As it is now possible to compute `Ext`-groups (defined using the derived category) using an injective resolution #32105 or a projective resolution #32816, the old `Ext` API (based on left derived functors) is removed. WIP (more API for the new `Ext` is necessary...) --- - [ ] depends on: #32816 - [ ] depends on: #32105 - [ ] depends on: #32814 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-category-theory large-import merge-conflict WIP 546/116 Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean,Mathlib/Algebra/Homology/DerivedCategory/KInjective.lean,Mathlib/Algebra/Homology/DerivedCategory/KProjective.lean,Mathlib/Algebra/Homology/Embedding/IsSupported.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/CategoryTheory/Abelian/Ext.lean,Mathlib/CategoryTheory/Abelian/Injective/Ext.lean,Mathlib/CategoryTheory/Abelian/Injective/Extend.lean,Mathlib/CategoryTheory/Abelian/Projective/Ext.lean,Mathlib/CategoryTheory/Abelian/Projective/Extend.lean,Mathlib/RepresentationTheory/Homological/Resolution.lean 12 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
148-2288
4 months ago
167-86178
167 days ago
0-408
6 minutes
33133 0xTerencePrime
author:0xTerencePrime
feat(Algebra/Group/Center): add Decidable (IsMulCentral a) instance This PR adds a `Decidable` instance for `IsMulCentral a`. ### Summary The structure `IsMulCentral` was missing a `Decidable` instance. This PR provides the instance by leveraging `isMulCentral_iff`, enabling decidability for both multiplicative and additive (via `to_additive`) structures. ### Verification - `lake build Mathlib.Algebra.Group.Center` passed. - `lake exe runLinter Mathlib.Algebra.Group.Center` passed. t-algebra new-contributor awaiting-author
label:t-algebra$
7/0 Mathlib/Algebra/Group/Center.lean 1 3 ['github-actions', 'robin-carlier'] ocfnash
assignee:ocfnash
147-85718
4 months ago
147-85718
147 days ago
12-60805
12 days
33191 sinhp
author:sinhp
feat(CategoryTheory): Locally cartesian closed structure on presheaf categories The category of presheaves on a small category `C` is locally cartesian closed. --- - [ ] depends on: #30375 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory blocked-by-other-PR merge-conflict 703/0 Mathlib.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ChosenPullbacksAlong.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ExponentiableMorphism.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Sections.lean 5 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
147-52662
4 months ago
159-1093
159 days ago
0-31
31 seconds
28153 kckennylau
author:kckennylau
feat(Simproc): Simproc for explicit diagonal matrices ```lean example : (diagonal ![37, -1] : Matrix (Fin 2) (Fin 2) ℤ) = !![37, 0; 0, -1] := by simp ``` --- Shares code with #28148. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 114/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/Matrix.lean,scripts/noshake.json 4 6 ['Vierkantor', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
147-36296
4 months ago
234-71715
234 days ago
58-77127
58 days
25500 eric-wieser
author:eric-wieser
feat: delaborators for metadata Being able to see these is very important when debugging tactic failures. Probably these could be upstreamed, but I don't think that's a reason not to merge them here first. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict awaiting-author delegated t-meta 75/3 Mathlib/Util/Delaborators.lean,Mathlib/Util/PPOptions.lean,MathlibTest/delaborators.lean 3 19 ['JovanGerb', 'Rob23oba', 'eric-wieser', 'github-actions', 'kmill', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'plp127'] nobody
147-36248
4 months ago
274-66761
274 days ago
83-68773
83 days
28191 kckennylau
author:kckennylau
feat(Logic): tag Injective, Surjective, and Bijective with fun_prop --- Zulip: * [#Is there code for X? > surjective is not funprop!](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/surjective.20is.20not.20funprop!) * [#mathlib4 > `fun_prop` for Injective/Surjective/Bijective?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60fun_prop.60.20for.20Injective.2FSurjective.2FBijective.3F) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 16/0 Mathlib/Tactic/FunProp.lean 1 6 ['Vierkantor', 'github-actions', 'grunweg', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
147-36234
4 months ago
234-75431
234 days ago
57-63332
57 days
30432 kckennylau
author:kckennylau
feat(AlgebraicGeometry): define the non-vanishing locus of a set in Proj Given a subset `s : Set A`, the non-vanishing locus of `s` is the set of points whose corresponding prime ideal does not fully contain `s`. In other words, where not all elements of `s` vanish. I could not find a name for this in the literature. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebraic-geometry 66/0 Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean 1 4 ['github-actions', 'jcommelin'] nobody
147-36206
4 months ago
186-84522
186 days ago
44-12068
44 days
27262 Timeroot
author:Timeroot
feat(Tactic/Bound): bound? for proof scripts --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 22/7 Mathlib/Tactic/Bound.lean 1 13 ['JovanGerb', 'Timeroot', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] nobody
147-28158
4 months ago
239-40483
239 days ago
13-18965
13 days
32389 LLaurance
author:LLaurance
feat(Analysis): Trigonometric identities `sin` and `cos` of real and complex integer multiples of π/12 --- Resolves https://github.com/leanprover-community/mathlib4/pull/28630#discussion_r2307957255 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 120/0 Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean 1 11 ['LLaurance', 'artie2000', 'github-actions', 'j-loreaux'] nobody
147-6041
4 months ago
162-52772
162 days ago
15-36939
15 days
33502 MrQubo
author:MrQubo
fix(Tactic/ProxyType): Pass params explicitly in proxy_equiv% implementation Fix [#mathlib4 > `deriving Fintype` with Prop](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60deriving.20Fintype.60.20with.20Prop/with/566118621) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta WIP 12/2 Mathlib/Tactic/ProxyType.lean,MathlibTest/DeriveFintype.lean 2 7 ['MrQubo', 'github-actions', 'kmill'] kmill
assignee:kmill
146-52642
4 months ago
146-52643
146 days ago
0-60133
16 hours
21344 kbuzzard
author:kbuzzard
chore: attempt to avoid diamond in OreLocalization --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-algebra
label:t-algebra$
16/5 Mathlib/RingTheory/OreLocalization/Basic.lean 1 6 ['erdOne', 'github-actions', 'kbuzzard'] nobody
145-48225
4 months ago
480-45920
480 days ago
1-35979
1 day
33112 alreadydone
author:alreadydone
feat(GroupAction): `(M →[M] M) ≃* Mᵐᵒᵖ` This comes up in #33108 in the form that permutations of a group commuting with the left multiplications are the right multiplications. The Semiring versions are already in mathlib. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory awaiting-author
label:t-algebra$
41/3 Mathlib/GroupTheory/GroupAction/Hom.lean 1 2 ['github-actions', 'robin-carlier'] mattrobball
assignee:mattrobball
145-45069
4 months ago
147-80922
147 days ago
13-49137
13 days
27972 smmercuri
author:smmercuri
refactor: make `Valuation.Completion` a `def` and refactor more of `AdicValuation.lean` This PR continues the work from #24590. Original PR: https://github.com/leanprover-community/mathlib4/pull/24590 WIP t-number-theory t-algebra merge-conflict
label:t-algebra$
188/87 Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 6 8 ['github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] nobody
144-63808
4 months ago
254-85518
254 days ago
3-78979
3 days
17176 arulandu
author:arulandu
feat: integrals and integrability with .re Lemmas for swapping order of .re and integration/integrability. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability please-adopt 49/0 Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean 4 32 ['EtienneC30', 'arulandu', 'github-actions', 'loefflerd'] nobody
144-55640
4 months ago
592-16477
592 days ago
9-73631
9 days
33586 CoolRmal
author:CoolRmal
feat: Lower Limit Topology --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 328/0 Mathlib.lean,Mathlib/Topology/Order/LowerUpperLimitTopology.lean 2 10 ['CoolRmal', 'github-actions', 'plp127'] nobody
144-54342
4 months ago
unknown
0-0
0 seconds
24129 urkud
author:urkud
feat: symmetry of Gateaux derivatives --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 189/1 Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,Mathlib/Analysis/Calculus/LineDeriv/Symmetric.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
144-31192
4 months ago
unknown
0-0
0 seconds
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
143-22234
4 months ago
143-68967
143 days ago
7-10690
7 days
33450 astrainfinita
author:astrainfinita
refactor: deprecate `LinearIsometryClass` --- - [ ] depends on: #33448 - [ ] depends on: #33454 This PR continues the work from #18755. Original PR: https://github.com/leanprover-community/mathlib4/pull/18755 t-algebra t-analysis blocked-by-other-PR t-topology merge-conflict
label:t-algebra$
128/125 Mathlib/Analysis/CStarAlgebra/PositiveLinearMap.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,Mathlib/Topology/MetricSpace/DilationEquiv.lean,Mathlib/Topology/MetricSpace/Isometry.lean 15 5 ['astrainfinita', 'github-actions', 'leanprover-radar', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
143-22109
4 months ago
149-14900
149 days ago
0-304
5 minutes
33434 astrainfinita
author:astrainfinita
chore: redefine `Finsupp.indicator` using `Finsupp.onFinset` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 6/17 Mathlib/Data/Finsupp/Indicator.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
142-77599
4 months ago
50-54755
50 days ago
5-35275
5 days
33554 themathqueen
author:themathqueen
chore(Analysis/Normed/Module/Normalize): allow for `RCLike` instead of just the reals Only the last lemma `normalize_smul` needs `ℝ`, which we rename to `normalize_real_smul`. This also makes `𝕜` explicit in half of the results. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author merge-conflict 67/60 Mathlib/Analysis/CStarAlgebra/Unitary/Span.lean,Mathlib/Analysis/Normed/Module/Normalize.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/TriangleInequality.lean,Mathlib/Geometry/Euclidean/SignedDist.lean 5 4 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'themathqueen'] nobody
142-65481
4 months ago
143-58230
143 days ago
1-85731
1 day
27507 grunweg
author:grunweg
wip(commandStart): check the indentation of declaration keywords also Check that e.g. a `lemma` keyword always starts on column 1 (unless preceded by an attribute). --- TODO: - make this work for other declarations also - the position reported for the lemma column is not helpful (it might be the absolute column in the file, but that's missing line information) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-linter merge-conflict 84/1 Mathlib/Tactic/Linter/CommandStart.lean,MathlibTest/CommandStart.lean 2 3 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
142-44418
4 months ago
308-824
308 days ago
0-2
2 seconds
33330 michael-novak-math
author:michael-novak-math
feat: add arc-length reparametrization of parametrized curves add new definitions of arc-length reparametrization and its corresponding parameter transformation and a theorem establishing the desired properties. t-analysis new-contributor awaiting-author merge-conflict 311/0 Mathlib.lean,Mathlib/Analysis/Calculus/ArcLengthReparametrization.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib 5 57 ['SnirBroshi', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'michael-novak-math'] j-loreaux
assignee:j-loreaux
142-36595
4 months ago
67-11322
67 days ago
6-69934
6 days
24010 grunweg
author:grunweg
feat(Counterexamples): a non-negative function, not a.e. zero, with vanishing lowe… …r Lebesgue integral. Came up in #23707, let's document this while we're at it. --- - [ ] depends on: #20722 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict please-adopt WIP blocked-by-other-PR t-measure-probability 110/0 Counterexamples.lean,Counterexamples/LIntegralZero.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
141-80270
4 months ago
411-55315
411 days ago
0-22
22 seconds
33756 dleijnse
author:dleijnse
feat(FieldTheory): root of polynomial with p power coefficients This PR proves the results in https://stacks.math.columbia.edu/tag/031V, which gives a criterion for a root of a polynomial over a field `k` of characteristic `p` to be a `p`-th power. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
88/0 Mathlib.lean,Mathlib/FieldTheory/PthPowerCoeffPoly.lean 2 1 ['github-actions'] nobody
141-74140
4 months ago
unknown
0-0
0 seconds
28700 Timeroot
author:Timeroot
feat(ModelTheory): Set.Definable is transitive --- This PR continues the work from #19695. Original PR: https://github.com/leanprover-community/mathlib4/pull/19695 - [x] depends on: #26332 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic merge-conflict large-import 529/8 Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 5 9 ['Timeroot', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'staroperator'] nobody
141-73981
4 months ago
59-54134
59 days ago
3-9082
3 days
30608 grunweg
author:grunweg
feat: another lemma about derivatives of parametric integrals On the path towards proving that integrating smooth functions is smooth. From the sphere-eversion project; I am just upstreaming this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 125/0 Mathlib/Analysis/Calculus/ParametricIntegral.lean 1 8 ['Ruben-VandeVelde', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] j-loreaux
assignee:j-loreaux
141-68980
4 months ago
206-73549
206 days ago
18-81847
18 days
30610 grunweg
author:grunweg
feat: yet another lemma about differentiability of parametric integrals From sphere-eversion. --- TODO: explicitly make Floris a co-author again - [ ] depends on: #30608 - [ ] depends on: #30612 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-analysis 193/0 Mathlib/Analysis/Calculus/ParametricIntegral.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
141-68979
4 months ago
225-68719
225 days ago
0-7778
2 hours
33299 kingiler
author:kingiler
feat: Add decidable membership for Interval Implemented membership and corresponding decidable instance for `Interval`. Related [#mathlib4 > Proposal: Add decidable membership for Interval](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Proposal.3A.20Add.20decidable.20membership.20for.20Interval/with/565438009). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author new-contributor t-order 16/1 Mathlib/Order/Interval/Basic.lean 1 5 ['Vierkantor', 'eric-wieser', 'github-actions', 'kingiler'] Vierkantor
assignee:Vierkantor
141-65946
4 months ago
141-65946
141 days ago
13-42146
13 days
30142 shalliso
author:shalliso
feat(Topology/Baire): define IsNonMeagre non-meagre sets (also known as "of the second category") are worthy of their own definition and API. This was useful to me for formalizing a result of "automatic continuity", that is, a Baire-measurable homomorphism between Polish groups must be continuous. Simply working with the negation of IsMeagre quickly became cumbersome, and non-meagre sets have an important role in the study of Polish (e.g. locally compact) groups. From https://github.com/shalliso/automatic_continuity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor merge-conflict awaiting-author 83/1 Mathlib/Topology/Baire/NonMeagre.lean,Mathlib/Topology/GDelta/Basic.lean 2 6 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
140-75630
4 months ago
140-75631
140 days ago
98-58846
98 days
30953 kim-em
author:kim-em
experiment: add `canonical` to Mathlib Depends on (these must be merged first before CI will succeed here) - [x] #30952 - [x] #30844 merge-conflict 63/3 Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,MathlibTest/canonical.lean,lake-manifest.json,lakefile.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
140-46490
4 months ago
214-43942
214 days ago
0-865
14 minutes
32470 ADedecker
author:ADedecker
feat: the space of test functions is barrelled --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 22/0 Mathlib/Analysis/Distribution/TestFunction.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
140-46004
4 months ago
unknown
0-0
0 seconds
33102 adomani
author:adomani
perf: add a syntactic check for flexible linter This is very preliminary. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter merge-conflict 205/2 Mathlib/Tactic/Linter/FlexibleLinter.lean,MathlibTest/FlexibleLinter.lean 2 10 ['adomani', 'github-actions', 'leanprover-radar', 'mathlib4-merge-conflict-bot'] nobody
140-45878
4 months ago
unknown
0-0
0 seconds
30562 dwrensha
author:dwrensha
fix(Data/Fintype/Perm): make the main logic of Equiv.instFintype irreducible Adds a new `irreducible_def` for the main branch of `Equiv.instFintype` to avoid errors about deep recursion. This is an update of #15045 and #30560 according to the discussion in those PRs and in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/kernel.20deep.20recursion.20detected/near/454301820). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data 44/10 Mathlib/Combinatorics/Derangements/Finite.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/Data/Matrix/Cartan.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,MathlibTest/MatrixDetOne.lean 5 18 ['dwrensha', 'github-actions', 'leanprover-bot', 'plp127', 'robin-carlier'] robin-carlier
assignee:robin-carlier
140-42963
4 months ago
214-76348
214 days ago
12-56370
12 days
33669 eric-wieser
author:eric-wieser
chore(Data/Nat/Digits): refactor to use List.rightpad --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 32/12 Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Data/List/Lemmas.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Nat/Digits/Lemmas.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'xroblot'] nobody
140-11595
4 months ago
143-66685
143 days ago
0-237
3 minutes
25905 mans0954
author:mans0954
feat(RingTheory/Polynomial/SmallDegreeVieta): polynomial versions of results in Algebra.QuadraticDiscriminant This PR continues the work from #25605. Original PR: https://github.com/leanprover-community/mathlib4/pull/25605 merge-conflict t-ring-theory please-adopt 77/8 Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Polynomial/SmallDegreeVieta.lean 2 47 ['chrisflav', 'github-actions', 'kckennylau', 'mans0954', 'mathlib4-merge-conflict-bot', 'ocfnash'] chrisflav
assignee:chrisflav
139-44533
4 months ago
265-72912
265 days ago
82-4874
82 days
26339 mans0954
author:mans0954
feat(Analysis/Normed/Module/WeakDual): Banach Dieudonné Lemma This PR continues the work from #16316. Original PR: https://github.com/leanprover-community/mathlib4/pull/16316 merge-conflict WIP t-analysis large-import please-adopt 377/3 Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Topology/UniformSpace/Cauchy.lean 4 5 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-44494
4 months ago
340-14543
340 days ago
0-1087
18 minutes
26340 mans0954
author:mans0954
feat(Algebra/Module/NestAlgebra): Nest algebras This PR continues the work from #18705. Original PR: https://github.com/leanprover-community/mathlib4/pull/18705 merge-conflict t-algebra please-adopt
label:t-algebra$
184/0 Mathlib.lean,Mathlib/Algebra/Module/NestAlgebra.lean,Mathlib/Order/Nest.lean,Mathlib/Order/Preorder/Chain.lean,docs/references.bib 5 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-44478
4 months ago
334-56384
334 days ago
5-45567
5 days
26342 mans0954
author:mans0954
WiP: Expansion of the tensor product of quadratic maps over a linear combination This PR continues the work from #19806. Original PR: https://github.com/leanprover-community/mathlib4/pull/19806 WIP t-algebra please-adopt
label:t-algebra$
483/0 Mathlib/Data/Sym/Sym2/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct.lean 4 2 ['github-actions', 'mans0954'] nobody
139-44470
4 months ago
unknown
0-0
0 seconds
26341 mans0954
author:mans0954
feat(LinearAlgebra/QuadraticForm/Basis): Free Tensor product of Quadratic Maps This PR continues the work from #19432. Original PR: https://github.com/leanprover-community/mathlib4/pull/19432 merge-conflict WIP t-algebra large-import please-adopt
label:t-algebra$
888/0 Mathlib.lean,Mathlib/Data/Sym/Sym2/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean 3 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-44247
4 months ago
340-15145
340 days ago
0-259
4 minutes
26343 mans0954
author:mans0954
feat(Analysis/Normed/Module/Complemented): The idempotent associated with a complemented subspace Given a complemented subspace `p` of a Banach space `E`, with complement `q`, there exists an idempotent `P` in the ring `E →L[𝕜] E` such that `P` has range `p` and kernel `q`. Similarly `1-P` has range `q` and kernel `p`. See Rudin, Functional Analysis, Theorem 5.16. --- This PR continues the work from #20330. Original PR: https://github.com/leanprover-community/mathlib4/pull/20330 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-CI large-import merge-conflict t-analysis please-adopt 185/3 Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Analysis/Normed/Module/Complemented.lean,Mathlib/RingTheory/Idempotents.lean 5 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-44240
4 months ago
unknown
0-0
0 seconds
26344 mans0954
author:mans0954
feat(Analysis/NormedSpace/MStructure): The component projections on WithLp 1 (α × β) are L-projections This PR continues the work from #20380. Original PR: https://github.com/leanprover-community/mathlib4/pull/20380 merge-conflict WIP t-analysis file-removed please-adopt 20/1 Mathlib.lean,Mathlib/Analysis/Normed/Lp/MStructure.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean 3 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-39043
4 months ago
334-57037
334 days ago
5-43696
5 days
26346 mans0954
author:mans0954
feat(LinearAlgebra/QuadraticForm/TensorProduct): Extend `baseChange_ext` to work over a free module This PR continues the work from #21814. Original PR: https://github.com/leanprover-community/mathlib4/pull/21814 merge-conflict WIP t-algebra please-adopt
label:t-algebra$
105/5 Mathlib/LinearAlgebra/Basis/Bilinear.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct.lean 2 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-39024
4 months ago
unknown
0-0
0 seconds
26347 mans0954
author:mans0954
feat(Data/Finset/RangeDistance): abs_sub_lt_of_mem_finset_range This PR continues the work from #23161. Original PR: https://github.com/leanprover-community/mathlib4/pull/23161 merge-conflict t-data please-adopt 30/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] alreadydone
assignee:alreadydone
139-39020
4 months ago
192-13118
192 days ago
148-922
148 days
26349 mans0954
author:mans0954
feat(Analysis/SpecialFunctions/Trigonometric/Basic): sin and cos of multiples of π / 3 This PR continues the work from #25009. Original PR: https://github.com/leanprover-community/mathlib4/pull/25009 help-wanted t-analysis please-adopt 159/0 Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Data/Nat/Cast/Defs.lean,MathlibTest/trigonometry.lean 4 3 ['github-actions', 'mans0954', 'themathqueen'] nobody
139-38976
4 months ago
334-57321
334 days ago
5-42837
5 days
26348 mans0954
author:mans0954
feat(Analysis/LocallyConvex/Prime): the prime map This PR continues the work from #24385. Original PR: https://github.com/leanprover-community/mathlib4/pull/24385 merge-conflict WIP t-analysis please-adopt 125/0 Mathlib.lean,Mathlib/Analysis/LocallyConvex/Prime.lean 2 3 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-38967
4 months ago
334-57272
334 days ago
5-43062
5 days
26983 mans0954
author:mans0954
feat(Order/LatticeElements): distributive, standard and neutral elements of a lattice Defines distributive, standard and neutral elements of a lattice and gives equivalent conditions. --- - [x] depends on: #26836 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order please-adopt 238/0 Mathlib.lean,Mathlib/Order/Hom/Lattice.lean,Mathlib/Order/LatticeElements.lean 3 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
139-38934
4 months ago
236-63191
236 days ago
0-20134
5 hours
29980 mans0954
author:mans0954
refactor(RingTheory/Polynomial/Resultant/Quadratic): Re-implement QuadraticDiscriminant for R[X] Re-implement `Algebra/QuadraticDiscriminant` for polynomials. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/discriminants.20of.20low.20degree.20polynomials/with/538010519) --- - [ ] depends on: #29981 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict please-adopt 208/0 Mathlib.lean,Mathlib/RingTheory/Polynomial/Resultant/Quadratic.lean 2 4 ['JovanGerb', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
139-38901
4 months ago
192-11855
192 days ago
41-47807
41 days
29387 mans0954
author:mans0954
feat(Analysis/LocallyConvex/WeakSpace): toWeakSpace_closedAbsConvexHull_eq The closed absolutely convex hull taken in the weak topology coincides with the closed absolutely convex hull taken in the original topology. --- - [ ] depends on: #29378 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-analysis please-adopt 133/68 Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/AbsConvexOpen.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/Normed/Module/Dual.lean 6 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
139-38882
4 months ago
265-60744
265 days ago
0-2474
41 minutes
30393 mans0954
author:mans0954
WIP: Bipolar theorem absconvex refactor Experiment to see what happens when #26345 and #29342 are merged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP large-import please-adopt 383/138 Mathlib.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/AbsConvexOpen.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/LocallyConvex/Bipolar.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Topology/Algebra/Module/LinearSpan.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakBilin.lean 12 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
139-38738
4 months ago
unknown
0-0
0 seconds
29378 mans0954
author:mans0954
feat(Analysis/LocallyConvex/AbsConvex): Balanced and AbsConvex sets under linear maps Provide `Balanced` and `AbsConvex` versions of `Convex.linear_image`, `Convex.linear_preimage` and the `is_linear` equivalents. --- - [ ] depends on: #29342 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis please-adopt 133/68 Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/AbsConvexOpen.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/Normed/Module/Dual.lean 6 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
139-38722
4 months ago
227-28623
227 days ago
0-14664
4 hours
26337 mans0954
author:mans0954
feat(Analysis/NormedSpace/MStructure): M-ideals This PR continues the work from #14369. Original PR: https://github.com/leanprover-community/mathlib4/pull/14369 merge-conflict WIP t-analysis large-import please-adopt 857/40 Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Analysis/Normed/Module/Complemented.lean,Mathlib/Analysis/NormedSpace/MStructure.lean 5 4 ['github-actions', 'mans0954', 'mathlib4-merge-conflict-bot'] nobody
139-38463
4 months ago
unknown
0-0
0 seconds
31981 jsm28
author:jsm28
feat(Geometry/Euclidean/Incenter): `tangentSet` and `tangentsFrom` lemmas Add lemmas relating the faces of a simplex to `tangentSet` and `tangentsFrom` for an exsphere, in particular for a triangle that any two side lines are the `tangentsFrom` their shared vertex to the insphere or any exsphere. --- - [ ] depends on: #31733 - [ ] depends on: #31891 - [ ] depends on: #31892 - [ ] depends on: #31893 - [x] depends on: #31978 - [ ] depends on: #31979 - [x] depends on: #31980 - [ ] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry blocked-by-other-PR 578/9 Mathlib.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean 5 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
138-32280
4 months ago
188-34136
188 days ago
0-1725
28 minutes
13158 erdOne
author:erdOne
refactor(RingTheory/OreLocalization/Module): remove `LocalizedModule.mk`. --- - [x] depends on: #13151 - [ ] depends on: #13156 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
49/48 Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean 2 2 ['urkud'] nobody
138-26041
4 months ago
723-109
723 days ago
9-15083
9 days
12934 grunweg
author:grunweg
chore: replace more uses of > or ≥ by < or ≤ These were flagged by the linter in https://github.com/leanprover-community/mathlib4/pull/12879: it is easy to simple avoid > or ≥ in hypotheses or haves. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted 41/42 Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Tactic/Linarith/Datatypes.lean,test/cancel_denoms.lean,test/congr.lean,test/interval_cases.lean,test/observe.lean 15 12 ['YaelDillies', 'adomani', 'github-actions', 'grunweg', 'jcommelin', 'urkud'] nobody
138-25948
4 months ago
742-81773
742 days ago
1-73101
1 day
28070 grunweg
author:grunweg
style: improve indentation of multi-linear enumerations in doc-strings Per zulip discussion: [#mathlib4 > Style :bicycle: : indenting second lines in doc-strings @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Style.20.3Abicycle.3A.20.3A.20indenting.20second.20lines.20in.20doc-strings/near/533105734). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 111/108 Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Module/LinearMap/Polynomial.lean,Mathlib/CategoryTheory/Abelian/NonPreadditive.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Pi.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/Condensed/Discrete/Characterization.lean,Mathlib/FieldTheory/ChevalleyWarning.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,docs/Conv/Guide.lean 16 8 ['github-actions', 'grunweg', 'kbuzzard', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
138-25825
4 months ago
294-81304
294 days ago
1-19000
1 day
29077 grunweg
author:grunweg
feat(Manifold/Instances/Icc): golf smoothness proof using immersions Prove that the inclusion of an interval into the real numbers is a smooth immersion, and use this to golf the proof that this inclusion is smooth. TODO: right now, the computation doesn't check out; I need to tweak the charts I have. But that is surely doable. A future PR will prove it is a smooth embedding. --- - [ ] depends on: #28865 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-differential-geometry 1122/56 Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Topology/PartialHomeomorph.lean,docs/references.bib,temp_.sh 13 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
137-72832
4 months ago
274-62681
274 days ago
0-309
5 minutes
32880 0xTerencePrime
author:0xTerencePrime
feat(Analysis/Asymptotics): define subpolynomial growth ## Main definitions * `Asymptotics.IsSubpolynomial l f g`: A function `f` has subpolynomial growth with respect to `g` along filter `l` if `f = O(1 + ‖g‖^k)` for some natural `k`. ## Main results * `IsSubpolynomial.const`: Constant functions have subpolynomial growth * `IsSubpolynomial.id`: Identity has subpolynomial growth * `IsSubpolynomial.add`: Closure under addition * `IsSubpolynomial.neg`: Closure under negation * `IsSubpolynomial.sub`: Closure under subtraction * `IsSubpolynomial.mul`: Closure under multiplication * `IsSubpolynomial.pow`: Closure under powers * `isSubpolynomial_iff_one_add`: Equivalence with `(1 + ‖g‖)^k` formulation * `IsSubpolynomial.uniform`: Uniform bounds for finite families ## Implementation notes The definition uses `1 + ‖g‖^k` rather than `(1 + ‖g‖)^k` as the primary form, with the equivalence established in `isSubpolynomial_iff_one_add`. Four private auxiliary lemmas handle the key inequalities needed for closure proofs. Closes #32658 awaiting-author t-analysis new-contributor 185/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/Subpolynomial.lean 2 29 ['0xTerencePrime', 'ADedecker', 'github-actions', 'j-loreaux'] ADedecker
assignee:ADedecker
137-58714
4 months ago
138-40172
138 days ago
22-14560
22 days
33814 seewoo5
author:seewoo5
feat(Manifold/MFDeriv): add `MDifferentiable.pow` with FunProp --- - [ ] depends on: #33808 Tag `MDifferentiable.pow` with `fun_prop`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR merge-conflict 22/0 Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
136-50202
4 months ago
140-9425
140 days ago
0-8651
2 hours
33948 anivegesana
author:anivegesana
feat(Analysis/Normed/Algebra): matrix exponential of nilpotent matrix Where the matrix exponential and nilpotent elements are defined, both the matrix exponential and the nilpotent element exponential. I had to add a different theorem for normed space exponential and the matrix exponential since the right instances wouldn't be synthesized. Help with golfing would be appreciated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 34/0 Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean 2 1 ['github-actions'] nobody
136-23299
4 months ago
136-23371
136 days ago
136-23333
136 days
30030 JonBannon
author:JonBannon
feat(MeasureTheory): add `MemLp.Const` class and instances to unify `p = ∞` and `μ.IsFiniteMeasure` cases Although it is possible to ensure that, for example, the `One` instances for `p=∞` and `μ.IsFiniteMeasure` are defeq, introducing an `MemLp.Const` typeclass removes the need to unfold extensively to check this definitional equality, improving performance. cf. https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Lp.20constant.20function.20issue/with/537563137 This PR introduces the requisite class and associated instances. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-measure-probability merge-conflict 224/136 Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousCompMeasurePreserving.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/SeparableMeasure.lean 13 25 ['JonBannon', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] urkud
assignee:urkud
135-72754
4 months ago
224-65860
224 days ago
12-73357
12 days
33807 adamtopaz
author:adamtopaz
feat: TypeCat refactor --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 114/0 ConstGraph/Main.lean,Mathlib/CategoryTheory/Types/Basic.lean,lakefile.lean 3 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
135-70063
4 months ago
140-54253
140 days ago
0-1
1 second
29610 llllvvuu
author:llllvvuu
feat(LinearAlgebra): define LinearMap.Eigenbasis Some theorems are left TODO for follow-up work. The definition is from @eric-wieser ([#Is there code for X? > diagonalizable linear maps @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/diagonalizable.20linear.20maps/near/539163222)). Co-authored-by: Aristotle Harmonic --- - [x] depends on: #29420 (golfs some `[Nontrivial R]` assumptions) - [x] depends on: #29791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author
label:t-algebra$
455/5 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/LinearAlgebra/Eigenbasis.lean,Mathlib/LinearAlgebra/FreeModule/PID.lean,Mathlib/Order/CompleteLattice/Basic.lean 5 31 ['github-actions', 'joelriou', 'kckennylau', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
135-64357
4 months ago
192-11893
192 days ago
20-33900
20 days
33992 tb65536
author:tb65536
feat(NumberTheory/NumberField/ExistsRamified): Galois group is generated by inertia subgroups This PR proves that `Gal(K/ℚ)` is generated by its inertia subgroups (because otherwise the fixed field would be an unramified extension of `ℚ`). --- - [x] depends on: #30666 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory t-algebra merge-conflict blocked-by-other-PR
label:t-algebra$
101/0 Mathlib/NumberTheory/NumberField/ExistsRamified.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
135-6487
4 months ago
22-50882
22 days ago
0-8682
2 hours
30582 RemyDegenne
author:RemyDegenne
feat: extension of a function to the closure of a submodule - define the closure of a set in a complete space as an `AbstractCompletion` - add instances about submodules - add a coercion from a submodule to its topological closure - add induction lemmas on topological closures of submodules - define the extension of a function on a submodule to the closure of a submodule --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology WIP merge-conflict 138/1 Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/UniformSpace/AbstractCompletion.lean 2 8 ['ADedecker', 'RemyDegenne', 'github-actions', 'mathlib4-merge-conflict-bot', 'mcdoll'] PatrickMassot and mcdoll
assignee:PatrickMassot assignee:mcdoll
134-76211
4 months ago
178-7244
178 days ago
35-55566
35 days
32436 thorimur
author:thorimur
feat: `unusedFactInType` linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter 55/3 Mathlib/Init.lean,Mathlib/Tactic/Linter/UnusedInstancesInType.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
134-56082
4 months ago
unknown
0-0
0 seconds
33535 erdOne
author:erdOne
feat(Algebra/Category): `Under.pushout` preserves finite limits for flat homomorphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra merge-conflict
label:t-algebra$
157/5 Mathlib.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/CommAlgCat/BaseChange.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/Ring/Flat.lean 8 5 ['chrisflav', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'robin-carlier'] eric-wieser
assignee:eric-wieser
134-46222
4 months ago
134-74325
134 days ago
11-30775
11 days
28631 faenuccio
author:faenuccio
feat(Data\Nat\ModEq.lean): add grind attribute to ModEq --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-data merge-conflict 7/0 Mathlib/Data/Nat/ModEq.lean 1 5 ['faenuccio', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
134-28166
4 months ago
284-8541
284 days ago
0-22
22 seconds
30391 rudynicolop
author:rudynicolop
feat(Data/List): list splitting definitions and lemmas This PR continues the work from #24395. Original PR: https://github.com/leanprover-community/mathlib4/pull/24395 t-data new-contributor awaiting-author 108/2 Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/TakeDrop.lean 2 50 ['BoltonBailey', 'IlPreteRosso', 'TwoFX', 'Vierkantor', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'rudynicolop'] TwoFX
assignee:TwoFX
133-77045
4 months ago
133-85567
133 days ago
93-10043
93 days
33126 CoolRmal
author:CoolRmal
feat: function composition preserves boundedness This PR adds the following theorem: if the range of a function `g` is bounded above, then `g ∘ f` is bounded above for all functions `f`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 12/0 Mathlib/Order/Bounds/Basic.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] bryangingechen
assignee:bryangingechen
133-75512
4 months ago
133-75513
133 days ago
27-6197
27 days
20719 gio256
author:gio256
feat(AlgebraicTopology): delaborators for truncated simplicial notations We add delaborators for the following notations, introduced in #20688: - `⦋m⦌ₙ`, which denotes the `m`-dimensional simplex in the `n`-truncated simplex category. - `X _⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated simplicial object `X`. - `X ^⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated cosimplicial object `X`. If `pp.proofs` is set to `true`, we also pretty-print the proof `p : m ≤ n` for all three notations as `⦋m, p⦌ₙ`, `X _⦋m, p⦌ₙ`, and `X ^⦋m, p⦌ₙ`, respectively. Credit to @kmill for one piece of code and much metaprogramming inspiration. --- - [x] depends on: #20688 - [x] depends on: #23018 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-topology infinity-cosmos t-meta please-adopt will-close-soon 525/33 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimplexCategory.lean,Mathlib/Util/Superscript.lean,MathlibTest/SimplexCategory.lean,MathlibTest/SimplicialObject.lean,MathlibTest/superscript.lean,scripts/noshake.json 11 24 ['eric-wieser', 'gio256', 'github-actions', 'joneugster', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
133-75299
4 months ago
313-52439
313 days ago
88-84229
88 days
31348 PatrickMassot
author:PatrickMassot
chore: fix a docstring typo --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation awaiting-author t-analysis 1/1 Mathlib/Analysis/Calculus/Darboux.lean 1 3 ['ADedecker', 'dopamine333', 'github-actions'] nobody
133-71242
4 months ago
203-77714
203 days ago
0-21655
6 hours
10991 thorimur
author:thorimur
feat: `tfae` block tactic This PR introduces `tfae` block tactic syntax: ```lean tfae 1 → 2 := /- proof of `P₁ → P₂` -/ 2 → 3 := /- proof of `P₂ → P₃` -/ 3 → 1 := /- proof of `P₃ → P₁` -/ ``` Like the recent change to `tfae_have`, this syntax also supports all sorts of matching that `have` itself supports: ```lean tfae 2 → 3 | h₂ => /- proof of `P₃` -/ 3 → 1 -- given `P₁ := ∀(a : A), (b : B), (c : C), X`: | h₃, a, b, c => /- proof of `X` -/ ⟨h_mp, h_mpr⟩ : 1 ↔ 2 := /- proof of `P₁ ↔ P₂`; puts `h_mp : P₁ → P₂`, `h_mpr : P₂ → P₁` in the lctx -/ ``` This initial implementation is currently very simple, and relies on `tfae_have` and `tfae_finish`. Although we intend to migrate away from that syntax, this PR does not remove support for it or deprecate `tfae_have`/`tfae_finish` in any way; migration (but not deprecation) is done in #11003. --- - [x] depends on: #10653 - [x] depends on: #10994 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP modifies-tactic-syntax t-meta 392/124 Mathlib/Tactic/TFAE.lean,scripts/noshake.json,test/tfae.lean 3 5 ['github-actions', 'joneugster', 'mathlib4-dependent-issues-bot', 'thorimur'] joneugster
assignee:joneugster
133-61172
4 months ago
617-25041
617 days ago
7-13967
7 days
29282 Jlh18
author:Jlh18
feat(CategoryTheory): HasColimits instance on Grpd Show that the category of groupoids has all small colimits, as a coreflective subcategory of `Cat`, which has all small colimits. The right adjoint of the forgetful functor is the core functor `CategoryTheory.Core.functor`. - [ ] depends on: #29283 [Core of a category as a functor] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-category-theory 140/4 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/CategoryTheory/Category/Grpd.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Colimit.lean,Mathlib/CategoryTheory/Groupoid/Grpd/Core.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
132-725
4 months ago
269-32509
269 days ago
0-396
6 minutes
29587 uniwuni
author:uniwuni
feat(GroupTheory/Finiteness): define finitely generated semigroups We define finitely generated semigroups and basics similarly to monoids and groups and prove that semigroups and monoids remain finitely generated when a congruence is quotiented out. This will be important when further developing semigroup theory. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-group-theory 259/14 Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/GroupTheory/Finiteness.lean 2 4 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'uniwuni'] dupuisf
assignee:dupuisf
132-681
4 months ago
234-5585
234 days ago
25-78230
25 days
28905 grunweg
author:grunweg
feat: immersions are locally embeddings Hopefully, this can be used for the topological portion of #28865. (That part is not certain yet, the rest works.) --- Needs some clean-up in both the immersions file, and need to move the helper results about embeddings to the correct location. - [x] depends on: #28793 - [ ] depends on: #28796 - [x] depends on: #28853 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict t-differential-geometry 331/15 Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean 7 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
131-63272
4 months ago
277-64686
277 days ago
0-397
6 minutes
30504 grunweg
author:grunweg
feat: add custom elaborators for immersions And golf the fail using it, a bit. Other usage sites expose bugs or unexpected error messages... TODO: add basic tests for basic usage TODO: fix those errors (then try to golf further! --- - [x] depends on: #30307 - [x] depends on: #30356 - [ ] depends on: #28796 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-meta t-differential-geometry merge-conflict 286/87 Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean 6 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
131-63026
4 months ago
228-81256
228 days ago
0-13
13 seconds
32745 LTolDe
author:LTolDe
feat(Topology/Algebra): add MulActionConst.lean add Topology/Algebra/MulActionConst.lean introduce class `ContinuousSMulConst` for a scalar multiplication that is continuous in the first argument, in analogy to `ContinuousConstSMul` define `MulAction.ball x U` as the set `U • {x}` given `[SMul G X] (x : X) (U : Set G)` The lemmas shown here will be useful to prove the **Effros Theorem**, see [zulip](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/) awaiting-author new-contributor t-topology 117/0 Mathlib.lean,Mathlib/Topology/Algebra/MulActionConst.lean 2 8 ['LTolDe', 'github-actions', 'urkud'] nobody
130-72991
4 months ago
137-52521
137 days ago
16-33128
16 days
34134 Paul-Lez
author:Paul-Lez
feat(Mathlib/Analysis/PDE/Quasilinear/Characteristics): the method of characteristics for first order quasilinear PDEs This PR continues the work from #25710. Original PR: https://github.com/leanprover-community/mathlib4/pull/25710 WIP t-analysis 620/0 Mathlib.lean,Mathlib/Analysis/PDE/Quasilinear/Characteristics.lean,Mathlib/Analysis/PDE/Quasilinear/Defs.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 4 3 ['Paul-Lez', 'github-actions', 'mcdoll'] nobody
130-529
4 months ago
130-84276
130 days ago
0-146
2 minutes
33478 anishrajeev
author:anishrajeev
feat(ModelTheory): define a subset of the topology over complete types Define a subset of the Stone Space over a language expanded with countably many constants. Define the proposition to indicate if a language is countable. The subset's density and openness is a future goal to prove (have a branch where it is almost finished), in pursuit of formalizing the proof of the Omitting Types Theorem via properties of Baire spaces. - [ ] depends on: #32215 - [ ] depends on: #32546 t-logic merge-conflict new-contributor blocked-by-other-PR 160/1 Mathlib.lean,Mathlib/ModelTheory/Topology/Types.lean,Mathlib/ModelTheory/Types.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 4 8 ['NoneMore', 'anishrajeev', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'tb65536'] nobody
129-66510
4 months ago
137-80334
137 days ago
10-38484
10 days
30853 JovanGerb
author:JovanGerb
feat(LinearAlgebra/AffineSpace/Simplex): `CoeFun` instance for `Simplex` This PR introduces the notation `s i` to refer to the `i`th vertex of simplex `s`, which replaces the current `s.points i`. It does this by adding a `CoeFun` instance. I first tried using `FunLike`, but this came with some different problems related to discrimination tree indexing in `simp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-euclidean-geometry merge-conflict 381/371 Archive/Imo/Imo2019Q2.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Normed/Affine/Simplex.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Angle/Sphere.lean,Mathlib/Geometry/Euclidean/Circumcenter.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Euclidean/MongePoint.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/Geometry/Euclidean/SignedDist.lean,Mathlib/Geometry/Euclidean/Simplex.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Centroid.lean,scripts/nolints.json 15 14 ['JovanGerb', 'eric-wieser', 'github-actions', 'jsm28', 'mathlib4-merge-conflict-bot'] jsm28
assignee:jsm28
129-35227
4 months ago
175-74000
175 days ago
41-18647
41 days
34195 eric-wieser
author:eric-wieser
feat: continuous bundled actions These are `Continuous` versions of existing definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra large-import
label:t-algebra$
59/0 Mathlib/Topology/Algebra/ContinuousMonoidHom.lean 1 1 ['github-actions'] nobody
129-10323
4 months ago
72-56848
72 days ago
0-1929
32 minutes
34238 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: some lemmas about AlgHom 1 and * --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra
label:t-algebra$
22/0 Mathlib/Algebra/Algebra/Hom.lean 1 5 ['Ruben-VandeVelde', 'Vierkantor', 'eric-wieser', 'github-actions'] nobody
128-1395
4 months ago
128-1395
128 days ago
0-45401
12 hours
31092 FlAmmmmING
author:FlAmmmmING
feat(Algebra/Group/ForwardDiff.lean): Add theorem `sum_shift_eq_fwdDiff_iter`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor delegated
label:t-algebra$
17/1 Mathlib/Algebra/Group/ForwardDiff.lean 1 20 ['BeibeiX0', 'FlAmmmmING', 'Ruben-VandeVelde', 'dagurtomas', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] nobody
127-74010
4 months ago
127-74010
127 days ago
54-22055
54 days
34141 gululu996-ui
author:gululu996-ui
feat(Combinatorics/SimpleGraph/Acyclic): finite trees have at least two degree-one vertices Add a lemma showing that a finite tree with at least two vertices has at least two vertices of degree 1. - Introduce a helper lemma `SimpleGraph.Connected.one_le_degree` for connected graphs on a nontrivial finite type. - Prove the leaf-count lower bound via the degree-sum identity and a counting argument. --- awaiting-author new-contributor t-combinatorics 72/2 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 9 ['IvanRenison', 'SnirBroshi', 'github-actions', 'vlad902'] nobody
127-70268
4 months ago
129-51704
129 days ago
1-23617
1 day
29014 ShreckYe
author:ShreckYe
feat(Data/List/Scan): some theorems that relate `scanl` with `foldl` I am not sure which is the best form of `getElem_scanl_eq_foldl_take` here, so I added several alternative forms. Feel free to remove any of them if necessary. merge-conflict t-data 35/0 Mathlib/Data/List/Scan.lean 1 15 ['ShreckYe', 'github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] pechersky
assignee:pechersky
127-66305
4 months ago
201-31350
201 days ago
74-59834
74 days
33689 BoltonBailey
author:BoltonBailey
feat(Probability): PMF point mass function This PR defines a pointMass function, which returns the value of a PMF at a point as a `NNReal`. --- Perhaps `unitInterval` would be better? Note: A number of Zulip discussions lists below have discussed what the return type of `PMF` should be and if the definition should be refactored. This PR avoids this by simply creating a new function, but depends on a PR from these discussions to not cause a collision. Zulip: - [#new members > Why is the codomain of PMF in mathlib ENNReal and not NNReal @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Why.20is.20the.20codomain.20of.20PMF.20in.20mathlib.20ENNReal.20and.20not.20NNReal/near/526572449) - [#new members > Performing arithmetic with ENNReals @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Performing.20arithmetic.20with.20ENNReals/near/525936290) - [#Is there code for X? > Statistical distance for `PMF`s? @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Statistical.20distance.20for.20.60PMF.60s.3F/near/525234190) - [#mathlib4 > PMF Refactor: FunLike vs Definition Change](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change/with/567771586) - [ ] depends on: #34138 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability WIP blocked-by-other-PR 93/0 Mathlib/Probability/ProbabilityMassFunction/PointMass.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
127-58131
4 months ago
unknown
0-0
0 seconds
33680 BoltonBailey
author:BoltonBailey
feat(Probability/ProbabilityMassFunction): add Total Variation distance Adds the statistical distance/total variation distance. See Zulip discussion: - [#Is there code for X? > total variation distance between two PMFs](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/total.20variation.20distance.20between.20two.20PMFs/with/566810511) This PR was authored with the support of Claude Opus 4.5 --- - [ ] depends on: #33689 [provide an API for NNReal-returning function] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability blocked-by-other-PR LLM-generated 47/0 Mathlib/Probability/ProbabilityMassFunction/Distance.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
127-19335
4 months ago
127-19483
127 days ago
16-37540
16 days
21476 grunweg
author:grunweg
feat(lint-style): enable running on downstream projects Enable lint-style to run on downstream projects, by making the following modifications: - allow passing an explicit list of libraries to lint: if nothing is passed, it lints `Mathlib`, `Archive` and `Counterexamples` (as before); otherwise, it lints precisely the passed modules - only check init imports, undocumented scripts and the errors from `lint-style.py` when linting Mathlib - make the style exceptions file configurable and optional: using the `nolints-file` flag, the exceptions file can be configured. If the flag is omitted, we try to find a file at `scripts/nolints-style.txt` --- and otherwise proceed with no style exceptions. This means mathlib can continue unchanged, and downstream projects can either add an explicit exceptions file, or proceed without any exceptions. After this PR, one should be able to run lint-style on a downstream project by `lake exe lint-style ProjectName`. Prompted by [this zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/lint-style.20for.20downstream.20libraries). --- - [x] depends on: #24570 - [x] depends on: #24953 (I did not test the last part.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author please-adopt 58/19 Mathlib/Tactic/Linter/TextBased.lean,scripts/lint-style.lean 2 21 ['Vierkantor', 'adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
127-8634
4 months ago
378-69367
378 days ago
43-17409
43 days
34086 adomani
author:adomani
perf: test the effect of localizing the whitespace linter This PR checks whether the modification contained in #26299 have a positive effect on this one. The other PR has a few minor regressions, but hopefully this PR has very substantial speed ups. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 2076/462 Archive/Imo/Imo2010Q5.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/HeawoodUnitDistance.lean,Counterexamples/MonicNonRegular.lean,Mathlib/Algebra/AffineMonoid/Basic.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Module/TransferInstance.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStructTruncated.lean,Mathlib/AlgebraicTopology/SimplicialSet/Path.lean,Mathlib/AlgebraicTopology/SimplicialSet/StrictSegal.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/CategoryTheory/Comma/Over/OverClass.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Monoidal/Action/Basic.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/OfHasFiniteProducts.lean,Mathlib/Combinatorics/SetFamily/LYM.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/Language.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Data/DFinsupp/Notation.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Fin/Fin2.lean,Mathlib/Data/Finset/Slice.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Matrix/Cartan.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Num/Bitwise.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Vector/MapLemmas.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Laurent.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/GroupTheory/FreeGroup/Reduce.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/PullOut.lean,Mathlib/MeasureTheory/Integral/TorusIntegral.lean,Mathlib/ModelTheory/Syntax.lean,Mathlib/NumberTheory/Niven.lean,Mathlib/Probability/CondVar.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/RingTheory/Nilpotent/Exp.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/Whitespace.lean,Mathlib/Tactic/Ring/NamePolyVars.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Instances/Rat.lean,Mathlib/Util/Superscript.lean,MathlibTest/WhitespaceLinter.lean 67 5 ['adomani', 'github-actions', 'leanprover-radar', 'mathlib4-merge-conflict-bot'] nobody
127-2176
4 months ago
unknown
0-0
0 seconds
34371 grunweg
author:grunweg
feat: module instance on ContMDiffMap From fpvandoorn and my LeanCourse25. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry 117/0 Mathlib/Geometry/Manifold/Algebra/LieGroup.lean 1 2 ['github-actions'] nobody
125-78686
4 months ago
125-82771
125 days ago
0-7
7 seconds
34219 or4nge19
author:or4nge19
feat(MeasureTheory/BorelSpace): measurability of annuli on (pseudo)(e)metric space it assumes `OpensMeasurableSpace` original [file](https://github.com/fpvandoorn/carleson/blob/master/Carleson/ToMathlib/Annulus.lean) From the Carleson project. Co-authored-by: James Sundstrom [james.sundstrom@gmail.com](mailto:james.sundstrom@gmail.com) --- - [x] depends on: #34200 - [ ] depends on: #34202 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) carleson blocked-by-other-PR t-measure-probability 534/0 Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Annulus.lean,Mathlib/Topology/MetricSpace/Annulus.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
125-15251
4 months ago
128-69256
128 days ago
0-236
3 minutes
33132 BoltonBailey
author:BoltonBailey
feat(Computability): Single-tape TM complexity Currently, time complexity in mathlib is defined in terms of (a kind of) multi-tape Turing machine [Turing.FinTM2](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Computability/TMComputable.html#Turing.FinTM2). This (currently Draft) PR develops time complexity in terms of Single-Tape Turing Machines. There are a few reasons to do this: * Having definitions of time complexity for both single-tape and multi-tape TMs is a prerequisite to prove theorems relating these definitions of complexity (in particular, the theorem that the definition of polynomial time computability is equivalent between these notions). * The Multi-tape "TM2" definition seems to be based on "Wang B-Machines" ([wiki](https://en.wikipedia.org/wiki/Wang_B-machine)) which involves both a program of function labels, as well as a set of states. * I think it's a bit more common to see a simpler presentation of single-tape ([and multitape](https://en.wikipedia.org/wiki/Multitape_Turing_machine)) Turing machines which only provides a set of states. * It seems to me that the B-Machine-like definition makes it a bit complicated to make progress. For example, if I want to compose Turing Machines, then I have to be able to construct a new program and state set, which involves mapping the [Turing.TM2.Stmt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Computability/TuringMachine.html#Turing.TM2.Stmt) type to the sum type of the tapes. I have to do something similar for single-tape TMs, but the Stmt type is less complicated, so this is less involved. * If we want to continue on and define space complexity, it seems convenient to have only a single tape, so that we don't have to do lots of reasoning over summations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability WIP 1480/0 Mathlib/Computability/BinEncoding.lean,Mathlib/Computability/EncodingTo.lean,Mathlib/Computability/SingleTapeBinTMComputable.lean,Mathlib/Computability/SingleTapeTMComputable.lean 4 1 ['github-actions'] nobody
124-57914
4 months ago
unknown
0-0
0 seconds
34155 zcyemi
author:zcyemi
feat(Geometry/Euclidean/Triangle): add altitudeFoot lies strictly between endpoints for an obtuse angle --- add `sbtw_orthogonalProjection_of_angle_ge_pi_div_two` t-euclidean-geometry awaiting-author 93/0 Mathlib/Geometry/Euclidean/Triangle.lean 1 4 ['github-actions', 'jsm28'] nobody
124-38389
4 months ago
124-43769
124 days ago
5-82220
5 days
31134 thorimur
author:thorimur
chore: use `whenLinterActivated` in linters Replaces boilerplate in linters with `whenLinterActivated` or `whenLinterOption` where possible. --- - [ ] depends on: #31133 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated 79/102 Mathlib/Tactic/Linter/CommandRanges.lean,Mathlib/Tactic/Linter/DocPrime.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/Linter/GlobalAttributeIn.lean,Mathlib/Tactic/Linter/HashCommandLinter.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/Lint.lean,Mathlib/Tactic/Linter/MinImports.lean,Mathlib/Tactic/Linter/Multigoal.lean,Mathlib/Tactic/Linter/OldObtain.lean,Mathlib/Tactic/Linter/PPRoundtrip.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UpstreamableDecl.lean,Mathlib/Tactic/Linter/Whitespace.lean,Mathlib/Util/CountHeartbeats.lean,scripts/lint-style.lean 17 8 ['github-actions', 'grunweg', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] grunweg
assignee:grunweg
124-4945
4 months ago
unknown
0-0
0 seconds
34186 faenuccio
author:faenuccio
feat(GroupTheory/SpecificGroups/Cyclic): a quotient of a cyclic group is cyclic Add the Normal instance for a subgroup of a cyclic group; and derive that every quotient of a cyclic group is cyclic, as an instance. t-group-theory awaiting-author merge-conflict 8/0 Mathlib/GroupTheory/SpecificGroups/Cyclic.lean 1 9 ['erdOne', 'faenuccio', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'tb65536'] tb65536
assignee:tb65536
123-78787
4 months ago
124-52170
124 days ago
4-69261
4 days
31836 hanwenzhu
author:hanwenzhu
chore(MeasureTheory/IntervalIntegral): generalize fundamental theorem of calculus to `HasDerivWithinAt` instead of `HasDerivAt` This PR generalizes `HasDerivAt` to `HasDerivWithinAt`, and `DifferentiableAt` to `DifferentiableOn`, for the fundamental theorem of calculus for interval integrals. I found this during trying to state a skeleton of a proof of a higher-dimensional Taylor's theorem. There, the correct assumption is something like `ContDiffOn n f [[a, b]]`, rather than `∀ x ∈ [[a, b]], ContDiffAt 𝕜 n f [[a, b]] x`, which traces back to this issue. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis t-measure-probability awaiting-author merge-conflict 143/51 Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/NonIntegrable.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/IntegrationByParts.lean,Mathlib/NumberTheory/AbelSummation.lean,Mathlib/NumberTheory/LSeries/SumCoeff.lean 7 10 ['github-actions', 'hanwenzhu', 'mathlib4-merge-conflict-bot', 'sgouezel'] sgouezel
assignee:sgouezel
123-75139
4 months ago
183-83941
183 days ago
6-17192
6 days
12879 grunweg
author:grunweg
feat: port ge_or_gt linter from mathlib3 Code works and is essentially green: next step is to split up into separate PRs. Feedback welcome on whether: - all the test changes are good, or I should simply allow it in more cases - if calc blocks need to be explicitly exempt --- - [ ] depends on: #12933 - [ ] depends on: #12934 - [ ] depends on: #12931 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter tech debt blocked-by-other-PR 736/319 Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/NormedSpace/MStructure.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Int/Lemmas.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Nat/Upto.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/GroupTheory/Coxeter/Length.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/NumberTheory/LegendreSymbol/JacobiSymbol.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Rayleigh.lean,Mathlib/Order/Filter/AtTopBot.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/Adjoin/Basic.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linter/GeOrGt.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/MetricSpace/Cauchy.lean,Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sequences.lean,scripts/lint-style.py,test/Explode.lean,test/GCongr/inequalities.lean,test/GeOrGt.lean,test/LibrarySearch/IsCompact.lean,test/LibrarySearch/basic.lean,test/Recall.lean,test/Rify.lean,test/Use.lean,test/cancel_denoms.lean,test/congr.lean,test/delabLinearIndependent.lean,test/delaborators.lean,test/interval_cases.lean,test/linarith.lean 109 4 ['github-actions', 'grunweg', 'urkud'] nobody
123-52615
4 months ago
744-53609
744 days ago
0-15256
4 hours
29953 slashbade
author:slashbade
feat: add reap for experiment --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 40/3 Cache/IO.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,lake-manifest.json,lakefile.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
122-62793
4 months ago
unknown
0-0
0 seconds
33110 dagurtomas
author:dagurtomas
feat(CategoryTheory): adjoint functor theorems for presentable categories --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory 214/5 Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/Presentable/AdjointFunctorTheorems.lean 2 2 ['github-actions', 'joelriou'] nobody
122-50220
4 months ago
161-47508
161 days ago
0-5
5 seconds
8608 eric-wieser
author:eric-wieser
feat: multiplicativize `AddTorsor` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra please-adopt
label:t-algebra$
268/199 Mathlib/Algebra/AddTorsor.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Data/Set/Pointwise/SMul.lean,Mathlib/Tactic/ToAdditive.lean 4 2 ['alreadydone'] nobody
122-39493
4 months ago
unknown
0-0
0 seconds
34278 gasparattila
author:gasparattila
feat(Topology/Sets): connectedness of `NonemptyCompacts` --- - [x] depends on: #34268 - [ ] depends on: #34273 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR merge-conflict 434/17 Mathlib/Topology/Sets/VietorisTopology.lean 4 6 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
121-78531
4 months ago
127-48285
127 days ago
0-1194
19 minutes
34280 gasparattila
author:gasparattila
feat(Topology/Sets): local connectedness of `(Nonempty)Compacts` --- - [ ] depends on: #34278 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR merge-conflict 493/17 Mathlib/Topology/Sets/VietorisTopology.lean 4 6 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
121-76269
4 months ago
127-48288
127 days ago
0-235
3 minutes
28017 eric-wieser
author:eric-wieser
feat: generalize some opnorm lemmas to seminormed spaces --- - [ ] depends on: #28014 - [ ] depends on: #28101 - [ ] depends on: #29120 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 60/24 Mathlib/Analysis/NormedSpace/OperatorNorm/NNNorm.lean,Mathlib/Analysis/NormedSpace/Real.lean 2 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
121-55136
4 months ago
297-44392
297 days ago
0-1
1 second
31377 CoolRmal
author:CoolRmal
feat: a series of smooth functions that converges (locally) uniformly is smooth The main theorem is the proof that an infinite sum of $C^n$ functions on a one-dimensional domain which converges locally uniformly is $C^n$ and related results. This should be compared with [contDiff_tsum](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Calculus/SmoothSeries.html#contDiff_tsum) where the same result is proved for functions on an arbitrary domain but with a slightly stronger convergence assumption. The main motivation for this PR is the [#mathlib4 > Tychonov's Counterexample for the Heat Equation](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tychonov's.20Counterexample.20for.20the.20Heat.20Equation/with/547367912). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor awaiting-author merge-conflict 110/18 Mathlib/Analysis/Calculus/SmoothSeries.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/Topology/Algebra/InfiniteSum/TsumUniformlyOn.lean,Mathlib/Topology/Algebra/InfiniteSum/UniformOn.lean 5 20 ['CoolRmal', 'github-actions', 'mathlib4-merge-conflict-bot', 'ocfnash', 'sgouezel'] ocfnash
assignee:ocfnash
121-52366
4 months ago
182-69331
182 days ago
8-14942
8 days
26158 upobir
author:upobir
feat(NumberTheory/Divisors): add int divisors This PR continues the work from #25209. Original PR: https://github.com/leanprover-community/mathlib4/pull/25209 awaiting-author t-number-theory merge-conflict 101/2 Mathlib/NumberTheory/Divisors.lean 1 38 ['MichaelStollBayreuth', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'upobir'] mariainesdff
assignee:mariainesdff
121-18689
4 months ago
298-76291
298 days ago
46-1067
46 days
32865 robertmaxton42
author:robertmaxton42
(WIP) Separation axioms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 4439/13 Mathlib.lean,Mathlib/CategoryTheory/LiftingProperties/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/ConcreteCategory.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Order/BooleanAlgebra/Set.lean,Mathlib/Topology/AlexandrovDiscrete.lean,Mathlib/Topology/Category/Lifting/Defs.lean,Mathlib/Topology/Category/Lifting/Separation.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean,Mathlib/Topology/Category/UProp.lean,Mathlib/Topology/Coherent.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/ContinuousMap/Basic.lean,Mathlib/Topology/ContinuousMap/Constructions.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/Maps/Basic.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean,Mathlib/Topology/SeparatedMap.lean,Mathlib/Topology/Separation/GDelta.lean,Mathlib/Topology/Separation/Regular.lean,Mathlib/Topology/UnitInterval.lean,Mathlib/Topology/UrysohnsLemma.lean,docs/references.bib 30 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
121-4086
4 months ago
unknown
0-0
0 seconds
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
120-75887
4 months ago
120-75887
120 days ago
42-21618
42 days
27835 edegeltje
author:edegeltje
feat(Tactic): ring modulo a given characteristic This PR extends the `ring` tactic with a new config argument `char` which will try to reduce all constant terms modulo the given characteristic. This allows `ring` to prove e.g. `(x + y)^3 = x^3 + y^3` in characteristic 3. This is a simpler and faster way to do so than what we had before: `repeat { ring; reduce_mod_char }` becomes `ring (config := { char := 3 })`. The first step is to split off the required `CharP` definitions, since `Mathlib.Algebra.CharP.Basic` already requires the `ring` tactic. To perform the reduction modulo the given characteristic, I implemented `reduceCast` which reduces a raw integer, and wrapped it in `reduceResult` that takes a `NormNum.Result` for easy use. We need to pass through quite a few parameters into `reduceResult` so maybe it's worth defining a structure, or reusing `Cache` for this. Then it's basically a case of replacing every place where `ring` constructs a numeral with a call to `reduceResult`. Limitations: * `ring` doesn't attempt to detect the characteristic by itself, you need to pass it in explicitly. Trying to infer a `CharP` instance at each point sounds quite expensive. * Since the support for `%` in `NormNum` only exists for integers, I implemented the reduction only when a `Ring` instance is available. It is still sound in the semiring case, just not complete. * We could optimize exponentiation in the specific case where the characteristic `p` is a prime that divides the exponent `n`: `(x + y)^n = x^n + y^n`. I'll leave that to future work. --- This used to be #10765 by Anne Baanen before the great forkening. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict large-import migrated-from-branch t-meta awaiting-author WIP 312/133 Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/Tactic/LinearCombination.lean,Mathlib/Tactic/Module.lean,Mathlib/Tactic/Polyrith.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/Compare.lean,Mathlib/Tactic/Ring/RingNF.lean,MathlibTest/ring_compare.lean,MathlibTest/ring_mod_char.lean 10 14 ['edegeltje', 'github-actions', 'joneugster', 'mathlib4-merge-conflict-bot'] joneugster
assignee:joneugster
120-74533
4 months ago
289-42242
289 days ago
11-83928
11 days
33954 or4nge19
author:or4nge19
feat(CategoryTheory/Abelian): add Filtration API Filtered objects in an abelian category (Deligne, *Théorie de Hodge II*, §1.1). inspired by a [message](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Proposal.3A.20Complexifications.20with.20a.20view.20towards.20Hodge.20theory/near/565511365) by Joel Riou Co-authored-by: Jonathan Washburn --- PR 1/4 Next PRs will cover Opposed filtrations (Deligne, *Théorie de Hodge II*, §1.2.1–§1.2.3). Induced filtrations on graded pieces (Deligne, *Théorie de Hodge II*, §1.2.1). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author 356/0 Mathlib.lean,Mathlib/CategoryTheory/Filtration/Basic.lean,docs/references.bib 3 12 ['dagurtomas', 'github-actions', 'joelriou', 'or4nge19'] nobody
120-65134
4 months ago
120-65295
120 days ago
3-29113
3 days
34092 staroperator
author:staroperator
feat(SetTheory/ZFC): properties of `ZFSet.omega` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory awaiting-author 77/10 Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean 3 31 ['Komyyy', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator', 'vihdzp'] YaelDillies
assignee:YaelDillies
120-59539
4 months ago
33-11271
33 days ago
99-2887
99 days
34575 urkud
author:urkud
feat(Integral/Pi): add more convenience API --- It's some old code I want to revive&merge. I'll change it from draft when it's ready for review. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 406/1 Mathlib/MeasureTheory/Integral/Pi.lean 1 1 ['github-actions'] nobody
120-53576
4 months ago
120-74440
120 days ago
0-22
22 seconds
34130 FlAmmmmING
author:FlAmmmmING
feat(Combinatorics/SimpleGraph/Acyclic): Add new theorem `isTree_iff_uniqueShortest_path` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 28/1 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 9 ['IvanRenison', 'github-actions', 'metakunt', 'vlad902'] nobody
120-11894
4 months ago
128-82309
128 days ago
2-6389
2 days
34487 martinwintermath
author:martinwintermath
feat(LinearAlgebra/SesquilinearForm): add instances for SeparatingLeft, SeparatingRight and Nondegenerate Add typeclass instances for `Fact B.SeparatingLeft`, `Fact B.SeparatingRight`, `Fact B.Nondegenerate`: * inferring `Fact B.flip.SeparatingLeft` from `Fact B.SeparatingRight` and vice versa * inferring `Fact B.SeparatingLeft` and `Fact B.SeparatingRight` from `Fact B.Nondegenerate` * inferring `Fact B.SeparatingLeft` and `Fact B.Nondegenerate` for `.id` and `Dual.eval` * inferring `Fact B.Nondegenerate` from `B.IsPerfPair` I also updated `PointedCone.dual_univ` to demonstrate the usefulness of these additions. Note that I needed to add an import to `Cone/Dual.lean` which somehow imports cardinals. So I needed to remove cardinals from `assert_not_exists`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor large-import merge-conflict
label:t-algebra$
67/12 Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean 2 4 ['github-actions', 'martinwintermath', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
119-84948
3 months ago
60-71285
60 days ago
13-75766
13 days
32872 JovanGerb
author:JovanGerb
feat(Data/Real/Basic): don't expose the definition of `Real` This PR refactors the definition of `Real` using the module system, so that `Real` cannot be seen as a structure anymore. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 141/250 Archive/Imo/Imo2013Q5.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Counterexamples/SeminormLatticeNotDistrib.lean,Counterexamples/TopologistsSineCurve.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Data/Real/Basic.lean,MathlibTest/Complex.lean,MathlibTest/Continuity.lean,MathlibTest/Quaternion.lean,MathlibTest/Real.lean 10 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
119-55829
3 months ago
166-85628
166 days ago
0-1695
28 minutes
34096 urkud
author:urkud
chore(EMetric/*): rename theorems --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 789/737 Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/IteratedDeriv/ConvergenceOnBall.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/TaylorSeries.lean,Mathlib/Analysis/Convex/EGauge.lean,Mathlib/Analysis/InnerProductSpace/Projection/Minimal.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Bounded.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/Normed/Group/SeparationQuotient.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Module/Connected.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Operator/Completeness.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean,Mathlib/Geometry/Manifold/Riemannian/Basic.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Metric.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/SimpleFuncDense.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/OpenPos.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/MetricSpace/Lipschitz.lean,Mathlib/Topology/Baire/CompleteMetrizable.lean,Mathlib/Topology/ContinuousMap/Bounded/Basic.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/EMetricSpace/Diam.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/EMetricSpace/Paracompact.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean,Mathlib/Topology/MetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/CantorScheme.lean,Mathlib/Topology/MetricSpace/Cauchy.lean,Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/MetricSpace/Contracting.lean,Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/Dilation.lean,Mathlib/Topology/MetricSpace/Gluing.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Holder.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/Isometry.lean,Mathlib/Topology/MetricSpace/PartitionOfUnity.lean,Mathlib/Topology/MetricSpace/Perfect.lean,Mathlib/Topology/MetricSpace/Polish.lean,Mathlib/Topology/MetricSpace/Pseudo/Basic.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/MetricSpace/Snowflaking.lean,Mathlib/Topology/Metrizable/CompletelyMetrizable.lean,Mathlib/Topology/UniformSpace/Cauchy.lean,Mathlib/Topology/UniformSpace/Real.lean 80 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
119-55578
3 months ago
unknown
0-0
0 seconds
26087 grunweg
author:grunweg
feat: a `SliceModel` typeclass for models with corners for embedded submanifolds We define a new typeclass to denote a model with corners which "embeds" into another one: there are an embedding of the underlying topological spaces and a continuous linear inclusion between the normed spaces, which are compatible with the maps given by the models with corners. This condition is used for defining smooth (immersed and embedded) submanifolds: for `M` to be a submanifold of `N`, to boot their models with corners should be slice models. This will be defined in a future PR. To prove this definition is workable, we construct many basic instances of slice models - each model with corners is one over itself - slice models are transitive - each model with corners I embeds into two products `I.prod J` and `J.prod I` - Euclidean n-half-space embeds into Euclidean n-space - a Euclidean n-quadrant embeds into Euclidean half-space (hence into Euclidean n-space) - if n\leq m, Euclidean n-space embeds into Euclidean m-space [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Infinite-dimensional.20manifolds/near/413117885) ----------- - [x] depends on: #26083 - [x] depends on: #26082 - [x] depends on: #26086 - [x] depends on: #25705 This PR continues the work from #25505. t-differential-geometry 234/0 Mathlib.lean,Mathlib/Geometry/Manifold/SliceModel.lean 2 4 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
119-51412
3 months ago
339-60133
339 days ago
0-12097
3 hours
34028 floor-licker
author:floor-licker
feat(SimpleGraph): add max-flow/min-cut weak duality This PR introduces a basic s–t flow setup for undirected SimpleGraphs and proves the standard weak-duality inequality: for any feasible flow f and any s–t cut S, value f ≤ cutCapacity S. This is a small, self-contained lemma I extracted while working on larger graph-theoretic formalizations, in particular, results that will ultimately rely on a full max-flow/min-cut theorem. The full MFMC equality/existence statement is not included here. This is the weak-duality direction (∀ f S, value f ≤ cutCapacity S). t-combinatorics new-contributor 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/MaxFlowMinCut.lean 2 14 ['SnirBroshi', 'floor-licker', 'github-actions', 'mathlib-merge-conflicts'] kmill
assignee:kmill
119-37588
3 months ago
70-61117
70 days ago
61-8543
61 days
25841 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove the Kővári–Sós–Turán theorem Prove the Kővári–Sós–Turán theorem (an upper bound on the Zarankiewicz function) --- - [x] depends on: #19865 - [x] depends on: #20738 - [x] depends on: #27602 - [ ] depends on: #34633 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #20240.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/20240* t-combinatorics blocked-by-other-PR 484/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/KovariSosTuran.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Zarankiewicz.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,docs/1000.yaml 6 12 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] kmill
assignee:kmill
119-28420
3 months ago
119-31583
119 days ago
37-76880
37 days
31582 ADedecker
author:ADedecker
chore: more flavours of derivatives within the empty set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-CI merge-conflict 33/11 Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Const.lean 6 5 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] grunweg
assignee:grunweg
119-14743
3 months ago
unknown
0-0
0 seconds
34106 ADedecker
author:ADedecker
feat: map a seminorm along a surjective linear map --- - [x] depends on: #34105 - [x] depends on: #34104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 501/43 Mathlib/Algebra/Order/Group/Pointwise/Bounds.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Group/QuotientSeminorm.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/GaloisConnection/Basic.lean 6 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
118-67523
3 months ago
unknown
0-0
0 seconds
32609 PrParadoxy
author:PrParadoxy
feat(LinearAlgebra/PiTensorProduct): Relation between nested tensor products and tensor products indexed by dependent sums Product tensors in `⨂ j : (Σ i, β i), s j.fst j.snd` can be mapped to product tensors in `⨂ i, ⨂ b : β i, s i b`. If the outer index type is finite, the two types are equivalent. This allows the definition of endomorphisms on PiTensorProducts by specifying them on disjoint subsets of the index set. Such constructions are common e.g. in quantum circuits, quantum cellular automata, and renormalization procedures. --- WIP. This PR contains two "requests for comments". Essentially: * Is a single complex-to-define linear equivalence preferable over several less complex ones, which might however be of limited interest by themselves? * Which trade-offs are appropriate to make things computable? - [ ] depends on: #32608 - [x] depends on: #32600 - [x] depends on: #32598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR merge-conflict t-algebra
label:t-algebra$
683/0 Mathlib.lean,Mathlib/Data/Sigma/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Nested.lean,Mathlib/LinearAlgebra/PiTensorProduct/Set.lean 5 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-49699
3 months ago
172-50137
172 days ago
0-2004
33 minutes
29000 JovanGerb
author:JovanGerb
feat(Tactic/Push): add basic tags and tests This PR adds basic `@[push]` tags, and expands the `push` test file. --- - [ ] depends on: #21965 - [ ] depends on: #30038 - [ ] depends on: #30039 - [ ] depends on: #30042 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-meta 290/196 Archive/Imo/Imo1988Q6.lean,Archive/ZagierTwoSquares.lean,Counterexamples/Phillips.lean,Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/ListOfFn.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/Enumerative/InclusionExclusion.lean,Mathlib/Combinatorics/Hall/Finite.lean,Mathlib/Combinatorics/Matroid/Dual.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Data/Analysis/Filter.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/SDiff.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Nat/Cast/Basic.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/PrimeFin.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Data/Set/Prod.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Constructions/Cylinders.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/MeasureTheory/SetAlgebra.lean,Mathlib/NumberTheory/AbelSummation.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/ModularForms/DedekindEta.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Interval/Set/Defs.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/PartialSups.lean,Mathlib/Order/SetNotation.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Probability/Moments/ComplexMGF.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/HahnSeries/Summable.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/Topology/Algebra/ProperAction/ProperlyDiscontinuous.lean,Mathlib/Topology/Bornology/BoundedOperation.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/Lindelof.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/ContinuousMap/BoundedCompactlySupported.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean,Mathlib/Topology/GDelta/MetrizableSpace.lean,Mathlib/Topology/JacobsonSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/HullKernel.lean,Mathlib/Topology/Perfect.lean,Mathlib/Topology/Sets/CompactOpenCovered.lean,MathlibTest/push.lean 87 7 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-48903
3 months ago
244-34488
244 days ago
0-10831
3 hours
27053 tb65536
author:tb65536
feat: Galois group of `x^n - x - 1` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra large-import merge-conflict
label:t-algebra$
270/155 Archive/Wiedijk100Theorems/AbelRuffini.lean,Mathlib/RingTheory/Polynomial/Morse.lean,Mathlib/RingTheory/Polynomial/Selmer.lean 3 8 ['AntoineChambert-Loir', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
118-48882
3 months ago
321-40599
321 days ago
0-1
1 second
29792 robertmaxton42
author:robertmaxton42
feat(RelCWComplex): a (relative, concrete) CW complex is the colimit of its skeleta Adds: * `RelCWComplex.Subcomplex.isCoherentWith_cover`: a (relative) CW complex is coherent with any collection of subcomplexes that cover. * `RelCWComplex.descBySkeletonLT` and `descBySkeleton`: construct a continuous map from a complex by providing a family of compatible maps from each skeleton and the base. `CWComplex.descBySkeleton` skips the base. - [ ] depends on: #29788 - [ ] depends on: #29790 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR large-import t-topology 672/31 Mathlib/Data/Set/Subset.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Finite.lean,Mathlib/Topology/CWComplex/Classical/Subcomplex.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Coherent.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/ContinuousMap/Basic.lean 10 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'scholzhannah'] nobody
118-48776
3 months ago
253-38459
253 days ago
0-104
1 minute
24100 eric-wieser
author:eric-wieser
feat: restore some explicit binders from Lean 3 Part of #24099 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt t-topology t-algebra
label:t-algebra$
39/42 Mathlib/Data/FinEnum.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Compactness/CompactlyGeneratedSpace.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/Metrizable/CompletelyMetrizable.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean 10 3 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
118-48680
3 months ago
409-40283
409 days ago
0-954
15 minutes
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
118-27492
3 months ago
19-41081
19 days ago
64-59254
64 days
29411 llllvvuu
author:llllvvuu
feat(LinearAlgebra/Matrix/Rank): rank factorization The rank factorization derived from `Module.finBasis`. Co-authored-by: Aristotle Harmonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
20/0 Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean 2 3 ['github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot'] jcommelin
assignee:jcommelin
118-2143
3 months ago
217-78246
217 days ago
46-58011
46 days
30260 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): added CocartesianMonoidalCategory As discussed in #21603 and #28718; this implements chosen finite coproducts on top of `AddMonoidalCategory` as defined in #30150 --- - [ ] depends on: #30150 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR large-import new-contributor t-category-theory 839/125 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Cocartesian/Basic.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 5 4 ['github-actions', 'imbrem', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-2130
3 months ago
236-39099
236 days ago
0-1234
20 minutes
30258 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): to_additive for proofs using `monoidal` Building on #30150, this allows us to use `@[to_additive]` on proofs containing `monoidal`, by tagging the lemmas `monoidal` outputs with `@[to_additive]` as appropriate. Testing on my branch [`additive-monoidal-coherence`](https://github.com/imbrem/mathlib4/tree/additive-monoidal-coherence) shows that this works. It is still future work to have either the `monoidal` tactic or a new `add_monoidal` tactic work for `AddMonoidalCategory` instances directly. --- - [ ] depends on: #30150 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR large-import new-contributor t-category-theory 524/140 Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-2123
3 months ago
236-44752
236 days ago
0-241
4 minutes
29790 robertmaxton42
author:robertmaxton42
feat(IsCoherentWith) : families of maps from a coherent collection of subspaces lift uniquely to maps from the total space * Adds `IsCoherentWith.liftCover`, which lifts a compatible family of continuous maps from each member of a coherent set of subspaces to a single continuous map on the whole space. * Adds `IsCoherentWith.liftCover'`, which does the same but for a set of coherent subspaces given as the range of a function into `Set X` rather than as an explicit `Set (Set X).` - [ ] depends on: #29788 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import t-topology 350/3 Mathlib/Data/Set/Subset.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Coherent.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/ContinuousMap/Basic.lean 7 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
118-2042
3 months ago
253-39119
253 days ago
0-119
1 minute
30253 luigi-massacci
author:luigi-massacci
feat(Analysis/Distribution/ContDiffMapSupportedIn): Add a wrapper for iteratedFDeriv on the type of bundled smooth compactly supported maps Add a wrapper for `iteratedFDeriv` and `fderiv` and on `D_K`, specializing the definitions for `D_K^n` for the case `n = \top` . Co-authored by: @ADedecker --- - [x] depends on: #30240 - [x] depends on: #30239 - [x] depends on: #30236 - [x] depends on: #30202 - [x] depends on: #30201 - [x] depends on: #30199 - [x] depends on: #30198 - [x] depends on: #30197 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis blocked-by-other-PR 463/18 Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean 1 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
118-2025
3 months ago
236-57372
236 days ago
0-599
9 minutes
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
118-1897
3 months ago
143-72429
143 days ago
25-76907
25 days
33470 erdOne
author:erdOne
feat: generalize `Polynomial.freeMonic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra merge-conflict
label:t-algebra$
80/52 Mathlib.lean,Mathlib/Algebra/Polynomial/FreeMonic.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean 3 3 ['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] nobody
118-1772
3 months ago
127-51838
127 days ago
20-81395
20 days
30920 callesonne
author:callesonne
feat(Category/Grpd): define the bicategory of groupoids This is a migration of #25561 to a fork. --- - [x] depends on: #30132 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory large-import merge-conflict 133/46 Mathlib/CategoryTheory/Bicategory/InducedBicategory.lean,Mathlib/CategoryTheory/Category/Grpd.lean,Mathlib/CategoryTheory/ConcreteCategory/Bundled.lean 3 6 ['Jlh18', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
117-80362
3 months ago
216-9646
216 days ago
0-117
1 minute
27918 kim-em
author:kim-em
chore: refactor WithBot/WithTop as structures For now we are still relying on `WithBot` and `WithTop` being defeq, but there is no impossible obstacle to converting them *both* to the same structure. This PR begins this effort; the modified files are all compiling, but there are more files that still have problems. Help on this (either ask to push to my branch, PR to my branch, or just adopt the whole thing!) very much appreciated. file-removed merge-conflict WIP 971/361 Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/ToMulBot.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/BoxIntegral/Partition/SubboxInduction.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Data/Countable/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Defs.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Finset/WithBot.lean,Mathlib/Data/Fintype/WithTopBot.lean,Mathlib/Data/List/MinMax.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Ordmap/Invariants.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/Logic/Embedding/WithBot.lean,Mathlib/Logic/Equiv/WithBot.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/Order/Category/BddLat.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Hom/WithTopBot.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Interval/Set/WithBotTop.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Set.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/TypeTags.lean,Mathlib/Order/WithBot/Basic.lean,Mathlib/Order/WithBot/BooleanAlgebra.lean,Mathlib/Order/WithBot/NAry.lean,Mathlib/RingTheory/OrderOfVanishing.lean,Mathlib/RingTheory/UniqueFactorizationDomain/FactorSet.lean,Mathlib/SetTheory/Cardinal/ENat.lean,Mathlib/Topology/Algebra/Ring/Real.lean,Mathlib/Topology/Category/LightProfinite/Sequence.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean,Mathlib/Topology/Instances/ENat.lean,MathlibTest/lift.lean 56 18 ['eric-wieser', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
117-79999
3 months ago
236-60042
236 days ago
18-9929
18 days
29605 alreadydone
author:alreadydone
experiment(Algebra): unbundle npow/zpow from Monoid/InvDivMonoid --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI WIP
label:t-algebra$
1527/1020 Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/Category/MonCat/ForgetCorepresentable.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Power.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Commute/Basic.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Commute/Units.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Even.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Algebra/Group/Finsupp.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Idempotent.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Nat/Defs.lean,Mathlib/Algebra/Group/Nat/Hom.lean,Mathlib/Algebra/Group/NatPowAssoc.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/PUnit.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Semiconj/Basic.lean,Mathlib/Algebra/Group/Semiconj/Defs.lean,Mathlib/Algebra/Group/Semiconj/Units.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/ZPowers/Basic.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Support.lean,Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Group/TransferInstance.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/ULift.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Commute.lean,Mathlib/Algebra/GroupWithZero/Conj.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Divisibility.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Semiconj.lean,Mathlib/Algebra/GroupWithZero/ULift.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/GroupWithZero/Units/Lemmas.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/NoZeroSMulDivisors/Defs.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/List.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Multiset.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Action.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/Finset.lean,Mathlib/Algebra/Order/Group/Lattice.lean,Mathlib/Algebra/Order/Group/Multiset.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean 162 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-79848
3 months ago
259-57005
259 days ago
0-2
2 seconds
25474 adomani
author:adomani
test for .lean/.md check A test PR for #25473. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter file-removed WIP 10/1 .github/workflows/lint_and_suggest_pr.yml,Mathlib.lean,Mathlib/NumberTheory/NumberField/CMField.Lean 3 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
117-79831
3 months ago
359-5477
359 days ago
0-907
15 minutes
33991 grunweg
author:grunweg
test: pretty-printing of class abbrev Lake build fails with an error in batteries: what am I doing wrong? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict file-removed large-import WIP 118/303 .github/workflows/daily.yml,Mathlib.lean,Mathlib/Algebra/Group/Action/TransferInstance.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Notation/Lemmas.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/Unbundled/Basic.lean,Mathlib/CategoryTheory/Limits/Yoneda.lean,Mathlib/Data/Finite/Defs.lean,Mathlib/Data/Int/Cast/Pi.lean,Mathlib/Data/Int/Init.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/GetD.lean,Mathlib/Data/List/Indexes.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Init.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/Lean/Meta/Simp.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/GaloisConnection/Defs.lean,Mathlib/Order/Monotone/Defs.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Push/Attr.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,Mathlib/Topology/Defs/Basic.lean,Mathlib/Util/AssertExists.lean,MathlibTest/AssertExists.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/DeprecatedSyntaxLinter.lean,MathlibTest/DirectoryDependencyLinter/Test.lean,MathlibTest/EmptyLine.lean,MathlibTest/ExtractGoal.lean,MathlibTest/HaveLetLinter.lean,MathlibTest/LibrarySearch/IsCompact.lean,MathlibTest/LintStyle.lean,MathlibTest/TacticAnalysis.lean,MathlibTest/UnusedInstancesInType.lean,MathlibTest/Util/PrintSorries.lean,MathlibTest/WhitespaceLinter.lean,MathlibTest/aesop_cat.lean,MathlibTest/eqns.lean,MathlibTest/fast_instance.lean,MathlibTest/globalAttributeIn.lean,MathlibTest/hintAll.lean,MathlibTest/jacobiSym.lean,MathlibTest/slim_check.lean,MathlibTest/toAdditive.lean,lake-manifest.json,lakefile.lean,lean-toolchain 61 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-79774
3 months ago
135-8059
135 days ago
0-111
1 minute
31110 bryangingechen
author:bryangingechen
ci: don't delete merged branches This will only affect PRs that are not from forks (e.g. this one). The motivation is that #30913 was closed automatically due to its target branch deleted after #30912 was merged. See also [#PR reviews > #30913 feat(Computability/Language):add subtraction notation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2330913.20feat.28Computability.2FLanguage.29.3Aadd.20subtraction.20notation/near/548052556). Looking at the history, it looks like this option hasn't been changed since we added bors to mathlib3: https://github.com/leanprover-community/mathlib3/pull/2322 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author CI merge-conflict 1/1 bors.toml 1 5 ['bryangingechen', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
117-79518
3 months ago
210-61533
210 days ago
0-64677
17 hours
33707 jcommelin
author:jcommelin
ci: add commit verification for transient and automated commits This PR adds a CI workflow that verifies PRs correctly use transient and automated commits, and provides reviewers with a clear summary of which commits need human review. Commit types: - **Substantive commits**: Regular commits requiring human review - **Automated commits** (`x: `): CI verifies the commit is the exact result of running the command on the parent - **Transient commits** (`transient: ...`): CI verifies these have zero net effect on the final tree What this PR adds: - `scripts/verify_commits.sh` - Main verification script - `scripts/verify_commits_summary.sh` - Generates PR comment from JSON output - `.github/workflows/commit_verification.yml` - GitHub Actions workflow --- ### Testing locally The commit at `HEAD^` contains test branch creation scripts. These can be used for testing the functionality of the two shell scripts. To test: ```bash # Checkout the commit with test scripts git checkout HEAD^ # Create a test branch based on your current branch (before checkout) # Save your branch name first: BASE_BRANCH=$(git rev-parse --abbrev-ref HEAD) git checkout HEAD^ ./scripts/create_test_branch.sh $BASE_BRANCH # Run verification (should pass) ./scripts/verify_commits.sh $BASE_BRANCH ./scripts/verify_commits.sh $BASE_BRANCH --json | ./scripts/verify_commits_summary.sh repo_foo 12345 # Clean up and return git checkout $BASE_BRANCH && git branch -D ci-x-test-* ``` Available test scripts: - `create_test_branch.sh` - Creates a branch with valid transient + auto commits (should pass) - `create_test_branch_fail_conflict.sh` - Transient commits cause cherry-pick conflicts (should fail) - `create_test_branch_fail_transient.sh` - Transient commits have net effect (should fail) - `create_test_branch_fail_auto.sh` - Auto commit doesn't match command output (should fail) 🤖 Generated with [Claude Code](https://claude.com/claude-code) CI merge-conflict LLM-generated 685/0 .github/workflows/commit_verification.yml,scripts/verify_commits.sh,scripts/verify_commits_summary.sh 3 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-79513
3 months ago
142-34199
142 days ago
0-56518
15 hours
31102 JOSHCLUNE
author:JOSHCLUNE
feat: require LeanHammer Experimenting with adding LeanHammer as a mathlib dependency --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict new-contributor t-meta 61/4 Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,MathlibTest/Hammer.lean,lake-manifest.json,lakefile.lean 5 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-79005
3 months ago
211-51144
211 days ago
0-6852
1 hour
33431 gululu996-ui
author:gululu996-ui
feat(Combinatorics/SimpleGraph/Bipartite): characterize bipartite simple graphs by even cycles Add the classical characterization of bipartite simple graphs: a simple graph is bipartite if and only if every cycle has even length. Previously, mathlib has the definition of `IsBipartite` for `SimpleGraph` and various lemmas about bipartite graphs, but it does not provide this equivalence in a single theorem, so users have to reprove or reassemble it from existing results. Prove the forward direction by showing a 2-coloring alternates along any walk, so every cycle must have even length. Prove the converse by showing that if an odd cycle exists then no bipartition is possible, hence if all cycles are even the graph admits a bipartition. new-contributor t-combinatorics awaiting-author merge-conflict 186/1 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean 1 6 ['NickAdfor', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] kmill
assignee:kmill
117-78737
3 months ago
119-79634
119 days ago
26-3983
26 days
34007 martinwintermath
author:martinwintermath
feat(Algebra/Module/Submodule/Dual): dual operator for submodules Add new file `Dual.lean` that defines the dual operator for submodules. The main definition is * `Submodule.dual`: given a bilinear pairing `p` between two modules `M₁` and `M₂` and a submodule `S` in `M₁`, `Submodule.dual p S` is the submodule in `M₂` consisting of all points `y` such that `0 = p x y` for all `x ∈ S`. For reasons of generality, `p` is actually a general sesqui-bilinear map, that is, of the form `p : M₁ →ₛₗ[I₁] M₂ →ₛₗ[I₂] M`. This implementation of the `dual` operator for submodules is written to parallel the implementation of `PointedCone.dual`. Include some additional results: * theorems that represent the dual as the kernel of a linear map * theorems for the relation between dual and the `dualAnnihilator` and `dualCoannihilator` of a submodule. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
236/0 Mathlib.lean,Mathlib/Algebra/Module/Submodule/Dual.lean 2 7 ['github-actions', 'joelriou', 'martinwintermath', 'mathlib-bors'] joelriou
assignee:joelriou
117-74774
3 months ago
119-57233
119 days ago
14-81283
14 days
34473 JovanGerb
author:JovanGerb
feat: remove `Membership` instance for `SetLike` This PR is an attempt to change the underlying expression of `x ∈ s` when `s` is not a `Set α`, but a `SetLike`, such as `Finset α` or `Subgroup α`. Instead of having a `Membership` instance, we use the membership instance on `Set α`, combined with the coercion to `Set α`. This has various benefits - There is now only one form instead of two to say the same thing. This saves us a lot of rewrites that will now become syntactic equalities. - It is not needed anymore to create a `mem_` lemma for every single `coe_` lemma in order to maintain simp confluence Unfortunately, doing this refactor is going to be a very big task, simply because so many proofs break as a result of `simp` now trying to simplify away the coercion where there was no coercion before. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory merge-conflict 136/96 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Group/Pointwise/Set/BigOperators.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Erase.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/Finset/NAry.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Preimage.lean,Mathlib/Data/Finset/Prod.lean,Mathlib/Data/Finset/Sigma.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/Logic/Embedding/Basic.lean,Mathlib/Order/Closure.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Finset.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/Interval/Finset/Defs.lean,MathlibTest/set_like.lean 40 3 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-50316
3 months ago
123-32101
123 days ago
0-8221
2 hours
34716 CoolRmal
author:CoolRmal
feat: a right continuous strongly adapted process is progressively measurable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP brownian t-measure-probability merge-conflict 164/0 Mathlib/Probability/Process/Adapted.lean 1 3 ['CoolRmal', 'github-actions', 'mathlib-merge-conflicts'] nobody
117-7092
3 months ago
117-7141
117 days ago
0-23
23 seconds
31008 RemyDegenne
author:RemyDegenne
refactor: generalize the index of the process in the Doob decomposition Generalize the index set for the Doob decomposition of an adapted process from Nat to a type with `LinearOrder`, `LocallyFiniteOrder`, `OrderBot`, `SuccOrder` (there is an order iso from that type to an interval of Nat). Motivation: to prove the Doob-Meyer decomposition we want to take a process indexed by [0,1] and consider sub-processes indexed by the dyadic points k*2^{-n} for a fixed n. We could use a process indexed by Nat, but we would have to invent values for k > 2^n while respecting the other properties of the process, and being able to index by the dyadics directly seems easier. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-measure-probability merge-conflict 341/192 Mathlib/Order/SuccPred/LinearLocallyFinite.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/Centering.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Process/Adapted.lean 7 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
117-5645
3 months ago
213-77362
213 days ago
0-2
2 seconds
30122 xroblot
author:xroblot
Development branch (1) Stickelberger --- WIP large-import merge-conflict 4748/32 Mathlib.GaloisTower.lean,Mathlib/AddCharTrace.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Cyclotomic.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Duality.lean,Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/PrimeField.lean,Mathlib/GalCyclotomic.lean,Mathlib/GaussSum.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/KroneckerWeber_Blueprint.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/MWE.lean,Mathlib/Misc.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Galois.lean,Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Ideal/Int.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/Sandbox.lean,Mathlib/StickElt.lean,Mathlib/Teichmuller.lean 35 13 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
116-67794
3 months ago
240-1982
240 days ago
0-12
12 seconds
30620 plp127
author:plp127
feat: copy LE and LT on preorder and partial order Adds `Preorder.copy` and `PartialOrder.copy` for replacing the le and lt with provably equal ones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 22/0 Mathlib/Order/Defs/PartialOrder.lean 1 7 ['Vierkantor', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] Vierkantor
assignee:Vierkantor
115-57275
3 months ago
186-2215
186 days ago
31-54617
31 days
34000 grunweg
author:grunweg
chore: golf using fun_prop [foo] syntax --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 14/8 Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/InformationTheory/KullbackLeibler/KLFun.lean,MathlibTest/fun_prop_dev.lean 6 6 ['Vierkantor', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
115-57266
3 months ago
134-80950
134 days ago
0-1
1 second
34291 YellPika
author:YellPika
feat(Data): a monad for partial computations This is the code corresponding to [mathlib4 > A monad for partial computations](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/A.20monad.20for.20partial.20computations/with/569619800). Not currently intended to be merged. This PR depends on #33941. The only changes relevant to this discussion are in `OmegaPart.lean`, `OmegaProp.lean`, and `Quot.lean`. # Original Message Inspired by @**Aaron Liu**'s comments in #**mathlib4>deprecate Mathlib.Data.Nat.PartENat?@538009243** and #**Is there code for X?>Divergence monad@538020049** I made an attempt at constructing a monad for partial computations with a computable `OmegaCompletePartialOrder` instance (neither `Option` nor `Part` support this use case). My solution consists of three parts. **A computable version of `Quotient.choice`.** As mentioned in #**lean4>Quot.lift for dependent products@467436416** , the "obvious" computational interpretation of `Quotient.choice : (∀i:I, @Quotient (A i) …) → @Quotient (∀i:I, A i)` is not sound. However, we _can_ provide a sound computational interpretation when we restrict `I` to `ℕ`: ```lean unsafe def Quotient.countableChoice_impl {α : Nat → Type*} {S : ∀ i, Setoid (α i)} (f : ∀ i, Quotient (S i)) : @Quotient (∀ i, α i) (by infer_instance) := Quotient.lift₂ (fun z s ↦ ⟦fun | .zero => z | .succ n => s n⟧) (fun z₁ s₁ z₂ s₂ h₁ h₂ ↦ by apply sound rintro ⟨_|n⟩ · apply h₁ · apply h₂) (f 0) (countableChoice_impl (fun n ↦ f n.succ)) @[implemented_by Quotient.countableChoice_impl] def Quotient.countableChoice {α : Nat → Type*} {S : ∀ i, Setoid (α i)} (f : ∀ i, Quotient (S i)) : @Quotient (∀ i, α i) (by infer_instance) := Quotient.choice f ``` My justification for the soundness of this implementation comes from the fact that only uses existing (sound and computable) functions + general recursion. The implementation is found [here](https://github.com/YellPika/mathlib4/blob/99d38f164a97c7aa225283ef6016f0279419a994/Mathlib/Data/Quot.lean#L430) (it uses `unquot` instead of recursion for performance reasons, but should be equivalent). **A type of semi-computable propositions.** Next, I define a type of semi-computable propositions `ΩProp` as a quotient of the type of boolean sequences `(ℕ → Bool) / ≈`, where `p ≈ q ≝ (∃n, p n) ↔ (∃n, q n)`. A sequence is interpreted as "true" if at least one element in the sequence is `true`, and the quotient relation ensures that we cannot observe the difference between different "true" sequences. The `ΩProp` type has a (computable) `OmegaCompletePartialOrder`, and `Quotient.countableChoice` is used in the implementation of `ωSup`. The implementation of this type is [here](https://github.com/YellPika/mathlib4/blob/quot-choice-compute/Mathlib/Data/OmegaProp.lean). **A type of semi-computable computations.** Finally, I define the type `ΩPart A` of semi-computable computations returning a value of type `A`. The definition of `ΩPart` is the same as `Part` with `ΩProp` swapped for `Prop`. Again, `ΩPart A` has a (computable) `OmegaCompletePartialOrder` instance. The implementation can be found [here](https://github.com/YellPika/mathlib4/blob/quot-choice-compute/Mathlib/Data/OmegaPart.lean). This was mainly just a fun experiment and the code is not ready to be (or perhaps should not be) put in mathlib. I thought I should post it here to see if 1) there is any interest or 2) an implementation already exists that has escaped my notice. new-contributor large-import merge-conflict 1157/40 Mathlib/Data/OmegaPart.lean,Mathlib/Data/OmegaProp.lean,Mathlib/Data/Quot.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
115-57258
3 months ago
unknown
0-0
0 seconds
34202 or4nge19
author:or4nge19
feat(Topology/MetricSpace): annuli in (pseudo)(e)metric spaces From the Carleson project. Co-authored-by: James Sundstrom --- - [x] depends on: #34200 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) carleson t-topology awaiting-author 288/0 Mathlib.lean,Mathlib/Topology/MetricSpace/Annulus.lean 2 23 ['MichaelStollBayreuth', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'or4nge19'] nobody
115-50765
3 months ago
115-50765
115 days ago
10-6519
10 days
34053 christian-oudard
author:christian-oudard
feat: Add error function (erf) and complementary error function (erfc) ## Summary I was doing some finance math and needed the Error Function, so I thought I'd contribute it. ### Main definitions * `Real.erf`: The error function, defined as `(2/√π) ∫₀ˣ e^(-t²) dt` * `Real.erfc`: The complementary error function, defined as `1 - erf x` ### Main results * `Real.erf_zero`: `erf 0 = 0` * `Real.erf_neg`: `erf` is an odd function: `erf (-x) = -erf x` * `Real.erf_tendsto_one`: `erf x → 1` as `x → ∞` * `Real.erf_tendsto_neg_one`: `erf x → -1` as `x → -∞` * `Real.erf_le_one`: `erf x ≤ 1` for all `x` * `Real.neg_one_le_erf`: `-1 ≤ erf x` for all `x` * `Real.deriv_erf`: `deriv erf x = (2/√π) * exp(-x²)` * `Real.differentiable_erf`: `erf` is differentiable * `Real.continuous_erf`: `erf` is continuous * `Real.strictMono_erf`: `erf` is strictly monotone Also adds `erf` to `docs/overview.yaml` under Special Functions. --- - [x] Builds successfully - [x] `lake exe runLinter` passes - [x] `lake exe mk_all --check` passes t-analysis new-contributor awaiting-author 333/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Erf.lean,docs/overview.yaml 3 18 ['SnirBroshi', 'christian-oudard', 'github-actions', 'j-loreaux', 'plp127'] j-loreaux
assignee:j-loreaux
115-30034
3 months ago
115-66887
115 days ago
14-69133
14 days
33601 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): Concatenation of CFGs is CFG --- - [ ] depends on: #33599 - [ ] depends on: #33592 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor blocked-by-other-PR 941/0 Mathlib/Computability/ContextFreeGrammar.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
115-7747
3 months ago
144-78010
144 days ago
0-412
6 minutes
33080 sinhp
author:sinhp
feat(Category Theory): Cartesian Natural Transformation This PR defines cartesian natural transformations between functors and proves they are closed under horizontal and vertical composition. Also we prove the following results: - `NatTrans.isCartesian_of_discrete` shows that any natural transformation between functors from a discrete category is cartesian. - `NatTrans.isCartesian_of_isIso` shows that any natural isomorphism is cartesian. - `NatTrans.isIso_of_isCartesian_of_isIso_app_terminal` shows that a cartesian natural transformation is an isomorphism if its component at a terminal object is an isomorphism. - `NatTrans.isCartesian_of_isPullback_isTerminal_from` shows that a natural transformation is cartesian if all its naturality squares to the terminal object are pullback squares. This material is adapted from the polynomial functors project developed during the Trimester "Prospects of Formal Mathematics" at the Hausdorff Institute (HIM) in Bonn: https://github.com/sinhp/Poly Co-authored-by: Wojciech Nawrocki --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author 145/0 Mathlib.lean,Mathlib/CategoryTheory/NatTransCartesian.lean 2 8 ['dagurtomas', 'github-actions', 'joelriou', 'robin-carlier', 'sinhp'] nobody
114-10437
3 months ago
149-68467
149 days ago
3-19675
3 days
34397 Parcly-Taxel
author:Parcly-Taxel
feat: integral representation of the AGM --- - [x] depends on: #32892 t-analysis awaiting-author 294/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Integrals/ArithmeticGeometricMean.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot', 'sgouezel'] sgouezel
assignee:sgouezel
114-1774
3 months ago
114-1774
114 days ago
7-50633
7 days
34018 CoolRmal
author:CoolRmal
feat: series representation of cosecant This PR adds 1. Some trignometric identities. 2. `tprod_pnat_odd_mul_even`, which is an invariant of [tprod_even_mul_odd](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Algebra/InfiniteSum/NatInt.html#tprod_even_mul_odd) 3. a series representation of `fun z => π / sin (π * z)`. An outline of the proof can be found in the PNT project: https://alexkontorovich.github.io/PrimeNumberTheoremAnd/blueprint/zeta-chapter.html#lem:abadeuleulmit1 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 140/0 Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean 4 12 ['CBirkbeck', 'CoolRmal', 'erdOne', 'github-actions', 'loefflerd'] kex-y
assignee:kex-y
113-79134
3 months ago
113-79134
113 days ago
20-27591
20 days
34726 GrigorenkoPV
author:GrigorenkoPV
feat(Analysis/SpecialFunctions/Trigonometric/Basic): sin and cos of multiples of π / 3 --- Merge of https://github.com/leanprover-community/mathlib4/pull/26349 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 159/0 Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Data/Nat/Cast/Defs.lean,MathlibTest/trigonometry.lean 4 1 ['github-actions'] nobody
113-53172
3 months ago
113-53172
113 days ago
3-20994
3 days
34892 kim-em
author:kim-em
experiment: by claude LLM-generated 88/0 claude.md 1 1 ['github-actions'] nobody
113-46343
3 months ago
unknown
0-0
0 seconds
29788 robertmaxton42
author:robertmaxton42
feat(Topology): adds bundled continuous maps for sum, sigma, subtype, mapsto, inclusion Adds a collection of bundled continuous maps and homeomorphisms, and helper lemmas for working with their compositions. Bundling of existing continuity lemmas: * `ContinuousMap.subtypeVal` * `ContinuousMap.inl` and `.inr`; `ContinuousMap.sum` bundles `Continuous.sumElim`; `ContinuousMap.sumMap`, which is a quotient map when both components are quotient maps * `ContinuousMap.sigmaMap`, which is a quotient map when given a family of quotient maps * `ContinuousMap.mapsTo` bundles `ContinuousOn.restrict_mapsTo` New functions: * `ContinuousMap.preimageValIncl : C(s ↓∩ t, t)` and `.inclPreimageVal C(s, t ↓∩ s)`, and their unbundled functions in `Set` * `Homeomorph.Set.preimageVal` witnesses that the two are opposite directions of a homeomorphism * Descending from a coherent set of subspaces is a quotient map The primary use for these bundled maps is easy composition and the ability to introduce them by rewriting right-to-left: it is much more convenient to write `subtypeVal.comp _` than to use either the anonymous constructor (which doesn't work in any position without an expected type) or `ContinuousMap.mk` (which will disappear as soon as it is coerced to a function, making it difficult to use in mixed-categorical contexts where many maps can only be reduced by introducing a composition with some other map.) This PR is part of a family of PRs that ultimately construct transformations in both directions between the concrete `Topology.RelCWComplex` and abstract `TopCat.RelativeCWComplex`. `.mapsTo` in particular bundles together a couple of potentially nontrivial proofs in a way that makes them easy to refer to later; I use it and `.subtypeVal` particularly heavily later in a dependent PR to build the cell inclusion maps on both sides of the equivalence. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-topology awaiting-author 227/2 Mathlib/Data/Set/Subset.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Coherent.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/ContinuousMap/Basic.lean,scripts/noshake.json 7 17 ['adamtopaz', 'dagurtomas', 'github-actions', 'mathlib4-merge-conflict-bot', 'robertmaxton42'] adamtopaz
assignee:adamtopaz
113-11746
3 months ago
113-69136
113 days ago
85-42529
85 days
31361 alreadydone
author:alreadydone
feat(Algebra/Order): convex subgroups --- - [x] depends on: #32886 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order awaiting-author
label:t-algebra$
422/0 Mathlib.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/Group/Convex.lean,Mathlib/Algebra/Order/Group/Height.lean,Mathlib/Order/Birkhoff.lean,Mathlib/Order/Quotient.lean 5 46 ['Vierkantor', 'YaelDillies', 'alreadydone', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vihdzp', 'wwylele'] YaelDillies
assignee:YaelDillies
113-1822
3 months ago
43-64862
43 days ago
28-36362
28 days
34394 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): add constructors for linear ordered rings Add constructors for ordered rings from `mul_nonneg` / `mul_pos` that derive `ZeroLEOneClass` from a linear order. new-contributor t-algebra awaiting-author
label:t-algebra$
31/14 Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/RingTheory/HahnSeries/Lex.lean 2 6 ['Citronhat', 'Vierkantor', 'github-actions', 'leanprover-radar'] Vierkantor
assignee:Vierkantor
113-109
3 months ago
113-109
113 days ago
12-25418
12 days
26884 alreadydone
author:alreadydone
Universal cover TODO: construct locally constant predicate from a functor from the fundamental groupoid of a loc path connected, semilocally simply connected space to Type, and the associated covering space (as an etale space) --- - [x] depends on: #24983 - [x] depends on: #22771 - [ ] depends on: #31925 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-topology blocked-by-other-PR merge-conflict 900/165 Mathlib.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/EtaleSpace.lean,Mathlib/Topology/IsLocalHomeomorph.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean 11 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
112-46456
3 months ago
unknown
0-0
0 seconds
31925 alreadydone
author:alreadydone
feat(Topology): étalé space associated to a predicate on sections Zulip: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2322782.20Etale.20space/near/527381645 --- - [ ] depends on: #33795 migrated from #22782 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR merge-conflict 900/165 Mathlib.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/EtaleSpace.lean,Mathlib/Topology/IsLocalHomeomorph.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean 11 16 ['adamtopaz', 'alreadydone', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
112-45424
3 months ago
140-68602
140 days ago
26-56538
26 days
34956 kbuzzard
author:kbuzzard
test: add a file with universe tests Just to keep track of some horrible universe issues in Kaehler.Polynomial. This shouldn't be a PR, I just wanted a way of keeping track of the mess that universe normalisation in core causes in alg geom. If core moves on universe normalization then this file hopefully provides a useful test. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory WIP 266/0 Mathlib/RingTheory/Kaehler/UniverseTest.lean 1 1 ['github-actions'] nobody
111-55826
3 months ago
56-78867
56 days ago
54-63437
54 days
33493 michelsol
author:michelsol
feat(RingTheory/Polynomial): An explicit formula for the Chebyshev polynomials of the first kind Adds the following explicit formula on the Chebyshev polynomial of the first kind of order n. ${ T_{n}(x)\ =\ \sum \limits _{k=0}^{\lfloor {\frac {n}{2}}\rfloor } {\binom {n}{2k}} \left(\ X^{2}-1\ \right)^{k}\ X^{n-2k}}$ This explicit formula can be found [here](https://en.wikipedia.org/wiki/Chebyshev_polynomials#Explicit_expressions). There is a proof using complex numbers but it only works if the ring R = ℂ. The proof here is by induction and works in a commutative ring R. Mathlib seems to extend the definition of Chebyshev polynomials for $n \in \mathbb{Z}$ but this would make the formula more cumbersome with `n.natAbs` in place of `n`'s, so I expressed it on `n : ℕ` directly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 51/1 Mathlib/RingTheory/Polynomial/Chebyshev.lean 1 8 ['YuvalFilmus', 'erdOne', 'github-actions', 'metakunt', 'michelsol'] chrisflav
assignee:chrisflav
111-36348
3 months ago
111-36348
111 days ago
35-16105
35 days
28468 alreadydone
author:alreadydone
feat(Algebra): ring API for `AddLocalization` Extract `Submonoid.IsLocalizationMap` from `LocalizationMap` and use it in `IsLocalization`. Develop basic API for AddLocalization at a two-sided ideal; in the case of the top AddSubmonoid, show the localization has a Ring structure (Grothendieck ring). Show that a nontrivial commutative semiring with cancellative addition satisfies the strong rank condition. (This will eventually be replaced by Yi-Jia Tan's result which shows cancellative addition is unnecessary, so it's also reasonable to leave this part out of this PR.) --- - [x] depends on: #27842 - [x] depends on: #27862 - [x] depends on: #29596 - [x] depends on: #29597 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import t-ring-theory awaiting-author
label:t-algebra$
676/6 Mathlib.lean,Mathlib/GroupTheory/MonoidLocalization/Archimedean.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Lemmas.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Localization/Additive.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/StrongRankCondition.lean 8 12 ['alreadydone', 'chrisflav', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
111-32060
3 months ago
111-32060
111 days ago
23-7335
23 days
30658 grunweg
author:grunweg
feat: extend the `whitespace` linter to proof bodies --- - [x] depends on: #30663 - [x] depends on: #30685 - [x] depends on: #30687 - [x] depends on: #30688 - [x] depends on: #30689 - [x] depends on: #30691 - [x] depends on: #30723 - [x] depends on: #30724 - [x] depends on: #30725 - [x] depends on: leanprover/lean4#11780 - [x] depends on: leanprover/lean4#12006 - [ ] depends on: leanprover/lean4#11686 - [x] depends on: #33705 - [x] depends on: #33706 - [x] depends on: #33716 - [x] depends on: #33234 - [x] depends on: #33342 - [x] depends on: #33708 - [x] depends on: #33758 - [x] depends on: #33759 - [x] depends on: #33789 - [x] depends on: #33815 - [x] depends on: #33816 - [x] depends on: #35909 - [x] depends on: #37993 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-linter merge-conflict blocked-by-other-PR 2006/452 Archive/Imo/Imo2010Q5.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/HeawoodUnitDistance.lean,Mathlib/Algebra/AffineMonoid/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Module/TransferInstance.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicTopology/ExtraDegeneracy.lean,Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStructTruncated.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nonempty.lean,Mathlib/AlgebraicTopology/SimplicialSet/Path.lean,Mathlib/AlgebraicTopology/SimplicialSet/StrictSegal.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Monoidal/Action/Basic.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/OfHasFiniteProducts.lean,Mathlib/Combinatorics/SetFamily/LYM.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/Language.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Data/DFinsupp/Notation.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Fin/Fin2.lean,Mathlib/Data/Finset/Slice.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Matrix/Cartan.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Num/Bitwise.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Vector/MapLemmas.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Laurent.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/VectorBundle/Tensoriality.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/PullOut.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/TrapezoidalRule.lean,Mathlib/MeasureTheory/Integral/TorusIntegral.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/ModelTheory/Syntax.lean,Mathlib/NumberTheory/Niven.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/RepresentationTheory/Coinduced.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/FormalGroup/Basic.lean,Mathlib/RingTheory/Nilpotent/Exp.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/Whitespace.lean,Mathlib/Tactic/Ring/NamePolyVars.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Util/Superscript.lean,MathlibTest/WhitespaceLinter.lean 82 68 ['SnirBroshi', 'adomani', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
111-31131
3 months ago
46-46789
46 days ago
0-34802
9 hours
34897 kim-em
author:kim-em
experiment: Claude defining reductive groups This PR adds preliminary definitions for reductive algebraic groups, following Borel's definition over general fields. ## Status: Experimental Sketch This is scaffolding with known mathematical issues. See `Mathlib/Algebra/AlgebraicGroup/PLAN.md` for a detailed roadmap of what's needed for correct definitions. ### What's Here | Definition | Status | Notes | |------------|--------|-------| | `AffineAlgGroup k A` | OK | Smooth affine group scheme of finite type | | `AlgPoints k A` | Partial | Correct type, Group instance is `sorry` | | `NoNontrivialIdempotents` | OK | For connectedness | | `IsUnipotent` | Wrong | Vacuous in reduced rings (see below) | | `unipotentRadical` | Wrong | Should be Hopf ideal, not Subgroup | | `ReductiveGroup` | Placeholder | Uses `True` pending dependencies | ### Known Mathematical Issues 1. **`IsUnipotent` is vacuous**: Definition checks nilpotence in reduced ring A, so only g=1 satisfies it. Correct definition requires comodule theory. 2. **Need functor of points, not just k-points**: Should define `A →ₐ[k] R` for all k-algebras R, not just `A →ₐ[k] k`. 3. **`unipotentRadical` should be a Hopf ideal**: Closed subgroup schemes correspond to Hopf ideals, not subgroups of points. 4. **Geometric notions missing**: Unipotent/connected/reductive should be defined after base change to k̄. ### Roadmap (see PLAN.md) 1. **Functor of points**: Group structure on R-points via convolution 2. **Hopf ideals**: For closed subgroup schemes 3. **Geometric infrastructure**: Base change, geometric connectedness 4. **Comodule theory**: For correct `IsUnipotent` 5. **Unipotent radical**: As Hopf ideal (very hard - SGA3/Borel level) Alternative: Define "linearly reductive" via complete reducibility (simpler, equivalent in char 0). ## References - Brian Conrad, "Reductive Group Schemes" - Armand Borel, "Linear Algebraic Groups" - SGA3, Exposé XIX 🤖 Prepared with Claude Code t-algebra LLM-generated merge-conflict
label:t-algebra$
753/0 Mathlib.lean,Mathlib/Algebra/AlgebraicGroup/Defs.lean,Mathlib/Algebra/AlgebraicGroup/PLAN.md,Mathlib/Algebra/AlgebraicGroup/Reductive.lean,Mathlib/Algebra/AlgebraicGroup/Unipotent.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
111-21318
3 months ago
unknown
0-0
0 seconds
34815 Deep0Thinking
author:Deep0Thinking
feat(Analysis/SpecialFunctions/ImproperIntegrals): Frullani integral - [x] depends on: #34966 --- Add a proof of **Frullani integral**. Main theorems: - `Frullani.integral_Ioi` - `IntegrableOn.tendsto_integral_Ioi` - `exists_integral_div_eq_mul_log` Supporting lemmas: - `Frullani.comp_mul_left_div` - `Frullani.intervalIntegrable_div` - `Frullani.exists_integral_div_eq_mul_log` - `Ioi_diff_Ioc` - `ContinuousOn.comp_mul_left_div`, `ContinuousOn.comp_mul_right_div` - `ContinuousOn.comp_mul_left`, `ContinuousOn.comp_mul_right` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-analysis awaiting-author blocked-by-other-PR 270/2 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean,Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Monoid.lean 6 17 ['CoolRmal', 'Deep0Thinking', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sgouezel'] urkud
assignee:urkud
111-20063
3 months ago
34-56513
34 days ago
11-36072
11 days
9820 jjaassoonn
author:jjaassoonn
feat(RingTheory/GradedAlgebra/HomogeneousIdeal): generalize to homogeneous submodule The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to a homogeneous submodules. So say $R$ is a ring and $M \cong \bigoplus_{i} M_i$ is an $R$-module. Then a homogeneous $R$-submodule of $M$ is an $R$-submodule $N$ such that for all $i$ and $n \in N$, $n_i \in N$. Note that this notion doesn't actually require $R$ to be graded and $M$ is a graded module. But for more interesting lemmas, we do need that $M$ is graded $R$-module. We bake the fact $R$ is graded into the definition of homogeneous submodule, otherwise, `CompleteLattice HomogeneousSubmodule` cannot find the order of synthesis (the proof depends on that $R$ is graded) All definitions/constructions/theorems have a copy for ideals as well, this is to make sure dot notation still works. The motivation of this generalization is graded quotient module --- - [x] depends on:#18728 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 516/185 Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,scripts/nolints_prime_decls.txt 7 3 ['github-actions', 'leanprover-community-bot-assistant'] nobody
110-6334
3 months ago
329-29575
329 days ago
52-59768
52 days
27664 pechersky
author:pechersky
feat(Topology,Analysis): discrete topology metric space and normed groups Explicit construction of the discrete topology metric space and normed groups where `dist x y = 1` for all `x != y` Provide PseudoMetricSpace, MetricSpace, Seminormed(Add)Group, and Normed(Add)Group constructions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-topology merge-conflict 124/0 Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Topology/MetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Pseudo/Constructions.lean 3 14 ['github-actions', 'kckennylau', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'pechersky', 'plp127'] urkud
assignee:urkud
109-64457
3 months ago
189-74298
189 days ago
114-32890
114 days
14501 jjaassoonn
author:jjaassoonn
feat: module structure of filtered colimit of abelian groups over filtered colimit of rings This helps defining the module structure of stalks This contribution was inspired by the AIM workshop "Formalizing algebraic geometry" in June 2024. --- - [x] depends on: #15315 [I am going to move the result in the new file] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra workshop-AIM-AG-2024 t-category-theory merge-conflict awaiting-author
label:t-algebra$
439/2 Mathlib/CategoryTheory/Limits/ConcreteCategory/Basic.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory/WithAlgebraicStructures.lean 2 49 ['YaelDillies', 'adamtopaz', 'alreadydone', 'erdOne', 'github-actions', 'jjaassoonn', 'joelriou', 'kbuzzard'] joelriou
assignee:joelriou
108-85315
3 months ago
549-73583
549 days ago
64-30806
64 days
26986 WangYiran01
author:WangYiran01
feat(Partition): add bijection for partitions with max part ≤ r This PR adds a new theorem `partition_max_equals_bound` to `Mathlib.Combinatorics.Enumerative.Partition`. It constructs a bijection between: - The set of partitions of `n` in which `r ∈ π.parts` and all parts are `≤ r`, and - The set of partitions of `n - r` whose largest part is at most `r`. This provides a constructive proof via removing/adding `r` from/to the partition multiset, in line with classical enumerative combinatorics. Contributed by Yiran Wang. awaiting-author t-combinatorics new-contributor merge-conflict 92/0 Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Data/Multiset/Lattice.lean 2 20 ['WangYiran01', 'github-actions', 'jcommelin', 'kckennylau', 'kim-em', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
108-71222
3 months ago
142-7690
142 days ago
120-67067
120 days
25035 ScottCarnahan
author:ScottCarnahan
feat(Algebra/Module/Equiv/Defs): linear equivalence between linear hom and semilinear hom Given a ring homomorphism `σ₂ : R →+* R₂`, an `R`-module `M`, and a module `M₂` for both `R` and `R₂` satisfying `SMulCommClass R R₂ M₂` and `(σ₂ r) • x = r • x`, we produce an `R₂`-linear equivalence between `M →ₗ[R] M₂` and `M →ₛₗ[σ₂] M₂`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra merge-conflict
label:t-algebra$
21/0 Mathlib/Algebra/Module/Equiv/Defs.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
108-52213
3 months ago
355-15771
355 days ago
20-7584
20 days
26168 oliver-butterley
author:oliver-butterley
feat(MeasureTheory.VectorMeasure): variation defined as a supremum is equal to variation defined using the Hahn-Jordan decomposition Add `signedMeasure_totalVariation_eq`: if `μ` is a `SignedMeasure` then variation defined as a supremum is equal to variation defined using the Hahn-Jordan decomposition. Co-authored-by: @yoh-tanimoto --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author merge-conflict blocked-by-other-PR new-contributor 916/0 Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Jordan.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Equiv.lean 5 7 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'yoh-tanimoto'] nobody
108-52211
3 months ago
329-8078
329 days ago
15-65390
15 days
34722 GrigorenkoPV
author:GrigorenkoPV
feat(Data/Finset/RangeDistance): bound distance between elements of `Finset.range` --- Rebase of https://github.com/leanprover-community/mathlib4/pull/26347 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data awaiting-author 34/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 7 ['GrigorenkoPV', 'Vierkantor', 'github-actions', 'joneugster', 'mathlib-splicebot', 'plp127'] pechersky
assignee:pechersky
108-37500
3 months ago
64-61262
64 days ago
52-18954
52 days
35114 CoolRmal
author:CoolRmal
feat: Kirszbraun’s theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 144/0 Mathlib/Analysis/Kirszbraun.lean 1 1 ['github-actions'] nobody
108-24586
3 months ago
unknown
0-0
0 seconds
27702 amellendijk
author:amellendijk
feat(NumberTheory/SelbergSieve): define Lambda-squared sieves and prove important properties This PR continues the work from #22052. Original PR: https://github.com/leanprover-community/mathlib4/pull/22052 - [x] depends on: #27820 t-number-theory delegated merge-conflict 186/7 Mathlib/NumberTheory/SelbergSieve.lean 1 44 ['FLDutchmann', 'MichaelStollBayreuth', 'bryangingechen', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
108-17641
3 months ago
170-13686
170 days ago
15-82750
15 days
28693 faenuccio
author:faenuccio
feat(Analysis.Normed.Module.Milman-Pettis): add Milman-Pettis theorem We add the Milman-Pettis theorem stating that an uniformly convex Banach space is reflexive. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis merge-conflict 279/0 Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/Milman-Pettis.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean 4 9 ['ADedecker', 'faenuccio', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'yhx-12243'] nobody
108-17515
3 months ago
282-79417
282 days ago
0-1
1 second
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
108-253
3 months ago
108-253
108 days ago
33-85043
33 days
33969 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): Currently, injectiveSeminorm = projectiveSeminorm **WIP / RFC!** Arguably, `injectiveSeminorm` should be re-defined in Mathlib. See #34137 and [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798261) for context. In this file, we collect some results about the current definition and a possible alternative. Contents: * A theorem `injectiveSeminorm_eq_projectiveSeminorm` formalizing the equality of the current definitions. However, I think it is unlikely that keeping the alternative characterization would be worth the effort. The interesting direction `(L2') ≤ (L1)` follows from `norm_eval_le_projectiveSeminorm` which is still present. The converse direction is [somewhat tautological](https://github.com/leanprover-community/mathlib4/pull/34137). A proof of `(L2) = (L1)` (probably requiring Hahn-Banach) might be more interesting. * A preliminary implementation of the injective seminorm as commonly understood. * Sufficient conditions for the multiplicativity property `‖⨂ m i‖_∧ = ∏ ‖m i‖` to hold. This implements a TBD item. --- Co-authored-by: Davood H. H. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis new-contributor large-import merge-conflict 774/387 Mathlib.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/LeastReasonable.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean 8 3 ['github-actions', 'goliath-klein', 'mathlib-merge-conflicts'] nobody
107-54572
3 months ago
135-69676
135 days ago
0-23
23 seconds
34248 erdOne
author:erdOne
chore: get rid of `LocalizedModule.mk` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra merge-conflict
label:t-algebra$
64/65 Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Exact.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/GroupTheory/DivisibleHull.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Module.lean 6 3 ['Vierkantor', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
107-54443
3 months ago
127-86321
127 days ago
0-15155
4 hours
27307 xyzw12345
author:xyzw12345
feat(RingTheory/GradedAlgebra): homogeneous relation In this PR, we defined the concept of a homogeneous relation and proved some properties about homogeneous relations. The main result of this PR is showing that taking `RingQuot` by a homogeneous relation can give a graded structure on the quotient ring. This result can be used to define graded structures on rings obtained using `RingQuot`, e.g. the Symmetric Algebra defined in #21539 can be verified to have such a structure. Co-authored-by: Zhixuan Dai @atstarrysky <22300180006@m.fudan.edu.cn> Yiming Fu @pelicanhere Zhenyan Fu @pumpkin678 Raphael Douglas Giles @Raph-DG Jiedong Jiang @jjdishere This PR continues the work from #22279. Original PR: https://github.com/leanprover-community/mathlib4/pull/22279 awaiting-author t-ring-theory 394/1 Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousRelation.lean 10 46 ['AntoineChambert-Loir', 'alreadydone', 'chrisflav', 'erdOne', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'ocfnash', 'xyzw12345'] mattrobball
assignee:mattrobball
107-53513
3 months ago
195-65422
195 days ago
117-42266
117 days
34939 erdOne
author:erdOne
chore(AlgebraicGeometry): use relative gluing in `IdealSheaf` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry merge-conflict 174/381 Mathlib/AlgebraicGeometry/IdealSheaf/Subscheme.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
107-45717
3 months ago
107-45718
107 days ago
4-64009
4 days
33821 JohnnyTeutonic
author:JohnnyTeutonic
feat(LinearAlgebra/Matrix/Hermitian): add IsSkewHermitian predicate Adds `IsSkewHermitian` predicate for matrices satisfying Aᴴ = -A. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
70/0 Mathlib/LinearAlgebra/Matrix/Hermitian.lean 1 20 ['JohnnyTeutonic', 'github-actions', 'j-loreaux', 'themathqueen'] kim-em
assignee:kim-em
107-41420
3 months ago
107-57457
107 days ago
26-62209
26 days
33233 jazzits
author:jazzits
feat(GroupTheory): add chosen group presentations and Tietze transformations (1) and (2) Defines a notion of group presentation for G compatible with Mathlib.GroupTheory.PresentedGroup: generators `ι → G` whose range generates G, and relators `rels : Set (FreeGroup ι)` whose normal closure equals the kernel of `FreeGroup ι →* G`. Provides the canonical map `PresentedGroup P.rels →* G` and equivalences showing `PresentedGroup P.rels ≃* G` and invariance under changing presentations. Also formalizes Tietze moves (1)–(2) as equivalences of PresentedGroups: adding/removing a relator that lies in the normal closure of the others. TODO: moves (3)–(4) (add/remove generator with a defining relation). No existing definitions are modified t-group-theory new-contributor awaiting-author 328/0 Mathlib.lean,Mathlib/GroupTheory/Presentation.lean 2 15 ['github-actions', 'homeowmorphism', 'jazzits', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] tb65536
assignee:tb65536
106-83105
3 months ago
151-75652
151 days ago
5-47944
5 days
34931 eric-wieser
author:eric-wieser
perf: make TensorProduct.lift irreducible with a unification hint --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
6/2 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 7 ['eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] erdOne
assignee:erdOne
106-60754
3 months ago
106-60755
106 days ago
5-66655
5 days
34725 GrigorenkoPV
author:GrigorenkoPV
feat(RingTheory/RootsOfUnity/LowDegree): quadratic, cubic, quartic, quintic roots of unity Closes https://github.com/leanprover-community/mathlib4/pull/25907 --- Merge of https://github.com/leanprover-community/mathlib4/pull/25907 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory awaiting-author 247/0 Mathlib.lean,Mathlib/Algebra/CharP/Invertible.lean,Mathlib/Algebra/QuadraticDiscriminant.lean,Mathlib/RingTheory/RootsOfUnity/LowDegree.lean 4 22 ['GrigorenkoPV', 'LLaurance', 'erdOne', 'github-actions', 'joneugster'] nobody
106-47795
3 months ago
111-37115
111 days ago
5-38408
5 days
33032 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph): Konig’s theorem on bipartite graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor blocked-by-other-PR merge-conflict 832/251 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Konig/Auxillary.lean,Mathlib/Combinatorics/SimpleGraph/Konig/Konig.lean,Mathlib/Combinatorics/SimpleGraph/Konig/KonigFin.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean 12 9 ['SnirBroshi', 'github-actions', 'ksenono', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody
106-31705
3 months ago
163-14361
163 days ago
0-136
2 minutes
34159 wangying11123
author:wangying11123
feat(Geometry/Euclidean/Similarity): Add Triangle similarity on oangle Add theorems about triangles similarity on oangle t-euclidean-geometry new-contributor awaiting-author 154/1 Mathlib/Geometry/Euclidean/Similarity.lean 1 8 ['LLaurance', 'github-actions', 'jsm28', 'wangying11123'] jsm28
assignee:jsm28
105-81872
3 months ago
106-42701
106 days ago
7-49555
7 days
34799 vlad902
author:vlad902
feat(SimpleGraph): the cycle graph and complete graph are Hamiltonian --- - [ ] depends on: #34797 - [ ] depends on: #35255 - [ ] depends on: #37930 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import blocked-by-other-PR merge-conflict 29/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 2 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
105-76281
3 months ago
115-55949
115 days ago
0-551
9 minutes
34702 pfaffelh
author:pfaffelh
feat(Data/FinsetPowerset): The set `{v : List.Vector Bool n | v.val.count = k}` has cardinality `n.choose k` Show that `{v : List.Vector Bool n | v.val.count = k}` has cardinality `n.choose k`. The proof builds on `powersetCard k s` (the subsets of `s : Finset _` with cardinality `k`), and an equivalence to the above set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data awaiting-author 52/1 Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Fintype/Pi.lean,Mathlib/Logic/Equiv/Fintype.lean 3 37 ['DavidLedvinka', 'Vierkantor', 'b-mehta', 'eric-wieser', 'github-actions', 'joneugster', 'pfaffelh'] Vierkantor
assignee:Vierkantor
105-37672
3 months ago
23-10185
23 days ago
93-37493
93 days
33050 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem Lemmas missing for the formalisation of the proof of the Gelfond–Schneider theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor WIP 238/0 Mathlib.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart2.lean 6 113 ['SnirBroshi', 'github-actions', 'j-loreaux', 'mkaratarakis', 'riccardobrasca', 'vihdzp'] riccardobrasca
assignee:riccardobrasca
104-64252
3 months ago
114-83509
114 days ago
6-26337
6 days
34814 GrigorenkoPV
author:GrigorenkoPV
feat(Tactic/ClearUnneeded): add `clear_unneeded` tactic --- The simplest version suggested in https://github.com/leanprover-community/mathlib4/issues/25319 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor please-merge-master awaiting-author 94/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ClearUnneeded.lean,Mathlib/Tactic/Common.lean,MathlibTest/ClearUnneeded.lean,scripts/noshake.json 6 12 ['BoltonBailey', 'GrigorenkoPV', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
104-51316
3 months ago
112-74689
112 days ago
2-23785
2 days
34876 GrigorenkoPV
author:GrigorenkoPV
feat(Tactic/AssumptionQuestion): add `assumption?` tactic --- As requested in #10361 TODO: maybe add some tests? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor awaiting-author 85/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/AssumptionQuestion.lean,Mathlib/Tactic/Common.lean,MathlibTest/AssumptionQuestion.lean,scripts/noshake.json 6 5 ['GrigorenkoPV', 'SnirBroshi', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
104-49891
3 months ago
112-72879
112 days ago
0-83167
23 hours
31386 harahu
author:harahu
doc: demote repeated H1 headers to H2 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 220/4 Archive/Imo/Imo2002Q3.lean,Archive/Imo/Imo2010Q5.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/RingTheory/LocalProperties/Injective.lean,Mathlib/RingTheory/LocalProperties/ProjectiveDimension.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/EmptyLine.lean,MathlibTest/DirectoryDependencyLinter/Test.lean,MathlibTest/Header.lean,scripts/demote_docstring_headers.py,scripts/find_docstring_headers.py 6 7 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
104-48723
3 months ago
unknown
0-0
0 seconds
33217 Blackfeather007
author:Blackfeather007
feat(Algebra): define associated graded structure for abelian group In this PR we define the associated graded structure for abelian group when given a filtration and only give some basic lemmas about it. --- migrated from https://github.com/leanprover-community/mathlib4/pull/26857 new-contributor t-ring-theory awaiting-author 144/0 Mathlib.lean,Mathlib/RingTheory/FilteredAlgebra/AssociatedGraded.lean 2 13 ['Blackfeather007', 'chrisflav', 'erdOne', 'eric-wieser', 'github-actions', 'urkud'] erdOne
assignee:erdOne
104-37472
3 months ago
153-51868
153 days ago
4-58698
4 days
33020 FormulaRabbit81
author:FormulaRabbit81
chore(Topology): Deprecate file --- - [x] depends on: #30851 deprecation [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import merge-conflict 82/49 Mathlib/Topology/Compactness/HilbertCubeEmbedding.lean,Mathlib/Topology/MetricSpace/HausdorffAlexandroff.lean,Mathlib/Topology/MetricSpace/PiNat.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
104-37365
3 months ago
163-24754
163 days ago
0-14835
4 hours
23791 SEU-Prime
author:SEU-Prime
Create AmiceTrans.lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-number-theory new-contributor 2963/0 Mathlib.lean,Mathlib/Analysis/Normed/Ring/Lemmas2.lean,Mathlib/NumberTheory/Padics/AmiceTrans.lean,Mathlib/NumberTheory/Padics/PSAC.lean,Mathlib/NumberTheory/Padics/PSAC2.lean,Mathlib/NumberTheory/Padics/PSAC3.lean,Mathlib/NumberTheory/Padics/PiGammainPS.lean,Mathlib/NumberTheory/Padics/PsiandVar.lean,Mathlib/RingTheory/AdicCompletion/Lemma.lean,Mathlib/RingTheory/PowerSeries/Comp.lean,Mathlib/Topology/ContinuousMap/ZeroAtBot.lean 11 5 ['SEU-Prime', 'github-actions', 'leanprover-community-bot-assistant', 'urkud'] nobody
104-36536
3 months ago
417-69202
417 days ago
0-38
38 seconds
20967 joneugster
author:joneugster
tracking(CategoryTheory/Enriched/Limits): add conical limits Tracking PR for adding conical limits Co-authored-by: Emily Riehl Co-authored-by: Dagur Asgeirsson --- - [x] depends on: #20904 - [x] depends on: #20907 - [x] depends on: #20959 - [x] depends on: #20963 - [x] depends on: #20964 - [x] depends on: #20965 - content source: emilyriehl/infinity-cosmos#78 New implementation (not reflected on this branch yet): - [x] depends on: #22917 - [x] depends on: #22921 - [ ] depends on: #22923 - [ ] depends on: #22924 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory infinity-cosmos please-adopt 619/1 Mathlib.lean,Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean,Mathlib/CategoryTheory/Enriched/Limits/HasConicalProducts.lean,Mathlib/CategoryTheory/Enriched/Limits/HasConicalPullbacks.lean,Mathlib/CategoryTheory/Enriched/Limits/HasConicalTerminal.lean,Mathlib/CategoryTheory/Enriched/Limits/IsConicalLimit.lean,Mathlib/CategoryTheory/Enriched/Limits/IsConicalTerminal.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Basic.lean 8 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
104-29444
3 months ago
unknown
0-0
0 seconds
23042 joneugster
author:joneugster
feat(CategoryTheory/Enriched/Limits): add HasConicalLimitsOfSize.shrink --- Note: I've marked this "WIP" because I'm not yet sure when this will be needed and I'd probably put the PR on the queue once I've created some follow-up needing it. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory infinity-cosmos please-adopt 22/1 Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean 1 1 ['github-actions'] nobody
104-29443
3 months ago
438-5943
438 days ago
0-1
1 second
23142 joneugster
author:joneugster
feat(CategoryTheory/Enriched/Limits): add API for HasConicalLimit --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-category-theory infinity-cosmos please-adopt 52/9 Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean 1 2 ['github-actions', 'joelriou'] nobody
104-29443
3 months ago
435-8934
435 days ago
0-67788
18 hours
23145 joneugster
author:joneugster
feat(CategoryTheory/Enriched/Limits): add IsConicalLimits --- - [ ] depends on: #23142 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory infinity-cosmos please-adopt 221/9 Mathlib.lean,Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean,Mathlib/CategoryTheory/Enriched/Limits/IsConicalLimit.lean 3 3 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
104-29442
3 months ago
435-76444
435 days ago
0-370
6 minutes
20401 RemyDegenne
author:RemyDegenne
feat: add sigmaFinite_iUnion ```lean lemma sigmaFinite_iUnion (μ : Measure α) {s : ℕ → Set α} (h_meas : MeasurableSet (⋃ n, s n)) [∀ n, SigmaFinite (μ.restrict (s n))] : SigmaFinite (μ.restrict (⋃ n, s n)) ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 37/28 Mathlib/MeasureTheory/Decomposition/Exhaustion.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean 2 6 ['RemyDegenne', 'github-actions', 'sgouezel', 'urkud'] nobody
104-12514
3 months ago
512-30
511 days ago
0-73190
20 hours
33281 michelsol
author:michelsol
feat(Analysis/SpecialFunctions/Integrals): integral of 1/sqrt(1-x^2) and its integrability. Add the integral of the derivative of arcsin and its integrability. --- - [ ] depends on: #33280 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict t-analysis 59/0 Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
104-6159
3 months ago
155-60384
155 days ago
0-2872
47 minutes
35339 grunweg
author:grunweg
feat: "confusing variables" linter Continuation of #15400. This linter flags variable commands which both update an existing binder annotation and declare new variables: these can yield confusing or misleading error messages (see https://github.com/leanprover/lean4/issues/2789). Instead, these should be split in several variable statements. ------------ Help fixing these errors is welcome! Currently, the linter only catches some cases, when the updated binder is from a previous scope. To make it catch all cases, the linter could insert a section before the variable command and use that scope instead. See [zulip](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Get.20scope.20*before*.20some.20syntax.20is.20evaluated) [discussions](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Determining.20variable.20binders.20from.20syntax). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict awaiting-CI t-linter 220/9 Cache/Requests.lean,Mathlib/FieldTheory/AbelRuffini.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean,Mathlib/Tactic/Linter/Lint.lean,Mathlib/Tactic/Linter/Style.lean,MathlibTest/LintStyle.lean 8 0 [] nobody
103-86213
3 months ago
103-86281
103 days ago
0-12
12 seconds
35342 grunweg
author:grunweg
feat: add Diffeomorph.sumSumSumComm This matches `{Equiv,Homeomorph.sumSumSumComm}`, and is needed to prove that addition in the cobordism group is commutative. From my bordism theory project. ---------- Migrated and rebased version of #22784. The current proof is not complete yet, and feels very painful. Medium-term, the best way forward might be to make fun_prop support manifolds. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry 50/0 Mathlib/Geometry/Manifold/Diffeomorph.lean 1 1 ['github-actions'] nobody
103-84357
3 months ago
103-84428
103 days ago
0-1
1 second
11500 mcdoll
author:mcdoll
refactor(Topology/Algebra/Module/WeakDual): Clean up - Move `Dual` and `dualPairing` lower in the import-hierachy - deduplicate `dualPairing` - Bundle continuity statements to `CLM`s. - Make `WeakDual` and `WeakSpace` reducible - Remove `refine'` in favor of `refine` --- Cleaning up `Analysis/NormedSpace/WeakDual` will be done in a second PR [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 227/179 Mathlib.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/NormedSpace/Dual.lean,Mathlib/Analysis/NormedSpace/WeakDual.lean,Mathlib/Analysis/VonNeumannAlgebra/Basic.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Dual.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,docs/overview.yaml,docs/undergrad.yaml 15 16 ['ADedecker', 'grunweg', 'j-loreaux', 'kkytola', 'mathlib-bors', 'mcdoll', 'urkud'] nobody
103-76301
3 months ago
752-75501
752 days ago
46-5571
46 days
20428 madvorak
author:madvorak
feat(Data/Sign): lemmas about `∈ Set.range SignType.cast` --- Perhaps `in_set_range_singType_cast_iff_abs` needs to be moved somewhere downstream. merge-conflict WIP t-data 40/0 Mathlib/Data/Sign.lean 1 13 ['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak', 'urkud'] nobody
103-76129
3 months ago
unknown
0-0
0 seconds
29281 plp127
author:plp127
doc: `Fin.natAdd_castLEEmb` Change the docstring of `Fin.natAdd_castLEEmb` which confused me when I read it so I rewrote it. PS. this doesn't really follow the naming convention since data should be in `camelCase` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data awaiting-author 2/3 Mathlib/Data/Fin/Embedding.lean 1 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
103-72750
3 months ago
250-81218
250 days ago
18-38918
18 days
34165 zcyemi
author:zcyemi
feat(Archive/Imo/Imo2012Q5): IMO 2012 Q5 --- Add IMO 2012 Q5 - [ ] depends on: #34157 - [ ] depends on: #34156 - [ ] depends on: #34155 - [ ] depends on: #33852 - [ ] depends on: #33479 - [ ] depends on: #31500 blocked-by-other-PR large-import IMO merge-conflict 965/12 Archive.lean,Archive/Imo/Imo2012Q5.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Sphere/Basic.lean,Mathlib/Geometry/Euclidean/Sphere/Power.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean 8 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
103-69713
3 months ago
130-12977
130 days ago
0-1530
25 minutes
27936 alreadydone
author:alreadydone
feat(Algebra): additivize Dvd and Prime `Prime` can't be directly additivized, so we introduce `Prime₀`, which drops the `≠ 0` condition, and additivize it to `AddPrime`. To show that `Prime₀` is a reasonable definition, we show its connection to `Irreducible` under `IsPrimal` and `IsRegular` conditions. We also show that an element in a product monoid is `Prime₀` iff one component is a unit and the other is `Prime₀`, and the same with `Prime₀` replaced by `Irreducible`. Also additivize `IsPrimal`, `IsRelPrime` and `DecompositionMonoid`. The motivation is that the primality of `single g 1` in `AddMonoidAlgebra k G` is connected to the primality of `g` in `G`. --- I've checked [all 29 files](https://github.com/search?q=repo%3Aleanprover-community%2Fmathlib4%20%E2%88%A3%20to_additive&type=code) containing the `∣` symbol and the `to_additive` attribute and fixed the wrongly translated (`dvd` to `addDvd`) names. TODO: connect (Add)Dvd to [ExistsMul/AddOfLE](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Monoid/Unbundled/ExistsOfLE.html#ExistsMulOfLE) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
398/185 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Finite.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Prime/Prod.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Coset/Card.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Period.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Tactic/Translate/ToAdditive.lean 30 38 ['JovanGerb', 'YaelDillies', 'adomani', 'alreadydone', 'bryangingechen', 'github-actions', 'jcommelin', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] bryangingechen
assignee:bryangingechen
103-69460
3 months ago
127-75320
127 days ago
107-17045
107 days
34156 zcyemi
author:zcyemi
feat(Analysis/Convex/Between): add lemmas on convex combination of mem simplex interior --- I add three lemmas of convex combinations preserving membership in the interior of a simplex. And also open a zulip thread [#mathlib4 > Best place for convex combination and simplex interior](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Best.20place.20for.20convex.20combination.20and.20simplex.20interior/with/568558406) deps: - [ ] depends on: #33852 t-analysis merge-conflict 170/0 Mathlib/Analysis/Convex/Between.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
103-68476
3 months ago
103-68476
103 days ago
0-3761
1 hour
34503 alreadydone
author:alreadydone
chore(RingTheory/Localization): generalize FractionRing to semirings + Introduce `Submonoid.regulars`, the submonoid of regular elements in a monoid. + Replace `nonZeroDivisors` by `regulars` in the definition of (Is)FractionRing, generalizing from CommRing to CommSemiring. Finishes most of the remaining parts of issue #22997. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra awaiting-CI WIP merge-conflict
label:t-algebra$
330/188 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Ring/NonZeroDivisors.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/LocalRing/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/FractionRing.lean 13 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
103-68351
3 months ago
unknown
0-0
0 seconds
35134 fpvandoorn
author:fpvandoorn
feat(translate): print constant names with hover info Part of #34846. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author merge-conflict 46/28 Mathlib/Tactic/Translate/Core.lean,MathlibTest/toAdditive.lean 2 6 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
103-68221
3 months ago
105-60677
105 days ago
2-13760
2 days
35341 grunweg
author:grunweg
feat: lint against the tactic.skipAssignedInstances option in mathlib This means we can remove the corresponding technical debt entry. Re-created version of #20872. --- [This comment](https://github.com/leanprover-community/mathlib4/pull/20872#issuecomment-2602743770) might still be relevant: does this linter need adaptations to recursively parse the outer `set_option`s? Wasn't there code written semi-recently which did this? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-linter merge-conflict 54/3 Mathlib/Tactic/Linter/Style.lean,MathlibTest/LintStyle.lean 2 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
103-56012
3 months ago
103-84648
103 days ago
0-118
1 minute
32534 erdOne
author:erdOne
feat(AlgebraicGeometry): Zariski's main theorem --- - [x] depends on: #34274 - [x] depends on: #34017 - [ ] depends on: #34222 - [ ] depends on: #34269 - [ ] depends on: #33903 - [ ] depends on: #33803 - [ ] depends on: #33555 - [x] depends on: #33805 - [x] depends on: #33722 - [x] depends on: #33718 - [x] depends on: #32811 - [x] depends on: #32803 - [x] depends on: #33469 - [x] depends on: #33553 - [x] depends on: #32530 - [x] depends on: #32528 - [x] depends on: #32429 - [x] depends on: #32375 - [x] depends on: #30885 - [x] depends on: #32536 - [x] depends on: #32537 - [x] depends on: #32595 - [x] depends on: #32596 - [x] depends on: #32813 - [x] depends on: #32809 - [x] depends on: #32802 - [x] depends on: #33468 - [x] depends on: #32665 - [x] depends on: #32823 - [x] depends on: #32806 - [x] depends on: #32837 - [x] depends on: #33537 - [x] depends on: #33476 - [x] depends on: #33556 - [x] depends on: #33536 - [x] depends on: #33472 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory 4808/0 Mathlib.lean,Mathlib/CFT/ActualStuff.lean,Mathlib/CFT/Etale.lean,Mathlib/CFT/EtaleLocalization.lean,Mathlib/CFT/Flat.lean,Mathlib/CFT/IntegralClosure.lean,Mathlib/CFT/IsStandardEtale.lean,Mathlib/CFT/Junk.lean,Mathlib/CFT/NewNo.lean,Mathlib/CFT/No.lean,Mathlib/CFT/Nonsense.lean,Mathlib/CFT/Normalization.lean,Mathlib/CFT/Prestuff.lean,Mathlib/CFT/SeparableResidueStruct.lean,Mathlib/CFT/Smooth.lean,Mathlib/CFT/SmoothFibers.lean,Mathlib/CFT/Stuff.lean,Mathlib/CFT/Stuff2.lean,Mathlib/CFT/ZariskiMain.lean,Mathlib/RingTheory/ZariskiMain.lean 20 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
103-248
3 months ago
173-83228
173 days ago
0-101
1 minute
32918 michelsol
author:michelsol
feat: define `supEdist` and `supDist` Create a new file Topology.MetricSpace.SupDistance and define the supremal distance in (extended) metric spaces. The defined `supEdist` and `supDist` will have similar theory to the already existing `infEdist` and `infDist`. The motivation is to be able to define the radius of a minimal bounding sphere as the infimum of the supDist later. [zulip discussion here](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Formalizing.20Jung's.20theorem.20and.20minimal.20bounding.20spheres) t-topology new-contributor merge-conflict 75/0 Mathlib.lean,Mathlib/Topology/MetricSpace/SupDistance.lean 2 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'michelsol', 'urkud'] nobody
102-62658
3 months ago
144-55043
144 days ago
21-3598
21 days
29145 JovanGerb
author:JovanGerb
chore: use `to_additive` in more places This PR addresses some comments about `to_additive` not working, by making it work more. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-CI t-meta merge-conflict 61/177 Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Order/BigOperators/Group/LocallyFinite.lean,Mathlib/Combinatorics/Additive/DoublingConst.lean,Mathlib/Data/ZMod/Aut.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean 5 4 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts'] nobody
102-56555
3 months ago
272-46226
272 days ago
0-26083
7 hours
34024 adomani
author:adomani
feat: the global syntax linter The `globalSyntax` linter emits a warning on pairs of consecutive commands with no overall effect. For instance, the linter would flag ```lean4 namespace X end X ``` and similarly for consecutive pairs of `open` or `section` and `end`. --- - [ ] depends on: #34019, with just the linter implementation - [x] depends on: #34021, with linter-driven corrections - [x] depends on: #34051, with linter-driven corrections [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-linter merge-conflict 219/15 Archive/Imo/Imo2024Q3.lean,Mathlib.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Init.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/GlobalSyntax.lean,MathlibTest/FindSyntax.lean,MathlibTest/Tauto.lean,MathlibTest/sqrt.lean 9 13 ['Ruben-VandeVelde', 'adomani', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
102-55682
3 months ago
134-34329
134 days ago
0-1774
29 minutes
34926 mattrobball
author:mattrobball
test Testing --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1/1 lean-toolchain 1 9 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'mattrobball'] nobody
102-55432
3 months ago
unknown
0-0
0 seconds
16553 grunweg
author:grunweg
WIP: tinkering with orientable manifolds - wait for #33307 to get merged - PR the "normed space" part separately - WIP: a linear isomorphism on a connected set is either orientation-preserving or orientation-preserving: some form of this was merged into mathlib recently; TODO update this PR accordingly! - [ ] depends on: #33307 - [x] depends on: #8738 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 287/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/Orientable.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
102-44596
3 months ago
unknown
0-0
0 seconds
27500 Komyyy
author:Komyyy
feat: the Riemann zeta function is meromorphic Also proves that the Hurwitz zeta function is meromorphic. This PR is split from #27499 to leave a good git diff history. --- The `large-import` change occurs only in the new module, so it poses no problem. - [x] depends on: #27499 - [x] depends on: #29817 This PR continues the work from #25597. Original PR: https://github.com/leanprover-community/mathlib4/pull/25597 WIP t-analysis large-import merge-conflict 87/3 Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Complex.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/NumberTheory/LSeries/AbstractFuncEq.lean,Mathlib/NumberTheory/LSeries/HurwitzZeta.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaEven.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/LSeries/RiemannZeta.lean 3 21 ['Komyyy', 'github-actions', 'j-loreaux', 'loefflerd', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] j-loreaux
assignee:j-loreaux
102-18389
3 months ago
276-53685
276 days ago
30-62878
30 days
26413 michaellee94
author:michaellee94
feat: existence of maximal solutions for ODEs meeting Picard-Lindelöf conditions Add existence proof for maximal solution of ODE using Picard-Lindelöf and a uniqueness theorem using Grönwall's lemma. --- - [x] depends on: #26382 - [x] depends on: #29186 - [ ] depends on: #35043 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR new-contributor t-analysis merge-conflict 1300/431 Mathlib.lean,Mathlib/Analysis/ODE/Basic.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/Analysis/ODE/Gronwall.lean,Mathlib/Analysis/ODE/MaximalSolution.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/UniformTime.lean,docs/1000.yaml,docs/undergrad.yaml 13 95 ['botbaki-review', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'michaellee94', 'winstonyin'] nobody
102-3793
3 months ago
333-75979
333 days ago
0-5139
1 hour
33712 wangying11123
author:wangying11123
feat(Geometry/Euclidean/Angle/Unoriented/Projection): Add sameray_orthogonalProjection_vsub_of_angle_lt Add sameray_orthogonalProjection_vsub_of_angle_lt `sameray_orthogonalProjection_vsub_of_angle_lt` When an angle is acute, the vector to the orthogonal projection lies in the same ray as the given direction vector. new-contributor t-euclidean-geometry awaiting-author 20/0 Mathlib/Geometry/Euclidean/Angle/Unoriented/Projection.lean 1 4 ['JovanGerb', 'github-actions', 'j-loreaux'] JovanGerb
assignee:JovanGerb
101-72489
3 months ago
101-72589
101 days ago
39-6778
39 days
30667 FrederickPu
author:FrederickPu
feat(‎Mathlib/Algebra/Group/Subgroup/Pointwise): subgroup mul Title: feat: pointwise products for subgroups Description: showed the point-wise product of disjoint subgroups is equivalent to their Cartesian product. Based on https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/useful.20group.20theory.20lemmas/with/546738566. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
28/0 Mathlib/Algebra/Group/Subgroup/Pointwise.lean 1 23 ['FrederickPu', 'eric-wieser', 'github-actions', 'plp127', 'tb65536'] nobody
101-70998
3 months ago
101-75632
101 days ago
1-21290
1 day
34019 adomani
author:adomani
feat: global syntax linter This linter is very unstable when editing interactively a file, since it inspects pairs of commands, rather than individual commands. For this reason, the linter should only run in CI. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import 141/0 Mathlib.lean,Mathlib/Init.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/GlobalSyntax.lean 4 7 ['SnirBroshi', 'adomani', 'bryangingechen', 'github-actions', 'mathlib-splicebot'] nobody
101-68717
3 months ago
unknown
0-0
0 seconds
33793 LTolDe
author:LTolDe
feat(MeasureTheory/Constructions/Polish/Basic): add lemma AnalyticSet.inter_nonempty_of_nowhereMeagre add lemma AnalyticSet.inter_nonempty_of_nowhereMeagre, the main ingredient for the proof of the **Effros' Theorem**, see [#mathlib4 > Effros Theorem](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Effros.20Theorem/with/566543328) introduce definition of a nowhere meagre set --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor awaiting-author 37/0 Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/GDelta/Basic.lean 3 8 ['MichaelStollBayreuth', 'erdOne', 'github-actions', 'j-loreaux'] kex-y
assignee:kex-y
101-66755
3 months ago
101-66961
101 days ago
39-9555
39 days
24965 erdOne
author:erdOne
refactor: Make `IsLocalHom` take unbundled map Under the current definition, `IsLocalHom f` and `IsLocalHom f.toMonoidHom` are not defeq, which causes quite some annoyances. We also have a consensus to not use `*HomClass` in definitions. As a result, we change `IsLocalHom` to take an unbundled function instead of a funlike. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated merge-conflict
label:t-algebra$
18/9 Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean 5 15 ['adomani', 'alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] mattrobball
assignee:mattrobball
101-42732
3 months ago
193-8501
193 days ago
24-84527
24 days
25622 eric-wieser
author:eric-wieser
refactor: overhaul instances on LocalizedModule This: * Generalizes the `SMul`, `Module`, and `Algebra` instances via appropriate compatibility conditions * Generalizes the `Mul` instance to the non-unital setting * Fixes instances diamonds for the `Nat`- and `Int`-actions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
214/100 Mathlib/Algebra/Module/LocalizedModule/Basic.lean 1 6 ['erdOne', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts'] nobody
101-42729
3 months ago
unknown
0-0
0 seconds
25980 Multramate
author:Multramate
refactor(Algebra/Group/Submonoid/Operations): rename restrict to domRestrict and add restrict And update the documentation for consistency t-group-theory merge-conflict 145/123 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Maps.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 14 10 ['Multramate', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts'] nobody
101-42604
3 months ago
101-42605
101 days ago
5-9216
5 days
25981 Multramate
author:Multramate
feat(GroupTheory/GroupAction/Basic): define homomorphisms of fixed subgroups induced by homomorphisms of groups This PR continues the work from #10126. Original PR: https://github.com/leanprover-community/mathlib4/pull/10126 t-group-theory large-import merge-conflict 218/144 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Ring/Action/Submonoid.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Maps.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 16 8 ['copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts'] nobody
101-42603
3 months ago
101-42603
101 days ago
4-78395
4 days
26377 Whysoserioushah
author:Whysoserioushah
feat(RingTheory/SimpleRing/TensorProduct): tensor product of a simple algebra and a central simple algebra is simple co-authored-by: @jjaassoonn --- t-ring-theory large-import awaiting-author merge-conflict 326/8 Mathlib.lean,Mathlib/RingTheory/SimpleRing/TensorProduct.lean,Mathlib/RingTheory/TwoSidedIdeal/Kernel.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/RingTheory/TwoSidedIdeal/Operations.lean 5 71 ['Ruben-VandeVelde', 'Whysoserioushah', 'chrisflav', 'eric-wieser', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] chrisflav and kbuzzard
assignee:kbuzzard assignee:chrisflav
101-42600
3 months ago
73-63760
73 days ago
43-37413
43 days
35313 LexinonCraft
author:LexinonCraft
feat: IMO 2025 Q4 This adds a solution for problem 4 from the International Math Olympiad 2025. --- IMO new-contributor awaiting-author 631/0 Archive.lean,Archive/Imo/Imo2025Q4.lean 2 4 ['LexinonCraft', 'github-actions', 'jsm28'] jsm28
assignee:jsm28
101-36629
3 months ago
101-36629
101 days ago
3-30421
3 days
31603 alreadydone
author:alreadydone
chore(Algebra): make `RatFunc` an abbrev I think there's no instance on `FractionRing K[X]` that shouldn't be shared by `RatFunc K`, so it's better to make the latter an abbrev. In the ongoing [Lüroth project](https://github.com/hdlean/mathlib4/pull/1/files#diff-02a084b8d8540eab8a346db8be4ba1a2b39b086bc1407125536d96adf6544544) I've been using `FractionRing K[X]` and it would be nice if we could gain direct access to `RatFunc` API (though not much is relevant, there was already one case where it's helpful), and if our results could be directly applied to RatFunc rather than going through some isomorphism boilerplate. Of course, some `IsRatFunc` predicate could also be an option (IsField + generated by one transcendental element over base field). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra RFC merge-conflict
label:t-algebra$
113/423 Mathlib/FieldTheory/Laurent.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/FieldTheory/RatFunc/Defs.lean,scripts/nolints_prime_decls.txt 5 24 ['Vierkantor', 'alreadydone', 'erdOne', 'github-actions', 'leanprover-bot', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mattrobball'] erdOne
assignee:erdOne
101-20506
3 months ago
188-43730
188 days ago
9-5124
9 days
33276 NicolaBernini
author:NicolaBernini
feat: Rename List.reverse_perm to List.reverse_perm_self and List.reverse_perm' to List.reverse_perm_iff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author t-data merge-conflict 17/15 Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/NumberTheory/Divisors.lean 8 5 ['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] kim-em
assignee:kim-em
101-20373
3 months ago
151-85046
151 days ago
4-4467
4 days
33303 sinhp
author:sinhp
feat(CategoryTheory): The monads and comonads of locally cartesian closed categories --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 405/8 Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ChosenPullbacksAlong.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Monad.lean 3 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
101-20372
3 months ago
155-2732
155 days ago
0-20
20 seconds
33795 alreadydone
author:alreadydone
feat(Topology/Sheaves): LocalPredicate prerequisite for étalé spaces --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology merge-conflict 418/143 Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Topology/Sheaves/LocalPredicate.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Topology/Sheaves/Stalks.lean 6 12 ['adamtopaz', 'alreadydone', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] adamtopaz
assignee:adamtopaz
101-20237
3 months ago
101-20238
101 days ago
34-21636
34 days
33810 dupuisf
author:dupuisf
feat: add instances of `LawfulInv` --- - [ ] depends on: #33441 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict blocked-by-other-PR 187/22 Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/RingTheory/DividedPowers/Padic.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/ContinuousMap/Bounded/Basic.lean 9 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
101-20236
3 months ago
140-45178
140 days ago
0-1
1 second
34075 eric-wieser
author:eric-wieser
feat: add a typeclass for the continuum hypothesis This allows a proof from the Archive to be promoted to mathlib itself. The proof strategy of `iff_exists_sierpinski_pathological_pred` was written almost entirely with public Gemini 3 Thinking, and then manually corrected. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory merge-conflict awaiting-author 200/58 Counterexamples/Phillips.lean,Mathlib.lean,Mathlib/SetTheory/Cardinal/ContinuumHypothesis.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 27 ['b-mehta', 'eric-wieser', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] nobody
101-19055
3 months ago
49-44234
49 days ago
0-44643
12 hours
34179 alreadydone
author:alreadydone
refactor(Algebra): weaken NormalizationMonoid This PR replaces the two fields ``` normUnit_mul : ∀ {a b}, a ≠ 0 → b ≠ 0 → normUnit (a * b) = normUnit a * normUnit b normUnit_coe_units : ∀ u : αˣ, normUnit u = u⁻¹ ``` in the definition of NormalizationMonoid by ``` normUnit_one : normUnit 1 = 1 normUnit_mul_units {a : α} (u : αˣ) : a ≠ 0 → normUnit (a * u) = u⁻¹ * normUnit a ``` and rename the old version to StrongNormalizationMonoid. The vast majority of API continue to hold under this weakened notion of NormalizationMonoid; only a handful requires the original notion. Every cancellative monoid with zero admits a weakened NormalizationMonoid structure, and every GCDMonoid admits a weakened NormalizedGCDMonoid structure. This allows us to generalize [Polynomial.normalizedGcdMonoid](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Polynomial/Content.html#Polynomial.normalizedGcdMonoid) to all GCDMonoids. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra awaiting-author merge-conflict
label:t-algebra$
505/330 Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/GCDMonoid/IntegrallyClosed.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/GCDMonoid/Nat.lean,Mathlib/Algebra/GCDMonoid/PUnit.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/RingTheory/ChainOfDivisors.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/GaussLemma.lean,Mathlib/RingTheory/PowerSeries/Inverse.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Finite.lean,Mathlib/RingTheory/UniqueFactorizationDomain/GCDMonoid.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicative.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean 20 28 ['alreadydone', 'erdOne', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] erdOne
assignee:erdOne
101-19051
3 months ago
118-47876
118 days ago
9-10392
9 days
34955 thorimur
author:thorimur
chore: test overlapping instances linter This draft PR is intended to test-run the syntax version of the overlapping instances linter in [this PR](https://github.com/JovanGerb/mathlib4/pull/1). The two purposes are 1. benching 2. figuring out which violations we should exempt/fix This PR is not intended to be merged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 515/14 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/CategoryTheory/Monoidal/Closed/Cartesian.lean,Mathlib/CategoryTheory/Shift/Pullback.lean,Mathlib/Init.lean,Mathlib/Lean/ContextInfo.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/Lean/LocalContext.lean,Mathlib/Lean/Message.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/OverlappingInstances.lean,MathlibTest/OverlappingInstances.lean 14 8 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'thorimur'] nobody
101-18782
3 months ago
unknown
0-0
0 seconds
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
101-12671
3 months ago
274-8989
274 days ago
66-73556
66 days
34674 Citronhat
author:Citronhat
feat(Algebra/Order/Ring): replace ENNReal lemmas with WithTop versions * Add `WithTop` versions of basic multiplicative order lemmas. * Use the new `WithTop` lemmas to replace `ENNReal` proofs and address six TODOs. * Fix a typo in the `pos_of_ne_zero` alias name. new-contributor t-algebra merge-conflict
label:t-algebra$
46/15 Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/ENNReal/Operations.lean 3 5 ['Citronhat', 'Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] Ruben-VandeVelde
assignee:Ruben-VandeVelde
101-107
3 months ago
101-108
101 days ago
17-1225
17 days
31893 jsm28
author:jsm28
feat(Geometry/Euclidean/Sphere/Tangent): characterize `tangentsFrom` Add lemmas relating tangency to polars, and thereby characterizing `tangentsFrom`: empty for a point inside the sphere, a singleton for a point on the sphere and, in two dimensions, of cardinality two for a point outside the circle. --- - [ ] depends on: #31891 - [ ] depends on: #31892 - [ ] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-euclidean-geometry 483/9 Mathlib.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean 4 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
100-80227
3 months ago
189-81826
189 days ago
0-313
5 minutes
35324 harahu
author:harahu
chore: add H1 headers This PR introduces a script that identifies lean files that don't have an H1 header. I've added a placeholder header to the identified files and will use this branch to develop smaller PRs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 1749/0 Archive/Wiedijk100Theorems/CubingACube.lean,Cache/Hashing.lean,Cache/IO.lean,Cache/Init.lean,Cache/Main.lean,Cache/Requests.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/IrrationalPowerOfIrrational.lean,Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/ArithmeticGeometric.lean,Mathlib/Algebra/Category/Grp/FiniteGrp.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/CharP/Frobenius.lean,Mathlib/Algebra/GroupWithZero/Int.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/HomologicalComplexBiprod.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomologicalFunctor.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Algebra/Homology/HomotopyCofiber.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/Algebra/Homology/TotalComplexSymmetry.lean,Mathlib/Algebra/Lie/CartanMatrix.lean,Mathlib/Algebra/ModEq.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/MvPolynomial/Counit.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/NoZeroSMulDivisors/Prod.lean,Mathlib/Algebra/Order/Archimedean/Hom.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Interval/Set/Group.lean,Mathlib/Algebra/Order/Module/Algebra.lean,Mathlib/Algebra/Order/Monoid/ToMulBot.lean,Mathlib/Algebra/Order/PartialSups.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Factors.lean,Mathlib/Algebra/QuadraticAlgebra.lean,Mathlib/AlgebraicGeometry/Morphisms/UnderlyingMap.lean,Mathlib/AlgebraicTopology/DoldKan/Compatibility.lean,Mathlib/AlgebraicTopology/DoldKan/EquivalenceAdditive.lean,Mathlib/AlgebraicTopology/DoldKan/GammaCompN.lean,Mathlib/AlgebraicTopology/DoldKan/NCompGamma.lean,Mathlib/AlgebraicTopology/MooreComplex.lean,Mathlib/AlgebraicTopology/SimplexCategory/Augmented.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Calculus/ContDiff/RestrictScalars.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Distribution/FourierSchwartz.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/InnerProductSpace/Harmonic/Analytic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Field/Ultra.lean,Mathlib/Analysis/Normed/Module/ENormedSpace.lean,Mathlib/Analysis/NormedSpace/Alternating/Basic.lean,Mathlib/Analysis/NormedSpace/Alternating/Curry.lean,Mathlib/Analysis/NormedSpace/Alternating/Uncurry/Fin.lean,Mathlib/Analysis/NormedSpace/BallAction.lean,Mathlib/Analysis/NormedSpace/ConformalLinearMap.lean,Mathlib/Analysis/NormedSpace/Connected.lean,Mathlib/Analysis/NormedSpace/DualNumber.lean,Mathlib/Analysis/NormedSpace/ENormedSpace.lean,Mathlib/Analysis/NormedSpace/Extend.lean,Mathlib/Analysis/NormedSpace/Extr.lean,Mathlib/Analysis/NormedSpace/FunctionSeries.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean,Mathlib/Analysis/NormedSpace/HahnBanach/SeparatingDual.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/Analysis/NormedSpace/HomeomorphBall.lean,Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/Analysis/NormedSpace/Int.lean,Mathlib/Analysis/NormedSpace/MStructure.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/MultipliableUniformlyOn.lean,Mathlib/Analysis/NormedSpace/Normalize.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Asymptotics.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Basic.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Bilinear.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Completeness.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Mul.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NNNorm.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Prod.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Analysis/NormedSpace/Pointwise.lean,Mathlib/Analysis/NormedSpace/RCLike.lean,Mathlib/Analysis/NormedSpace/Real.lean,Mathlib/Analysis/NormedSpace/RieszLemma.lean,Mathlib/Analysis/NormedSpace/SphereNormEquiv.lean,Mathlib/Analysis/Real/Pi/Leibniz.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev.lean,Mathlib/CategoryTheory/Adhesive.lean 348 3 ['github-actions', 'harahu', 'mathlib-merge-conflicts'] nobody
99-26687
3 months ago
unknown
0-0
0 seconds
34240 mcdoll
author:mcdoll
feat(Analysis/Distribution): additional properties of the support --- - [x] depends on: #34593 - [x] depends on: #34595 - [ ] depends on: #34637 - [x] depends on: #34638 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis merge-conflict blocked-by-other-PR 494/2 Mathlib/Analysis/Calculus/FDeriv/Const.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean,Mathlib/Analysis/Distribution/Support.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 6 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
99-23642
3 months ago
128-40146
128 days ago
0-34
34 seconds
35558 mcdoll
author:mcdoll
feat(Analysis/Distribution): algebraic properties of the support --- - [ ] depends on: #34637 - [ ] depends on: #33477 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-analysis merge-conflict 325/0 Mathlib/Analysis/Distribution/Support.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
99-23224
3 months ago
99-23225
99 days ago
0-1208
20 minutes
35352 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra): the norm of a positive linear functional `f` on a unital C*-algebra is `f 1` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 24/0 Mathlib/Analysis/CStarAlgebra/GelfandNaimarkSegal.lean,Mathlib/Analysis/CStarAlgebra/PositiveLinearMap.lean 2 7 ['github-actions', 'j-loreaux', 'themathqueen'] j-loreaux
assignee:j-loreaux
99-8090
3 months ago
99-8093
99 days ago
4-65379
4 days
25989 Multramate
author:Multramate
feat(NumberTheory/EllipticDivisibilitySequence): add elliptic nets This PR continues the work from #25030. Original PR: https://github.com/leanprover-community/mathlib4/pull/25030 t-number-theory large-import awaiting-author 254/39 Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 1 27 ['MichaelStollBayreuth', 'Multramate', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib4-merge-conflict-bot', 'tb65536'] tb65536
assignee:tb65536
99-2197
3 months ago
99-2197
99 days ago
55-47427
55 days
35411 daniel-carranza
author:daniel-carranza
feat(CategoryTheory/Enriched/Limits): define cotensors in an enriched category Defines the notion of cotensors in a `V`-category `C`, where `V` is a braided monoidal category. Proves that `V` itself has all cotensors when viewed as a category enriched in `V`. Also proves that if `C` has all cotensors and `V` is additionally symmetric then the cotensors form a `V`-functor from the enriched tensor product`V\op \times C` to `C`. --- This work originates from the infinity-cosmos project, where the dual theory of tensors was formalized by @arnoudvanderleer . The current version of this code introduces an `abbrev` definition `Ehom V C x y` for the hom-object C(x, y) in V. The intention is to make the code easier to both to write and read; the existing notation `x \hom[V] y` throws an error when instantiated at `C` = `V` (`ambiguous term;` `Possible interpretations:` `(ihom x).obj y : V` `x ⟶[V] y : V`). A possibly related issue is there are a few calls to `erw` that stem from a failure to identify `(ihom x).obj : V` with `Ehom V V x y`. Any help with these issues, or any other assistance, is greatly appreciated! - [ ] depends on: #35144 [required to prove `V`-functoriality of cotensors] - [ ] depends on: #35436 [required to prove that `V` admits all cotensors by itself] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory infinity-cosmos blocked-by-other-PR merge-conflict 822/0 Mathlib.lean,Mathlib/CategoryTheory/Enriched/Limits/Cotensors.lean,Mathlib/CategoryTheory/Enriched/TensorProductCategory.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Closed/InternalCurrying.lean 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
99-683
3 months ago
102-67868
102 days ago
0-8
8 seconds
35545 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat): the internal hom for presheaves of modules --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra WIP please-adopt
label:t-algebra$
141/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/InternalHom.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean 3 1 ['github-actions'] nobody
98-85221
3 months ago
99-53821
99 days ago
0-2
2 seconds
28246 Sebi-Kumar
author:Sebi-Kumar
feat(AlgebraicTopology/FundamentalGroupoid): the n-sphere is simply connected for n > 1 Prove that the `n`-dimensional sphere (i.e., the unit sphere centered at the origin in `(n + 1)`-dimensional real Euclidean space) is a simply connected space for `n > 1`. This proof follows Hatcher's "Algebraic Topology"; we first prove a general lemma about decomposing loops and then exploit the fact that non-surjective loops in the sphere are homotopically trivial. Note: To get this file to build, I edited `Mathlib/Tactic/Linter/DirectoryDependency.lean` to remove the restrictions on AlgebraicTopology files importing Geometry, NumberTheory, and FieldTheory files. Thank you to those who shared their expertise [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Warning.20that.20AlgebraicTopology.20can't.20import.20SetTheory/with/533833638). As I understand it, this is just a short-term solution, so I would appreciate feedback on what to do about this situation. Note: I am unsure where exactly the file `SimplyConnectedSphere.lean` should go or whether that is an appropriate name for the file, so feedback there would be appreciated. --- To provide additional context, this code was written as a part of the Fields Undergraduate Summer Research Program at the University of Western Ontario under the supervision of Chris Kapulkin and Daniel Carranza. - [x] depends on: #28208 - [x] depends on: #28198 - [x] depends on: #28185 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor awaiting-author 343/3 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnectedSphere.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 17 ['dagurtomas', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] robin-carlier
assignee:robin-carlier
98-84293
3 months ago
98-84293
98 days ago
13-72199
13 days
31611 thorimur
author:thorimur
feat(Meta): `withPlural` wrapper for more readable messages in source This small PR introduces a thin wrapper `withPlural` for Lean's textual datatypes so that we can write ``` "foo".withPlural "foos" count ``` instead of ``` if count = 1 then "foo" else "foos" ``` The dot notation here is chosen so that the singular version of the word appears at the start of the syntax, as opposed to buried in an `if/then`. This makes dynamically pluralizing a word in `MessageData` (which is a relatively common occurrence) a bit easier to read in source, especially when multiple pluralizations are needed close to one another. --- Am I handling the copyright header correctly? My reasoning is that the file was devoid of content, and so this is ultimately a new file. But I'm not sure this is technically what should happen here. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author merge-conflict 63/5 Mathlib/Lean/Message.lean 1 21 ['adomani', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'thorimur'] nobody
98-76520
3 months ago
175-61177
175 days ago
21-2788
21 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
98-69690
3 months ago
100-6062
100 days ago
0-3308
55 minutes
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
98-48204
3 months ago
98-48205
98 days ago
0-18707
5 hours
35591 JovanGerb
author:JovanGerb
draft: `gsimp` tactic This is a draft PR for exploring a potential `gsimp` tactic. It would be able to do some things that the current `grw` tactic cannot do. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 1233/0 Mathlib/Tactic/GSimp/Core.lean,Mathlib/Tactic/GSimp/Elab.lean,Mathlib/Tactic/GSimp/GSimpTheorems.lean,Mathlib/Tactic/GSimp/Rewrite.lean,Mathlib/Tactic/GSimp/Types.lean,MathlibTest/GSimp.lean 5 3 ['github-actions', 'mathlib-bors'] nobody
98-42419
3 months ago
98-42496
98 days ago
0-6
6 seconds
34873 Hagb
author:Hagb
feat(RingTheory/MvPolynomial/Groebner/Remainder): polynomial remainder used with Gröbner basis Definition and properties of remainder on division of a multivariate polynomial by a set of multivariate polynomials. Some lemmas are for formalization of properties of Gröbner basis. The previous `Mathlib/RingTheory/MvPolynomial/Groebner.lean` is moved to `Mathlib/RingTheory/MvPolynomial/Groebner/Division.lean`, and used by `Mathlib/RingTheory/MvPolynomial/Groebner/Remainder.lean` for the proof of remainder's existence. The PR is upstreamized from https://github.com/WuProver/groebner_proj. Co-authored-by: Hao Shen [3118181069@qq.com](mailto:3118181069@qq.com) --- CC @tsuki8 - [ ] depends on: #34759 - [ ] depends on: #34872 todo: - [ ] some theorems can be generalized to avoid requiring `IsUnit` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-ring-theory WIP merge-conflict 1324/262 Mathlib.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Combinatorics/Matroid/Closure.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Logic/Basic.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/Groebner/Division.lean,Mathlib/RingTheory/MvPolynomial/Groebner/Remainder.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,docs/references.bib 11 4 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
97-74431
3 months ago
113-74603
113 days ago
0-455
7 minutes
12933 grunweg
author:grunweg
chore: replace some use of > or ≥ by < or ≤ These were flagged by the linter in #12879: it is easy to simple avoid > or ≥ in hypotheses or `have`s. --- - [x] depends on: #35346 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 123/123 Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/GroupTheory/Coxeter/Length.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/NumberTheory/LegendreSymbol/JacobiSymbol.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Rayleigh.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/Sequences.lean,test/LibrarySearch/basic.lean,test/Use.lean,test/cancel_denoms.lean,test/linarith.lean,test/norm_cast.lean 64 7 ['YaelDillies', 'github-actions', 'grunweg', 'mathlib-dependent-issues'] nobody
97-24081
3 months ago
744-7960
744 days ago
0-55656
15 hours
33746 ster-oc
author:ster-oc
feat(Algebra/Module/ZLattice): align `ZSpan.floor` to `Int.floor` API This PR adds some of the existent lemmas about `Int.floor`, `Int.ceil` and `Int.fract` to the `ZSpan` namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor merge-conflict
label:t-algebra$
353/145 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Topology/Algebra/Order/Floor.lean 3 8 ['github-actions', 'joelriou', 'mathlib-merge-conflicts', 'ster-oc'] joelriou
assignee:joelriou
96-17005
3 months ago
96-17005
96 days ago
30-23357
30 days
35671 CoolRmal
author:CoolRmal
feat: APIs for semifinite measures This PR introduces the definition of a semifinite measure. The main theorems shown in this file are: - Sigma finite measures are semifinite. - `measure_eq_zero_of_measure_inter_finite_eq_zero`: Let `s` be a measurable set such that its intersection with any set of finite measure is null. Then `s` is null. Consequently, in order to check whether a proposition holds almost everywhere, it suffices to check it holds almost everywhere in every set with finite measure. - A measure is semifinite iff it equals to its semifinite part. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-measure-probability 107/0 Mathlib/MeasureTheory/Measure/Typeclasses/Semifinite.lean 1 4 ['CoolRmal', 'RemyDegenne', 'github-actions'] nobody
95-70423
3 months ago
96-29587
96 days ago
0-14
14 seconds
31766 SuccessMoses
author:SuccessMoses
feat(Topology/EMetricSpace): continuity of arc length fixes half of #31751 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology awaiting-author merge-conflict 396/0 Mathlib.lean,Mathlib/Topology/EMetricSpace/ArcLength.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean 3 40 ['SnirBroshi', 'SuccessMoses', 'alreadydone', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
95-48702
3 months ago
171-49572
171 days ago
2-77113
2 days
33257 NickAdfor
author:NickAdfor
feat(Combinatorics/SimpleGraph/Bipartite): Odd Cycle Theorem (A Solution to TODO) Prove bipartite iff all cycles are even This PR formalizes the classical graph theory theorem: a graph is bipartite if and only if all its cycles have even length. Co-authored-by: Nick Adfor Co-authored-by: Yue Sun Co-authored-by: Aristotle AI --- ## Main results - `SimpleGraph.bipartite_iff_all_cycles_even` : the main equivalence theorem ## Key supporting lemmas - `SimpleGraph.even_length_iff_same_color` : parity lemma for 2-colorings - `SimpleGraph.even_length_iff_even_bypass_length` : bypass length parity - `SimpleGraph.even_cycle_length_of_path` : cycle construction lemma - `SimpleGraph.bypass_eq_nil_of_closed` : closed path properties ## Proof outline 1. For bipartite graphs: use the 2-coloring to show that in a 2-coloring, a walk has even length iff its endpoints have the same color. 2. For cycles (start = end), this forces even length. 3. For the converse: if all cycles are even, construct a 2-coloring using the `two_colorable_iff_forall_loop_even` characterization. 4. Show this coloring is valid using bypass operations and path properties. ## Technical notes - Uses `SimpleGraph.Walk` for path/cycle representation - Handles both `IsPath` and `IsCycle` predicates - Uses bypass operations (`takeUntil`, `dropUntil`, `bypass`) to analyze walks - Requires `DecidableEq V` for some lemmas - Uses classical logic for case analysis ## Reviewer notes - The proof uses induction on walks and case analysis on colorings - Some lemmas (like `even_length_iff_same_color`) could be extracted to more general locations - All theorems are in the `SimpleGraph` namespace - The `bipartite_iff_all_cycles_even` theorem provides the complete characterization t-combinatorics new-contributor awaiting-author LLM-generated merge-conflict 164/8 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 2 80 ['IvanRenison', 'NickAdfor', 'Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'euprunin', 'github-actions', 'kmill', 'mathlib-merge-conflicts', 'mitchell-horner', 'vihdzp', 'vlad902'] YaelDillies
assignee:YaelDillies
95-37676
3 months ago
67-9964
67 days ago
52-32521
52 days
35494 Timeroot
author:Timeroot
feat(Topology/Perfect): simp frontier_singleton Add simp lemma ``` theorem frontier_singleton {X : Type*} [TopologicalSpace X] [T1Space X] [PerfectSpace X] (p : X) : frontier {p} = {p} ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author 4/0 Mathlib/Topology/Perfect.lean 1 4 ['Timeroot', 'github-actions', 'urkud', 'vihdzp'] urkud
assignee:urkud
94-71879
3 months ago
95-31015
95 days ago
5-41003
5 days
34419 ster-oc
author:ster-oc
feat(RCLike): add `Continuous.re` and similar This PR adds dot notation for `re`, `im`, `conj` and `ofReal` for `Continuous`, `LipschitzWith` and `Memℓp`. Given `hf : Continuous f` it allows to use `hf.re` to express `Continuous (fun x ↦ (f x).re)`, similarly to the usual `hf.add hg`. I also can add the same features for `Summable` but I am not sure where to place them, suggestions are appreciated! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor awaiting-author merge-conflict 186/41 Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/RCLike/Basic.lean 3 15 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'ster-oc'] j-loreaux
assignee:j-loreaux
94-60800
3 months ago
94-60800
94 days ago
8-29654
8 days
33247 sun123zxy
author:sun123zxy
feat(Mathlib/RingTheory/Ideal/Cotangent): dimension of cotangent spaces It is shown that the span rank of the maximal ideal of a local ring equals the dimension of the cotangent space if the maximal ideal is finitely generated. To avoid unnecessary imports, the original `Mathlib/RingTheory/Nakayama` is now moved to `Mathlib/RingTheory/Nakayama/Basic`. --- - [ ] depends on: #33359 - [ ] depends on: #33361 - [ ] depends on: #35651 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed new-contributor t-ring-theory WIP blocked-by-other-PR merge-conflict 140/27 Mathlib.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/LocalRing/Module.lean,Mathlib/RingTheory/LocalRing/Quotient.lean,Mathlib/RingTheory/Nakayama/Basic.lean,Mathlib/RingTheory/Nakayama/SpanRank.lean,Mathlib/RingTheory/Regular/RegularSequence.lean,Mathlib/RingTheory/Support.lean 10 13 ['erdOne', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sun123zxy'] nobody
94-45038
3 months ago
153-52186
153 days ago
3-72713
3 days
34853 GrigorenkoPV
author:GrigorenkoPV
feat(Combinatorics/Enumerative/Catalan): ratio of subsequent Catalan numbers --- Should I split this into 2 PRs? Otherwise it'll get squashed & be less concise. UPD: ok, I've opened #34854 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 305/195 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Catalan/Ratio.lean,Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean 7 6 ['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
94-44661
3 months ago
112-72346
112 days ago
1-62439
1 day
35735 mkaratarakis
author:mkaratarakis
feat(NumberTheory): analytical properties and lower bounds for Gelfond-Schneider auxiliary function This PR is the third component in the formalization of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem). It connects the algebraically constructed auxiliary function `R(x)` to its analytical properties, establishing the exact order of vanishing and the fundamental lower bound on the norm of its non-zero derivative evaluation. Following the argument in Loo-Keng Hua's *Introduction to Number Theory* (Chapter 17.9, equations (4) and (5)), we define the minimal non-vanishing derivative order $r$ and scale the evaluation to an algebraic integer to compute its norm. 1. (`iteratedkDeriv_R_eq_zero` & `order_geq_n`): We verify that the coefficient vector $\eta$ (chosen via Siegel's lemma in the previous PR) forces the first $n$ derivatives of the auxiliary function $R(x)$ to vanish at the points $x \in \{1, 2, \dots, m\}$. Consequently, the analytical order of $R(x)$ at these points is at least $n$. 2. We extract $r$, the exact minimal order of vanishing of $R(x)$ among all points $1 \le l \le m$, and prove that $n \le r$. 3. We define the non-zero algebraic number $\rho = (\log \alpha)^{-r} R^{(r)}(l_0)$. 4. We prove the crucial textbook step that scaling $\rho$ by $c_1^{r+2mq}$ (formalized here as `cρ`) results in an algebraic integer in $\mathcal{O}_K$. 5. Because $c_1^{r+2mq} \rho$ is a non-zero algebraic integer, the absolute value of its norm is at least $1$. We use this to formally prove the strict lower bound on the absolute norm of the unscaled $\rho$: $|N(\rho)| > c_1^{-h(r+2mq)} > c_5^{-r}$. --- - [ ] depends on: #35734 [optional extra text] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor blocked-by-other-PR 1141/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlgSetup.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainOrder.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
94-32119
3 months ago
94-54575
94 days ago
0-362
6 minutes
35743 mkaratarakis
author:mkaratarakis
feat(NumberTheory): non-vanishing derivative and norm lower bounds for Gelfond-Schneider This PR continues the formalization of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem). It establishes the critical algebraic foundation for the lower bound of the auxiliary function's evaluation by isolating its first non-vanishing derivative and proving its scaled norm is strictly bounded below. Following the contradiction argument in Loo-Keng Hua's *Introduction to Number Theory* (Chapter 17.9), we verify that the evaluation at the minimal non-vanishing order $r$ yields a strictly non-zero algebraic integer when appropriately scaled. 1) Confirms that the $r$-th derivative of the auxiliary function $R(x)$ at $l_0 + 1$ is strictly non-zero, and formally translates this into the non-zero algebraic element $\rho$. 2) Formalizes the crucial algebraic step that scaling the evaluated system coefficients by $c_1^{r+2mq}$ (formalized as `cρ`) clears all denominators, resulting in a strictly non-zero algebraic integer within $\mathcal{O}_K$. 3) Concludes that because the scaled $\rho$ is a non-zero algebraic integer, its absolute norm is strictly bounded below by 1. This formalizes the core Diophantine principle that non-zero integers cannot be arbitrarily small, establishing the algebraic foundation required to oppose the complex analytic upper bound in the final contradiction step. --- - [ ] depends on: #35735 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory blocked-by-other-PR 1650/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlgSetup.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAnalytic.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainOrder.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] nobody
94-31888
3 months ago
94-31889
94 days ago
0-2369
39 minutes
35755 Vilin97
author:Vilin97
feat(Analysis/ODE): forward Euler method convergence WIP Prove the convergence of the Forward Euler Method. This is the first theorem in most textbooks on numerical analysis for ODEs. --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was then iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code (Claude Opus 4.6). * [ ] depends on: #35753 new-contributor WIP LLM-generated merge-conflict 297/0 Mathlib.lean,Mathlib/Analysis/ODE/EulerMethod.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 4 7 ['Vilin97', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
94-9108
3 months ago
94-11319
94 days ago
0-674
11 minutes
25834 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): girth-diameter inequality This is a useful inequality that comes up in proofs related to Moore graphs, cages, SRGs, and so on. --- - [x] depends on: #26380 - [x] depends on: #25650 - [x] depends on: #26614 - [x] depends on: #33249 - [ ] depends on: #33506 - [ ] depends on: #35296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 31/6 Mathlib/Combinatorics/SimpleGraph/Girth.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
93-81941
3 months ago
351-7685
351 days ago
0-28
28 seconds
33543 JovanGerb
author:JovanGerb
feat: use `to_dual` for `HeytingAlgebra` This PR adds `to_dual` for `HeytingAlgebra`, `BiheytingAlgebra`, `GeneralizedHeytingAlgebra`. I am a bit worried about the fact that the complement operation is self-dual in a `BooleanAlgebra`, because that means that, depending on the context, `compl` needs to be translated to `hnot` or `compl`. So if we want to dualize lemmas about `BooleanAlgebra` and `compl`, we will not be able to. But I hope that the number of such lemmas is small and that they aren't often used in places that can get a `to_dual` tag (e.g. when specialized to sets, they don't need a `to_dual` tag). Aligning the `Heyting` and `Coheyting` API is kind of awkward, because they are unfortunately quite different. One reason is that the arguments of `sup`/`inf` are often swapped in the dual version, which is not compatible with `to_dual`. I've worked around this with extensive use of `to_dual none`. There are quite some lemmas that in my eyes seem unnecessary, such as `le_sup_sdiff_sup_sdiff`, but I haven't removed any in this PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
195/371 Mathlib/Combinatorics/SetFamily/Kleitman.lean,Mathlib/Order/Basic.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Notation.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Tactic/Translate/ToDual.lean 8 13 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] bryangingechen and mattrobball
assignee:bryangingechen assignee:mattrobball
93-48400
3 months ago
97-84798
97 days ago
17-21830
17 days
31595 astrainfinita
author:astrainfinita
chore: redefine `Ideal.IsPrime` Redefine `Ideal.IsPrime` to make it correct for non-commutative cases --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
333/100 Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Noetherian.lean,Mathlib/RingTheory/Ideal/Oka.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Ideal/Prime.lean,Mathlib/RingTheory/Ideal/Prod.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IsPrimary.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/Valuation/Basic.lean 22 33 ['alreadydone', 'artie2000', 'astrainfinita', 'erdOne', 'github-actions', 'leanprover-bot', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
93-26567
3 months ago
62-23223
62 days ago
59-66521
59 days
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
93-7043
3 months ago
438-71382
438 days ago
48-67492
48 days
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
93-7027
3 months ago
389-75321
389 days ago
39-60525
39 days
32825 erdOne
author:erdOne
perf(RingTheory): `attribute [irreducible] KaehlerDifferential` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-ring-theory 5/1 Mathlib/Algebra/Category/ModuleCat/Differentials/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/FormallyUnramified.lean,Mathlib/RingTheory/Kaehler/Basic.lean 3 7 ['erdOne', 'github-actions', 'jcommelin', 'leanprover-radar', 'robin-carlier'] nobody
92-78273
3 months ago
133-81391
133 days ago
1-44258
1 day
30872 rudynicolop
author:rudynicolop
feat(Computability/NFA): NFA closure under concatenation This PR proves that regular languages are closed under concatenation via a direct construction on `NFA`s without `εNFA` nor ε-transitions. The main new definitions and results include: - `M1.concat M2`, the concatenation of `NFA`s `M1` and `M2`, a direct construction without ε-transitions. - Theorem `accepts_concat : (M1.concat M2).accepts = M1.accepts * M2.accepts`, showing the correctness of the construction. - Theorem `IsRegular.mul`, showing that regular languages are closed under concatenation. --- - [x] depends on: #31038 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor awaiting-author 104/7 Mathlib/Computability/NFA.lean 1 67 ['YaelDillies', 'ctchou', 'eric-wieser', 'github-actions', 'lambda-fairy', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'rudynicolop'] nobody
92-73298
3 months ago
120-56707
120 days ago
59-63565
59 days
29354 themathqueen
author:themathqueen
refactor(Algebra/Algebra/Equiv): allow for non-unital `AlgEquiv` This refactors `AlgEquiv` to allow for non-unital algebras. More specifically, we weaken the type class assumptions from: ```lean structure AlgEquiv (R A B : Type*) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] ``` to ```lean structure AlgEquiv (R A B : Type*) [Add A] [Add B] [Mul A] [Mul B] [SMul R A] [SMul R B] ``` Instead of a `commutes'` field, we now have a `map_smul'` field. We also include a definition `AlgEquiv.ofCommutes` which takes in a `RingEquiv` and a `commutes'` field to match before and for convenience. `StarAlgEquiv` now extends `AlgEquiv`. We also generalize a few files to allow for non-unital. I suspect there are a few more things to generalize, but will leave this for later. Co-authored-by: Jireh Loreaux --- Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Refactoring.20.60AlgEquiv.60.20.28.2329354.29/with/575365792 Revives #8686. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
703/595 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/DualQuaternion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Taylor.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Algebra/Star/UnitaryStarAlgAut.lean,Mathlib/AlgebraicGeometry/Normalization.lean,Mathlib/AlgebraicGeometry/Stalk.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Lp/Matrix.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Matrix/DualNumber.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Notation.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/LinearAlgebra/CliffordAlgebra/BaseChange.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Conjugation.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/FreeAlgebra.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/LinearMap.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean,Mathlib/LinearAlgebra/Matrix/Unique.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Ideal.lean,Mathlib/NumberTheory/NumberField/Discriminant/Defs.lean,Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Algebraic/MvPolynomial.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Congruence/Hom.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Etale/StandardEtale.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Descent.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IntegralClosure/IntegrallyClosed.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Invariant/Profinite.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Localization/Away/AdjoinRoot.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean 130 73 ['SnirBroshi', 'fpvandoorn', 'github-actions', 'jcommelin', 'leanprover-bot', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'themathqueen'] joelriou
assignee:joelriou
92-70794
3 months ago
184-77230
184 days ago
65-65843
65 days
35163 CoolRmal
author:CoolRmal
feat(Topology): comparison of two Hausdorff topologies The main theorem proved in this PR is `CompactSpace.eq_of_le_compact_t2`, which says that if we have two Hausdorff topologies `s, t` on `X`, and if `t` is finer than `s` and `X` is compact under `t`, then `s = t`. I also proved some variant of this lemma. The motivations I have in mind are some applications to the theory of topological vector spaces, where we often have to compare two Hausdorff topologies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author 24/0 Mathlib/Topology/Homeomorph/Lemmas.lean 1 7 ['CoolRmal', 'dagurtomas', 'github-actions', 'j-loreaux', 'plp127'] nobody
92-54737
3 months ago
92-54737
92 days ago
14-53724
14 days
35746 ThomasMoulin-hub
author:ThomasMoulin-hub
feat (Algebra/Endomorphisms): add kernels lemma from the missing undergraduate mathematics in mathlib Add helper theorem inside Mathlib.Algebra.Polynomial.Smeval.lean and created a new file Mathlib/RingTheory/Polynomial/KernelDecomposition.lean that implements the kernels lemma from the missing undergraduate mathematics in mathlib list. This file also contains intermediate results needed for the main lemma. new-contributor 75/0 Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/RingTheory/Polynomial/Basic.lean 2 2 ['github-actions'] nobody
92-44867
3 months ago
unknown
0-0
0 seconds
35825 mattrobball
author:mattrobball
chore: unbundle `ENormed*` from algebra This is a test PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 3609/2536 .claude/worktrees/snazzy-waddling-crescent,Archive/Hairer.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2019Q2.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,CLAUDE.md,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Module/ZLattice/Summable.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/WithLp.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Completion.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/BumpFunction/SmoothApprox.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Comp.lean,Mathlib/Analysis/Calculus/ContDiff/Convolution.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/Deriv.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/RestrictScalars.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/ContDiffHolder/Pointwise.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/CompMul.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/DiffContOnCl.lean,Mathlib/Analysis/Calculus/DifferentialForm/Basic.lean,Mathlib/Analysis/Calculus/DifferentialForm/VectorField.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Affine.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/CompCLM.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean 687 5 ['leanprover-radar', 'mathlib-bors', 'mattrobball'] nobody
92-44716
3 months ago
92-50506
92 days ago
0-11
11 seconds
34932 erdOne
author:erdOne
feat(AlgebraicGeometry): formally etale morphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry merge-conflict delegated 163/12 Mathlib.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Morphisms/FormallyEtale.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/RingTheory/RingHom/Etale.lean 5 17 ['chrisflav', 'erdOne', 'github-actions', 'joneugster', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] nobody
92-36168
3 months ago
94-44657
94 days ago
11-40391
11 days
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
92-27056
3 months ago
356-56355
356 days ago
34-10092
34 days
35128 DAE123456
author:DAE123456
feat : Define anti_pascal --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
81/0 Archive.lean,Archive/Imo/Imo2018Q3.lean 2 5 ['DAE123456', 'github-actions', 'grunweg', 'vihdzp'] nobody
92-24582
3 months ago
107-79146
107 days ago
0-1613
26 minutes
35863 CBirkbeck
author:CBirkbeck
Nagell lutz --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 2005/234 Mathlib.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/ZSMul.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 7 0 [] nobody
92-1650
3 months ago
unknown
0-0
0 seconds
8102 miguelmarco
author:miguelmarco
feat(Tactic): add `unify_denoms` and `collect_signs` tactics This PR adds four new tactics: - `unify_denoms` tries to put expressions with several divisions in a form with only one division. In the case of fields, it works similarly to `field_simp`, but if the hypothesis about denominators being nonzero are not present, it assumes them, and leaves them as new goals to prove. In that sense, it is an "unsafe" tactic (but can be useful nevertheless, for example when you can't find which exact hypothesis is missing). It also works with expressions of naturals and Euclidean domains, assuming the corresponding hypothesis about the denominators dividing the numerators. - `unify_denoms!` extends `unify_denoms` to work with (in)equalities, assuming also that the denominators, once in normal form, are positive. - `collect_signs` works similarly with expressions using sums and substractions: it tries to put them in a form of one sum minus other sum. In the case of working with naturals, it assumes that we never substract a bigger number from a smaller one. Both are implemented essentially as a macro that combines several rewriting rules. Some new lemmas with the corresponding rules are added. --- please-adopt new-contributor merge-conflict modifies-tactic-syntax good first issue t-meta 407/0 Mathlib.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CollectSigns.lean,Mathlib/Tactic/UnifyDenoms.lean,MathlibTest/unify_denoms.lean,scripts/noshake.json 7 55 ['Paul-Lez', 'YaelDillies', 'github-actions', 'joneugster', 'kbuzzard', 'mathlib4-merge-conflict-bot', 'miguelmarco'] nobody
91-77754
3 months ago
380-60226
380 days ago
17-14109
17 days
35603 2500223210-max
author:2500223210-max
feat(GroupTheory/Frattini): add more theorems Add some contents about frattini subgroup into Mathlib GroupTheory Frattini.lean,including * (convenient lemma)A subgroup contained in all maximal subgroup is contained in the FRattini subgroup * A subgroup (say H) has a proper complement (meaning for some proper subgroup K, K and H generate the whole group)if and only if it is not contained in the Frattini subgroup. * A group is cyclic iff its Frattini factor(the quotient group wrt Frattini subgroup) is cyclic. * The Frattini factor of a finite p-group is elementary abelian(that is,an abelian group G with Gᵖ={1}) * A finite p-group has trivial Frattini subgroup iff the group is elementary abelian. * Burnside theorem of Frattini factor of finite p-group. --- new-contributor t-group-theory large-import awaiting-author 764/1 Mathlib/GroupTheory/Frattini.lean 1 3 ['github-actions', 'tb65536'] nobody
91-75435
3 months ago
91-75435
91 days ago
5-73876
5 days
34626 grunweg
author:grunweg
feat: analytification of schemes (affine case) This branch is for tracking purposes; the code in this branch will take a while to get merged into mathlib. The affine case depends on the regular value theorem (which is a master's thesis I am supervising now), the general case will also require gluing manifolds (another thesis). Merging both before the end of this year is an optimistic estimate. That said, pieces and pre-requisites (such as, submersions, their composition properties and the definition of submanifolds) can and hopefully get merged much sooner! --- - [ ] depends on: #28796 - [ ] depends on: #26087 - [x] depends on: #34991 - [x] depends on: #35057 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR please-merge-master 3322/50 Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Normed/Module/ContinuousLeftInverse.lean,Mathlib/Analysis/Normed/Module/ContinuousRightInverse.lean,Mathlib/Analysis/Normed/Module/Splits.lean,Mathlib/Analysis/Normed/Operator/Banach.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/MSplits.lean,Mathlib/Geometry/Manifold/RegularPoint.lean,Mathlib/Geometry/Manifold/RegularValueTheorem.lean,Mathlib/Geometry/Manifold/Scheme.lean,Mathlib/Geometry/Manifold/SliceModel.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean,Mathlib/Geometry/Manifold/Submanifold.lean,Mathlib/Geometry/Manifold/Submersion.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 20 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
91-69377
3 months ago
119-49502
119 days ago
0-1
1 second
33791 PhoenixIra
author:PhoenixIra
feat: Generalization of FixedPointApproximants to CompletePartialOrder --- This PR provides a generalization of FixedPointApproximants to CompletePartialOrder. Not every theorem can be generalized, as sometimes we require additional conditions (namely `x ≤ f x`) in order to guarantee that the set is directed and thus the supremum is well-defined. This is not necessary in a CompleteLattice. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 223/100 Mathlib/Order/CompletePartialOrder.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean 2 21 ['PhoenixIra', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] PhoenixIra and vihdzp
assignee:PhoenixIra assignee:vihdzp
91-53739
3 months ago
91-53739
91 days ago
44-16098
44 days
35674 astrainfinita
author:astrainfinita
refactor: use `OrderSupSet` in `ConditionallyCompleteLattice` --- - [x] depends on: #35774 - [x] depends on: #37079 - [ ] depends on: #37082 - [ ] depends on: #38328 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR merge-conflict 421/265 Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Data/Int/ConditionallyCompleteOrder.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/Copy.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/SetNotation.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean 20 8 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
91-53489
3 months ago
unknown
0-0
0 seconds
35669 SnirBroshi
author:SnirBroshi
feat(Mathlib/Data/Finset/Mex): `sInf sᶜ ≤ s.encard` --- It's in a separate file because I couldn't find a sensible place with the required imports, not because "mex" is particularly interesting. - [x] depends on: #35821 - [ ] depends on: #35822 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR 127/2 Mathlib.lean,Mathlib/Data/Finset/Mex.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean 6 13 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
91-52274
3 months ago
92-66067
92 days ago
3-47086
3 days
35857 AlexeyMilovanov
author:AlexeyMilovanov
feat(Logic.Equiv.BijectiveBase2): add bijective base-2 numeration This PR introduces a formalization of the bijective base-2 numeration system. Unlike standard binary representation, bijective base-2 avoids the "leading zeros" problem, providing a strict mathematical bijection between natural numbers (`ℕ`) and lists of booleans (`List Bool`). **Main additions:** * `Equiv.BijectiveBase2.toBits`: Encodes `ℕ` to `List Bool`. * `Equiv.BijectiveBase2.ofBits`: Decodes `List Bool` to `ℕ`. * `equivBijectiveBase2`: The formal `ℕ ≃ List Bool` equivalence. --- Zulip: [#PR reviews > PR #35857: Bijective Base-2 Numeration](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PR.20.2335857.3A.20Bijective.20Base-2.20Numeration/with/576336540) Zulip: [#batteries > Upstreaming Nat.Bits](https://leanprover.zulipchat.com/#narrow/channel/348111-batteries/topic/Upstreaming.20Nat.2EBits/with/580736051) *(Note: This replaces my previously closed PR to avoid the terminology clash between "Dyadic" and dyadic rationals. The namespace and definitions have been updated accordingly).* *(Note: Used AI to assist with standardizing proof structures).* t-logic new-contributor LLM-generated blocked-by-batt-PR 95/0 Mathlib.lean,Mathlib/Logic/Equiv/ListNatBijective.lean 2 6 ['AlexeyMilovanov', 'SnirBroshi', 'github-actions', 'joneugster'] nobody
91-49810
3 months ago
63-86033
63 days ago
27-59600
27 days
35605 j-loreaux
author:j-loreaux
feat: transfer instances of `ContinuousFunctionalCalculus` to type synonyms with weaker topologies --- - [ ] depends on: #35551 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 730/209 Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Range.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Restrict.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Transfer.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Matrix/HermitianFunctionalCalculus.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog/Basic.lean,Mathlib/Topology/CompactOpen.lean,Mathlib/Topology/ContinuousMap/ContinuousMapZero.lean 13 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
91-42837
3 months ago
95-18697
95 days ago
0-39286
10 hours
25170 eric-wieser
author:eric-wieser
refactor: make basis computable I claim that in the long run, `Basis.repr` should be a `DFinsupp` not `Finsupp`, so that it is computable. To make this change incrementally, we can store a `DFinsupp` internally today, and keep `repr` and `ofRepr` working with finsupp. This at least would allow building a large basis object, and then using `repr'` to compute with it. The cost of this intermediate state is a loss of many defeqs. --- - [x] depends on: #25166 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra large-import
label:t-algebra$
66/21 Mathlib/LinearAlgebra/Basis/Basic.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
90-84639
3 months ago
unknown
0-0
0 seconds
34050 Julian
author:Julian
feat(GraphTheory): Graham-Pollak theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-author t-combinatorics merge-conflict 189/7 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/EdgeLabeling.lean,Mathlib/Combinatorics/SimpleGraph/GrahamPollak.lean 4 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
90-71964
3 months ago
133-73793
133 days ago
0-13
13 seconds
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
90-65497
3 months ago
39-65472
39 days ago
71-52253
71 days
35376 michaellee94
author:michaellee94
feat(Geometry/Manifold): orientable manifolds --- - [x] depends on: #33189 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor WIP t-differential-geometry merge-conflict awaiting-author 2116/11 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/MoebiusBand.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/Geometry/Manifold/Orientation.lean,Mathlib/Topology/Closure.lean 7 8 ['Rida-Hamadani', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
90-44015
3 months ago
103-63461
103 days ago
0-100
1 minute
33406 dupuisf
author:dupuisf
feat: add basics of majorization This PR defines [majorization](https://en.wikipedia.org/wiki/Majorization). This is needed to develop the theory of unitarily invariant norms on `ℂ^n`, in particular Schatten norms. --- - [ ] depends on: #33394 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author WIP 752/13 Mathlib.lean,Mathlib/Analysis/Convex/Majorization/Basic.lean,Mathlib/Analysis/Convex/Majorization/Defs.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Order/Interval/Finset/Fin.lean,docs/references.bib 9 10 ['dupuisf', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
90-43688
3 months ago
94-57484
94 days ago
8-27887
8 days
32374 adamtopaz
author:adamtopaz
feat(Tactic/WildcardUniverse): Foo.{*, _, v*, max u v} This PR creates an elaborator for syntax of the form `Foo.{*, _, v*, max u v}`. A `*` indicates that a new universe parameter should be created, `_` and `max u v` elaborate using the existing level elaboration (so `_` elaborates to a level mvar). The syntax `v*` creates a level parameter of the form `v_n` for some value of `n`. The newly created level parameters are ordered in a particular way to match the order in which they appear in the syntax. For example, in `Foo.{*, _, v*, max u v}`, the level parameter associated with `*` will come before the other universes, including the parameter created by `v*`, and the parameters `u` and `v`. Similarly the parameter associated with `v*` will come *after* the one for `*`, and before both `u` and `v`. Note: Unlike `Category* C`, where we understand exactly how the universes involved in `C` (both in the term and its type) relate to the level parameter of the morphisms, we can't expect such precise control in general. For example, when `C.{u} : Type 0`, `Category* C` places the morphism level `v_1` before `u`, but `Category.{*} C` places it after `u`. In other words, `Foo.{...}` only reorders the level parameters based on the parameters that appear in the (elaborated) `...`, without any regard to the universes that appear in the *arguments* to `Foo.{...}`. Co-authored-by: Claude --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author WIP LLM-generated 720/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/WildcardLevel.lean,MathlibTest/WildcardLevel.lean 4 52 ['JovanGerb', 'adamtopaz', 'fpvandoorn', 'github-actions', 'leanprover-radar'] JovanGerb and dwrensha
assignee:dwrensha assignee:JovanGerb
90-39833
2 months ago
108-78302
108 days ago
63-17465
63 days
35734 mkaratarakis
author:mkaratarakis
feat(NumberTheory): matrix bounds and Siegel's lemma application for Gelfond-Schneider This PR is the second component in the formalization of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), establishing the transcendence of $\alpha^\beta$. Building on the algebraic setup from the previous PR #35733, this file establishes analytical bounds on the linear system matrix and applies Siegel's Lemma (Lemma 8.2) to extract a bounded, non-trivial integer solution vector. We establish the exact upper bounds required to construct the auxiliary integer function $R(x)$. `c₃` and Matrix Bounds (`house_matrixA_le`)**: We define the bounding constant $c_3$, which aggregates the base bounds $c_2$ and the maximal houses of the algebraic preimages $\alpha', \beta', \gamma'$. Through extensive algebraic manipulation, we formally prove that the house of the entries in our linear system matrix $A$ is strictly bounded by $c_3^n * n^{(n - 1) / 2}$. Using the bounds established above, we apply `house.exists_ne_zero_int_vec_house_le` (a formalization of Lemma 8.2, p. 490) to guarantee the existence of a non-trivial vector of algebraic integers $\eta$ in the kernel of $A$. We define the solution bounding constant $c_4$ and prove the textbook bound that the house of our resulting coefficient vector $\eta$ satisfies $\forall k, \|\eta_k\| \leq c_4^n * n^{(n + 1) / 2}$. - [ ] depends on: #35733 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-number-theory blocked-by-other-PR 872/5 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlgSetup.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
89-80945
2 months ago
94-55160
94 days ago
0-306
5 minutes
34875 banrovegrie
author:banrovegrie
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap. - Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}` - Add `Matrix.inv_sub_vecMulVec`: subtraction variant - Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses ## Test plan - [x] `lake build` passes - [x] Lines within 100 char limit - [x] All declarations have docstrings **Any specific AI usage?**: Used Copilot for review purposes. t-algebra new-contributor awaiting-author
label:t-algebra$
135/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean 2 14 ['Xxxjdjdid', 'banrovegrie', 'chrisflav', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] chrisflav
assignee:chrisflav
89-68573
2 months ago
44-65662
44 days ago
69-6728
69 days
29982 hrmacbeth
author:hrmacbeth
feat: new `isolate` tactic This PR adds a new tactic, `isolate`, which "solves for x" in an equation or relation. For example: ```lean example (a b : ℝ) (f : ℝ → ℝ) : 5 * f a - 3 < b := by isolate f a -- new goal: `⊢ f a < (b + 3) / 5` ``` The `isolate` tactic may generate side goals, if these are necessary to justify the transformation. The tactic will attempt to justify such side goals using `positivity` (as in the above example), unification, or type class inference, but if unsuccessful will present them to the user. For example: ```lean example (a b c : ℝ) (f : ℝ → ℝ) : c * f a - 3 < b := by isolate f a -- new goal: `⊢ f a < (b + 3) / c` -- second (side) new goal: `⊢ 0 < c` ``` The `isolate` tactic is extensible. Coverage may be extended to new relations and new operations-to-be-undone by tagging appropriate lemmas with the new `@[isolate]` attribute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta awaiting-author merge-conflict 943/1 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Isolate.lean,Mathlib/Tactic/Isolate/Core.lean,Mathlib/Tactic/Isolate/Tagging.lean,Mathlib/Tactic/Relation/Symm.lean,MathlibTest/Isolate/Heavyweight.lean,MathlibTest/Isolate/Lightweight.lean,scripts/noshake.json 12 83 ['JovanGerb', 'PatrickMassot', 'Vierkantor', 'github-actions', 'hrmacbeth', 'kim-em', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
89-57851
2 months ago
57-77199
57 days ago
80-58929
80 days
26013 tsuki8
author:tsuki8
feat(Data/Finset/Card,Data/Set/Finite/Basic): TODO needs a better title add `card_bijOn` and `finset_subset_preimage_of_finite_image` Add `card_bijOn`: proves that for a bijection between finsets, their cardinalities are equal Add `finset_subset_preimage_of_finite_image`: constructs a finset subset preserving image cardinality Co-authored-by: Junyu Guo --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data new-contributor 15/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Set/Finite/Basic.lean 2 6 ['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] nobody
89-28750
2 months ago
333-8483
333 days ago
13-85893
13 days
29624 mcdoll
author:mcdoll
feat(LinearAlgebra/LinearPMap): add definition of resolvent and first resolvent identity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-analysis awaiting-author
label:t-algebra$
189/9 Mathlib/LinearAlgebra/LinearPMap.lean 1 11 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mcdoll'] kim-em
assignee:kim-em
89-20768
2 months ago
185-33039
185 days ago
64-60811
64 days
34910 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Acyclic): a graph is a tree iff it's acyclic and has exactly `n - 1` edges --- This was my white whale for quite some time. Hooray! - [x] depends on: #34907 - [ ] depends on: #34909 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 98/1 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Order/RelIso/Basic.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
89-14431
2 months ago
113-4522
113 days ago
0-796
13 minutes
35805 adrianmartir
author:adrianmartir
feat(NumberTheory/Divisors): Add `infinite_setOf_divisors_iff` This proves that the set of divisors `{ m | m | n }` of a natural number `n` is infinite if and only if `n` is zero. The first proof draft was by @Aristotle-Harmonic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor awaiting-author 10/0 Mathlib/NumberTheory/Divisors.lean 1 6 ['adrianmartir', 'alexjbest', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
89-6076
2 months ago
65-71816
65 days ago
27-18698
27 days
35964 b-reinke
author:b-reinke
feat(CategoryTheory/Linear): define category algebra WIP definition of the category algebra of a linear category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory
label:t-algebra$
171/0 Mathlib.lean,Mathlib/CategoryTheory/Linear/CategoryAlgebra.lean,Mathlib/Data/DFinsupp/BigOperators.lean 3 2 ['github-actions'] nobody
89-4381
2 months ago
89-7499
89 days ago
0-15
15 seconds
35442 dhyan-aranha
author:dhyan-aranha
feat: Affine line with doubled origin counter example --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author t-algebraic-geometry 305/0 Counterexamples.lean,Counterexamples/AffineLineWithDoubledOrigin.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean 4 21 ['BryceT233', 'chrisflav', 'dhyan-aranha', 'github-actions'] nobody
89-1680
2 months ago
101-76085
101 days ago
0-5488
1 hour
26942 pechersky
author:pechersky
feat(RingTheory/Valuation/ValueGroupIso): isomorphism of value groups when compatible and also to the ValuativeRel's value group by request from comment in https://github.com/leanprover-community/mathlib4/pull/26754#issuecomment-3051770901 - [ ] depends on: #26588 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26939 - [x] depends on: #26940 - [x] depends on: #26941 merge-conflict t-ring-theory t-order 299/3 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/RingTheory/Valuation/ValueGroupIso.lean 6 10 ['faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'pechersky'] faenuccio
assignee:faenuccio
88-84320
2 months ago
288-69730
288 days ago
10-67838
10 days
29713 jessealama
author:jessealama
feat(Algebra/Homology): add Euler–Poincaré formula This PR builds on the generalized Euler characteristic framework from #31121 to prove the Euler-Poincaré formula for chain complexes. PR #31121 defines the Euler characteristic for general homological complexes. This PR specializes those definitions to ℤ-indexed chain complexes and proves the main Euler-Poincaré theorem. ### Main result (in `EulerPoincare.lean`) * `ChainComplex.eulerChar_eq_homologyEulerChar`: For ℤ-indexed bounded chain complexes of finite-dimensional modules over a division ring, the alternating sum of chain dimensions equals the alternating sum of homology dimensions. ### Supporting lemmas The file also provides dimension lemmas generalized to arbitrary `HomologicalComplex (ModuleCat k) c` (not just ℤ-indexed chain complexes): * `HomologicalComplex.dFrom_zero_range` / `dTo_zero_range`: zero range when the target/source object is zero * `HomologicalComplex.dFrom_range_finrank_eq_d` / `dTo_range_finrank_eq_d`: range of `dFrom`/`dTo` has the same dimension as the underlying differential * `HomologicalComplex.range_dTo_le_ker_dFrom`: range of `dTo` is contained in the kernel of `dFrom` --- - [ ] depends on: #38483 (`Antiperiodic.sum_Ico_shift` and bilinear cancellation lemma) Builds on: #31121 Related to: #29639, #29643, #29646 awaiting-author t-algebra new-contributor blocked-by-other-PR
label:t-algebra$
428/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Periodic.lean,Mathlib/Algebra/Homology/EulerPoincare.lean 2 26 ['github-actions', 'jessealama', 'joelriou', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
88-83404
2 months ago
217-12176
217 days ago
35-45800
35 days
25740 robin-carlier
author:robin-carlier
feat(AlgebraicTopology/SimplexCategory/GeneratorsRelations): `SimplexCategoryGenRel.toSimplexCategory` is an equivalence We use the normal forms for morphisms in `SimplexCategoryGenRel` to prove that `SimplexCategoryGenRel.toSimplexCategory` is an equivalence. We prove in order that there exists unique lifts in `SimplexCategoryGenRel` of mono (resp. epis) in `SimplexCategory`, and use this to deduce fully faithfulness of `SimplexCategoryGenRel.toSimplexCategory` thanks to the existing epi-mono factorisation in `SimplexCategory`. Part of a series of PR formalising that `SimplexCategoryGenRel` is equivalent to `SimplexCategory`. --- - [ ] depends on: #25737 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #21747.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/21747* t-algebraic-topology blocked-by-other-PR 555/2 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Equivalence.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
88-67436
2 months ago
352-13568
352 days ago
0-2
2 seconds
15355 adomani
author:adomani
feat: MiM PR report --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 193/0 .github/workflows/monthly_pr_report.yaml,scripts/README.md,scripts/find_labels.sh 3 18 ['YaelDillies', 'adomani', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
88-63123
2 months ago
unknown
0-0
0 seconds
22464 adomani
author:adomani
feat(CI): declarations diff in Lean Rewrites the `declaration_diff` script in Lean. You can see the effect of the new script in the testing branch #22497. The new CI step runs in approximately 5mins, but is separate from the `build` step. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author CI merge-conflict 151/0 .github/workflows/PR_summary_lean.yml,scripts/README.md,scripts/declarations_diff.lean,scripts/declarations_diff_lean_shell_glue.sh 4 8 ['bryangingechen', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
88-61528
2 months ago
305-42794
305 days ago
146-23496
146 days
22648 adomani
author:adomani
test: lean implementation decl diff quandle --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 210/1 .github/workflows/PR_summary_lean.yml,Mathlib/Algebra/Quandle.lean,scripts/README.md,scripts/declarations_diff.lean,scripts/declarations_diff_lean_shell_glue.sh 5 5 ['adomani', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
88-61526
2 months ago
unknown
0-0
0 seconds
35096 dagurtomas
author:dagurtomas
chore(CategoryTheory): reduce API duplication for concrete categories --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 186/1376 Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/CommBialgCat.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/Grp/Kernels.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Products.lean,Mathlib/Algebra/Category/ModuleCat/Projective.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Instances.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Category/Semigrp/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/CategoryTheory/ConcreteCategory/Basic.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory/WithAlgebraicStructures.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean,Mathlib/CategoryTheory/Preadditive/Yoneda/Basic.lean,Mathlib/CategoryTheory/SingleObj.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/HasColimits.lean,Mathlib/Order/Category/BddDistLat.lean,Mathlib/Order/Category/BddLat.lean,Mathlib/Order/Category/BddOrd.lean,Mathlib/Order/Category/BoolAlg.lean,Mathlib/Order/Category/DistLat.lean,Mathlib/Order/Category/FinBddDistLat.lean,Mathlib/Order/Category/Frm.lean,Mathlib/Order/Category/HeytAlg.lean,Mathlib/Order/Category/Lat.lean,Mathlib/Order/Category/LinOrd.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Category/PartOrdEmb.lean,Mathlib/Order/Category/Preord.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopCat/EffectiveEpi.lean,Mathlib/Topology/Category/TopCat/GrothendieckTopology.lean,Mathlib/Topology/Category/TopCat/Limits/Cofiltered.lean,Mathlib/Topology/Category/TopCat/Limits/Konig.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Category/TopCat/Limits/Pullbacks.lean,Mathlib/Topology/Gluing.lean 68 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
88-53395
2 months ago
unknown
0-0
0 seconds
35766 DavidLedvinka
author:DavidLedvinka
feat(Probability): add Monotonicity of setBernoulli on IsUpperSet merge-conflict 254/47 Mathlib.lean,Mathlib/MeasureTheory/Measure/AEMeasurable.lean,Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Measure/Dirac.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Probability.lean,Mathlib/Order/UpperLower/Relative.lean,Mathlib/Probability/Combinatorics/BinomialRandomGraph/Defs.lean,Mathlib/Probability/Distributions/Bernoulli.lean,Mathlib/Probability/Distributions/SetBernoulli.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/Topology/UnitInterval.lean 11 16 ['DavidLedvinka', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] nobody
88-53382
2 months ago
unknown
0-0
0 seconds
35828 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/GradedAlgebra/Homogeneous/Hom): homogeneous algebra maps and evaluation Define the notion of homogeneous algebra morphism between algebra maps. Prove that the evaluation of a (weighted) homogeneous multivariate polynomial at adequate elements of a graded algebra define a homogeneous algebra morphism. co-authored with @mariainesdff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory WIP 74/0 Mathlib.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Hom.lean 3 11 ['AntoineChambert-Loir', 'github-actions', 'joneugster', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
88-37656
2 months ago
49-9205
49 days ago
43-3286
43 days
28286 bwangpj
author:bwangpj
feat(Geometry/Manifold/ContMDiff): basic lemmas for analytic (`C^ω`) functions Add basic lemmas relating `ContMDiff` in the `C^ω` case to being `Analytic` on charts. This is upstreamed from [https://github.com/girving/ray](https://github.com/girving/ray). Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry new-contributor 36/0 Mathlib/Geometry/Manifold/ContMDiff/Defs.lean 1 14 ['bwangpj', 'girving', 'github-actions', 'grunweg', 'kbuzzard', 'mathlib-merge-conflicts', 'sgouezel'] sgouezel
assignee:sgouezel
88-14218
2 months ago
263-10568
263 days ago
27-52841
27 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
88-9257
2 months ago
184-12597
184 days ago
36-69524
36 days
27274 peabrainiac
author:peabrainiac
feat(Geometry/Diffeology): continuous diffeologies & D-topology-lemmas Introduces the continuous diffeology on topological spaces and the Galois connection between it and the D-topology, and then uses it to prove a few more lemmas about the D-topology. --- Aside from being useful for defining a right adjoint of the D-topology functor later, this is a prerequisite for correctly defining coinduced diffeologies (namely in such a way that the D-topology is defeq to the coinduced topology) and thus also for most constructions of diffeological spaces. - [x] depends on: #26973 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry awaiting-author 153/0 Mathlib.lean,Mathlib/Geometry/Diffeology/Continuous.lean 2 7 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'ocfnash'] nobody
87-62552
2 months ago
87-62552
87 days ago
3-44558
3 days
34120 winstonyin
author:winstonyin
feat: `GroupWithZero` versions of `le` lemmas [Zulip thread: #mathlib4 > prod_le_pow_card](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/prod_le_pow_card/with/568611481) ## Motivation Inequality lemmas such as `Multiset.prod_le_pow_card` that are true for the reals are only stated for non-negative reals. Instead of simply providing non-negativity as a proof obligation, the downstream user is forced to lift all non-negative terms to `NNReal` and then invoke the inequality lemma. This motivates duplicating lemmas that assume `[CommMonoid R] [MulLeftMono R]` to ones that assume `[CommMonoidWithZero R] [ZeroLEOneClass R] [PosMulMono R]` along with a non-negativity hypothesis. I've only included the obvious case for now. I'll carefully comb through these lemmas to ensure pairing and consistent naming. I've included here a downstream effect of this change, greatly simplifying a part of a proof. I'll record some of these here as well, but I'll move them to a separate PR at the end . ## Changes * Add `List.prod_le_pow_length₀` and `Multiset.prod_le_pow_card₀`. * Add subscript 0 to `prod_map_le_pow_card`, meaning it assumes `CommMonoidWithZero`, consistent with similar lemmas. * Remove the `FunLike` assumption in `prod_map_le_pow_length₀` and `prod_map_le_pow_card₀` * Update and shorten proof of `max_norm_root_eq_spectralValue`. ## TODO * Ensure pairing between lemmas that assume `CommMonoid` and `CommMonoidWithZero` across `List`, `Multiset`, `Finset`. * Find other such cases, e.g. `mul_lt_one`. * Ensure consistent naming using subscript 0. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import merge-conflict 662/286 Archive/Imo/Imo2025Q3.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/List.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Multiset.lean,Mathlib/Algebra/Order/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Order/Monovary.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pochhammer.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Measure/HasOuterApproxClosedProd.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/FermatPsp.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/ModularForms/JacobiTheta/OneVariable.lean,Mathlib/NumberTheory/Multiplicity.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Order/Filter/AtTopBot/Monoid.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean,Mathlib/Topology/EMetricSpace/Paracompact.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,scripts/nolints_prime_decls.txt 54 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
87-46554
2 months ago
131-26287
131 days ago
0-20
20 seconds
35157 Multramate
author:Multramate
feat(RingTheory/AdjoinRoot): add IsFractionRing for AdjoinRoot Co-authored-by: Sriram Chinthalagiri Venkata @sriram3301 This contribution was created as part of the Heidelberg Lean workshop "Formalising algebraic geometry" in November 2025. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra awaiting-author
label:t-algebra$
40/1 Mathlib/RingTheory/AdjoinRoot.lean 1 8 ['copilot-pull-request-reviewer', 'erdOne', 'github-actions', 'robin-carlier'] mattrobball
assignee:mattrobball
87-2297
2 months ago
77-63776
77 days ago
25-82526
25 days
29425 pechersky
author:pechersky
feat(NumberTheory/Padics/Torsion): `HasEnoughRootsOfUnity ℤ_[p] (p - 1)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #29403 - [x] depends on: #29404 - [x] depends on: #29405 - [x] depends on: #29408 - [x] depends on: #29424 - [ ] depends on: #30989 merge-conflict awaiting-author t-ring-theory 179/0 Mathlib.lean,Mathlib/NumberTheory/Padics/Torsion.lean,Mathlib/RingTheory/ZMod/Torsion.lean 3 6 ['erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'pechersky'] erdOne
assignee:erdOne
87-2203
2 months ago
195-79421
195 days ago
44-24353
44 days
27980 smmercuri
author:smmercuri
feat: dimensions of completions at infinite place extensions This PR continues the work from #24853. Original PR: https://github.com/leanprover-community/mathlib4/pull/24853 --- - [x] depends on: #27977 - [ ] depends on: #27978 - [x] depends on: #27974 - [x] depends on: #27975 - [ ] depends on: #27976 - [ ] depends on: #29942 - [ ] depends on: #29946 t-number-theory blocked-by-other-PR large-import merge-conflict FLT 619/2 Mathlib.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/NumberTheory/NumberField/Completion.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Dimension.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean 7 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
87-1188
2 months ago
297-84171
297 days ago
0-3752
1 hour
34138 pfaffelh
author:pfaffelh
feat(MeasureTheory): Introduce `DiscreteMeasure α` giving rise to a `Measure α` as a sum of `dirac`s Define `DiscreteMeasure α` as a structure with `weight : α → ℝ≥0∞` Define `toMeasure (w : DiscreteMeasure α) : Measure α` as a sum of diracs Show properties of the resulting objects This PR intends to start a more userfriendly interaction with discrete probability (measure) theory, in contrast to probability mass functions (`PMF`). There are two main differences between `DiscreteMeasure` and `PMF`: * Every `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `DiscreteMeasure`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.) * The `toMeasure` function of `MassFunction` defines the measure as a sum of diracs, which immediately makes computations possible. Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change) - depends on: #37060 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 224/0 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/DiscreteMeasure.lean 4 27 ['DavidLedvinka', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'metakunt', 'ocfnash', 'pfaffelh'] ocfnash
assignee:ocfnash
86-84848
2 months ago
39-44700
39 days ago
82-19320
82 days
35327 SnirBroshi
author:SnirBroshi
feat(SimpleGraph/Acyclic): the union of two trees that share exactly one vertex is a tree --- A surprisingly painful proof for something that seems trivial when drawing on the board. To avoid any doubts: no AI was involved whatsoever. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics awaiting-author 95/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 2 10 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vbeffara', 'vlad902'] YaelDillies
assignee:YaelDillies
86-74787
2 months ago
70-41307
70 days ago
33-16907
33 days
36148 robin-carlier
author:robin-carlier
test: make Category.assoc a pre-simp lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 83/62 Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Homology/BifunctorHomotopy.lean,Mathlib/Analysis/Normed/Group/SemiNormedGrp/Kernels.lean,Mathlib/CategoryTheory/Category/Basic.lean,Mathlib/CategoryTheory/Dialectica/Basic.lean,Mathlib/CategoryTheory/EffectiveEpi/Comp.lean,Mathlib/CategoryTheory/Endomorphism.lean,Mathlib/CategoryTheory/Galois/GaloisObjects.lean,Mathlib/CategoryTheory/Generator/Basic.lean,Mathlib/CategoryTheory/GuitartExact/Over.lean,Mathlib/CategoryTheory/GuitartExact/VerticalComposition.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/AbelianImages.lean,Mathlib/CategoryTheory/Limits/Shapes/Diagonal.lean,Mathlib/CategoryTheory/Limits/Shapes/Images.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Connected.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/WidePullbacks.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Localization/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Braided/Transport.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Closed/FunctorToTypes.lean,Mathlib/CategoryTheory/MorphismProperty/Descent.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/Descent/Precoverage.lean,Mathlib/CategoryTheory/Sites/Hypercover/One.lean 31 4 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'robin-carlier'] nobody
86-36250
2 months ago
86-63693
86 days ago
0-2
2 seconds
36142 erdOne
author:erdOne
feat(Topology): sheaves of modules in `Over U` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import awaiting-author merge-conflict 116/7 Mathlib.lean,Mathlib/CategoryTheory/Sites/Spaces.lean,Mathlib/Topology/Sheaves/Module.lean,Mathlib/Topology/Sheaves/Over.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean 5 5 ['github-actions', 'joelriou', 'mathlib-merge-conflicts'] nobody
85-83550
2 months ago
86-74284
86 days ago
0-153
2 minutes
35073 joelriou
author:joelriou
feat(CategoryTheory/Sites): more on Cech cohomology WIP branch --- - [x] depends on: #35035 - [x] depends on: #35026 - [x] depends on: #35038 - [x] depends on: #35140 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 646/25 Mathlib.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/AlgebraicTopology/ExtraDegeneracy.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/Basic.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/Cech.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/EvalOpAddCommGrpCat.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/Misc.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/CechAddCommGrpCat.lean,Mathlib/CategoryTheory/Subfunctor/Sieves.lean,Mathlib/Topology/Sheaves/Cech/AddCommGrpCat.lean 13 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
85-78208
2 months ago
109-4563
109 days ago
0-2
2 seconds
34940 michaellee94
author:michaellee94
feat: the graph of a continuous function on a $C^n$ manifold is a $C^n$ manifold --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor awaiting-author merge-conflict 536/0 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/Instances/Graph.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Topology/Constructions/Graph.lean 5 80 ['botbaki-review', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'michaellee94', 'ocfnash'] ocfnash
assignee:ocfnash
85-70878
2 months ago
87-51073
87 days ago
15-5284
15 days
35193 Brian-Nugent
author:Brian-Nugent
feat(Topology/Closeds): implement category of closed sets in topological spaces I copied over the nice API for working with `TopologicalSpace.Opens` as a category over for `TopologicalSpace.Closeds`. The only thing that did not immediately transfer was `Topology.IsInducing.functorObj` so I omitted it. Based on work of @kim-em --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor please-adopt merge-conflict awaiting-author 385/0 Mathlib.lean,Mathlib/Topology/Category/TopCat/Closeds.lean,Mathlib/Topology/Category/TopCat/Opens.lean 2 24 ['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
85-70024
2 months ago
70-70097
70 days ago
17-64811
17 days
35332 yisiox
author:yisiox
feat(Computability): regular expressions match a regular language This PR adds a proof that the language matched by a regular expression is a regular language. This is achieved by the following constructions and proofs of their correctness - A DFA `epsilon` which accepts the empty language - A DFA `char (a : α)` which accepts the language containing only a single symbol - An Epsilon-NFA `concat (M₁ : εNFA α σ₁) (M₂ : εNFA α σ₂)` which accepts the concatenation of the languages of two Epsilon-NFAs - An Epsilon-NFA `kstar (M : εNFA α σ)` which accepts the Kleene star of a language of an Epsilon-NFA The following theorems on closure are added - `IsRegular.zero` - `IsRegular.one` - `IsRegular.top` - `IsRegular.singleton` - `IsRegular.mul` - `IsRegular.kstar` which demonstrates - `IsRegular.matches` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor 475/0 Mathlib/Computability/DFA.lean,Mathlib/Computability/EpsilonNFA.lean 2 2 ['github-actions'] nobody
85-59985
2 months ago
unknown
0-0
0 seconds
30408 kckennylau
author:kckennylau
feat(RingTheory): more algebra instances for HomogeneousLocalization and linear constructors This PR introduces the instance `Algebra R₀ (HomogeneousLocalization 𝒜 x)` as well as two linear constructors `mkₗ` and `Away.mkₗ` that fix the denominator. Zulip discussion: [#mathlib4 > Some algebra instance for graded algebra and homog loc](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Some.20algebra.20instance.20for.20graded.20algebra.20and.20homog.20loc/with/544178649) --- Split from #26061. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 65/20 Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean 1 6 ['github-actions', 'mariainesdff', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
85-57022
2 months ago
213-86146
213 days ago
17-72413
17 days
30431 kckennylau
author:kckennylau
feat(RingTheory): a homogeneous submodule is the span of its homogeneous elements --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 22/0 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean 2 9 ['alreadydone', 'github-actions', 'kckennylau', 'mariainesdff', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
85-57021
2 months ago
207-75783
207 days ago
23-21820
23 days
33501 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Degree): degrees for infinite graphs Define `ENat` versions of `degree`/`minDegree`/`maxDegree` called `edegree`/`minEDegree`/`maxEDegree` respectively. --- The `e` prefix matches the existing `edist` and `ediam`. I will split this PR, but first I'd like to get positive signals on the concept. TODO (future work): `tsum G.edegree = 2 * G.edgeSet.encard` and then `ENat.card V * G.minEDegree ≤ 2 * G.edgeSet.encard ≤ ENat.card V * G.maxEDegree` (can we avoid topology [somehow](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/588756615)?) - [x] depends on: #38244 - [x] depends on: #38354 - [x] depends on: #38355 - [ ] depends on: #38356 - [ ] depends on: #38612 - [ ] depends on: #38747 Note: this PR used to be a refactor of the existing `degree`/`maxDegree`/`minDegree`, see the edits of this description. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-combinatorics blocked-by-other-PR merge-conflict awaiting-author 352/259 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Degree.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Order/WithBot.lean 22 35 ['IvanRenison', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody
85-49737
2 months ago
118-12982
118 days ago
14-72041
14 days
33808 seewoo5
author:seewoo5
feat(Manifold/MFDeriv): add fun_prop to `MDifferentiable` --- Add FunProp to `MDifferentiable`. For example, the following works (when `F'` is normed `𝕜`-algebra) ```lean example (hp : MDifferentiable I 𝓘(𝕜, F') p) (hq : MDifferentiable I 𝓘(𝕜, F') q) : MDifferentiable I 𝓘(𝕜, F') ((p * q + p - q) * q * p) := by fun_prop ``` Motivated from [sphere packing project](https://github.com/thefundamentaltheor3m/Sphere-Packing-Lean). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry merge-conflict 15/0 Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 3 9 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'seewoo5'] nobody
85-49613
2 months ago
140-9925
140 days ago
0-43623
12 hours
36210 vbeffara
author:vbeffara
feat(Combinatorics/SimpleGraph): definitions of graph contraction and graph minor A contraction is the image of a graph through a surjective function with connected fibers, and a minor is a contraction of a subgraph. This PR shows that being a contraction is transitive, but does not show the same for minors because the proof is more involved, it will be in a subsequent PR. The definitions are in `Prop` and do not contain data, but I'm not sure if that was the right choice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 151/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Contraction.lean,Mathlib/Combinatorics/SimpleGraph/Minor.lean 3 8 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'robin-carlier', 'vbeffara'] b-mehta
assignee:b-mehta
85-42555
2 months ago
31-71218
31 days ago
53-33900
53 days
34484 grunweg
author:grunweg
test: debugging mfderiv_smul erws Not meant for landing. --- - [ ] depends on: #34262 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR WIP merge-conflict 43/0 Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 1 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
85-41053
2 months ago
122-78928
122 days ago
0-252
4 minutes
35547 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: tidy various files --- As usual, `simp`s didn't seem slow. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author merge-conflict 83/117 Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/LinearRecurrence.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/ZariskisMainTheorem.lean,Mathlib/Analysis/Complex/CoveringMap.lean,Mathlib/Analysis/Complex/MeanValue.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/JordanChevalley.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/SubFinite.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Probability/Distributions/Cauchy.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Polynomial/Subring.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/UniqueFactorizationDomain/ClassGroup.lean,Mathlib/RingTheory/Unramified/LocalStructure.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Majorized.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/MulAction.lean 32 14 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'vihdzp'] nobody
85-41038
2 months ago
98-68215
98 days ago
0-67842
18 hours
35808 xroblot
author:xroblot
feat(RamificationInertia): splitting in the inertia field --- - [ ] depends on: #35802 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import t-algebra merge-conflict
label:t-algebra$
501/12 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Data/ZMod/QuotientRing.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/HasFiniteQuotients.lean 8 4 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
85-41022
2 months ago
92-79127
92 days ago
0-2518
41 minutes
34501 eric-wieser
author:eric-wieser
chore(Data/Fintype/Induction): add a workaround for a bug in `induction` This works around leanprover/lean4#4246, as Zulip threads frequently run up against this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta please-adopt 15/1 Mathlib/Data/Fintype/Option.lean 1 3 ['github-actions', 'joneugster'] joneugster
assignee:joneugster
85-7551
2 months ago
119-74294
119 days ago
2-59629
2 days
8479 alexjbest
author:alexjbest
feat: use leaff in CI [Leaff](https://github.com/alexjbest/leaff) is an experimental lean-diff tool, this PR is to experiment with adding it as a CI step. --- I'm not sure yet if it is best to have this always run or only run on request (like bench). If it is always run should it post a comment or simply leave its output it the actions log (maybe as a summary object) the current iteration runs and updates a sticky comment with the latest result [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author 340/0 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml 4 13 ['alexjbest', 'fpvandoorn', 'github-actions', 'grunweg', 'kim-em', 'mathlib-bors', 'urkud'] nobody
84-83495
2 months ago
924-60869
924 days ago
0-26
26 seconds
13483 adomani
author:adomani
feat: automatically replace deprecations This PR introduces `lake exe update_deprecations` that uses the cache to automatically replace deprecated declarations with the corresponding un-deprecated one. The script handles namespacing, replacing a possibly non-fully-qualified, deprecated name with the fully-qualified non-deprecated name. It is also possible to use ```bash lake exe update_deprecations --mods One.Two.Three,Dd.Ee.Ff ``` to limit the scope of the replacements to the modules `One.Two.Three` and `Dd.Ee.Ff`. This is intended to be a first step in automating updates: combining this with a linter that emits appropriate warnings, the functionality of `lake exe update_deprecations` can be extended to perform more complicated updates. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 306/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/UpdateDeprecations.lean,MathlibTest/UpdateDeprecations.lean,lakefile.lean,scripts/README.md,scripts/update_deprecations.lean 7 18 ['YaelDillies', 'adomani', 'fpvandoorn', 'github-actions', 'j-loreaux', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib-bors', 'sgouezel'] joneugster
assignee:joneugster
84-83467
2 months ago
564-74573
564 days ago
34-80803
34 days
14313 grhkm21
author:grhkm21
feat(RepresentationTheory/FdRep): FdRep is a full subcategory of Rep ``` /-- Equivalence between `FDRep` and the full subcategory of finite dimensional `Rep`. -/ def equivFiniteDimensional : FDRep k G ≌ FullSubcategory (fun V : Rep k G ↦ FiniteDimensional k V) ``` merge-conflict t-algebra t-category-theory new-contributor
label:t-algebra$
47/8 Mathlib/RepresentationTheory/FDRep.lean 1 21 ['fpvandoorn', 'github-actions', 'grhkm21', 'joelriou', 'kim-em', 'mathlib-bors'] nobody
84-83444
2 months ago
677-49468
677 days ago
4-83177
4 days
14712 astrainfinita
author:astrainfinita
perf: change instance priority and order about `OfNat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
49/20 Mathlib/Algebra/Group/Nat.lean,Mathlib/Algebra/Group/ZeroOne.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/UInt.lean,Mathlib/NumberTheory/ArithmeticFunction.lean 9 26 ['MichaelStollBayreuth', 'astrainfinita', 'eric-wieser', 'fpvandoorn', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mathlib-bors'] nobody
84-83425
2 months ago
659-61595
659 days ago
20-15089
20 days
17627 hrmacbeth
author:hrmacbeth
feat: universal properties of vector bundle constructions Characterizations for the smoothness of maps into the total spaces of (1) the direct sum of two vector bundles; (2) the pullback of a vector bundle. This gap in the library was exposed by #17358. --- - [x] depends on: #22804 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry 311/9 Mathlib/Data/Bundle.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/Pullback.lean,Mathlib/Topology/FiberBundle/Constructions.lean 4 26 ['PatrickMassot', 'fpvandoorn', 'github-actions', 'grunweg', 'hrmacbeth', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'sgouezel'] grunweg
assignee:grunweg
84-83413
2 months ago
344-83152
344 days ago
91-68302
91 days
19275 eric-wieser
author:eric-wieser
fix: if nolint files change, do a full rebuild Otherwise CI will succeed when removing entries from the file, but fail later when someone changes something unrelated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 8/0 lakefile.lean 1 22 ['YaelDillies', 'adomani', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'mathlib-bors'] nobody
84-83396
2 months ago
556-37631
556 days ago
0-214
3 minutes
34650 vihdzp
author:vihdzp
feat: redefine `Polynomial.toSubring` with better def-eqs We redefine [`Polynomial.toSubring`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Polynomial/Basic.html#Polynomial.toSubring) in such a way that `(p.toSubring T _).coeff n = p.coeff n` definitionally. We then golf the API. --- - [x] depends on: #34661 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 63/73 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Ring/Subring/IntPolynomial.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/RingTheory/Algebraic/Integral.lean,Mathlib/RingTheory/Polynomial/Subring.lean 6 15 ['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
84-80314
2 months ago
107-73186
107 days ago
0-80144
22 hours
28072 kckennylau
author:kckennylau
feat(RingTheory/Valuation): make tactic rw_val_equiv Co-authored by Aaron Liu and Bhavik Mehta. A tactic to rewrite relations such as `max (v₁ x) (v₁ y) * v₁ z < 1` into `max (v₂ x) (v₂ y) * v₂ z < 1` , given `h : v₁.IsEquiv v₂`. Allowed relations are `≤`, `<`, `=`, `≠`. Allowed operations are: `0`, `1`, `v₁ r`, `⁻¹`, `^` (both `ℕ` and `ℤ`), `*`, `/`, `min`, `max`. Examples: ```lean example {R Γ₁ Γ₂ : Type} [Ring R] [LinearOrderedCommMonoidWithZero Γ₁] [LinearOrderedCommMonoidWithZero Γ₂] {v₁ : Valuation R Γ₁} {v₂ : Valuation R Γ₂} (h : v₁.IsEquiv v₂) {y z : R} : {x | v₁ x ^ 2 * min (v₁ y) (v₁ z) ≤ 1} = {x | v₂ x ^ 2 * min (v₂ y) (v₂ z) ≤ 1} := by rw_val_equiv h ``` It is also possible to use `←` to rewrite in the opposite direction, and to use `at h1 h3 ⊢` to specify which hypotheses (and/or goal) to rewrite, similar to the syntax of `rw`. There is also `rwa_val_equiv` to work like `rwa`. --- Zulip: [#Is there code for X? > Tactics for comparing equivalent valuations](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Tactics.20for.20comparing.20equivalent.20valuations) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-ring-theory merge-conflict 525/34 Mathlib/RingTheory/Valuation/Basic.lean,MathlibTest/Simproc/ValEquiv.lean 2 52 ['b-mehta', 'erdOne', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'pechersky', 'plp127'] erdOne
assignee:erdOne
84-74483
2 months ago
195-70666
195 days ago
99-25855
99 days
33592 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols This PR picks up https://github.com/leanprover-community/mathlib4/pull/15895 and resolves the failing lemma by redefining Good symbols. --- I checked that https://github.com/leanprover-community/mathlib4/pull/13514 builds correctly when based on this build. PR for that is #33599 This is my first contribution please let me know of any changes I should outline. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-computability new-contributor 160/0 Mathlib/Computability/ContextFreeGrammar.lean 1 34 ['YaelDillies', 'github-actions', 'madvorak', 'nielstron'] nobody
84-72412
2 months ago
134-14539
134 days ago
10-68503
10 days
35144 daniel-carranza
author:daniel-carranza
feat(CategoryTheory/Enriched): tensor product of enriched categories For a braided monoidal category `V`, defines the tensor product of `V`-categories `C` and `D`, and shows that the type of `V`-functors out of the tensor product `C \times D` is equivalent to the type of "enriched bifunctors" `EnrichedBifunctor V C D`. --- This work originates from infinity-cosmos project, where it is used to formalize the notion of cotensors in an enriched category. There are some additional coherence lemmas in a braided monoidal category which have been added. Currently, line 209 violates the style guideline that terminal simp calls should not be squeezed. When I tried to replace this with a single `simp`, I get an error message: `maximum recursion depth has been reached`. Any suggestions (either with this or anything else) are greatly appreciated - thank you! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory infinity-cosmos awaiting-author 333/0 Mathlib.lean,Mathlib/CategoryTheory/Enriched/TensorProductCategory.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean 3 12 ['daniel-carranza', 'emilyriehl', 'github-actions', 'joelriou', 'robin-carlier'] nobody
84-68119
2 months ago
107-57214
107 days ago
0-145
2 minutes
34236 homeowmorphism
author:homeowmorphism
feat(GroupTheory/FinitelyPresentedGroup): add finitely presented groups Formulation of finitely presented groups feat(GroupTheory/FinitelyPresentedGroup): add finitely presented groups We define the notion of `IsFinitelyPresented` with equivalent datatype notions, what it means for a subgroup to be finitely generated in the normal closure, and some instances of finitely presented groups. This started as an ItaLean2025 project. The related Zulip thread is here: https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Finitely.20Presented.20Groups/with/567565752. Use of AI: * Aristotle was used for giving a preliminary proof of some statements as this is my first contribution and I wanted to understand how to prove things; they have since been changed. * GPT-5.2 was used to generate some of the proof sub-statements for efficiency once the mathematical blueprints of the proofs have been worked out. * GPT-5.3 was used to rapidly refactor the code. Human review by PR author in-progress, but got to a point where it would be good to get external input. * GPT-5.4 was used to refactor the variables. Human PR author then rewrote the whole thing. --- - [x] depends on: #34580 - [x] depends on: #34624 - [x] depends on: #35033 - [x] depends on: #35029 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor merge-conflict blocked-by-other-PR 459/3 Mathlib.lean,Mathlib/GroupTheory/FinitelyPresentedGroup.lean 5 72 ['copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'grunweg', 'homeowmorphism', 'kbuzzard', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] nobody
84-66405
2 months ago
71-49298
71 days ago
0-4650
1 hour
26061 kckennylau
author:kckennylau
(WIP) feat(AlgebraicGeometry): define Projective Space This defines the projective space over a scheme, indexed by an arbitrary type. --- Zulip discussion: [#maths > Projective Space](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Projective.20Space/with/524057860) I am currently using this PR as a hub for future PR's that will be split from this PR, so it is currently WIP. - [x] depends on: #30355 - [x] depends on: #30173 - [x] depends on: #30302 - [x] depends on: #30312 - [x] depends on: #30322 - [x] depends on: #30334 - [x] depends on: #30336 - [x] depends on: #30365 - [x] depends on: #30367 - [x] depends on: #30399 - [ ] depends on: #30379 - [ ] depends on: #36226 - [ ] depends on: #30352 - [ ] depends on: #30408 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebraic-geometry blocked-by-other-PR 2009/0 Mathlib.lean,Mathlib/AlgebraicGeometry/ProjectiveSpace.lean 2 16 ['callesonne', 'erdOne', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
84-65785
2 months ago
235-44393
235 days ago
110-42892
110 days
24434 joelriou
author:joelriou
feat(CategoryTheory): effectiveness of descent (This is very much a draft, it will be split in multiple PRs later.) Co-authored-by: Christian Merten [christian@merten.dev](mailto:christian@merten.dev) --- - [ ] depends on: #35452 - [ ] depends on: #35393 - [ ] depends on: #35396 - [ ] depends on: #35401 - [x] depends on: #24411 - [x] depends on: #24382 - [x] depends on: #25971 - [x] depends on: #13539 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 4052/66 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Adj.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/BaseChange.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Mate.lean,Mathlib/CategoryTheory/Bicategory/Functor/Cat.lean,Mathlib/CategoryTheory/Bicategory/Functor/LocallyDiscrete.lean,Mathlib/CategoryTheory/Bicategory/Functor/Strict.lean,Mathlib/CategoryTheory/Bicategory/Opposite.lean,Mathlib/CategoryTheory/CommSq.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/CommSq.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataAsCoalgebra.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataDoublePrime.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataPrime.lean,Mathlib/CategoryTheory/Sites/Descent/IsPrestack.lean,Mathlib/CategoryTheory/Sites/Descent/IsStack.lean,Mathlib/CategoryTheory/Sites/Descent/ModuleCat.lean,Mathlib/CategoryTheory/Sites/Descent/PullbackStruct.lean 19 23 ['alreadydone', 'callesonne', 'chrisflav', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'yuma-mizuno'] nobody
84-64454
2 months ago
unknown
0-0
0 seconds
35151 alreadydone
author:alreadydone
WIP: group scheme structure on Weierstrass curve --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebraic-geometry 620/0 Mathlib/AlgebraicGeometry/EllipticCurve/Projective/GroupScheme.lean 1 3 ['github-actions', 'joelriou'] nobody
84-63716
2 months ago
unknown
0-0
0 seconds
27226 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Add Subgraph.inclusion_edge_apply_coe and inclusion_edgeSet_apply_coe This PR continues the work from #25248. Original PR: https://github.com/leanprover-community/mathlib4/pull/25248 awaiting-author t-combinatorics new-contributor merge-conflict 14/0 Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 1 4 ['b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'xcloudyunx'] b-mehta
assignee:b-mehta
84-59512
2 months ago
291-39658
291 days ago
25-83942
25 days
29934 smmercuri
author:smmercuri
feat(Field/WithAbs): the lift of a ring homomorphism from `WithAbs v` to `WithAbs w` to their completions If `σ` is a compatible ring homomomorphism between `WithAbs v` and `WithAbs w` then this extends to a natural ring homomorphism between completions `v.Completion` and `w.Completion`. Also fix some defeq abuse in `Field/WithAbs`. --- - [x] depends on: #29969 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP FLT large-import merge-conflict 41/3 Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/Topology/MetricSpace/Completion.lean 5 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
84-55471
2 months ago
248-6067
248 days ago
0-2230
37 minutes
33688 Citronhat
author:Citronhat
feat(PMF): add expectation lemmas for Poisson PMF This PR adds some basic results about the Poisson distribution, its `PMF`, and its expectation. **New lemmas:** * `poissonPMF_apply` — an unfolding lemma for `poissonPMF`. * `poissonPMFReal_mul_eq_succ_mul` — the standard recursion identity for the Poisson mass function. * `poissonPMFReal_hasSum_nmul` — shows that `fun n ↦ poissonPMFReal r n * n` has sum `r`. * `poissonPMF_tsum_nmul` — the corresponding identity at the level of the `PMF`. * `poissonPMF_coe_tsum_nmul` — the same result after coercion to `ℝ`. Both `ℝ`-valued and `ℝ≥0∞`-valued formulations are included so that these results can be used conveniently in both Lebesgue and Bochner integration contexts. new-contributor t-measure-probability awaiting-author merge-conflict 21/0 Mathlib/Probability/Distributions/Poisson.lean 1 11 ['Citronhat', 'DavidLedvinka', 'github-actions', 'mathlib-merge-conflicts', 'urkud'] urkud
assignee:urkud
84-41492
2 months ago
95-56141
95 days ago
47-76876
47 days
34005 MSpill
author:MSpill
feat: inverse function theorem for manifolds (concrete version) Proves the inverse function theorem for manifolds: given manifolds $M, N$ and a $C^n$ map $f : M \to N$ whose differential is a linear isomorphism at $p \in M$, then $f$ is a local diffeomorphism at $p$, provided that both $p$ and its image are interior points. The proof proceeds in 4 main steps: 1. Define composition of partial diffeomorphisms 2. Show that the extended chart at an interior point can be restricted to an open set on which it is a partial diffeomorphism, viewing the model vector space as a manifold modelled on itself trivially 3. Use the inverse function theorem (applied to $f$ written in coordinates) to obtain a partial diffeomorphism between model vector spaces 4. Compose with chart diffeomorphisms to obtain a partial diffeomorphism between the manifolds. ------ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry new-contributor merge-conflict 232/3 Mathlib/Geometry/Manifold/LocalDiffeomorph.lean 1 12 ['MSpill', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
84-41247
2 months ago
134-66760
134 days ago
0-1082
18 minutes
35602 JovanGerb
author:JovanGerb
feat: replace `IsWellFounded` with `WellFounded` This PR is an attempt to deprecate `IsWellFounded`. The reason it that it is entirely equivalent to `WellFounded`, with the only difference being that `IsWellFounded` is a class. This PR instead marks `WellFounded` as a class. What is annoying is that you sometimes want the API to use it as a class and sometimes as an explicit argument, and it's not entirely clear to me what the best compromise is: duplicating API, or just picking one form and using it. For example, `WellFounded.min`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data awaiting-author merge-conflict 430/474 Archive/Imo/Imo1988Q6.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Pairing.lean,Mathlib/CategoryTheory/CofilteredSystem.lean,Mathlib/CategoryTheory/Subobject/ArtinianObject.lean,Mathlib/CategoryTheory/Subobject/NoetherianObject.lean,Mathlib/Computability/Partrec.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Fin/Tuple/BubbleSortInduction.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Finsupp/WellFounded.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Cast/WithTop.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Set/Finite/Lemmas.lean,Mathlib/Data/Sum/Order.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/LinearAlgebra/ExteriorPower/Basis.lean,Mathlib/Logic/Hydra.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Cover.lean,Mathlib/Order/Extension/Well.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/InitialSeg.lean,Mathlib/Order/Minimal.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/Order/RelIso/Set.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/Shrink.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Order/WellQuasiOrder.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Bezout.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/FiniteLength.lean,Mathlib/RingTheory/Length.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/Noetherian/Basic.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/Polynomial/UniqueFactorization.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Ideal.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Nat.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/Ordinal/Rank.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/SetTheory/ZFC/PSet.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Topology/Category/Profinite/Nobeling/Basic.lean,Mathlib/Topology/NoetherianSpace.lean 81 43 ['JovanGerb', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] pechersky and vihdzp
assignee:pechersky assignee:vihdzp
84-35699
2 months ago
63-48541
63 days ago
14-62562
14 days
34830 parabamoghv
author:parabamoghv
feat(CategoryTheory/Monoidal): add definition of categorical groups This PR defines of categorical groups, also known as coherent 2-groups, in mathlib. Motivation: Categorical groups are well-studied structures in monoidal category theory, but are not currently available in mathlib. The definitions in this PR follow the existing design patterns used for Category, MonoidalCategory, and BraidedCategory. This PR focuses on setting up the core structure and notation. Basic lemmas and further developments will be provided in a subsequent PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor WIP merge-conflict 163/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/CategoricalGroups/Basic.lean 2 27 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'parabamoghv', 'robin-carlier'] robin-carlier
assignee:robin-carlier
84-29967
2 months ago
99-12007
99 days ago
5-13145
5 days
36313 SproutSeeds
author:SproutSeeds
feat(Inversion): cobounded tendsto near center Part of #5939 Add `tendsto_inversion_nhdsNE_center_cobounded` in `Mathlib/Geometry/Euclidean/Inversion/Basic.lean`, proving `Tendsto (inversion c R) (𝓝[≠] c) (Bornology.cobounded P)` for `R ≠ 0`. Tools used: Codex 5.3 extra high --- Happy to adjust naming, placement, or proof style based on maintainer preference. t-euclidean-geometry new-contributor LLM-generated awaiting-author 42/0 Mathlib/Geometry/Euclidean/Inversion/Basic.lean 1 11 ['SproutSeeds', 'euprunin', 'github-actions', 'jsm28', 'kbuzzard', 'ocfnash'] jsm28
assignee:jsm28
84-4682
2 months ago
67-1621
67 days ago
6-36700
6 days
35521 grunweg
author:grunweg
feat: the unusedSetOptionIn linter (rebased) Rebased version of #13653, adapted to current mathlib master. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-linter large-import 201/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/UnnecessarySetOptionIn.lean,MathlibTest/UnnecessarySetOptionIn.lean 6 2 ['github-actions'] nobody
83-80201
2 months ago
100-11367
100 days ago
0-23
23 seconds
35178 grunweg
author:grunweg
chore: split `T%` elaborator into its own file and move to `Topology` TODO: this currently breaks the tangentspace case, need to rewrite it to avoid match_expr! --- - [x] depends on: #35176 - [x] depends on: #30463 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-meta 173/0 Mathlib.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/Geometry/Manifold/VectorField/Pullback.lean,Mathlib/Topology/FiberBundle/Notation.lean,MathlibTest/DifferentialGeometry/Notation/Basic.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
83-80123
2 months ago
107-848
107 days ago
0-1
1 second
34262 grunweg
author:grunweg
feat: add mfderiv_const_smul This generalises an existing mathlib lemma (as the differentiability hypothesis is in fact not necessary). Co-authored-by: Patrick Massot [patrickmassot@free.fr](mailto:patrickmassot@free.fr) --- Note: this PR is now lower-priority (after some reorgs it is no longer on the path to the Levi-Civita connection); it should be rewritten following the approach in #34263. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry WIP 16/0 Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean 1 9 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
83-67754
2 months ago
127-64429
127 days ago
0-1122
18 minutes
36323 SproutSeeds
author:SproutSeeds
feat(Inversion): discontinuity and center/global fderiv formulas Part of #5939 Adds the discontinuity-at-center lemma for inversion and derives the center/global `fderiv` formulas from it. This draft currently builds on the preceding cobounded-tendsto lemma from #36313 while that earlier slice is under review. Scope is limited to `Mathlib/Geometry/Euclidean/Inversion/Calculus.lean`. Tools used: Codex 5.3 extra high --- Happy to adjust naming, placement, or proof style based on maintainer preference. t-euclidean-geometry new-contributor LLM-generated 65/0 Mathlib/Geometry/Euclidean/Inversion/Basic.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean 2 2 ['github-actions'] nobody
83-67293
2 months ago
unknown
0-0
0 seconds
36326 Arnav-panjla
author:Arnav-panjla
Feat/gaussian schwartz map feat(Analysis/SpecialFunctions/Gaussian): define the Gaussian as a Schwartz function in 1D Define the Gaussian function `x ↦ exp (-x^2)` as a `SchwartzMap` in the one-dimensional case. The proof establishes the Schwartz decay conditions by showing that polynomially weighted expressions of the form `(1 + x^2)^m * exp (-x^2)` are bounded. This allows the Gaussian to be packaged using the `SchwartzMap` API. During the implementation a few adjustments were required to match the current Mathlib API. In particular: * replace the non-existent `IsBigO.mul_right` with `IsBigO.of_bound` applied to the full product `(1 + x^2)^m * exp (-x^2)` * fix `mem_cocompact` usage by replacing `(hh_tendsto.eventually ...).mem_cocompact` with `mem_cocompact.mp (hh_tendsto ...)` * adjust the `hb_bound` step using `gcongr` with exact bounds so that both goals close * remove the unused declaration `hf_nonpos` * register the required import in `Mathlib.lean` This implements the one-dimensional case mentioned in the issue. The generalization to Gaussians associated with arbitrary positive-definite bilinear forms can be added in a follow-up PR. Closes #33072 t-analysis new-contributor 235/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/SchwartzMap.lean 2 4 ['CoolRmal', 'github-actions'] nobody
83-60620
2 months ago
83-64031
83 days ago
83-63993
83 days
36333 thorimur
author:thorimur
test: checkTypeEvenMore --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import 35/0 Mathlib/Tactic/Linter/Lint.lean 1 1 ['github-actions'] nobody
83-55733
2 months ago
unknown
0-0
0 seconds
36203 mattrobball
author:mattrobball
chore(Order.WithBotTop): make `coe` an `abbrev` Currently `WithBotTop.coe` is a `def` when the whole type is an `abbrev`. This blocks reduction unnecessarily so we make `coe` an `abbrev`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 1/1 Mathlib/Order/WithBotTop.lean 1 2 ['JovanGerb', 'github-actions'] nobody
82-82354
2 months ago
85-75262
85 days ago
85-75224
85 days
36165 Parcly-Taxel
author:Parcly-Taxel
chore: deprecate `Nat.strongRec(On)'` In favour of Batteries's `Nat.strongRec` for definitions and `Nat.strong_induction_on` for proofs. t-data merge-conflict 34/66 Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/Nat/Factorization/Induction.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Topology/EMetricSpace/Paracompact.lean 8 6 ['JovanGerb', 'MichaelStollBayreuth', 'Parcly-Taxel', 'Vierkantor', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
82-82019
2 months ago
70-67079
70 days ago
15-53464
15 days
36364 Bergschaf
author:Bergschaf
feat(Order/Sublocale): Better API for NucleusIsoSublocale I propose defining the conversion from Nuclei to Sublocales (and vice versa) directly in the `NucleusIsoSublocale` OrderIso. `Nucleus.toSublocale` and `Sublocale.toNucleus` will then just be abbrev's for the underlying OrderIso. This makes it a lot nicer to transition between the two Structures, especially when (infinite) infima and suprema are involved. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 46/33 Mathlib/Order/Sublocale.lean 1 4 ['Bergschaf', 'Vierkantor', 'YaelDillies', 'github-actions'] bryangingechen and pechersky
assignee:bryangingechen assignee:pechersky
81-80879
2 months ago
60-43904
60 days ago
22-25229
22 days
33668 Citronhat
author:Citronhat
feat(PMF): add lintegral formulas for PMF This PR introduces two lemmas describing the `lintegral` of a function with respect to the measure induced by a probability mass function: - `PMF.lintegral_eq_tsum` - `PMF.lintegral_eq_sum` These are the `ℝ≥0∞` analogues of the existing Bochner `integral` formulas `integral_eq_tsum` and `integral_eq_sum`. They could be useful for reasoning about expectations and integrability. In addition, the proof of `integral_eq_sum` is simplified by deriving it directly from `integral_eq_tsum` using `tsum_fintype`. t-measure-probability new-contributor awaiting-author merge-conflict 14/5 Mathlib/Probability/ProbabilityMassFunction/Integrals.lean 1 3 ['DavidLedvinka', 'github-actions', 'mathlib-merge-conflicts'] nobody
81-54422
2 months ago
88-2765
88 days ago
55-73479
55 days
34040 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: generalize HasCompl.compl image/preimage lemmas to Involutive --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data awaiting-author merge-conflict 23/14 Mathlib/Data/Set/Image.lean 1 6 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] eric-wieser
assignee:eric-wieser
81-53856
2 months ago
119-66554
119 days ago
14-12127
14 days
34246 staroperator
author:staroperator
feat(SetTheory/Cardinal): Δ-system lemma We prove the Δ-system lemma, which says for any regular cardinal `θ` and infinite cardinal `κ < θ`, if `∀ c < θ, c ^< κ < θ`, any `θ`-sized family of sets whose cardinalities are less than `κ` must contain a `θ`-sized Δ-system (this condition is called Δ-system property for `θ` and `κ`, noted as `Δ(θ, k)`). As a special case, `Δ(ℵ₁, ℵ₀)` ensures any uncountable family of finite sets must contain an uncountable Δ-system. --- - [ ] depends on: #37685 - [ ] depends on: #38266 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory blocked-by-other-PR large-import merge-conflict 384/0 Mathlib.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Club.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/IsNormal.lean,Mathlib/Order/LatticeIntervals.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/DeltaSystem.lean,Mathlib/SetTheory/Cardinal/Pigeonhole.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,docs/references.bib 6 11 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'staroperator', 'vihdzp'] nobody
81-53855
2 months ago
81-53855
81 days ago
15-9493
15 days
22366 kim-em
author:kim-em
feat: `check_equalities` tactic for diagnosing defeq problems The `check_equalities` tactic, which checks the typing of equalities in the goal, reporting discrepancies between the implicit type argument of the equality, and the inferred types of the left and right hand sides, at "instances and reducible" transparency. Reports from this tactic do not necessarily indicate a problem, although typically `simp` should reduce rather than increase the reported discrepancies. `check_equalities` may be useful in diagnosing uses of `erw`. t-meta please-adopt WIP 123/4 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/CheckEqualities.lean,Mathlib/Tactic/Common.lean,MathlibTest/check_equalities.lean 7 21 ['adomani', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'kim-em', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
81-37701
2 months ago
67-85558
67 days ago
32-12136
32 days
25983 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve/Scheme): define the affine scheme associated to an elliptic curve This contribution was created as part of the AIM workshop "Formalizing Algebraic Geometry" in June 2024. Co-authored-by: Michael Stoll [Michael.Stoll@uni-bayreuth.de](mailto:Michael.Stoll@uni-bayreuth.de) Co-authored-by: Junyan Xu [junyanxu.math@gmail.com](mailto:junyanxu.math@gmail.com) --- - [ ] depends on: #36086 - [ ] depends on: #36146 t-algebraic-geometry blocked-by-other-PR 165/13 Mathlib.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Scheme.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/GroupTheory/GroupExtension/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean 15 10 ['MichaelStollBayreuth', 'Multramate', 'github-actions', 'mathlib-dependent-issues'] nobody
81-37700
2 months ago
59-70803
59 days ago
25-3959
25 days
36387 FrankieeW
author:FrankieeW
feat(NumberTheory/QuadraticField): parameter uniqueness for quadratic fields ## Summary Prove that every quadratic field `ℚ(√d)` can be normalized to have a squarefree integer parameter, and that this parameter is unique. ## Main Results - `Qsqrtd.rescale`: rescaling isomorphism `ℚ(√d) ≃ₐ[ℚ] ℚ(√(a²d))` for `a ≠ 0` - `Qsqrtd_iso_int_param`: every `ℚ(√d)` is isomorphic to one with an integer parameter - `Qsqrtd_iso_squarefree_int_param`: every `ℚ(√d)` is isomorphic to one with a squarefree integer parameter - `Qsqrtd.param_unique`: if `ℚ(√d₁) ≃ₐ[ℚ] ℚ(√d₂)` with both `d₁, d₂` squarefree and `≠ 1`, then `d₁ = d₂` ## Helper Lemmas - `squarefree_eq_of_rat_sq_mul`: if `d₁ = d₂ · r²` with both squarefree, then `d₁ = d₂` - `int_dvd_of_ratio_square`: if `d₁/d₂` is a rational square and `d₂` is squarefree, then `d₂ ∣ d₁` - `not_isSquare_neg_one_rat`: `-1` is not a square in `ℚ` --- - [ ] depends on: #36347 WIP t-number-theory blocked-by-other-PR new-contributor large-import LLM-generated 400/0 Mathlib.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/NumberTheory/QuadraticField/Basic.lean 4 4 ['FrankieeW', 'github-actions', 'mathlib-dependent-issues'] nobody
81-31029
2 months ago
82-25299
82 days ago
0-2
2 seconds
34464 Komyyy
author:Komyyy
refactor(Topology/Order/LowerUpperTopology): use `to_dual` --- Many files should be also dualized for this file... - [x] depends on: #33964 - [x] depends on: #34465 - [x] depends on: #34640 - [x] depends on: #36969 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-order merge-conflict 42/50 Mathlib/Topology/Order/LowerUpperTopology.lean 1 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
81-11025
2 months ago
unknown
0-0
0 seconds
35249 themathqueen
author:themathqueen
feat(Analysis/Matrix): linear functional on matrices is positive iff its weight is positive semi-definite No comments yet, I'm still thinking of the best thing to do here. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis merge-conflict 167/60 Mathlib.lean,Mathlib/Analysis/Matrix/GNS.lean,Mathlib/Analysis/Matrix/Order.lean 3 6 ['github-actions', 'mathlib-merge-conflicts'] nobody
81-11021
2 months ago
unknown
0-0
0 seconds
36128 grunweg
author:grunweg
Levicivita minimal --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry merge-conflict 4220/30 Mathlib.lean,Mathlib/Geometry/Manifold/MFDeriv/Atlas.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/LeviCivita.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Prelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Torsion.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/plan.mde,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/Misc.lean,Mathlib/Geometry/Manifold/VectorBundle/Tensoriality.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/Geometry/Manifold/VectorField/Pullback.lean 13 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
81-11004
2 months ago
86-82795
86 days ago
0-3
3 seconds
36442 SnirBroshi
author:SnirBroshi
feat(Data/Sym/Sym2/Card): cardinality theorems about `Sym2 α` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data awaiting-author 95/0 Mathlib.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Sym2/Card.lean 2 20 ['SnirBroshi', 'eric-wieser', 'github-actions', 'joneugster', 'themathqueen'] joneugster
assignee:joneugster
80-73222
2 months ago
29-5734
29 days ago
38-13299
38 days
36406 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Matching): `#verts = 2 * #edgeSet` --- - [ ] depends on: #36442 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR 122/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Data/Sym/Sym2/Card.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
80-68850
2 months ago
80-68852
80 days ago
0-79432
22 hours
25978 Bergschaf
author:Bergschaf
feat(Order/Sublocale): Open Sublocales --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #25089 - [ ] depends on: #36364 t-order blocked-by-other-PR 152/33 Mathlib/Order/Sublocale.lean 1 12 ['Bergschaf', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
80-63825
2 months ago
84-2445
84 days ago
0-74795
20 hours
34164 Scarlett-le
author:Scarlett-le
feat(Geometry/Euclidean/Sphere): define arcs on spheres This PR defines arcs on spheres and proves basic properties. ## Main definitions * `EuclideanGeometry.Sphere.Arc`: An arc on a sphere, defined by a left endpoint and a midpoint on the sphere. The right endpoint is computed as the reflection of left across the line through the center and mid. * `Arc.opposite`: The opposite arc (same endpoints, antipodal mid). * `Arc.oppositeEquiv`: The involution given by `opposite`. * `Arc.minor` / `Arc.major`: The minor/major arc between two non-diametrically-opposite points. * `Arc.through`: The arc from `A` to `C` passing through `B`. * `Arc.avoiding`: The arc from `A` to `C` not passing through `B`. ## Main results * `through_right` / `avoiding_right`: The right endpoint equals `C`. * `mem_interior_through` / `mem_through`: `B` lies in the `through` arc. * `not_mem_avoiding`: `B` does not lie in the `avoiding` arc (when `A ≠ C`). ## Dependencies * #36241 * #35956 * #35957 awaiting-author t-euclidean-geometry merge-conflict 767/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Geometry/Euclidean/Sphere/Arc.lean,Mathlib/Geometry/Euclidean/Sphere/Basic.lean,Mathlib/Geometry/Euclidean/Sphere/OrthRadius.lean 6 11 ['Scarlett-le', 'github-actions', 'jsm28', 'mathlib-merge-conflicts'] nobody
80-52374
2 months ago
129-53684
129 days ago
0-46829
13 hours
35058 GrigorenkoPV
author:GrigorenkoPV
chore: move tendsto_{floor,ceil}_at{Top,Bot} Moves: - Topology.Algebra.Order.Floor.tendsto_floor_atTop -> Order.Filter.AtTopBot.Floor.tendsto_floor_atTop - Topology.Algebra.Order.Floor.tendsto_floor_atBot -> Order.Filter.AtTopBot.Floor.tendsto_floor_atBot - Topology.Algebra.Order.Floor.tendsto_ceil_atTop -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atTop - Topology.Algebra.Order.Floor.tendsto_ceil_atBot -> Order.Filter.AtTopBot.Floor.tendsto_ceil_atBot --- Tracked in #7987 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import awaiting-author 22/25 Mathlib/Order/Filter/AtTopBot/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean 2 3 ['GrigorenkoPV', 'github-actions', 'j-loreaux'] nobody
80-46250
2 months ago
80-46250
80 days ago
27-45743
27 days
31670 edwin1729
author:edwin1729
feat(Topology/Order): Scott Topology is Sober over Algebraic DCPO --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20Algebraic.20complete.20partial.20order.20and.20domain.20theory/with/536359313) here (2/2) PR to prove result in Stone Duality. Here we prove that Scott Topologies over Algebraic DCPOs are sober. - [ ] depends on: #31662 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR new-contributor merge-conflict 510/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
80-44132
2 months ago
unknown
0-0
0 seconds
32210 ADedecker
author:ADedecker
feat: iteratedFDeriv as a linear map on test functions Add `TestFunction.iteratedFDeriv[WithOrder]LM`, analogous to [ContDiffMapSupportedIn.iteratedFDerivWithOrderLM](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.html#ContDiffMapSupportedIn.iteratedFDerivWithOrderLM) and [ContDiffMapSupportedIn.iteratedFDerivLM](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.html#ContDiffMapSupportedIn.iteratedFDerivLM) --- Co-authored-by: @luigi-massacci [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author merge-conflict 157/88 Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean 2 7 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] grunweg, j-loreaux, sgouezel, urkud
assignee:urkud assignee:j-loreaux assignee:grunweg assignee:sgouezel
80-41228
2 months ago
164-53061
164 days ago
9-42804
9 days
33329 mcdoll
author:mcdoll
feat(Analysis): Fourier-based Sobolev spaces We define Sobolev spaces (or Bessel potential spaces). --- - [x] depends on: #33242 - [x] depends on: #32769 - [x] depends on: #33404 - [x] depends on: #33597 - [x] depends on: #33636 - [x] depends on: #33741 - [x] depends on: #33751 - [x] depends on: #33752 - [x] depends on: #33776 - [x] depends on: #33859 - [x] depends on: #34027 - [x] depends on: #34099 - [x] depends on: #34100 - [x] depends on: #34294 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis merge-conflict 506/0 Mathlib/Analysis/Distribution/Sobolev.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean 2 8 ['CoolRmal', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
80-40422
2 months ago
154-36402
154 days ago
0-1
1 second
35877 yoh-tanimoto
author:yoh-tanimoto
feat(Algebra/Module): add twisted product module add a module structure on the product `E × F` with the `SMul` given by `s • ⟨x, y⟩ := ⟨s • x, σ s • y⟩` with `σ : R →+* S`. motivation: needed to define the graph of antilinear operator, see [discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60SemilinearPMap.60/with/576208198), which will be needed in the Tomita-Takesaki theory cf. #29251 t-algebra
label:t-algebra$
279/0 Mathlib.lean,Mathlib/Algebra/Module/SemilinearModuleProd.lean 2 1 ['github-actions'] nobody
80-38290
2 months ago
unknown
0-0
0 seconds
30379 kckennylau
author:kckennylau
feat(RingTheory): isomorphism of graded rings We define `GradedRingEquiv 𝒜 ℬ` to mean isomorphisms of graded rings, with notation `𝒜 ≃+*ᵍ ℬ`. When possible, instead of parametrizing results over `(e : 𝒜 ≃+*ᵍ ℬ)`, you should parametrize over `[GradedEquivLike E 𝒜 ℬ] [RingEquivClass E A B] (e : E)`. Zulip discussion: [How to define graded ring isomorphisms?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/How.20to.20define.20graded.20ring.20isomorphisms.3F/with/543962394) --- Split from #26061. - [x] depends on: #30355 - [x] depends on: #30312 - [x] depends on: #30367 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 447/1 Mathlib.lean,Mathlib/RingTheory/GradedAlgebra/RingEquiv.lean,Mathlib/RingTheory/GradedAlgebra/RingHom.lean 3 7 ['erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
80-37694
2 months ago
76-50846
76 days ago
9-26522
9 days
31135 kckennylau
author:kckennylau
feat(RingTheory): is localization iff is localization on saturation In this PR we show that `A` is a localization of `R` on the submonoid `S` iff it is so on the saturation of `S`. Crucially, the saturation of `S` is precisely the elements that become a unit in `A`. --- - [x] depends on: #31132 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory delegated 53/0 Mathlib.lean,Mathlib/RingTheory/Localization/Saturation.lean 2 15 ['alreadydone', 'chrisflav', 'github-actions', 'kckennylau', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] chrisflav
assignee:chrisflav
80-37693
2 months ago
53-4828
53 days ago
32-67213
32 days
36463 AlexeyMilovanov
author:AlexeyMilovanov
feat(Data.Nat.Bits): add Nat.ofBits and prove bits_injective This PR introduces `Nat.ofBitsList` for `List Bool` and provides the missing proofs that the standard binary representation `Nat.bits` is injective (`Nat.bits_injective`) and possesses a right inverse for normalized lists (`Nat.bits_ofBitsList`). `ofBitsList` is implemented as an `abbrev` using `foldr` (keeping it transparent to tactics like `simp`). It serves as the exact left inverse to `bits`. Furthermore, `bits_ofBitsList` establishes that `bits` and `ofBitsList` form a bijection between `ℕ` and the set of lists with no trailing `false` values. This avoids the name collision with `Nat.ofBits` from `Batteries` and aligns with previous Zulip discussions (see [here](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PR.20.2335857.3A.20Bijective.20Base-2.20Numeration)) regarding the utility of having a complete list-based API for `Nat.bits` in the library. CC: @linesthatinterlace - Adds `Nat.ofBitsList` (as an `abbrev`) - Adds `Nat.ofBitsList_bits` (left inverse property) - Adds `Nat.bits_injective` - Adds `Nat.ofBitsList_eq_zero_iff` (helper lemma for lists without trailing zeros) - Adds `Nat.bits_ofBitsList` (right inverse property) --- Zulip: [#PR reviews > PR #35857: Bijective Base-2 Numeration](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PR.20.2335857.3A.20Bijective.20Base-2.20Numeration/with/576336540) Zulip: [#batteries > Upstreaming Nat.Bits](https://leanprover.zulipchat.com/#narrow/channel/348111-batteries/topic/Upstreaming.20Nat.2EBits/with/580736051) t-data new-contributor awaiting-author blocked-by-batt-PR 68/1 Mathlib/Data/Nat/Bits.lean 1 5 ['github-actions', 'joneugster', 'linesthatinterlace'] nobody
80-29368
2 months ago
70-67688
70 days ago
9-58085
9 days
35684 spitters
author:spitters
feat(CategoryTheory/MarkovCategory): Kleisli PMF is a Markov category Add `Mathlib/CategoryTheory/MarkovCategory/KleisliPMF.lean` showing that `KleisliCat PMF` is a `MarkovCategory`. Uses `Prod` as tensor and `PUnit` as unit; reuses Mathlib's existing `KleisliCat`, `LawfulMonad PMF`, and `MarkovCategory` infrastructure. Builds the full instance stack: MonoidalCategory → BraidedCategory → SymmetricCategory → CopyDiscardCategory → MarkovCategory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author merge-conflict 323/1 Mathlib.lean,Mathlib/CategoryTheory/MarkovCategory/KleisliPMF.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 6 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'spitters'] nobody
80-19248
2 months ago
92-51493
92 days ago
2-36419
2 days
35738 GrigorenkoPV
author:GrigorenkoPV
perf: remove some `aesop`s and `grind`s --- Needs benchmarking. After that I can split it into several smaller portions, if needed. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author merge-conflict 236/92 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Set/Lattice/Image.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Logic/Equiv/Prod.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/SupIndep.lean 8 7 ['github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'vihdzp'] nobody
80-19247
2 months ago
94-927
94 days ago
0-45583
12 hours
36089 pfaffelh
author:pfaffelh
feat(Topology/Compactness/CompactSystem): set system of finite unions of sets in a compact system is again a compact system A compact system is a set system with the following property: If all finite intersections of a sequence in the set system is non-empty, the countable intersection is not empty. Starting with a compact system, consider the finite unions of sets in the copact system. Such sets again form a compact system (`IsCompactSystem.union.isCompactSystem`). This was previously #25900. --- - [ ] depends on: #36013 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-topology merge-conflict 527/0 Mathlib/Data/Set/Dissipate.lean,Mathlib/Topology/Compactness/CompactSystem.lean 5 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
80-19243
2 months ago
37-74598
37 days ago
0-58592
16 hours
36160 pfaffelh
author:pfaffelh
feat (Topology/Compactness/CompactSystem): closed and compact square cylinders form a compact system feat (Topology/Compactness/CompactSystem): Closed and compact square cylinders form a compact system A square cylinder is a set of the form `s.pi t` in a product space. A closed compact square cylinder has `IsClosed (t i)` and `IsCompact (t i)` for all `i ∈ s`. This set system is a compact system (as introduced in PR #36013). Streamline the definition of square cylinders in MeasureTheory/Constructions/Cylinders on the way. Co-authors: Rémy Degenne remy.degenne@inria.fr --- - [ ] depends on: #36013 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian merge-conflict t-topology 388/1 Mathlib.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/Constructions/Cylinders.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/Topology/Compactness/CompactSystem.lean 7 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
80-19242
2 months ago
80-19242
80 days ago
0-64125
17 hours
36225 pfaffelh
author:pfaffelh
feat(Topology/Compactness/CompactSystem): set system of countable intersections of sets in a compact system is again a compact system A compact system is a set system with the following property: If all finite intersections of a sequence in the set system is non-empty, the countable intersection is not empty. Starting with a compact system, consider the countable intersections of sets in the copact system. Such sets again form a compact system. --- - [x] depends on: #36013 - [ ] depends on: #38245 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian WIP file-removed merge-conflict blocked-by-other-PR 313/0 Mathlib.lean,Mathlib/Algebra/Group/Irreducible/Indecomposable.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/AlgebraicTopology/DoldKan/Compatibility.lean,Mathlib/AlgebraicTopology/DoldKan/Equivalence.lean,Mathlib/AlgebraicTopology/DoldKan/EquivalencePseudoabelian.lean,Mathlib/Analysis/Normed/Group/Indicator.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/FieldTheory/RatFunc/Degree.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/LinearAlgebra/RootSystem/Finite/G2.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Lemmas.lean,Mathlib/MeasureTheory/Integral/Bochner/Set.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean,Mathlib/Order/Interval/Set/LinearOrder.lean,Mathlib/Probability/Distributions/Gaussian/IsGaussianProcess/Independence.lean,Mathlib/Probability/Independence/BoundedContinuousFunction.lean,Mathlib/Probability/Independence/Process/Basic.lean,Mathlib/Probability/Independence/Process/HasIndepIncrements.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/CompactSystem.lean,Mathlib/Topology/Sets/CompactOpenCovered.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean,docs/1000.yaml 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
80-19238
2 months ago
80-19238
80 days ago
1-16213
1 day
35588 eric-wieser
author:eric-wieser
chore(Util/Qq): remove `meta` These are wrappers of existing functions on `Expr`s which are also not marked `meta`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-CI delegated 7/7 Mathlib/Data/Multiset/Sort.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Order/ToInt.lean,Mathlib/Tactic/Simproc/Divisors.lean,Mathlib/Tactic/Simproc/FinsetInterval.lean,Mathlib/Util/Qq.lean 7 3 ['Vierkantor', 'github-actions', 'mathlib-bors'] nobody
80-15387
2 months ago
98-13323
98 days ago
0-35325
9 hours
36334 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve): add notation and pretty printer for points Co-authored-by: Kenny Lau --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-meta WIP merge-conflict 41/0 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean 3 13 ['CBirkbeck', 'Multramate', 'adamtopaz', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'riccardobrasca'] adamtopaz
assignee:adamtopaz
79-85320
2 months ago
37-54409
37 days ago
45-86235
45 days
34728 j-loreaux
author:j-loreaux
feat: continuous linear equivalence between continuous `ℝ`- and `𝕜`-linear functionals (in either the strong or weak-⋆ topologies) This realizes the map `StrongDual.extendRCLikeₗ`, after pre- and post-composing so that it is an equivalence between the weak duals, as a *continuous* linear equivalence. In addition, when the space is a topological vector space, we realize `StrongDual.extendRCLikeₗ` as a *continuous* linear equivalence between the strong duals. --- - [x] depends on: #34543 The placement in `Analysis/Normed/Module/WeakDual` seems suboptimal because this has nothing to do with the norm. This is because `WeakDual.toStrongDual` is already in this file, which should probably be moved to `Topology/Algebra/Module/WeakDual`. However, even if that moves, the declarations added in this PR cannot easily go with it because they involve `RCLike`. Potentially, they could move to `Analysis/RCLike/Extend` if that file gained the `Topology/Algebra/Module/WeakDual` import. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 87/2 Mathlib/Analysis/Normed/Module/RCLike/Extend.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean 2 19 ['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] urkud
assignee:urkud
79-75498
2 months ago
36-29841
36 days ago
43-79923
43 days
30451 kckennylau
author:kckennylau
feat(HomogeneousIdeal): generalize to homogeneous submodule Continuation of #30437 with permission from @jjaassoonn, which is a continuation of #9820 . The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to homogeneous submodules. Let `R` be a graded ring and `M` be a graded `R`-module. Say an `R`-submodule `N` of `M` is homogeneous if for every `x` in `N`, each projection of `x` to `M_i` is in `N`. None of this file's results depends on the grading on `R`, but we include the grading on `R` for technical reasons. We define the "homogeneous core" of a not necessarily homogeneous submodule N to be the biggest homogeneous submodule contained within N, and the "homogeneous hull" to be the smallest homogeneous submodule that contains N. All definitions/constructions/theorems are then copied for ideals/homogeneous ideals. The motivation of this generalization is graded quotient module. (#18716) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author merge-conflict 581/185 Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean 10 23 ['github-actions', 'mariainesdff', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] mariainesdff
assignee:mariainesdff
79-74092
2 months ago
79-74092
79 days ago
22-61538
22 days
35042 JovanGerb
author:JovanGerb
chore: remove `meta` form `import Mathlib.Tactic...` This PR cleans up some imports of the form `import Mathlib.Tactic...`, by either removing them entirely, or removing the `meta` keyword. It should never be necessary to `meta import` a file from `Mathlib.Tactic`, because the relevant definitions should already have been marked as `meta`. The motivation is to reduce the amount of files that are `meta` imported when writing e.g. `import Mathlib`, hence reducing the amount of stuff that needs to be loaded. There are more other `meta import`s that need to be removed, but this PR is a good start. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 61/142 Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/Data/List/ChainOfFn.lean,Mathlib/Dynamics/OmegaLimit.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/Tactic/Algebraize.lean,Mathlib/Tactic/ApplyFun.lean,Mathlib/Tactic/ArithMult.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/CategoryTheory/Coherence/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/CategoryTheory/Coherence/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Elementwise.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Tactic/Choose.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/DefEqTransformations.lean,Mathlib/Tactic/DeriveCountable.lean,Mathlib/Tactic/DeriveFintype.lean,Mathlib/Tactic/DeriveTraversable.lean,Mathlib/Tactic/ENatToNat.lean,Mathlib/Tactic/Explode.lean,Mathlib/Tactic/Explode/Pretty.lean,Mathlib/Tactic/FinCases.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRewrite/Elab.lean,Mathlib/Tactic/Group.lean,Mathlib/Tactic/IrreducibleDef.lean,Mathlib/Tactic/Lift.lean,Mathlib/Tactic/Linarith.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/Gauss.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Linarith/Verification.lean,Mathlib/Tactic/LinearCombination/Lemmas.lean,Mathlib/Tactic/Linter/DeprecatedSyntaxLinter.lean,Mathlib/Tactic/Linter/DocPrime.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/EmptyLine.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/Linter/GlobalAttributeIn.lean,Mathlib/Tactic/Linter/HashCommandLinter.lean,Mathlib/Tactic/Linter/Multigoal.lean,Mathlib/Tactic/Linter/OldObtain.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/MinImports.lean,Mathlib/Tactic/MoveAdd.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/NormNum/DivMod.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Prime.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/CollectFacts.lean,Mathlib/Tactic/Order/Graph/Tarjan.lean,Mathlib/Tactic/PNatToNat.lean,Mathlib/Tactic/Peel.lean,Mathlib/Tactic/ProdAssoc.lean,Mathlib/Tactic/ProxyType.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Qify.lean,Mathlib/Tactic/RSuffices.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/Common.lean,Mathlib/Tactic/Ring/Compare.lean,Mathlib/Tactic/Ring/PNat.lean,Mathlib/Tactic/Simproc/Divisors.lean,Mathlib/Tactic/Simproc/FinsetInterval.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Subsingleton.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Tactic/TautoSet.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/TagUnfoldBoundary.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CommDiag.lean,Mathlib/Tactic/Widget/CongrM.lean 107 9 ['JovanGerb', 'dupuisf', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
79-73369
2 months ago
75-10262
75 days ago
26-69911
26 days
36486 eric-wieser
author:eric-wieser
refactor: change Encodable to uniquely specify `decode` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-logic 73/47 Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Function/Basic.lean 2 0 [] nobody
79-72897
2 months ago
unknown
0-0
0 seconds
35881 astrainfinita
author:astrainfinita
chore: do not use `inf` `sup` in `LinearOrder` lemmas `max` and `sup` have been unified into the same function. It is no longer necessary to create lemmas about `sup` for `LinearOrder`. This PR moves `max` lemmas to an earlier file to ensure that files importing deprecated `sup` lemmas can use them. --- - [ ] depends on: #35841 - [ ] depends on: #35880 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict blocked-by-other-PR 136/126 Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/Complex/OpenMapping.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/List/Infix.lean,Mathlib/Data/Nat/Factorization/LCM.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/NumberTheory/AbelSummation.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Summable.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/Order/BoundedOrder/Lattice.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Filter/ENNReal.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Interval/Set/LinearOrder.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/MinMax.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Probability/Moments/Basic.lean,Mathlib/Probability/Moments/IntegrableExpMul.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/Polynomial/HilbertPoly.lean,Mathlib/RingTheory/PowerSeries/Restricted.lean,Mathlib/RingTheory/PowerSeries/WeierstrassPreparation.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/Tactic/Order/ToInt.lean,Mathlib/Topology/MetricSpace/Algebra.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/MetricSpace/Infsep.lean,Mathlib/Topology/Semicontinuity/Basic.lean 44 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
79-69959
2 months ago
91-17033
91 days ago
0-532
8 minutes
35802 xroblot
author:xroblot
feat(RamificationInertia): splitting in the decomposition field --- - [x] depends on: #35798 - [ ] depends on: #35405 - [x] depends on: #35371 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory large-import merge-conflict blocked-by-other-PR 279/4 Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Basic.lean 4 5 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
79-69472
2 months ago
93-6997
93 days ago
0-537
8 minutes
36495 AlexKontorovich
author:AlexKontorovich
chore(Finset/NatDivisors): refactor `card_divisors_mul` and `sum_divisors_mul` to not rely on `ArithmeticFunction` `Nat.Coprime.card_divisors_mul` and `Nat.Coprime.sum_divisors_mul` are moved to not rely on `ArithmeticFunction`. See zulip discussion here: [#mathlib4 > Library design question, e.g.`Nat.Coprime.card_divisors_mul` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Library.20design.20question.2C.20e.2Eg.2E.60Nat.2ECoprime.2Ecard_divisors_mul.60/near/577769899) Co-authored-by: Ziyan Wei and Aayush Rajasekaran --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-number-theory t-algebra merge-conflict
label:t-algebra$
45/14 Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Data/Finset/NatDivisors.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean 3 6 ['AlexKontorovich', 'arajasek', 'github-actions', 'mathlib-merge-conflicts'] riccardobrasca
assignee:riccardobrasca
79-56886
2 months ago
21-53250
21 days ago
53-21240
53 days
36079 DavidLedvinka
author:DavidLedvinka
refactor(Probability): Refactors Conditional Independence to allow spaces that are not Standard Borel merge-conflict 1827/1120 Mathlib.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalLExpectation.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,Mathlib/Order/Filter/CountableInter.lean,Mathlib/Probability/Independence/Basic.lean,Mathlib/Probability/Independence/CondIndep.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Independence/Conditional/CondIndep.lean,Mathlib/Probability/Independence/Conditional/CondIndepFun.lean,Mathlib/Probability/Independence/ZeroOne.lean,Mathlib/Probability/Kernel/Condexp.lean 12 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
79-48425
2 months ago
unknown
0-0
0 seconds
35991 xroblot
author:xroblot
feat(RamificationInertia): decomposition field and inertia field of compositum --- - [ ] depends on: #35808 - [x] depends on: #35493 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict large-import 645/36 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean 9 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
79-47822
2 months ago
88-67223
88 days ago
0-316
5 minutes
36503 Mrigna01
author:Mrigna01
Add false theorem test file --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 135/0 Mathlib/FalseBench/FalseTheorems.lean 1 3 ['github-actions'] nobody
79-42530
2 months ago
79-42620
79 days ago
79-42582
79 days
30352 kckennylau
author:kckennylau
feat(RingTheory): Homogeneous localization of tensor product Let `𝒜` be a graded `R`-algebra, and `S` be an `R`-algebra. Then `S ⊗[R] 𝒜` is a graded `S`-algebra with the same grading. Let `W` be a homogeneous submonoid of `𝒜`. Then `(S⊗[R]𝒜)[(1⊗W)⁻¹]₀ ≅ S ⊗[R] (𝒜[W⁻¹]₀)`. --- Split from #26061. - [x] depends on: #30173 - [x] depends on: #30322 - [x] depends on: #30365 - [x] depends on: #36252 Optionally depends on #30379 (graded ring equiv) and #36346 (simp Algebra.algHom), which will save a few lines here, so they are not high priority for this PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
471/22 Mathlib.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/GradedAlgebra/TensorLocalization.lean,Mathlib/RingTheory/Localization/TensorProduct.lean 5 5 ['dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
79-37705
2 months ago
71-59852
71 days ago
11-55488
11 days
26803 bjoernkjoshanssen
author:bjoernkjoshanssen
feat: second partial derivatives test We prove that if `f` is a real-valued function on `n`-dimensional Euclidean space with vanishing gradient at `x₀`, having a power series on a ball of positive radius around `x₀`, whose second Frechét derivative is positive definite at `x₀`, then `f` has local minimum at `x₀`. This project was started at the Lean for Mathematicians workshop hosted by the Simons Foundation in June 2025 in a group consisting of Bjørn Kjos-Hanssen, Erin Griffin, Asaf Kapota, and Janani Lakshmanan, see repo at https://github.com/bjoernkjoshanssen/secondpartial --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 572/0 Mathlib.lean,Mathlib/Analysis/Calculus/PartialDerivativeTest.lean,Mathlib/Analysis/Normed/Operator/NormedSpace.lean,Mathlib/Topology/Constructions.lean 4 32 ['bjoernkjoshanssen', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'themathqueen'] j-loreaux
assignee:j-loreaux
79-29806
2 months ago
101-52871
101 days ago
9-48004
9 days
14603 awueth
author:awueth
feat: degree is invariant under graph isomorphism --- Mathlib has the definition `SimpleGraph.Iso.mapNeighborSet` which is an equivalence between neighbor sets induced by an isomorphism. Would it be beneficial to add the same equivalence for `neighborFinset`? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-combinatorics new-contributor 24/0 Mathlib/Combinatorics/SimpleGraph/Map/Finite.lean 1 12 ['SnirBroshi', 'awueth', 'github-actions', 'jcommelin', 'kim-em', 'urkud'] nobody
79-23928
2 months ago
655-70767
655 days ago
31-44440
31 days
35956 Scarlett-le
author:Scarlett-le
feat: add orthogonality lemmas for inner product spacesonal ## Summary Adds two lemmas about orthogonality in inner product spaces. ## New declarations - `real_inner_sub_smul_div_inner_self_eq_zero` (`Mathlib.Analysis.InnerProductSpace.Basic`): the inner product of `u - (⟪u, d⟫_ℝ / ⟪d, d⟫_ℝ) • d` with `d` is zero; subtracting the orthogonal projection of `u` onto `d` yields a vector orthogonal to `d`. Holds unconditionally including when `d = 0`. - `mem_span_singleton_of_inner_eq_zero_of_inner_eq_zero` (`Mathlib.Analysis.InnerProductSpace.Projection.FiniteDimensional`): in a two-dimensional inner product space, if nonzero vectors `w` and `u` are both orthogonal to the same nonzero vector `v`, then `u` lies in the span of `w`. t-analysis awaiting-author 26/0 Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean 1 9 ['Scarlett-le', 'github-actions', 'j-loreaux'] sgouezel
assignee:sgouezel
79-13858
2 months ago
72-64590
72 days ago
10-34309
10 days
33599 nielstron
author:nielstron
feat(Computability/ContextFreeGrammar): closure under union --- This PR picks up https://github.com/leanprover-community/mathlib4/pull/13514 and resolves the outstanding errors. - [ ] depends on: #33592 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-computability new-contributor 498/0 Mathlib/Computability/ContextFreeGrammar.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
79-7365
2 months ago
134-16224
134 days ago
10-65787
10 days
9605 davikrehalt
author:davikrehalt
feat(Data/Finset & List): Add Lemmas for Sorting and Filtering This PR includes several useful lemmas to the Data/Finset and Data/List modules in Lean's mathlib: 1. `toFinset_filter` (List): Shows that filtering commutes with toFinset. 2. `toFinset_is_singleton_implies_replicate` (List): Shows a list with a singleton toFinset is a List.replicate. 3. `filter_sort_commute` (Finset): Sorting and filtering can be interchanged in Finsets. 4. `Sorted.filter` (List): A sorted list stays sorted after filtering. 5. `Sorted.append_largest` (List): Appending the largest element keeps a list sorted. 6. `sort_monotone_map` (Finset): Relates sorting of a Finset after mapping to sorting of a list. 7. `sort_insert_largest` (Finset): Sorting a Finset with an inserted largest element. 8. `sort_range` (Finset): Sorting a range in a Finset equals the corresponding range list. 9. ~~`filter_eval_true` (List): Filtering a list with a predicate always true keeps the list unchanged.~~ 10. ~~`filter_eval_false` (List): Filtering with an always-false predicate gives an empty list.~~ 11. ~~`pairwise_concat` (List): Iff condition for Pairwise relation in concatenated lists (similar to pairwise_join).~~ 12. `list_map_toFinset` (Finset): toFinset commutes with map under injection --- - [x] depends on: #15952 This is my first PR to mathlib, so I'm not too familiar with etiquette's and more specifically there are two proofs in the PR which uses aesop, and I am not sure if it's frowned upon. I kept the aesop in there for now as I couldn't construct very short proofs otherwise. The sort_range function proof was suggested in https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Computing.20Finset.20sort.20of.20Finset.20range/near/410346731 by Ruben Van de Velde. Thanks for your time for improving this PR. please-adopt t-data new-contributor merge-conflict awaiting-author 71/0 Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/List/Sort.lean 4 30 ['YaelDillies', 'davikrehalt', 'eric-wieser', 'github-actions', 'jcommelin', 'urkud', 'vihdzp'] nobody
79-6821
2 months ago
858-64709
858 days ago
12-48883
12 days
10332 adri326
author:adri326
feat(Topology/Sets): define regular open sets and their boolean algebra Introduces a new module, `Mathlib.Topology.Sets.RegularOpens`, which defines the `IsRegularOpen s` predicate (`interior (closure s) = s`) and `TopologicalSpace.RegularOpens`, the type of bundled regular open sets (defined as `Heyting.Regular (Opens X)`). A few properties of regular open sets (bundled and unbundled) and `interior (closure s)` are proven, and a pointwise instance of `MulAction` is provided for regular open sets. --- This PR belongs to my series of PRs around my formalization of Rubin's theorem. There are two possible ways to implement `RegularOpens`: - either construct them by hand and show that they form a boolean algebra (better def-eq but more boilerplate code required) - or use `Heyting.Regular` on the heyting algebra of `Opens` inherited from the `Frame` instance on them I first chose to use the former approach, but using the latter cuts the length of the construction of the boolean algebra of regular open sets by 100 lines of code, and allows us to inherit all of the helper lemmas defined for `Heyting.Regular`. The big downside, though, is that an element of `RegularOpens` isn't defined as a bundled regular open set anymore, but rather as an `Opens` set `s` for which `Opens.interior ↑(Opens.interior ↑sᶜ)ᶜ = s`, so I added an alternative constructor `RegularOpens.of` that instead accepts any set `s` for which `IsRegularOpen s` holds. Another minor downside is that coercion to a set takes two coercions instead of one. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology 434/0 Mathlib.lean,Mathlib/Data/Set/Pointwise/SMul.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/Sets/RegularOpens.lean,docs/references.bib 5 1 ['adri326'] nobody
79-6788
2 months ago
842-76629
842 days ago
0-1135
18 minutes
36496 erdOne
author:erdOne
feat(Tactic/Linter): lint against `simpa ... using by tactic` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import awaiting-author merge-conflict 134/12 Mathlib.lean,Mathlib/Analysis/LConvolution.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Condensed/Light/Epi.lean,Mathlib/Init.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Probability/Distributions/Poisson/Basic.lean,Mathlib/Probability/Kernel/Composition/Comp.lean,Mathlib/Probability/Kernel/Composition/ParallelComp.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/Probability/Moments/SubGaussian.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/SimpaUsingBy.lean,MathlibTest/simpaUsingBy.lean 15 24 ['erdOne', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
79-6098
2 months ago
79-46491
79 days ago
0-2953
49 minutes
36533 Bergschaf
author:Bergschaf
feat(Order/Sublocales): Closed sublocales This PR introduces closed sublocales and their property being the complement of Open sublocales in the Coframe of sublocales. The embedding from closed sublocales into sublocales is a coframeHom, which is also added in this PR. If this PR is to large, I can also factor this part out (although it should be quite uncontroversial since i basically copied everything from frameHom). - [ ] depends on: #25978 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR 439/37 Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Order/Nucleus.lean,Mathlib/Order/Sublocale.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
78-77804
2 months ago
78-78969
78 days ago
0-248
4 minutes
35652 dennj
author:dennj
feat(LinearAlgebra/Matrix): add `Matrix.mul_eq_smul_one_symm` Adds three lemmas: - IsLeftRegular.mul_eq_of_comm (Algebra/Group/Defs.lean): if a is left-regular, a * b = c, and c commutes with a, then b * a = c. Generalises IsLeftRegular.mul_eq_one_symm from the c = 1 case. - IsRightRegular.mul_eq_of_comm: symmetric version. - mul_eq_smul_one_symm (Algebra/Group/Action/Defs.lean): scalar variant of mul_eq_one_symm. For a monoid β with a compatible scalar action by α, if a * b = c • 1 and a is left-regular, then b * a = c • 1. Proven in one line via IsLeftRegular.mul_eq_of_comm, since c • 1 is central thanks to IsScalarTower α β β and SMulCommClass α β β. The additive analogues are produced by to_additive. The general mul_eq_of_comm helpers capture the underlying pattern: "a left/right-regular element can be cancelled when the conclusion commutes with it" and are reusable beyond this PR's specialisation. Human made PR t-algebra new-contributor LLM-generated awaiting-author
label:t-algebra$
28/0 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Defs.lean 1 7 ['dagurtomas', 'dennj', 'eric-wieser', 'github-actions', 'grunweg'] ocfnash
assignee:ocfnash
78-73464
2 months ago
26-42867
26 days ago
24-65258
24 days
36540 faenuccio
author:faenuccio
perf: personal grind test Private test WIP t-algebra
label:t-algebra$
5/0 Mathlib/Algebra/Ring/Nat.lean 1 4 ['faenuccio', 'github-actions', 'leanprover-radar'] faenuccio
assignee:faenuccio
78-68953
2 months ago
78-71982
78 days ago
0-16
16 seconds
35263 astrainfinita
author:astrainfinita
refactor: use `OrderSupInfSet` --- - [ ] depends on: #35297 - [ ] depends on: #35328 - [ ] depends on: #35774 - [ ] depends on: #35674 [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F/with/573799342) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order large-import blocked-by-other-PR merge-conflict 952/701 Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/CategoryTheory/Category/Pairwise.lean,Mathlib/CategoryTheory/Limits/Lattice.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Int/ConditionallyCompleteOrder.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Set/BooleanAlgebra.lean,Mathlib/Geometry/Convex/Cone/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/CompleteLattice/Lemmas.lean,Mathlib/Order/CompleteLattice/PiLex.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/Concept.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/Copy.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Hom/Order.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/Nucleus.lean,Mathlib/Order/ScottContinuity/Prod.lean,Mathlib/Order/SupClosed.lean,Mathlib/Probability/Process/Filtration.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/Topology/Algebra/Group/GroupTopology.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Algebra/Ring/Basic.lean,Mathlib/Topology/Order/HullKernel.lean,Mathlib/Topology/UniformSpace/Basic.lean 58 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
78-67139
2 months ago
unknown
0-0
0 seconds
32410 callesonne
author:callesonne
feat(Bicategory/FunctorCategory/Pseudo): Add evaluation pseudofunctor Adding pseudofunctors `eval` and `evaluation`. WIP PR to access CI. --- - [x] depends on: #30926 - [x] depends on: #32468 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 49/10 Mathlib/CategoryTheory/Bicategory/Functor/StrictlyUnitary.lean,Mathlib/CategoryTheory/Bicategory/FunctorBicategory/Pseudo.lean,Mathlib/CategoryTheory/Bicategory/Modification/Pseudo.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Pseudo.lean,Mathlib/CategoryTheory/Products/Basic.lean 5 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
78-48993
2 months ago
177-43124
177 days ago
0-9
9 seconds
31901 callesonne
author:callesonne
feat(Bicategory/Subbicategory): add full subbicategories using `ObjectProperty` Analogously to the 1-categorical setting we construct a full subbicategory from an object property. One could also construct locally full subbicategories using a pair of an object property and a morphism property. However then there is no way to obtain the bicategory structure by specializing from the `InducedBicategory` case. It is not clear to me if we want a full subbicategory to be specialized from this other construction, or from `InducedBicategory`. --- - [x] depends on: #30925 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author merge-conflict 135/2 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Bicategory/InducedBicategory.lean,Mathlib/CategoryTheory/Bicategory/Subbicategory.lean 4 8 ['callesonne', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] nobody
78-48922
2 months ago
175-71493
175 days ago
2-61446
2 days
34078 joneugster
author:joneugster
feat(scripts/autolabel): add label dependencies for better automatic label assignment --- This is a tracking-PR containing the complete list of proposed labels. As there might be room for discussion about these settings, there will be smaller PRs adding these dependencies in smaller batches. - [x] depends on: #34948 - [x] depends on: #34949 - [x] depends on: #34066 - [x] depends on: #34079 - [x] depends on: #34677 - [x] depends on: #34678 - [ ] depends on: #34952 - [x] depends on: #36242 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR CI merge-conflict 88/34 scripts/autolabel.lean 1 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] nobody
78-46481
2 months ago
unknown
0-0
0 seconds
34952 joneugster
author:joneugster
feat(scripts/autolabel): use `Cli` and integrate `curl` call into `autolabel` - use `Cli` for `lake exe autolabel` - add arguments `--pr xxx --gh` and `--pr xxx --curl ` to chose between different interaction methods with github - add `--force` to skip the check whether labels are already present. (note: the current `curl` setup doesn't perform this step and neither does the refactor, so I added a `Todo` to remember this. ) - make CI-workflow simpler and more robust by removing current stdout-parsing of the debug-messages which `autolabel` emits. ### Testing Make some local changes and commit them. Ensure your local `origin/master` is in sync with `upstream/master` if you are on a fork. - `lake exe autolabel`: prints the labels which would be applicable - `lake exe autolabel --pr 34952 --gh --force` adds these labels to this PR using `gh`. - `lake exe autolabel --pr 34952 --gh` adds these labels to this PR using `gh` if no topic labels are present. - `lake exe autolabel --pr 34952 --curl ` adds these labels to this PR using `curl`. This requires a github access token for authentication --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 85/72 .github/workflows/add_label_from_diff.yaml,scripts/autolabel.lean 2 4 ['github-actions', 'mathlib-merge-conflicts'] nobody
78-37684
2 months ago
61-84693
61 days ago
94-39093
94 days
36086 Multramate
author:Multramate
feat(Algebra): add liftEquiv for groups, rings, algebras, and adjoin roots --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
105/22 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/FieldTheory/RatFunc/Luroth.lean,Mathlib/GroupTheory/GroupExtension/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean 12 7 ['CBirkbeck', 'Multramate', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
78-37679
2 months ago
71-68228
71 days ago
15-18023
15 days
36146 Multramate
author:Multramate
feat(AlgebraicGeometry/GammaSpecAdjunction): add equivalences for Spec morphisms that commute with algebra maps --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-algebra awaiting-author
label:t-algebra$
46/2 Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicGeometry/Scheme.lean 3 18 ['CBirkbeck', 'Multramate', 'chrisflav', 'erdOne', 'github-actions'] dagurtomas
assignee:dagurtomas
78-37678
2 months ago
73-70308
73 days ago
12-46044
12 days
35822 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice): `sSup (f '' s) ≤ f (sSup s)` --- #35260 will add `iSup` versions. (edit: it was merged, and it's only for `[Finite ι]`) Future work (though I'm not sure if it's possible): `Antitone`, `MonotoneOn`, `AntitoneOn` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 38/1 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean 2 8 ['Komyyy', 'SnirBroshi', 'github-actions', 'vihdzp'] Komyyy
assignee:Komyyy
78-34199
2 months ago
76-83955
76 days ago
15-68575
15 days
29856 mans0954
author:mans0954
feat(Analysis/Normed/Ring/Basic): Add NonUnitalNonAssocSeminormedRing and NonUnitalNonAssocNormedRing Adds the classes `NonUnitalNonAssocSeminormedRing` and `NonUnitalNonAssocNormedRing` and relaxes the `NonUnitalSeminormedRing` section to `NonUnitalNonAssocSeminormedRing`. Examples of non-unital non-associative normed rings include non-untial JB-algebras and non-unital JB*-algebras. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis please-adopt 110/11 Mathlib/Analysis/Normed/Ring/Basic.lean,MathlibTest/TCSynth.lean 2 15 ['github-actions', 'j-loreaux', 'leanprover-bot'] ADedecker and j-loreaux
assignee:j-loreaux assignee:ADedecker
78-29106
2 months ago
192-48293
192 days ago
57-16399
57 days
34846 fpvandoorn
author:fpvandoorn
fix: module system and translate interaction * Fix some issues when the value of an imported declaration is not available. This could cause `to_additive` to panic or turn the declaration into an axiom. * Don't print private names in messages * Don't panic when the declaration already exists modulo privateness. * Add some helper functions to `Lean.Environment` and `Lean.Meta`. --- Please double check the `PublicOrPrivate` declarations: - Do they already exist in core? - Does `addDeclSafe` catch all cases where `addDecl` would panic? I think these are useful (maybe after renaming) since some of the Core versions are a huge footgun, which can lead to panics in multiple ways. - [ ] depends on: #35134 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author blocked-by-other-PR merge-conflict 233/50 Mathlib/Lean/Environment.lean,Mathlib/Lean/Meta.lean,Mathlib/Tactic/Translate/Core.lean,MathlibTest/ToAdditiveModule.lean,MathlibTest/ToDual.lean,MathlibTest/toAdditive.lean 6 37 ['JovanGerb', 'fpvandoorn', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
78-27535
2 months ago
112-57977
112 days ago
0-11069
3 hours
33466 Shreyas4991
author:Shreyas4991
refactor(Combinatorics/Digraph): add vertex sets --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics merge-conflict please-adopt 382/55 Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Digraph/Orientation.lean 2 83 ['IvanRenison', 'Shreyas4991', 'SnirBroshi', 'YaelDillies', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp', 'vlad902'] awainverse
assignee:awainverse
78-19401
2 months ago
78-19401
78 days ago
27-54087
27 days
36587 yhx-12243
author:yhx-12243
feat(Algebra/GCDMonoid): Distributive lattice structure for Associates in GCDMonoid Add a distributive lattice structure for `Associates α` in `GCDMonoid`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
60/3 Mathlib.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/GCDMonoid/DistribLattice.lean 2 2 ['github-actions'] nobody
78-15642
2 months ago
74-72617
74 days ago
3-29502
3 days
35662 FrankieeW
author:FrankieeW
feat(NumberTheory/Zsqrtd): add Archimedean instance via le_arch This PR follows a suggestion made in #35606 , #35481 - add `Zsqrtd.le_arch_smul` in `Mathlib/NumberTheory/Zsqrtd/Basic.lean` - use it to provide `instance : Archimedean (ℤ√d)` in the `Nonsquare` section - refactor the proof using symmetry to reduce duplication while keeping checks clean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor awaiting-author merge-conflict LLM-generated 46/4 Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean 2 13 ['FrankieeW', 'MichaelStollBayreuth', 'euprunin', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
78-15378
2 months ago
80-79894
80 days ago
15-50475
15 days
36418 j-loreaux
author:j-loreaux
feat: add `IsMulCommutative` instances for topological closures of subobjects --- - [ ] depends on: #36549 - [ ] depends on: #36552 - [ ] depends on: #36553 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra merge-conflict blocked-by-other-PR
label:t-algebra$
1047/162 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Membership.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/CategoryTheory/Center/Linear.lean,Mathlib/CategoryTheory/Center/NegOnePow.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean,Mathlib/Data/ZMod/QuotientGroup.lean,Mathlib/FieldTheory/Galois/Abelian.lean,Mathlib/GroupTheory/Focal.lean,Mathlib/GroupTheory/IsPerfect.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean,Mathlib/GroupTheory/Subgroup/Centralizer.lean,Mathlib/GroupTheory/Submonoid/Centralizer.lean,Mathlib/GroupTheory/Subsemigroup/Centralizer.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/RepresentationTheory/AlgebraRepresentation/Basic.lean,Mathlib/RepresentationTheory/Irreducible.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubring/Defs.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Defs.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Monoid.lean,Mathlib/Topology/Algebra/NonUnitalAlgebra.lean,Mathlib/Topology/Algebra/NonUnitalStarAlgebra.lean,Mathlib/Topology/Algebra/Ring/Basic.lean,Mathlib/Topology/Algebra/StarSubalgebra.lean 50 8 ['github-actions', 'j-loreaux', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
78-15366
2 months ago
78-57566
78 days ago
0-85
1 minute
36563 EtienneC30
author:EtienneC30
feat: brownian processes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability merge-conflict 1517/1 Mathlib.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Probability/BrownianMotion/IsBrownian.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Multivariate.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/HasLaw.lean,Mathlib/Probability/Moments/Basic.lean,Mathlib/Probability/Moments/Covariance.lean,Mathlib/Probability/Process/Filtration.lean 12 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
78-12015
2 months ago
unknown
0-0
0 seconds
36282 smmercuri
author:smmercuri
chore(Topology/Algebra/Valued/WithVal): remove `@` lemma Prove `Valuation.IsEquiv.uniformContinuous_congr` directly and remove `Valuation.IsEquiv.uniformContinuous` which is not needed. --- - [x] depends on: #36310 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
18/32 Mathlib/Topology/Algebra/Valued/WithVal.lean 1 5 ['faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'smmercuri'] faenuccio
assignee:faenuccio
78-8905
2 months ago
60-74523
60 days ago
18-25760
18 days
36595 mcdoll
author:mcdoll
feat(Analysis/TemperedDistribution): polynomially bounded locally integrable functions define tempered distributions --- - [ ] depends on: #36711 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis blocked-by-other-PR 137/0 Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
77-85380
2 months ago
77-85453
77 days ago
0-1
1 second
35295 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): `dropLast` of a cycle is a path --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics awaiting-author 13/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 2 14 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] YaelDillies
assignee:YaelDillies
77-74254
2 months ago
51-13335
51 days ago
34-53762
34 days
36327 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra/Extreme): a C⋆-algebra is unital iff there exists an extreme point in the closed unit ball Co-authored-by: Jon Bannon <59937998+JonBannon@users.noreply.github.com> Co-authored-by: Jireh Loreaux --- - [x] depends on: #35997 - [x] depends on: #36201 - [x] depends on: #36407 - [x] depends on: #36408 - [x] depends on: #36416 - [x] depends on: #36603 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author merge-conflict blocked-by-other-PR 353/0 Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/Extreme.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Topology/ContinuousMap/Bounded/Normed.lean,Mathlib/Topology/ContinuousMap/Compact.lean 11 7 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] nobody
77-71937
2 months ago
31-28625
31 days ago
0-783
13 minutes
36119 Ruizsolveall
author:Ruizsolveall
feat(Topology/Covering): fundamental group of the circle is ℤ - Proves that the fundamental group of the circle `π₁(S¹, 0)` is isomorphic to `ℤ`, via covering space theory. - Constructs the winding number map `nLoop : ℤ → Path 0 0` on `AddCircle 1`, and proves it is surjective (`nLoop_surjective`), injective (`nLoop_homotopic_iff`), and additive (`nLoop_add`). - Assembles these into the group isomorphism `windingNumberIso : Multiplicative ℤ ≃* FundamentalGroup (AddCircle 1) 0`. ## Approach Uses the covering map `ℝ → AddCircle 1` and unique path lifting to establish the bijection between homotopy classes of loops and integers (winding numbers). Homotopy invariance of lifted endpoints gives injectivity; surjectivity follows from lifting arbitrary loops. Additivity uses path concatenation of lifts in the simply connected total space `ℝ`. ## AI disclosure I used Claude (Anthropic) to write the PR description, code comments, and to help refine code style. The proof strategy and all Lean code are my own. I understand and can vouch for all the code in this PR. t-topology new-contributor awaiting-author LLM-generated 236/0 Mathlib.lean,Mathlib/Topology/Covering/FundamentalGroupCircle.lean 2 26 ['Ruizsolveall', 'SnirBroshi', 'b-mehta', 'dagurtomas', 'github-actions', 'grunweg', 'vihdzp'] nobody
77-64005
2 months ago
78-56537
78 days ago
8-31258
8 days
31607 grunweg
author:grunweg
chore: rename `continuous{,On,At,Within}_const` to `ContinuousFoo.const` Zulip discussion: [#mathlib4 > Naming convention @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.20convention/near/447491526) --- - [x] depends on: #34441 - [x] depends on: #34688 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated merge-conflict awaiting-CI 352/364 Archive/Hairer.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/UnitPartition.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Calculus/DiffContOnCl.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/HalfPlane.lean,Mathlib/Analysis/Complex/LocallyUniformLimit.lean,Mathlib/Analysis/Complex/PhragmenLindelof.lean,Mathlib/Analysis/Complex/RemovableSingularity.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Measure.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Metric.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Topology.lean,Mathlib/Analysis/Convex/Cone/InnerDual.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/PartitionOfUnity.lean,Mathlib/Analysis/Convex/Side.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/InnerProductSpace/Continuous.lean,Mathlib/Analysis/InnerProductSpace/Harmonic/HarmonicContOnCl.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/InnerProductSpace/MeanErgodic.lean,Mathlib/Analysis/InnerProductSpace/OfNorm.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Analysis/Meromorphic/TrailingCoefficient.lean,Mathlib/Analysis/Normed/Affine/AddTorsor.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/Lemmas.lean,Mathlib/Analysis/Normed/Module/Ball/Homeomorph.lean,Mathlib/Analysis/Normed/Module/Connected.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Operator/Completeness.lean,Mathlib/Analysis/ODE/Gronwall.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Isometric.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/PoissonSummation.lean,Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/MulExpNegMulSq.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Dynamics/OmegaLimit.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Basic.lean,Mathlib/Geometry/Manifold/Bordism.lean,Mathlib/Geometry/Manifold/Complex.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/SmoothApprox.lean,Mathlib/MeasureTheory/Function/SpecialFunctions/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Integral/CircleTransform.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Real.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/AbstractFuncEq.lean,Mathlib/NumberTheory/LSeries/Deriv.lean,Mathlib/NumberTheory/LSeries/Dirichlet.lean,Mathlib/NumberTheory/LSeries/DirichletContinuation.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean 180 15 ['github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
77-53444
2 months ago
197-46299
197 days ago
0-1
1 second
36347 FrankieeW
author:FrankieeW
feat(NumberTheory/QuadraticField): define quadratic number fields as QuadraticAlgebra ℚ d 0 Define `Qsqrtd d` as `QuadraticAlgebra ℚ d 0`, representing the quadratic number field `ℚ(√d)`. Prove trace and norm results, show `Qsqrtd d` is a number field and a quadratic extension when `d` is not a perfect square, and prove that `ℚ(√0)` and `ℚ(√1)` are not fields. Include `IsQuadraticField` as a predicate for quadratic extensions of `ℚ`, and bridge lemmas connecting squarefree integer parameters to the non-square condition. This PR is part of a series upstreaming the [QuadraticNumberFields](https://github.com/FrankieeW/QuadraticNumberFields) project. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/quadratic.20number.20fields) --- ### PRs - #36347 (this PR) - #36387 --- t-number-theory new-contributor large-import awaiting-author LLM-generated 191/0 Mathlib.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/NumberTheory/QuadraticField/Basic.lean 4 29 ['FrankieeW', 'eric-wieser', 'github-actions', 'riccardobrasca', 'tb65536', 'wwylele'] tb65536
assignee:tb65536
77-37672
2 months ago
74-74067
74 days ago
7-9258
7 days
36626 SnirBroshi
author:SnirBroshi
feat(Order/UpperLower/Basic): an injective function constrained by the identity function using a well-order is the identity --- (yes I know `IsLowerSet` is bundled but I need the theorems for unbundled relations 🙈) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 30/0 Mathlib/Order/UpperLower/Basic.lean 1 6 ['SnirBroshi', 'YaelDillies', 'github-actions', 'vihdzp'] bryangingechen
assignee:bryangingechen
77-32069
2 months ago
32-86254
32 days ago
44-37808
44 days
36619 ldct
author:ldct
feat: add `NonUnitalRingHom.ker` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 18/4 Mathlib/RingTheory/Ideal/Maps.lean 1 1 ['github-actions'] nobody
77-8309
2 months ago
unknown
0-0
0 seconds
35651 sun123zxy
author:sun123zxy
feat(Mathlib/RingTheory/Ideal/Cotangent): `Submodule.map` definition of cotangent spaces This PR adds an alternative definition of the cotangent space as an image under the R-module quotient map. --- Split from PR #33247 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor awaiting-author 47/20 Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean 2 20 ['chrisflav', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'sun123zxy'] chrisflav
assignee:chrisflav
76-81116
2 months ago
74-62815
74 days ago
16-12398
16 days
34911 smmercuri
author:smmercuri
feat: idelic product formula --- - [x] depends on: #34915 - [x] depends on: #34918 - [x] depends on: #36184 - [x] depends on: #36204 - [ ] depends on: #36275 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 262/2 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 8 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
76-70159
2 months ago
113-435
113 days ago
0-10
10 seconds
16801 awainverse
author:awainverse
feat(ModelTheory/Equivalence): The quotient type of formulas modulo a theory Defines `FirstOrder.Language.Theory.Formula`: `T.Formula α` is the quotient of `L.Formula α` by equivalence modulo a theory `T`. Puts a boolean algebra instance on `T.Formula α`, with `≤` corresponding to implication. --- - [x] depends on: #16799 - [x] depends on: #16800 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 174/60 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Types.lean 3 30 ['YaelDillies', 'awainverse', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'metinersin'] nobody
76-68195
2 months ago
575-2426
575 days ago
29-26213
29 days
22314 shetzl
author:shetzl
feat: add leftmost derivations for context-free grammars Leftmost derivations are often easier to reason about than arbitrary derivations. This PR adds leftmost variants of Rewrites, Produces and Derives to the existing definition of context-free grammars and proves that a string of terminals can be derived iff it can be leftmost derived. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 383/0 Mathlib.lean,Mathlib/Computability/LeftmostDerivation.lean 2 55 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody
76-68171
2 months ago
386-5067
386 days ago
72-2714
72 days
26368 Whysoserioushah
author:Whysoserioushah
feat(RingTheory/TwoSidedIdeal/SpanAsSum): span of set as finsum Co-authored-by: Jujian Zhang --- Reopened after everything moved to fork (#23320). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 81/0 Mathlib.lean,Mathlib/RingTheory/TwoSidedIdeal/SpanAsSum.lean 2 7 ['github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] nobody
76-68142
2 months ago
302-18876
302 days ago
36-16237
36 days
27534 PierreQuinton
author:PierreQuinton
feat: a typeclass for `sSup`/`sInf` to be lawful Adds lawful infima and suprema type classes. A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set. A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order 121/8 Mathlib.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/LawfulSupInf.lean 3 26 ['PierreQuinton', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] nobody
76-68116
2 months ago
192-12791
192 days ago
114-37921
114 days
28151 iehality
author:iehality
feat(Computability): r.e. sets are closed under inter/union/projection/composition Prove that r.e. sets are closed under intersections, unions, projection and composition. --- This PR continues the work from #16705. Original PR: https://github.com/leanprover-community/mathlib4/pull/16705 merge-conflict t-computability awaiting-author 120/0 Mathlib/Computability/Halting.lean 1 13 ['YaelDillies', 'github-actions', 'iehality', 'mathlib4-merge-conflict-bot'] nobody
76-68104
2 months ago
284-3728
284 days ago
7-84521
7 days
31610 rudynicolop
author:rudynicolop
feat(Computability/NFA): Kleene star closure for Regular Languages via NFA This PR constructs a Kleene star closure for non-epsilon NFAs, and proves that regular languages are closed under Kleene star. The NFA construction is `NFA.kstar`. The main theorems are: - `NFA.accepts_kstar`: demonstrates that `M.kstar` accepts the Kleene star closure of the language of `M`. - `IsRegular.kstar`: demonstrates that regular languages are closed under Kleene star. There is an onging zulip discussion about regular languages in Mathlib: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Regular.20languages.3A.20the.20review.20queue/with/553759136 This discussion is also tracked at #24205. Furthermore, the construction and proofs in this PR are heavily inspired by @TpmKranz from his #15651. #15651 supersedes this PR, so if it is accepted then this PR is not needed. --- - [x] depends on: #31038 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor awaiting-author awaiting-CI 405/7 Mathlib/Computability/NFA.lean 1 16 ['YaelDillies', 'ctchou', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
76-68070
2 months ago
135-60452
135 days ago
43-77831
43 days
36716 mcdoll
author:mcdoll
chore(Analysis/SchwartzSpace): golf a proof --- - [ ] depends on: #36711 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis blocked-by-other-PR 45/17 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Seminorm.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
75-3126
2 months ago
unknown
0-0
0 seconds
36757 alok
author:alok
feat(Order/Filter): add Filter.IsFree and Filter.IsNonprincipal ## Summary Adds two filter predicates and their basic API: - **`Filter.IsFree`**: no point belongs to every set (`f.ker = ∅`), equivalently `f ≤ cofinite` - **`Filter.IsNonprincipal`**: not equal to `𝓟 s` for any set `s` Every free `NeBot` filter is non-principal (`IsFree.isNonprincipal`), but the converse fails for general filters (e.g. `𝓝 x` in a non-discrete T₁ space is non-principal but not free). For ultrafilters the two notions coincide (`Ultrafilter.isNonprincipal_iff_isFree`). On finite types, no `NeBot` filter is free (`not_isFree_of_neBot`). ## Test plan - [x] `lake build Mathlib.Order.Filter.Cofinite` passes - [x] `lake build Mathlib.Order.Filter.Ultrafilter.Basic` passes 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-order new-contributor 98/1 Mathlib/Order/Filter/Cofinite.lean,Mathlib/Order/Filter/Ultrafilter/Basic.lean 2 2 ['github-actions'] nobody
74-28341
2 months ago
74-26941
74 days ago
0-3928
1 hour
36404 smmercuri
author:smmercuri
feat: the adele ring of a number field is locally compact --- - [ ] depends on: #30579 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import merge-conflict 539/113 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/LiesOverInstances.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/RamificationInertia/Valuation.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 10 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
70-10216
2 months ago
81-63766
81 days ago
0-264
4 minutes
26221 grunweg
author:grunweg
Mr. Covariant Derivatives This PR is a work in progress, and will land in individual pieces. Some contributions include - additional API for differentiability of vector bundle sections - finite sums, differences and scalar products of smooth sections are smooth - the same result for mdifferentiable - add missing mdifferentiable congruence lemmas - define smooth local frames of a vector bundle - a general tensoriality criterion - define covariant derivatives, proving their tensoriality and that convex combinations of these are covariant derivatives - the classification of covariant derivatives over a trivial bundle - additional API for the Lie bracket of vector fields: the product rule (one sorry left!), Lie bracket at zero vanishes - torsion of a connection, torsion-free connections - Gram-Schmidt procedure for sections of a Riemannian vector bundle - orthonormal frames on a Riemannian vector bundle - connections compatible with a metric; definition of the Levi-Civita connection - uniqueness of the Levi-Civita connection - Christoffel symbols - in progress: existence of the Levi-Civita connection (connection done; torsion-freeness and compatibility in progress) - custom elaborators for sections in a vector bundle (converting dependent to non-dependent functions) - custom elaborators for inferring a model with corners, in differentiability/smoothness definitions - a `#check'` command and tactic which only shows explicit arguments More to come soon! Joint work with @PatrickMassot; supported by the FMJH. --- - [x] depends on: #26360 - [x] depends on: #26672 - [x] depends on: #26673 - [x] depends on: #26674 - [x] depends on: #26864 (more of a by-product) - [x] depends on: #26865 - [x] depends on: #26866 - [x] depends on: #26870 - [x] depends on: #26871 - [x] depends on: #26671 - [x] depends on: #26676 - [x] depends on: #26677 - [x] depends on: #26678 - [x] depends on: #26686 - [x] depends on: #26687 - [x] depends on: #26688 - [x] depends on: #26702 - [x] depends on: #26709 - [x] depends on: #26734 - [ ] depends on: #26743 - [x] depends on: #26894 - [x] depends on: #26921 - [x] depends on: #26922 - [x] depends on: #27020 - [x] depends on: #27021 - [x] depends on: #30307 - [x] depends on: #27023 - [ ] depends on: #27024 - [ ] depends on: #27025 - [x] depends on: #30338 - [ ] depends on: #30083 - [ ] depends on: #30339 - [ ] depends on: #31194 - [ ] depends on: #34262 - [ ] depends on: #34263 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR merge-conflict 5847/155 Mathlib.lean,Mathlib/Geometry/Manifold/CheatSheet.md,Mathlib/Geometry/Manifold/Riemannian/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/LeviCivita.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Lift.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Prelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Torsion.lean,Mathlib/Geometry/Manifold/VectorBundle/GramSchmidtOrtho.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/Geometry/Manifold/VectorBundle/Misc.lean,Mathlib/Geometry/Manifold/VectorBundle/OrthonormalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/SmoothSection.lean,Mathlib/Geometry/Manifold/VectorBundle/Tensoriality.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/Geometry/Manifold/VectorField/Pullback.lean 18 15 ['github-actions', 'grunweg', 'idontgetoutmuch', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
70-3634
2 months ago
unknown
0-0
0 seconds
36825 danlyng
author:danlyng
feat(MeasureTheory/Integral/IntegralEqImproper): add Iic variants of nonneg/nonpos derivative integrability and FTC-2 Add the `Iic` counterparts of the existing `Ioi` results for automatic integrability of derivatives on semi-infinite intervals and the corresponding corollaries computing the integral value. Additionally, apply minor fixes to existing docstrings. New declarations: - `integrableOn_Iic_deriv_of_nonneg` / `integrableOn_Iic_deriv_of_nonneg'` - `integrableOn_Iic_deriv_of_nonpos` / `integrableOn_Iic_deriv_of_nonpos'` - `integral_Iic_of_hasDerivAt_of_nonneg` / `integral_Iic_of_hasDerivAt_of_nonneg'` - `integral_Iic_of_hasDerivAt_of_nonpos` / `integral_Iic_of_hasDerivAt_of_nonpos'` These mirror `integrableOn_Ioi_deriv_of_nonneg`, `integrableOn_Ioi_deriv_of_nonpos`, `integral_Ioi_of_hasDerivAt_of_nonneg`, `integral_Ioi_of_hasDerivAt_of_nonpos` and their primed variants. t-measure-probability new-contributor awaiting-author 107/9 Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean 1 7 ['EtienneC30', 'github-actions'] EtienneC30
assignee:EtienneC30
69-78471
2 months ago
69-78471
69 days ago
2-67942
2 days
36973 JovanGerb
author:JovanGerb
chore(Order/Filter/AtTopBot/Map): use `to_dual` This PR uses `to_dual` on 4 declarations. `comap_atTop` is problematic, because the heuristic fails, and mistakenly thinks that it should translate `Surjective.iInf_comp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 5/20 Mathlib/Order/Filter/AtTopBot/Map.lean 1 2 ['github-actions', 'mathlib-bors'] nobody
69-30498
2 months ago
69-30572
69 days ago
0-7
7 seconds
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
68-17212
2 months ago
71-3952
71 days ago
0-10825
3 hours
36719 NoneMore
author:NoneMore
feat(ModelTheory): add `PartialType` for first-order theories This PR adds the definitions of partial types over theories and over parameter sets, and proves several equivalent characterizations. --- - [ ] depends on: #36667 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-logic new-contributor 468/0 Mathlib.lean,Mathlib/ModelTheory/PartialTypes.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 4 5 ['NoneMore', 'github-actions', 'mathlib-dependent-issues', 'vihdzp'] nobody
66-10946
2 months ago
75-10300
75 days ago
0-322
5 minutes
36711 mcdoll
author:mcdoll
feat(Algebra): Bound `Finset.sum` in terms of `Finset.sup` We add a version for `Finset` and for seminorms (with the additional `sum_apply` lemma). --- I am not sure where to put the `Finset` lemma, `#find_home` was useless and there seems to be no natural candidate. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
34/0 Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Analysis/Seminorm.lean 2 2 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
64-52594
2 months ago
64-52594
64 days ago
10-38227
10 days
37232 mathlib-splicebot
author:mathlib-splicebot
chore(Algebra/Order): bound on `|n / m|ₘ` and `|n - m|` This PR was automatically created from PR #34722 by @GrigorenkoPV via a [review comment](https://github.com/leanprover-community/mathlib4/pull/34722#discussion_r2996870566) by @Vierkantor. t-algebra delegated
label:t-algebra$
5/0 Mathlib/Algebra/Order/Group/Unbundled/Abs.lean 1 6 ['Vierkantor', 'bryangingechen', 'github-actions', 'mathlib-bors'] nobody
64-48373
2 months ago
64-60806
64 days ago
0-588
9 minutes
33295 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Algebra/Central/End): center of the group of automorphisms of a free module Let `R` be a ring and let `V` be a free `R`-module. We describe the center of the group of linear automorphisms of `V`. The group of linear automorphisms can be summoned either as `V ≃ₗ[R] V`, or as `LinearMap.GeneralLinearGroup R V`, which is a shortcut for `(V →ₗ[R] V)ˣ`. We provide both descriptions. There are three possibilities: * If `V` is trivial, then `V ≃ₗ[R] V` is trivial, and so is its center. * If `V` has rank one, then any basis with a `Unique` type of index furnishes a ring equivalence from `V →ₗ[R] V` with `Rᵐᵒᵖ`, given by right-multiplication on coordinates in the given basis. (This equivalence depends on the choice of a basis.) Then `V ≃ₗ[R] V` is mul-equivalent with `(Rᵐᵒᵖ)ˣ`, hence its center is isomorphic with `Subgroup.center (Rᵐᵒᵖ)ˣ`, or, by commutativity, with `Subgroup.center Rˣ`. * Otherwise, the center of `V ≃ₗ[R] V` consists of homotheties with central ratio, furnishing a group isomorphism from `Subgroup.center (V ≃ₗ[R] V)` with `(Subgroup.center R)ˣ`. When `R` is commutative and `V` is nontrivial, the last two cases give the same answer and the center of `V ≃ₗ[R] V` is isomorphic with `Rˣ`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra WIP merge-conflict
label:t-algebra$
364/0 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/GeneralLinearGroup/Center.lean 3 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
64-31115
2 months ago
154-60783
154 days ago
0-19130
5 hours
36769 jjdishere
author:jjdishere
feat(Valued/ValuationTopology): creating instances of `IsValuativeTopology` This is the third in a series of PRs, with the final goal of removing the class `Valued` from Mathlib. A `Valued` instance will be replaced by `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R] (v : Valuation R A) [v.Compatible]`. The goal of this PR is to prepare APIs for creating `ValuativeRel`, `IsValuativeTopology`, ... instances whenever a `Valued` instance was created. Currently in Mathlib, there are three main ways of creating a `Valued` instance: 1. `Valued.mk'` (`ValuativeRel.ofValuation` already in mathlib, ValuativeRel.uniformSpace in #36532) 2. `Valued.valuedCompletion` 3. `NormedField.toValued` For the later two methods, we create corresponding APIs to equip `IsValuativeTopology` under the original input. Some uniform space structures induced by `ValuativeRel` in this PR cannot be made into instances immediately, since they would cause diamonds with `Valued`. However, they will become instances in the final PR removing `Valued`. ## More about the whole refactor plan: 1. Copy APIs that take `Valued` as input and make them accept input `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R] (v : Valuation R A) [v.Compatible]`. - [x] #36532 2. For every API that introduces a `Valued` instance, copy that API and make it create `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R]` instances. And for every instance that currently exists in Mathlib, create the above series of instances as much as possible without introducing diamonds. More specifically, currently in Mathlib, there are three main ways of creating a `Valued` instance: - `Valued.mk'` - `Valued.valuedCompletion` - `NormedField.toValued` For each of these we create APIs to create the above series of instances. - [ ] #36777 [Generalize the definition of `IsValuativeTopology` to non comm rings] - [ ] This PR. For each of these we create APIs to create the above series of instances. 3. A big PR deprecating the `Valued` class using 1 and 2. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #36532 - [ ] depends on : #36777 - [ ] depends on : #36911 t-topology WIP t-algebra t-ring-theory merge-conflict
label:t-algebra$
752/492 Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/Padics/Complex.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean,Mathlib/RingTheory/Valuation/DiscreteValuativeRel.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean,Mathlib/Topology/Algebra/ValuativeRel/Completion.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean 25 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
64-27677
2 months ago
73-76014
73 days ago
0-56
56 seconds
37184 dagurtomas
author:dagurtomas
feat(CategoryTheory): start using the map attribute --- - [ ] depends on: #37183 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR 259/41 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Localization/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataPrime.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean 13 2 ['github-actions', 'mathlib-dependent-issues'] nobody
63-72132
2 months ago
65-46245
65 days ago
0-1
1 second
37275 dagurtomas
author:dagurtomas
chore(CategoryTheory): use the map attribute more --- - [ ] depends on: #37184 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR 283/77 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/ShortComplex/Basic.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Functor/Trifunctor.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Localization/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/NatTrans.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataPrime.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean 24 2 ['github-actions', 'mathlib-dependent-issues'] nobody
63-69050
2 months ago
63-69550
63 days ago
0-1
1 second
37249 yuma-mizuno
author:yuma-mizuno
feat(Algebra): add multivariate Laurent polynomials --- ~~I used Codex to imitate the `MvPolynomial` API.~~ Now it has been rewritten by hand to focus on its `AddMonoidAlgebra` features. Proving `UniqueFactorizationMonoid` is my next plan. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
268/0 Mathlib.lean,Mathlib/Algebra/MvLaurentPolynomial/Basic.lean 2 5 ['YaelDillies', 'eric-wieser', 'github-actions', 'yuma-mizuno'] nobody
63-45268
2 months ago
64-18071
64 days ago
0-26623
7 hours
37436 RemyDegenne
author:RemyDegenne
feat: UniformIntegrable lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP brownian t-measure-probability 109/0 Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean 3 1 ['github-actions'] nobody
59-81654
1 month ago
unknown
0-0
0 seconds
37294 eric-wieser
author:eric-wieser
feat(MatrixExponential): remove some rat-algebra arguments [#Is there code for X? > Algebra structures being induced @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Algebra.20structures.20being.20induced/near/582277644) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #37292 t-analysis 89/8 Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
58-84266
1 month ago
unknown
0-0
0 seconds
36728 chenson2018
author:chenson2018
feat: linter for terminal squeezes See discussion at [#**mathlib4>linter requests@576559620** ](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/linter.20requests/near/576559620). This PR adds a linter that indicates when a flexible terminal tactic is squeezed and can be replaced by the unsqueezed equivalent. Like the other tactic analysis linters, this is off by default and intended for periodic reports. At the moment, this includes only `simp` and `simp_all`, just like the flexible linter, and does not take the further step of removing unused `simp` arguments. The style guide specifies that > a simp call is terminal if it closes the current goal or is only followed by flexible tactics and this linter complies with this by checking not only for "literal terminal" tactics that are syntactically the last to close a goal but also for "block terminal" tactics that are only followed by tactics permitted to follow a flexible tactic. (This terminology is not standard, but is a nice suggestion by @adomani) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-linter awaiting-author 109/1 Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 3 11 ['SnirBroshi', 'chenson2018', 'github-actions', 'grunweg'] thorimur
assignee:thorimur
58-83217
1 month ago
59-6568
59 days ago
12-13181
12 days
37101 fsefzig
author:fsefzig
feat: definition of kummer polynomials and prove that AdjoinRoot (KummerPolynomial n s) is etale This defines the Kummer polynomial ` KummerPolynomial n s := X^n - s` over a ring R and constructs the following instances for `AdjoinRoot (KummerPolynomial n s)`: · Faithfullyflat · SmoothOfRelativeDimension 0 · Etale t-ring-theory new-contributor awaiting-author 345/0 Mathlib.lean,Mathlib/RingTheory/AdjoinRootKummer.lean 2 24 ['acmepjz', 'chrisflav', 'fsefzig', 'github-actions', 'vihdzp'] nobody
58-62930
1 month ago
unknown
0-0
0 seconds
37585 cascone26
author:cascone26
feat: formal statements of Robin's and Lagarias' inequalities equivalent to RH ## Summary This PR adds `Mathlib/NumberTheory/LSeries/RobinInequality.lean`, which contains formal Lean 4 statements of two classical equivalences of the Riemann Hypothesis: **Robin's theorem (1984):** RH ↔ σ₁(n) < e^γ · n · ln(ln(n)) for all n > 5040 **Lagarias' theorem (2002):** RH ↔ σ₁(n) ≤ H_n + exp(H_n) · ln(H_n) for all n ≥ 1 ### New declarations - `robinBound (n : ℕ) : ℝ` — the Robin bound e^γ · n · ln(ln(n)) - `lagariasBound (n : ℕ) : ℝ` — the Lagarias bound H_n + exp(H_n) · ln(H_n) - `robin_iff_RH : RiemannHypothesis ↔ ∀ n > 5040, σ₁(n) < robinBound n` - `lagarias_iff_RH : RiemannHypothesis ↔ ∀ n ≥ 1, σ₁(n) ≤ lagariasBound n` ### Status The **statements** are complete and use existing Mathlib primitives: - `ArithmeticFunction.sigma` for σ₁ - `Real.eulerMascheroniConstant` for γ - `harmonic` for H_n (with ℚ → ℝ coercion) - `RiemannHypothesis` from `Mathlib.NumberTheory.LSeries.RiemannZeta` The **proofs** are currently `sorry`. The Robin direction (RH → inequality) requires analytic number theory following Robin's original 1984 paper. The converse uses Gronwall's theorem on superior highly composite numbers. Both are substantial Mathlib projects in their own right. This PR establishes the formal statements as a foundation for future proof work. These equivalences are not currently formalized anywhere in Mathlib. ### References - G. Robin, *Grandes valeurs de la fonction somme des diviseurs et hypothèse de Riemann*, J. Math. Pures Appl. **63** (1984), 187–213. - J. Lagarias, *An elementary problem equivalent to the Riemann hypothesis*, Amer. Math. Monthly **109** (2002), 534–543. ### Note on `sorry` I'm aware Mathlib does not merge `sorry`-laden PRs in general. I'm submitting this as a draft to: 1. Get feedback on whether the statement formulation is idiomatic 2. Establish that these statements don't already exist in Mathlib under a different name 3. Invite collaboration on completing the proofs t-number-theory new-contributor 98/0 Mathlib/NumberTheory/LSeries/RobinInequality.lean 1 2 ['github-actions'] nobody
57-21695
1 month ago
unknown
0-0
0 seconds
36937 Yaohua-Leo
author:Yaohua-Leo
feat(Algebra/Jordan): add first linearization lemmas for IsCommJordan [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) AI assistance disclosure: I used AI assistance for CI/debugging and module-structure fixes in this PR. The mathematical content and main lemmas were written by me, with help from @pelicanhere. This PR adds a new file `Mathlib/Algebra/Jordan/Linearization.lean` containing linearization lemmas for the commutative Jordan identity. Main declarations: * `IsCommJordan.four_nsmul_associator_mul_add` * `IsCommJordan.associator_mul_add` These lemmas formalize a first linearization of the commutative Jordan identity using `associator`, following McCrimmon, Proposition 1.8.5. --- I put these lemmas in a separate file because I expect follow-up linearization lemmas to belong naturally in the same place. I am also happy to rename declarations or move the file if reviewers would prefer. t-algebra new-contributor awaiting-author
label:t-algebra$
60/0 Mathlib.lean,Mathlib/Algebra/Jordan/Linearization.lean 2 6 ['Yaohua-Leo', 'github-actions', 'grunweg', 'ocfnash'] ocfnash
assignee:ocfnash
57-1042
1 month ago
57-1042
57 days ago
13-10710
13 days
36813 AlexeyMilovanov
author:AlexeyMilovanov
feat(Computability.Encoding): add self-delimiting unary and pair encodings Adds `unaryPrefix` (a self-delimiting $1^n 0$ code) and `prefixPair` to `Mathlib.Computability.Encoding`. **Key changes:** * **`unaryPrefix`**: A prefix-free unary encoding for $\mathbb{N}$, distinct from the existing `unaryEncodeNat`. * **`unaryPrefix_append_inj`**: A basic cancellation lemma that allows unique extraction of a unary prefix from a concatenated list. * **`prefixPair`**: A self-delimiting pairing function for boolean lists, defined as $\text{unaryPrefix } |x| \frown x \frown y$. * **`prefixPair_inj`**: A concise proof of pair injectivity leveraging the new prefix lemmas. t-computability new-contributor awaiting-author 56/1 Mathlib/Computability/Encoding.lean 1 2 ['Komyyy', 'github-actions'] Komyyy
assignee:Komyyy
56-28463
1 month ago
56-28463
56 days ago
16-42277
16 days
37644 matthunz
author:matthunz
feat(Order/Causal): add `Causal` ordering for stream functions Adds `Causal` ordering for stream functions and related theorems: ```lean def Causal (f : Stream' α → Stream' β) : Prop := ∀ (x y : Stream' α) (t : ℕ), (∀ s, s ≤ t → x s = y s) → f x t = f y t ``` A stream function is causal if the output at time `t` depends only on inputs up to time `t`. Causal stream functions are commonly used in signal processing, reactive systems, and semantics of stateful computations, where outputs cannot depend on future inputs. ## Future work - Mealy machines: define Mealy machines as causal stream functions with state, and relate them to standard automata-theoretic constructions. - Feedback and delay operators: formalize feedback loops and delayed composition, enabling modeling of stateful and recursive stream definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 79/0 Mathlib.lean,Mathlib/Order/Causal/Basic.lean,Mathlib/Order/Causal/Defs.lean 3 2 ['github-actions'] nobody
55-53926
1 month ago
unknown
0-0
0 seconds
36893 Komyyy
author:Komyyy
feat: make `Primrec` and `Computable` `fun_prop` preds --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability 248/92 Mathlib/Computability/Primrec/Basic.lean,comment_out.sh,uncomment.sh 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
55-6936
1 month ago
unknown
0-0
0 seconds
37663 khwilson
author:khwilson
feat(NumberTheory/ArithmeticStatistics/Reducible): Counting reducible polynomials A result of van der Waerden critical in arithmetic statistics which shows that the number of reducible monic polynomials of degree n is O(H^(n-1)). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 441/2 Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Data/Set/Card.lean,Mathlib/NumberTheory/ArithmeticStatistics/Reducible.lean,Mathlib/NumberTheory/MahlerMeasure.lean 4 1 ['github-actions'] nobody
54-80385
1 month ago
unknown
0-0
0 seconds
37160 vihdzp
author:vihdzp
feat: product of Coxeter matrices The Coxeter matrix `A * B` is the block matrix `!![A, 2; 2, B]`. --- I've used multiplication to denote this under the logic that the product of Coxeter groups has a Coxeter matrix given by this construction. Perhaps this isn't desirable, considering it doesn't match matrix multiplication. I'm open to suggestions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory WIP 13/3 Mathlib/GroupTheory/Coxeter/Matrix.lean 1 5 ['github-actions', 'mathlib-bors', 'tb65536', 'vihdzp'] tb65536
assignee:tb65536
53-71689
1 month ago
53-71696
53 days ago
12-13791
12 days
37730 RemyDegenne
author:RemyDegenne
feat: define total variation distance Define the total variation distance between two finite measures, using the variation of the difference seen as signed measures. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt WIP t-measure-probability 56/0 Mathlib.lean,Mathlib/InformationTheory/TotalVariation/Basic.lean 2 1 ['github-actions'] nobody
53-9796
1 month ago
53-10134
53 days ago
0-1
1 second
37695 Morten-Ness
author:Morten-Ness
refactor(GroupTheory/Complement): simplify complement proofs Simplifies the proofs of: - `Subgroup.IsComplement'.symm` - `Subgroup.isComplement_singleton_left` - `Subgroup.isComplement_singleton_right` No API changes. AI assistance: I used Codex/LLM suggestions as a starting point, then manually checked the proofs, and verified the final version locally. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor awaiting-author 15/17 Mathlib/GroupTheory/Complement.lean 1 4 ['github-actions', 'tb65536'] tb65536
assignee:tb65536
53-9216
1 month ago
53-9216
53 days ago
0-68801
19 hours
37489 michael-novak-math
author:michael-novak-math
feat: add the fundamental theorem of plane curves We add to the PlaneCurves file created in PR #36731 a classical result in the subject of differential geometry of plane curves: the fundamental theorem of plane curves. --------- - [ ] depends on: #36731 new-contributor t-differential-geometry t-analysis blocked-by-other-PR 651/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Geometry/PlaneCurves.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib 5 5 ['github-actions', 'mathlib-dependent-issues', 'michael-novak-math'] nobody
52-86196
1 month ago
58-71052
58 days ago
0-13581
3 hours
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
52-19143
1 month ago
53-66783
53 days ago
4-49805
4 days
37281 AltSoKoly
author:AltSoKoly
Update EdgeConnectivity.lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 123/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Data/Int/GCD.lean 2 5 ['github-actions', 'grunweg', 'themathqueen'] nobody
51-74807
1 month ago
63-65570
63 days ago
0-432
7 minutes
37111 tannerduve
author:tannerduve
feat(Computability): add Nat.PrimrecIn and PrimrecIn - Add `Nat.PrimrecIn`: primitive recursive functions relative to a set of oracles - Add `PrimrecIn`: lifts `Nat.PrimrecIn` to `Primcodable` types A `PrimrecIn` version of `RecursiveIn.iff_nat` (i.e., `PrimrecIn O (f : ℕ → ℕ) ↔ Nat.PrimrecIn O f`) is left as future work as it requires proving `Nat.PrimrecIn O Nat.pred`, which needs additional API for `Nat.PrimrecIn`. --- Split out from #34937 as requested in review. - [x] depends on: #37061 t-computability new-contributor awaiting-author 24/0 Mathlib/Computability/RecursiveIn.lean 1 14 ['Komyyy', 'bryangingechen', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tannerduve'] nobody
49-53320
1 month ago
50-66179
50 days ago
1-79421
1 day
36733 xroblot
author:xroblot
feat(RamificationInertia): decomposition field and inertia field of subfields If `D` (resp. `E`) is the decomposition (resp. inertia) field of `P` in `L/K` and `F` is a subextension, then the decomposition (resp. inertia) field of the prime of `F` below `P` in `F/K` is` D ⊓ F` (resp. `E ⊓ F`). --- - [ ] depends on: #36544 - [ ] depends on: #35991 - [x] depends on: #36391. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 818/31 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/NumberTheory/RamificationInertia/Inertia.lean,Mathlib/NumberTheory/RamificationInertia/Ramification.lean,Mathlib/RingTheory/Ideal/Galois.lean 13 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
49-47365
1 month ago
74-75780
74 days ago
0-48
48 seconds
36989 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(NumberTheory/Height/EllipticCurve): new file This PR defines the "addition-and-subtraction map" on x-coordinates of pairs of points on elliptic curves and proves an inequality for the logarithmic height of the image. In a later PR, we will show that the map thus defined indeed comes from addition and subtraction on an elliptic curve. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory awaiting-author 214/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/AddSubMap.lean,Mathlib/NumberTheory/Height/EllipticCurve.lean 3 20 ['MichaelStollBayreuth', 'Multramate', 'github-actions', 'riccardobrasca'] Multramate and riccardobrasca
assignee:Multramate assignee:riccardobrasca
48-69528
1 month ago
48-69528
48 days ago
18-11884
18 days
37954 jdhart81
author:jdhart81
feat(Data/ENNReal/Inv): add ENNReal.div_mul_div_cancel Proves a / b * (b / c) = a / c for b ≠ 0, b ≠ ∞ in ENNReal. Proof via mul_div_assoc and existing div_mul_cancel. AI Disclosure: This PR was developed with assistance from an LLM (Claude, Anthropic) for proof exploration and text drafting. The proof was compiled and verified locally by the contributor, who understands the mathematical content. This lemma is extracted from a larger formalization of information-theoretic bounds (Zenodo DOI: 10.5281/zenodo.19317983). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 5/0 Mathlib/Data/ENNReal/Inv.lean 1 2 ['github-actions'] nobody
47-76179
1 month ago
47-76177
47 days ago
0-75
1 minute
36744 farmanb
author:farmanb
feat(CategoryTheory/Abelian/TorsionTheory): Introduce torsion theory for abelian categories --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory WIP 329/0 Mathlib.lean,Mathlib/CategoryTheory/Abelian/TorsionTheory/Basic.lean 2 11 ['farmanb', 'github-actions', 'joelriou', 'plp127'] nobody
47-74988
1 month ago
unknown
0-0
0 seconds
37751 JovanGerb
author:JovanGerb
chore(Order/Filter/IsBounded): use `to_dual` use `to_dual` for `Filter.IsBounded` --- - [ ] depends on: #37747 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 120/378 Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Order/Filter/AtTopBot/Basic.lean,Mathlib/Order/Filter/IsBounded.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
46-47165
1 month ago
52-73230
52 days ago
0-1523
25 minutes
38039 themathqueen
author:themathqueen
chore(Topology): `UniformSpace.Completion` renames for morphisms - [ ] `UniformSpace.Completion.mapRingHom` -> `UniformSpace.RingHom.completion` - [ ] --- Just starting this now so that I don't forget again. Will hopefully get to it soon. See Zulip thread: [#mathlib4 > naming convention: `UniformSpace.Completion` morphisms](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/naming.20convention.3A.20.60UniformSpace.2ECompletion.60.20morphisms) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-topology 24/11 Mathlib/Topology/Algebra/UniformRing.lean 1 1 ['github-actions'] nobody
45-80606
1 month ago
unknown
0-0
0 seconds
38040 homeowmorphism
author:homeowmorphism
feat(FinitelyPresentedGroup): Add direct product instance Adds that the direct product of two finitely presented groups are finitely presented. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 7/0 Mathlib/GroupTheory/FinitelyPresentedGroup.lean 1 5 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-bors'] nobody
45-72473
1 month ago
45-76339
45 days ago
0-7
7 seconds
38017 kbuzzard
author:kbuzzard
perf(Algebra/Ring): faster Ring.toAddGroupWithOne instance An attempt to manually make `Ring.toAddGroupWithOne` a fast instance. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) [#mathlib4 > instance unfolding phenomenon @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/instance.20unfolding.20phenomenon/near/585295822) WIP t-algebra merge-conflict
label:t-algebra$
64/18 Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Int/Cast/Defs.lean 7 7 ['eric-wieser', 'github-actions', 'kbuzzard', 'leanprover-radar'] nobody
45-23550
1 month ago
46-52323
46 days ago
0-2
2 seconds
37050 artie2000
author:artie2000
DRAFT refactor: remove `ConvexCone` This draft PR deletes all downstream references to `ConvexCone` --- - [ ] depends on: #37053 - [x] depends on: #37054 - [x] depends on: #37058 - [ ] depends on: #37420 - [ ] depends on: #37298 - [ ] depends on: #36605 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR large-import merge-conflict 114/173 Mathlib/Algebra/Group/Subgroup/Order.lean,Mathlib/Algebra/Group/Submonoid/Support.lean,Mathlib/Analysis/Convex/Cone/Basic.lean,Mathlib/Analysis/Convex/Cone/Closure.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 7 14 ['YaelDillies', 'artie2000', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
44-74423
1 month ago
67-62588
67 days ago
0-1478
24 minutes
36770 Xmask19
author:Xmask19
feat: invariance of domain via Brouwer's fixed point theorem Continuous and injective maps from Rn to Rn are open mappings. This is shown given Brouwer's fixed point theorem. The specific version of Brouwer's theorem assumed is that a continuous map from the closed unit ball to itself has a fixed point. It is used to show a lemma in this proof. Then assuming that invariance of domain isn't true gives a contradiction with this lemma. --- My supervisor has code for studying topological manifolds which relies on invariance of domain that can be found here: https://github.com/stevensivek/TopologicalManifolds and is planned to be submitted to Mathlib. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 617/5 Mathlib.lean,Mathlib/AlgebraicTopology/InvarianceOfDomain.lean,Mathlib/Analysis/Convex/GaugeRescale.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Order.lean 5 2 ['github-actions'] nobody
44-60441
1 month ago
44-60417
44 days ago
0-6926
1 hour
37865 Jun2M
author:Jun2M
feat(Combinatorics/Graph): Edge cut of `Graph` This PR introduces - `edgeCut`: A function on set of vertices that returns the set of edges with exactly one end in the set. - `IsEdgeCut`: A predicate for set of edges that promises it is `edgeCut` of some set. - `IsBridge`: An edge `e` is a bridge iff it is a singleton edge cut. - `IsBond`: An edge Set `B` is bond iff it is minimal nonempty edge cut. --- - [x] depends on: #35879 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 194/0 Mathlib/Combinatorics/Graph/Connected/EdgeCut.Lean,Mathlib/Combinatorics/Graph/Subgraph.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
44-55568
1 month ago
44-73225
44 days ago
44-73625
44 days
38050 WilliamCoram
author:WilliamCoram
feat: Define Newton polygons In this file we construct a method to define newton polygons using a Stream' of `Step`'s which correspond to what you would obtain via the 'algorithm' of rotating half-planes as described in Gouvea's p-adic numbers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 620/0 Mathlib.lean,Mathlib/NumberTheory/NewtonPolygon.lean 2 3 ['github-actions', 'jcommelin'] nobody
44-50487
1 month ago
unknown
0-0
0 seconds
37474 Komyyy
author:Komyyy
perf: no expose `SplittingField` and `GaloisField` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra WIP merge-conflict
label:t-algebra$
361/95 Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/NumberTheory/Cyclotomic/Basic.lean,MathlibTest/instance_diamonds/FieldTheory/SplittingField/Construction.lean 4 7 ['Komyyy', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
44-27097
1 month ago
59-14627
59 days ago
0-240
4 minutes
37247 yuma-mizuno
author:yuma-mizuno
feat(GroupTheory/MonoidLocalization): add prime transport lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 75/7 Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 3 6 ['github-actions', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
44-6973
1 month ago
44-6973
44 days ago
20-41780
20 days
38113 robo7179
author:robo7179
feat(SimpleGraph/PerfectGraph): add lemma graph is perfect iff all su… Perfect graph theorem , discussion on zulip thread: [#graph theory > Second Order Monadic Logic](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775) - [ ] depends on: #37680 - [ ] depends on: #37598 t-combinatorics new-contributor blocked-by-other-PR 54/0 Mathlib/Combinatorics/SimpleGraph/PerfectGraph.lean 1 3 ['github-actions', 'mathlib-dependent-issues'] nobody
43-85206
1 month ago
44-165
44 days ago
0-69
1 minute
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
43-85137
1 month ago
43-85101
43 days ago
59-19226
59 days
37199 mckoen
author:mckoen
feat(CategoryTheory/Monoidal/Arrow): pushout-products of monomorphisms are monic Proves conditions under which the pushout-product of two monomorphisms is again a monomorphism. - [x] depends on: #33935 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 580/0 Mathlib/CategoryTheory/Adhesive/Basic.lean,Mathlib/CategoryTheory/Monoidal/Arrow.lean,Mathlib/CategoryTheory/Monoidal/Limits/Shapes/Pullback.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
43-60187
1 month ago
65-20790
65 days ago
0-13
13 seconds
37844 edegeltje
author:edegeltje
feat(CategoryTheory): The (strict bi-)category of partial maps in a category This PR adds a type alias for the (strict bi-)category of partial maps in some category. Given some category `C`, the category of partial maps in `C` has the objects of `C`. 1-morphisms from `X : C` to `Y : C` are partial maps, and 2-morphisms from `f : X ⇀ Y` to `g : X ⇀ Y` are given by extending the support. It adds API for creating 1-morphisms and 2-morphisms in this bicategory, as well as defines various relevant functors and presheaves --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author 843/3 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/PartialMap/Defs.lean,Mathlib/CategoryTheory/PartialMap/PrePartialMap.lean 4 5 ['dagurtomas', 'edegeltje', 'github-actions'] nobody
43-47891
1 month ago
50-48477
50 days ago
0-12805
3 hours
37938 SamuelSchlesinger
author:SamuelSchlesinger
feat(Probability/Posterior): Posterior PMFs and Various Lemmas Upstreaming the probability lemmas needed in https://github.com/leanprover/cslib/pull/464. t-measure-probability new-contributor awaiting-author 130/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Posterior.lean 2 6 ['EtienneC30', 'SamuelSchlesinger', 'github-actions'] RemyDegenne
assignee:RemyDegenne
43-46549
1 month ago
44-79990
44 days ago
0-4092
1 hour
38139 sidbedi
author:sidbedi
chore(Algebra/MvPolynomial/Variables): golf MvPolynomial.vars_0 to rfl --- The classical qualifier and explicit rewrite chain are unnecessary — the result holds definitionally. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra awaiting-author
label:t-algebra$
1/2 Mathlib/Algebra/MvPolynomial/Variables.lean 1 3 ['github-actions', 'grunweg'] nobody
43-4609
1 month ago
43-4609
43 days ago
0-34567
9 hours
38140 sidbedi
author:sidbedi
chore(Data/Analysis/Filter): golf CFilter.ofEquiv_val to rfl --- cases F is unnecessary, the result holds definitionally. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor awaiting-author 1/2 Mathlib/Data/Analysis/Filter.lean 1 3 ['github-actions', 'grunweg'] nobody
43-4565
1 month ago
43-4565
43 days ago
0-34488
9 hours
36731 michael-novak-math
author:michael-novak-math
feat: Frénet moving frame and Frénet equation for plane curves We define the curvature function, normal vector function and the Frénet moving frame for plane curve. We also prove the Frénet equations for plane curves. A separate PR (#37489) will prove the fundamental theorem of plane curves. new-contributor t-differential-geometry t-analysis awaiting-author 321/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Geometry/PlaneCurves.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib 5 114 ['Ruben-VandeVelde', 'github-actions', 'grunweg', 'michael-novak-math', 'scholzhannah'] nobody
42-84946
1 month ago
55-62569
55 days ago
12-40134
12 days
37929 Vierkantor
author:Vierkantor
chore(Tactic): rewrite `reduce_mod_char` tactic docstring This PR rewrites the docstrings for the `reduce_mod_char` tactic, to consistently match the official style guide, to make sure they are complete while not getting too long. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta awaiting-author 22/12 Mathlib/Tactic/ReduceModChar.lean 1 4 ['JovanGerb', 'github-actions'] JovanGerb
assignee:JovanGerb
42-83801
1 month ago
42-83801
42 days ago
3-77447
3 days
38158 ADedecker
author:ADedecker
Illustration of a weird behaviour --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 23/0 Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean 1 1 ['github-actions'] nobody
42-79521
1 month ago
unknown
0-0
0 seconds
38130 edegeltje
author:edegeltje
feat(CategoryTheory): Add the category of partial map diagrams This PR was split from #37844 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author 324/0 Mathlib.lean,Mathlib/CategoryTheory/PartialMap/PrePartialMap.lean 2 13 ['chrisflav', 'dagurtomas', 'edegeltje', 'github-actions', 'joelriou', 'robin-carlier'] nobody
42-72465
1 month ago
42-72465
42 days ago
0-68688
19 hours
37480 erdOne
author:erdOne
feat(AlgebraicTopology): homology of contractible spaces --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology awaiting-author merge-conflict 62/4 Mathlib/AlgebraicTopology/SingularHomology/HomotopyInvarianceTopCat.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean 2 25 ['FernandoChu', 'dagurtomas', 'erdOne', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'vlad902'] dagurtomas
assignee:dagurtomas
42-69849
1 month ago
50-64206
50 days ago
7-33084
7 days
37683 SabrinaJewson
author:SabrinaJewson
feat(Order/OrdContinuous): every map between complete lattices that preserves sSup is a left adjoint of some Galois connection It is already proven that the left side of a Galois connection is left-continuous; this provides the converse. --- - [ ] depends on: #37682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR merge-conflict t-order 90/136 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Tactic/Translate/ToDual.lean,Mathlib/Topology/Order/Basic.lean 6 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65573
1 month ago
54-34465
54 days ago
0-1447
24 minutes
37684 SabrinaJewson
author:SabrinaJewson
feat(Topology/Order): provide lemmas linking topological continuity to order continuity All the hard work is already done, but this just fills in a couple convenient missing pieces. --- - [ ] depends on: #37682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR merge-conflict t-topology 106/136 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Tactic/Translate/ToDual.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/IsLUB.lean,Mathlib/Topology/Order/Monotone.lean 8 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65562
1 month ago
54-34466
54 days ago
0-1299
21 minutes
36843 xroblot
author:xroblot
feat(NumberTheory/RamificationInertia/HilbertTheory): compositum of unramified extensions is unramified Add two theorems about the behaviour of ramification in composite extensions: - `Ideal.ramificationIdx_sup_eq_one`: if a prime `p` is unramified in both `F₁/K` and `F₂/K`, then it is unramified in `(F₁ ⊔ F₂)/K`. - `Ideal.ramificationIdx_inertiaDeg_sup_eq_one`: if `p` totally splits in both `F₁/K` and `F₂/K`, then it totally splits in `(F₁ ⊔ F₂)/K`. These are obtained by reducing to the Galois case (proved in the same file). --- - [ ] depends on: #36772 - [ ] depends on: #35991 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR merge-conflict t-number-theory t-algebra
label:t-algebra$
1327/32 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/IntermediateField/ExtendTop.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Ideal/Galois.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean 17 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65540
1 month ago
72-9799
72 days ago
0-1289
21 minutes
37376 NoneMore
author:NoneMore
feat(Topology/CantorBendixson): add iterated derived sets and perfect kernel Define the transfinite iteration of the relative derived-set operator via `gfpApprox` and introduce the perfect kernel of a set. --- AI disclosure: Most declarations, comments, and documentation in this PR were generated with Codex. Some proofs were structurally simplified using the `/golf` command from Lean 4 Skills. I reviewed the resulting code and documentation and can vouch for all submitted content. - [ ] depends on: #37374 - [x] depends on: #37375 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR t-topology 249/0 Mathlib.lean,Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean,Mathlib/Topology/CantorBendixson.lean,Mathlib/Topology/DerivedSet.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65531
1 month ago
60-73263
60 days ago
0-832
13 minutes
37365 lecopivo
author:lecopivo
feat(Tactic/FunProp): theorem priority Add support for theorem priority for `fun_prop` --- Computing derivatives revealed that `fun_prop` really needs priority support for it theorems as `HasDerivAt.fun_pow'` should definitely have lower priority over `HasDerivAt.fun_pow`. - [ ] depends on: #37270 --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR merge-conflict t-meta 1740/258 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Pi.lean,Mathlib/Analysis/Calculus/Deriv/Pow.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/Calculus/FDeriv/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Pow.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/SpecialFunctions/Arcosh.lean,Mathlib/Analysis/SpecialFunctions/Arsinh.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogDeriv.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/ArctanDeriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/ComplexDeriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/DerivHyp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/Simproc.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/Measurability.lean,MathlibTest/fun_prop2.lean,MathlibTest/fun_prop_dev.lean,MathlibTest/fun_prop_dev_out_param.lean 46 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
42-65522
1 month ago
61-1270
61 days ago
0-629
10 minutes
37904 maddycrim
author:maddycrim
feat(LinearAlgebra/PiTensorProduct/PiEquiv): Tensor Product and Direct Product Commute for Finitely Presented Modules From FLT Project. Main definitions: * `tensorPi_equiv_piTensor'` : `M ⊗[R] (Π i, N i) ≃ₗ[R] Π i, (M ⊗[R] N i)` for finite free modules * `tensorPi_equiv_piTensor` : the same but for finitely-presented modules. Depends on #38170 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
244/0 Mathlib.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/LinearAlgebra/PiTensorProduct/PiEquiv.lean 4 5 ['github-actions', 'maddycrim', 'themathqueen'] nobody
42-63312
1 month ago
42-67364
42 days ago
0-3725
1 hour
38185 Jun2M
author:Jun2M
feat(Order/Partition): operations over Frame This PR introduces: * `Partition.induce`: The induce of a partition by a frame element. * `Partition.disjUnion`: The disjoint union of two partitions. * `Partition.bind`: The finer partition obtained by family of partitions for each part of the original partition. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 89/11 Mathlib/Order/Partition/Basic.lean,Mathlib/Order/SupIndep.lean 2 1 ['github-actions'] nobody
42-51903
1 month ago
42-51975
42 days ago
42-51937
42 days
38154 ybenmeur
author:ybenmeur
add subsingleton case to ExpChar --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
113/49 Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Algebra/CharP/Subring.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/FieldTheory/PurelyInseparable/Exponent.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/SeparableDegree.lean,Mathlib/RingTheory/Trace/Basic.lean 15 2 ['github-actions'] nobody
41-73331
1 month ago
unknown
0-0
0 seconds
37530 mcdoll
author:mcdoll
fix(Topology/Algebra): fix bad simps and make arguments implicit for `PointwiseConvergenceCLM` We delete all `simps` calls in the definitions of operators on `PointwiseConvergenceCLM` and replace them with `apply_apply` lemmas that do not abuse the defeq between `SLₚₜ` and `SL`. This made the linter discover some typeclass duplications, which we remove by restructuring the file. As a consequence of the new `simp` lemmas, we can remove all `set_option backward.isDefEq.respectTransparency false in` in `Analysis.Distribution.TemperedDistribution`. Moreover, we make several arguments implicit, which can be inferred in almost all practical situations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) not-ready-to-merge merge-conflict 88/69 Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Topology/Algebra/Module/Spaces/PointwiseConvergenceCLM.lean 2 5 ['github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mcdoll'] nobody
41-16959
1 month ago
41-16960
41 days ago
14-59669
14 days
37593 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename set-based defs to `set*Antidiagonal` Renames set-based `Finset.mulAntidiagonal` → `setMulAntidiagonal` (and SMul/VAdd variants) to free the `mulAntidiagonal` name for the planned `HasMulAntidiagonal` typeclass. Deprecation aliases added. Supersedes #34551 t-ring-theory new-contributor merge-conflict 178/96 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
41-16958
1 month ago
41-16959
41 days ago
15-61521
15 days
37889 LLaurance
author:LLaurance
chore(Algebra): shorten proof by using tactic mode instead of calc mode --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated
label:t-algebra$
4/13 Mathlib/Algebra/Star/Center.lean 1 16 ['JovanGerb', 'LLaurance', 'faenuccio', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-bors', 'themathqueen'] nobody
40-64876
1 month ago
48-69458
48 days ago
1-5229
1 day
38270 Deicyde
author:Deicyde
feat(Geometry/Manifold): The Tangent Functor on `MfldCat` A simple motivating example for PR #38223. We define the `tangentFunctor : MfldCat 𝕜 (n + 1) ⥤ MfldCat 𝕜 n` which takes any manifold to its tangent bundle and any smooth map to its pushforward. This is a standard construction in differential geometry. See: J. Lee, Smooth Manifolds, pg. 75 --- - [ ] depends on: #38223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR new-contributor 320/0 Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/Category/MfldCat/TangentFunctor.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
40-30014
1 month ago
unknown
0-0
0 seconds
38053 ntapiam
author:ntapiam
feat(Analysis/Controls): add Control functions Add Control functions ---- This PR adds Control functions in the sense of rough paths theory (see e.g. [Friz-Victoir, Section 1.2.1](https://page.math.tu-berlin.de/~friz/master4_May6th.pdf)). They are related to p-variation norms which are the goal of #38055. I've shown most results in the above reference though those relating to 1-variation are still a work in progress. I had to add a few statements about convex functions in order to work over NNReal instead or Real, but I am not sure this is the best way to do it. The reason is that I've defined controls as taking values in NNReal (as they should). In particular there is ```lean4 theorem nnreal_of_real {f : ℝ≥0 → ℝ≥0} (hf : ConvexOn ℝ (Set.Ici 0) fun x : ℝ => (f x.toNNReal : ℝ)) : ConvexOn ℝ≥0 ⊤ f ``` which I didn't know where to put. It probably holds in more generality but I didn't check. I have also included two versions of Controls, one global and one restricted to a set. I tried to follow Mathlib conventions as best as I could but perhaps that could be improved as well. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis new-contributor 571/1 Mathlib.lean,Mathlib/Analysis/Controls/BoundedVariation.lean,Mathlib/Analysis/Controls/ControlOn.lean,Mathlib/Analysis/Controls/Defs.lean,Mathlib/Analysis/Convex/Function.lean,docs/references.bib 6 4 ['github-actions', 'ntapiam'] nobody
39-85462
1 month ago
45-50645
45 days ago
0-52
52 seconds
33108 alreadydone
author:alreadydone
feat(Topology): `π₁(E⧸G)⧸π₁(E) ≃* G` for `E` path connected TODO: + finish last step (currently only `π₁(E⧸G) →* G` has been constructed) + characterization of the homomorphism + change of basepoint `e : E` leads to conjugation by `G` + if `G` is abelian then independent of choice of basepoint (and we can remove the ᵐᵒᵖ) + $\pi_1(S^1)\cong\mathbb{Z}$ + define winding number --- - [x] depends on: #7596 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP t-topology merge-conflict 232/36 Mathlib/Algebra/Regular/SMul.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/Topology/Covering/Quotient.lean,Mathlib/Topology/Homotopy/Lifting.lean,Mathlib/Topology/Homotopy/Path.lean 6 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
39-51594
1 month ago
161-51221
161 days ago
0-1
1 second
37432 mariainesdff
author:mariainesdff
feat(Algebra/BigOperators/NatAntidiagonal): add ofAdd_antidiagonal Co-authored by: @xgenereux. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
27/0 Mathlib/Algebra/BigOperators/NatAntidiagonal.lean 1 2 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
39-10427
1 month ago
50-58185
50 days ago
9-25258
9 days
37444 vihdzp
author:vihdzp
feat: typeclass for zero-dimensional spaces --- - [ ] depends on: #37317 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import merge-conflict 151/110 Mathlib/Topology/Algebra/ClopenNhdofOne.lean,Mathlib/Topology/Category/LightProfinite/Basic.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/Category/Profinite/CofilteredLimit.lean,Mathlib/Topology/Category/Stonean/Basic.lean,Mathlib/Topology/ClopenBox.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/WithTop.lean,Mathlib/Topology/Separation/CompletelyRegular.lean,Mathlib/Topology/Separation/DisjointCover.lean,Mathlib/Topology/Separation/Lemmas.lean,Mathlib/Topology/Separation/Profinite.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean 13 17 ['ADedecker', 'FernandoChu', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
38-82642
1 month ago
38-83714
38 days ago
0-5306
1 hour
37479 ADedecker
author:ADedecker
feat(Distribution): make parameters implicit in favor of type ascription Expanding on a suggestion by @faenuccio in an earlier PR, I make the regularity parameters of [TestFunction.fderivCLM](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Distribution/TestFunction.html#TestFunction.fderivCLM) (and similar constructions) implicit. This is a bit controversial, because it is essentially forcing type ascription in a lot of contexts. The rationale is that "the differentiation operator from `𝓓^{n}` to `𝓓^{k}`" matches mathematical practice, and is easier to parse than "the differentiation operator with parameters `n` and `k`". To make this even more convenient, I introduce notations like `𝓓^{n}` to be used when the spaces can be inferred but the regularity cannot. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 107/46 Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean 2 4 ['faenuccio', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] sgouezel
assignee:sgouezel
38-74839
1 month ago
52-47076
52 days ago
6-48011
6 days
38339 xroblot
author:xroblot
feat(NumberTheory/DirichletCharacter): add conductor_changeLevel and subgroups of characters mapping to one This PR main additions are: - `conductor_changeLevel`: the conductor is invariant under `changeLevel` (lifting to a multiple level does not change the conductor). - `primitiveCharacter_changeLevel_apply`: the primitive character of `changeLevel hm χ` equals that of `χ`. - `subgroupOfMapToOne`: the subgroup of characters of level `n` sending a fixed integer `a` (coprime to `n`) to `1`. - `subgroupOfPrimitiveMapToOne`: the subgroup of characters of level `n` whose primitive character sends a prime `p` to `1`. --- - [ ] depends on: #38340 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory blocked-by-other-PR 118/7 Mathlib/Data/ZMod/Coprime.lean,Mathlib/Data/ZMod/Units.lean,Mathlib/NumberTheory/DirichletCharacter/Basic.lean,Mathlib/NumberTheory/MulChar/Basic.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
38-55255
1 month ago
38-55256
38 days ago
0-5165
1 hour
38239 vihdzp
author:vihdzp
chore(Order/SuccPred/Limit): reorganize sections In an effort to keep the file better organized, we move theorems which use `SuccOrder`/`PredOrder` as an assumption to a new section. No theorems have been changed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 95/110 Mathlib/Order/SuccPred/Limit.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
38-46536
1 month ago
38-46537
38 days ago
2-48556
2 days
38321 ldct
author:ldct
Tag absolute value lemmas with @[push] ## Summary - Tag `abs_mul`, `abs_pow`, `abs_mul_self`, `abs_inv`, `abs_div`, `abs_zpow`, and `abs_neg` with `@[push]` so that `push abs` can distribute absolute value through arithmetic expressions. - Add tests in `MathlibTest/push.lean` including a compound example: `|a ^ n * b⁻¹ / (-a)| = |a| ^ n * |b|⁻¹ / |a|` ## Test plan - [x] `lake env lean MathlibTest/push.lean` passes - [ ] CI 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-algebra merge-conflict
label:t-algebra$
44/7 Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Order/Ring/Abs.lean,MathlibTest/push.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
38-46534
1 month ago
unknown
0-0
0 seconds
38356 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Finset): `sSup s ≠ ⊤` in a `CompleteLinearOrder` for a finite set without `⊤` --- btw `to_dual` here is blocked on #35213 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 20/0 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean 1 1 ['github-actions'] nobody
38-34761
1 month ago
38-34836
38 days ago
38-34798
38 days
38195 thorimur
author:thorimur
test: insert `@[informal]` attributes from overview --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed large-import merge-conflict 1961/353 Mathlib.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Homology/HomologicalComplex.lean,Mathlib/Algebra/Homology/ShortComplex/HomologicalComplex.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Ring/Subring/Defs.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/ContDiff/Convolution.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/FDeriv.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/LocalExtr/Rolle.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/Complex/PhragmenLindelof.lean,Mathlib/Analysis/Complex/Polynomial/Basic.lean,Mathlib/Analysis/Complex/RemovableSingularity.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Convex/Caratheodory.lean,Mathlib/Analysis/Convex/Deriv.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Integral.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/Analysis/Fourier/Inversion.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Defs.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/LaxMilgram.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/Reflection.lean,Mathlib/Analysis/InnerProductSpace/Rayleigh.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Normed/MulAction.lean,Mathlib/Analysis/Normed/Operator/Banach.lean,Mathlib/Analysis/Normed/Operator/BanachSteinhaus.lean,Mathlib/Analysis/Normed/Operator/ContinuousLinearMap.lean,Mathlib/Analysis/Real/Hyperreal.lean,Mathlib/Analysis/SpecialFunctions/Arsinh.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean 434 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
37-79798
1 month ago
unknown
0-0
0 seconds
37279 imalinowskip
author:imalinowskip
feat(Probability): multivariate CLT (and Cramèr-Wold) --- - [x] depends on: #36208 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability awaiting-author large-import 500/1 Mathlib.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/CramerWold.lean 3 10 ['EtienneC30', 'github-actions', 'imalinowskip', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] RemyDegenne
assignee:RemyDegenne
37-55006
1 month ago
50-80092
50 days ago
5-65208
5 days
38325 Jun2M
author:Jun2M
feat(Combinatorics/Graph): EndPoint function This PR introduces `endPoints`: `Set` of incident vertices, given an edge (in the case of non-edge, return empty). **Import change**: `Graph/Basic` now imports `Data/Set/Card` to allow reasoning about card of `endPoints`. [Relavent Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/New.20graph.20definitions/with/588616269) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import 83/3 Mathlib/Combinatorics/Graph/Basic.lean 1 9 ['Jun2M', 'SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-bors'] nobody
37-41759
1 month ago
37-50589
37 days ago
39-20494
39 days
38266 staroperator
author:staroperator
feat(Order/CompleteLatticeIntervals): `ConditionallyCompleteLinearOrderBot` for `Set.Iio` `Set.Iio a` (when it's nonempty) inherits the `ConditionallyCompleteLinearOrderBot` structure from the base type. This is commonly used in set theory, where we consider the ordinals within `a`, and convert `Iio a` from/to `Ordinal`. There should also be a `ConditionallyCompleteLinearOrder` instance, but adding this seems difficult for now because the junk value may not be the same as bottom (which has been mentioned as "refactor that will allow different default values for `sSup` and `sInf`" in the module doc). Since my motivation is for the ordinals purely, this PR only adds a single `ConditionallyCompleteLinearOrderBot` instance. --- I'm not very familiar with the API design here, so any suggestion would be helpful. - [ ] depends on: #35674 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR 76/0 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/LatticeIntervals.lean 3 7 ['github-actions', 'mathlib-dependent-issues', 'staroperator', 'vihdzp'] nobody
37-34424
1 month ago
37-34425
37 days ago
3-4203
3 days
38399 openendings
author:openendings
feat: OrderHom.instOrderSupSet for LawfulSup Currently we have `instance [CompleteLattice β] : SupSet (α →o β)`. We replace this with a mere `LawfulSup` assumption such as #38328, . TODO: - [ ] construct an `OrderSupSet` instance instead of `SupSet` --- WIP - [ ] depends on: #38328 [or other `LawfulSup`] (based on master in case something else needs this) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-order new-contributor blocked-by-other-PR 26/0 Mathlib/Order/Hom/Order.lean 1 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'openendings'] nobody
37-18914
1 month ago
37-21758
37 days ago
0-106
1 minute
37502 felixpernegger
author:felixpernegger
refactor(Topology): rename ```LocPathConnected``` Rename ```LocPathConnected``` to ```LocallyPathConnected``` per discussion at https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Rename.20.60.60.60LocPathConnectedSpace.60.60.60.3F/with/582824006 Deprecations were partly added with Claude --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology merge-conflict awaiting-author 369/304 Mathlib.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Topology.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/Compactness/DeltaGeneratedSpace.lean,Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/LocallyPathConnected.lean,Mathlib/Topology/Connected/PathComponentOne.lean,Mathlib/Topology/Homotopy/Lifting.lean,Mathlib/Topology/Homotopy/LocallyContractible.lean 12 9 ['SnirBroshi', 'felixpernegger', 'github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
37-1050
1 month ago
58-3233
58 days ago
0-66443
18 hours
38388 supermanG
author:supermanG
feat(Combinatorics/SimpleGraph): add ballFinset with basic identities Introduces `SimpleGraph.ballFinset`, the `Finset` companion to `SimpleGraph.ball` (#36443) on graphs with a `Fintype` vertex set, together with the basic identities `mem_ballFinset`, `ballFinset_zero`, and `ballFinset_one`. `SimpleGraph.ball` is the *open* metric ball `{u | edist u c < r}` and is indexed by `ℕ∞`; `ballFinset` is typed `ℕ → Finset V` for ergonomics at cardinality-facing call sites. The classical closed-ball cardinality at radius `r`, `|{u | edist u c ≤ r}|`, corresponds to `|ballFinset v (r + 1)|` in this setup. Opened as draft so CI can run before pinging maintainers. --- First-time Mathlib contribution — happy to adjust naming, file placement, or docstring style to match house conventions. Follow-up PRs will add cardinality envelopes (sphere cardinality, geometric-series bound, polynomial bound). t-combinatorics new-contributor LLM-generated 68/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/BallCardinality.lean 2 3 ['SnirBroshi', 'github-actions'] nobody
36-71364
1 month ago
unknown
0-0
0 seconds
37045 edegeltje
author:edegeltje
feat(CategoryTheory/Limits): Pullback squares in cartesian monoidal categories This PR adds various lemmas about standard pullback squares in categories with chosen finite products. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author 351/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/CartesianMonoidal.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean 3 44 ['FernandoChu', 'dagurtomas', 'edegeltje', 'github-actions', 'joelriou', 'robin-carlier'] joelriou
assignee:joelriou
36-71361
1 month ago
36-71361
36 days ago
21-65314
21 days
26345 mans0954
author:mans0954
feat(Analysis/LocallyConvex/Polar): Bipolar theorem The bipolar theorem states that the polar of the polar of a set `s` is equal to the closed absolutely convex hull of `s`. The argument here follows Conway, Chapter V. 1.8. This PR continues the work from #20843. Original PR: https://github.com/leanprover-community/mathlib4/pull/20843 - [x] depends on: #27316 t-analysis awaiting-author 171/6 Mathlib.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Bipolar.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakBilin.lean 6 136 ['JonBannon', 'eric-wieser', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'leanprover-community-bot-assistant', 'mans0954', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mcdoll', 'themathqueen', 'vihdzp'] faenuccio and j-loreaux
assignee:j-loreaux assignee:faenuccio
36-68462
1 month ago
40-81102
40 days ago
21-22015
21 days
38425 eric-wieser
author:eric-wieser
fix: respect set_option in the unused tactic linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter 35/31 Mathlib/Tactic/Linter/UnusedTactic.lean 1 1 ['github-actions'] nobody
36-63688
1 month ago
unknown
0-0
0 seconds
37461 grunweg
author:grunweg
chore: golf using the field tactic --- In the spirit of #31314. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 32/43 Counterexamples/NowhereDifferentiable.lean,Mathlib/Analysis/Calculus/Monotone.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Integral/MeanValue.lean,Mathlib/NumberTheory/ModularForms/Discriminant.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Defs.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/MDifferentiable.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/PowerSeries/Exp.lean,Mathlib/Topology/UnitInterval.lean 20 5 ['github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
36-46240
1 month ago
36-46241
36 days ago
22-59925
22 days
38000 grunweg
author:grunweg
feat: linters for recommended field_simp style, rebased --- The current state fixes all sensible linter errors. TODOs prior to merging: - noisiness: right now, each `field` produces a try this suggestion (which doesn't work). warnings are useful; informational messages are superfluous - false positives 1: when `field` is applied to several goals (e.g., inside `<;>` and e.g. `ring` works for *some*, but not *all* occurrences), right now the linter still fires. It should not. - false positives 2: with `field` as a tactic discharger --- might be obsolete after the previous point. - [ ] depends on: #37461 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter blocked-by-other-PR awaiting-CI merge-conflict 156/65 Counterexamples/NowhereDifferentiable.lean,Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Convex/Join.lean,Mathlib/Analysis/Convex/Side.lean,Mathlib/Analysis/Distribution/Sobolev.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Hofer.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Rayleigh.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/Analysis/SpecialFunctions/OrdinaryHypergeometric.lean,Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/RootsExtrema.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/Lean/Meta/WarningAsError.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,Mathlib/MeasureTheory/Integral/MeanValue.lean,Mathlib/MeasureTheory/Measure/IntegralCharFun.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/LSeries/AbstractFuncEq.lean,Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/NumberTheory/ModularForms/Discriminant.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Defs.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/MDifferentiable.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/PowerSeries/Exp.lean,Mathlib/Tactic/Field.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean 47 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
36-45268
1 month ago
46-78604
46 days ago
0-24
24 seconds
38434 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Maps): `map` lemmas about support/top/bot --- - [ ] depends on: #38432 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 38/0 Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Logic/Relation.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
36-37904
1 month ago
36-39698
36 days ago
0-845
14 minutes
35417 joneugster
author:joneugster
refactor(Cache): use module name for file hash instead of non-resolved file path This PR continues the work from #21842. Original PR: https://github.com/leanprover-community/mathlib4/pull/21842 - [ ] depends on: #35415 - [ ] depends on: #35414 --- CI t-meta blocked-by-other-PR merge-conflict 147/250 Cache/Hashing.lean,Cache/IO.lean,Cache/Main.lean 3 5 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
36-5602
1 month ago
102-66339
102 days ago
0-568
9 minutes
36803 EtienneC30
author:EtienneC30
feat: pre-Brownian motion and independent increments Prove that a pre-Brownian motion has independent increments, and that a process with independent increments and the right marginals is pre-Brownian. Use this to show that a (pre-)Brownian motion is stable by `neg`. --- - [x] depends on: #36745 - [ ] depends on: #36616 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability blocked-by-other-PR large-import 578/2 Mathlib.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/Probability/BrownianMotion/Basic.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/HasLaw.lean,Mathlib/Probability/Moments/Basic.lean,Mathlib/Probability/Moments/Covariance.lean 9 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
35-78895
1 month ago
53-3059
53 days ago
0-3049
50 minutes
37901 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): Define algebraic cycles In this PR we define the notion of algebraic cycles on a scheme, and define the pushforward of an algebraic cycle by a quasicompact morhphism. This was originally defined in #26304, but after some refactoring it was decided that it would be best to split this definition into a separate PR. - [ ] depends on: #26304 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebraic-geometry 250/0 Mathlib.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle.lean,Mathlib/Topology/LocallyFinsupp/Pushforward.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
35-74871
1 month ago
49-65508
49 days ago
0-365
6 minutes
37031 xroblot
author:xroblot
feat(NumberField/CyclotomicField): inertia field of a cyclotomic field Let `K = ℚ(ζₙ)` with `n = p ^ k * m` where `p` is prime and `¬ p ∣ m`. Then the subfield `F = ℚ(ζₘ)` is the inertia field of any prime `P` of `𝓞 K` lying over `p`. --- - [ ] depends on: #36733 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict t-number-theory 581/21 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Galois.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/NumberTheory/RamificationInertia/Inertia.lean,Mathlib/NumberTheory/RamificationInertia/Ramification.lean 9 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
35-74861
1 month ago
68-2509
68 days ago
0-323
5 minutes
36853 matthunz
author:matthunz
feat(CategoryTheory/Monoidal/Braded/Traced): add `TracedCategory` class Adds a `TracedCategory` class following [A. Joyal and R. Street and D. R. Verity, *Traced monoidal categories*](https://www.cambridge.org/core/journals/mathematical-proceedings-of-the-cambridge-philosophical-society/article/abs/traced-monoidal-categories/2BE85628D269D9FABAB41B6364E117C8#article): ```lean /-- A traced symmetric monoidal category. -/ class TracedCategory (C : Type u) [Category.{v} C] [MonoidalCategory.{v} C] [SymmetricCategory.{v} C] where /-- The trace operator. -/ trace : ∀ {A B : C} (W : C), (A ⊗ W ⟶ B ⊗ W) → (A ⟶ B) /-- Left tightening: sliding a morphism past the trace on the left. -/ trace_naturality_left : ∀ {A A' B : C} (W : C) (f : A' ⟶ A) (g : A ⊗ W ⟶ B ⊗ W), trace W (f ▷ W ≫ g) = f ≫ trace W g := by cat_disch /-- Right tightening: sliding a morphism past the trace on the right. -/ trace_naturality_right : ∀ {A B B' : C} (W : C) (f : A ⊗ W ⟶ B ⊗ W) (g : B ⟶ B'), trace W (f ≫ g ▷ W) = trace W f ≫ g := by cat_disch /-- Sliding: an endomorphism on the feedback wire slides past the trace. -/ trace_dinaturality : ∀ {A B W : C} (f : A ⊗ W ⟶ B ⊗ W) (h : W ⟶ W), trace W (f ≫ B ◁ h) = trace W (A ◁ h ≫ f) := by cat_disch /-- Superposing: trace commutes with left tensoring by a bystander object. -/ trace_superposing : ∀ {A B : C} (C' W : C) (f : A ⊗ W ⟶ B ⊗ W), C' ◁ trace W f = trace W ((α_ C' A W).hom ≫ C' ◁ f ≫ (α_ C' B W).inv) := by cat_disch /-- Vanishing I: trace over the tensor unit is the morphism itself (up to unitors). -/ trace_vanishing_one : ∀ {A B : C} (f : A ⊗ 𝟙_ C ⟶ B ⊗ 𝟙_ C), trace (𝟙_ C) f = (ρ_ A).inv ≫ f ≫ (ρ_ B).hom := by cat_disch /-- Vanishing II: trace over a tensor product equals iterated trace. -/ trace_vanishing_two : ∀ {A B X Y : C} (f : A ⊗ (X ⊗ Y) ⟶ B ⊗ (X ⊗ Y)), trace (X ⊗ Y) f = trace X (trace Y ((α_ A X Y).hom ≫ f ≫ (α_ B X Y).inv)) := by cat_disch /-- Yanking: the trace of the braiding is the identity. -/ trace_yanking : ∀ (W : C), trace W (β_ W W).hom = 𝟙 W := by cat_disch ``` ## Motivation `TracedCategory` can be used for denoting things like electric circuits, which require a traced symmetric monoidal category for the wire graph network. ## Future work - `instance [CompactClosedCategory C] : TracedCategory C` - possible notation such as `Tr_[W] f` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author merge-conflict 237/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Braided/Traced.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Traced.lean,docs/references.bib 4 5 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'matthunz'] nobody
35-65463
1 month ago
71-55026
71 days ago
0-25956
7 hours
38478 dagurtomas
author:dagurtomas
feat(Tactic/CategoryTheory): op attribute Adding `@[op]` to a lemma named `H` of shape `∀ .., f = g`, where `f` and `g` are morphisms in some category `C`, creates a new lemma named `H_op` by applying `Quiver.Hom.op` to both sides and then simplifying with `simp only [op_comp, op_id]`. This PR also adds `op_of%`, and adjusts `@[map]` so that `@[op (attr := map)]` works for equalities of morphisms in opposite categories. --- - [ ] depends on: #37183 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated blocked-by-other-PR t-category-theory t-meta 491/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,Mathlib/Tactic/CategoryTheory/Op.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean,MathlibTest/CategoryTheory/Op.lean 7 2 ['github-actions', 'mathlib-dependent-issues'] nobody
35-57174
1 month ago
35-68024
35 days ago
0-344
5 minutes
37276 dagurtomas
author:dagurtomas
chore(CategoryTheory): use the extended map attribute --- - [ ] depends on: #37197 - [ ] depends on: #37275 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR merge-conflict 970/206 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/ShortComplex/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/AlgebraicGeometry/Stalk.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Category/Preorder.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Functor/Trifunctor.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/HasPullback.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/PullbackCone.lean,Mathlib/CategoryTheory/Localization/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/NatIso.lean,Mathlib/CategoryTheory/NatTrans.lean,Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataPrime.lean,Mathlib/CategoryTheory/Sites/EqualizerSheafCondition.lean,Mathlib/CategoryTheory/Sites/Equivalence.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,Mathlib/Tactic/CategoryTheory/MapOpposite.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapPreorder.lean,MathlibTest/CategoryTheory/MapSimp.lean,MathlibTest/CategoryTheory/MapSimpCheck.lean 46 2 ['github-actions', 'mathlib-dependent-issues'] nobody
35-54666
1 month ago
63-69385
63 days ago
0-1
1 second
36824 j-loreaux
author:j-loreaux
feat: generalize argument of `IsOrderedMonoid` from `CommMonoid` to `CommSemigroup` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
76/50 Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Group/Opposite.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/Submonoid.lean,Mathlib/Algebra/Order/Monoid/TypeTags.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/Order/Filter/Germ/OrderedMonoid.lean,Mathlib/Topology/ContinuousMap/Lattice.lean 14 4 ['github-actions', 'j-loreaux', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
35-51325
1 month ago
72-59816
72 days ago
0-616
10 minutes
38498 SnirBroshi
author:SnirBroshi
feat(Order/RelIso/Basic): lift a function to an order morphism into `Relation.Map` or from `Function.onFun` For an `α`-relation `r` we have: ``` mapRelHom (f : α → β) : r →r Relation.Map r f f mapRelEmbedding (f : α ↪ β) : r ↪r Relation.Map r f f mapRelIso (f : α ≃ β) : r ≃r Relation.Map r f f ``` For a `β`-relation `r` we have: ``` onFunRelHom (f : α → β) : r.onFun f →r r onFunRelEmbedding (f : α ↪ β) : r.onFun f ↪r r onFunRelIso (f : α ≃ β) : r.onFun f ≃r r ``` --- These are pretty similar to `SimpleGraph.{Embedding/Iso}.map` and `SimpleGraph.{Hom/Embedding/Iso}.comap`, as [`comap`](https://github.com/leanprover-community/mathlib4/blob/9268b22206b0425419498769f780a91dee03bcf3/Mathlib/Combinatorics/SimpleGraph/Maps.lean#L117-L118) on graphs is a wrapper around `onFun`, and [`map`](https://github.com/leanprover-community/mathlib4/blob/9268b22206b0425419498769f780a91dee03bcf3/Mathlib/Combinatorics/SimpleGraph/Maps.lean#L57-L58) on graphs is *almost* a wrapper around `Relation.Map`. btw `@[simps]` is angry at me when I try to use it on the structures that use spread syntax. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 42/0 Mathlib/Order/RelIso/Basic.lean 1 1 ['github-actions'] nobody
35-25403
1 month ago
35-25478
35 days ago
35-25440
35 days
38344 robo7179
author:robo7179
feat(SimpleGraph/Coloring/VertexColoring): Matching is 2 colorable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/0 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean 1 5 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
35-1326
1 month ago
38-55270
38 days ago
38-55618
38 days
38222 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Girth): add lemmas about isomorphism and girth --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 19/1 Mathlib/Combinatorics/SimpleGraph/Girth.lean 1 6 ['IvanRenison', 'SnirBroshi', 'github-actions', 'vlad902'] nobody
34-71348
1 month ago
41-46261
41 days ago
41-46223
41 days
38528 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): some cycle lemmas are true for circuits Add `IsCircuit.{not_of_nil,ne_bot,three_le_length}` by using their corresponding `IsCycle` proofs. Also golfs a bit. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 17/9 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 1 ['github-actions'] nobody
34-70252
1 month ago
34-70322
34 days ago
34-70284
34 days
38549 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Copy): `Is(Ind)Contained` `completeGraph` lemmas - `G ⊑ completeGraph V` - `G ⊑ completeGraph W ↔ Nonempty (V ↪ W)` - `completeGraph V ⊴ completeGraph W ↔ Nonempty (V ↪ W)` - `G ⊴ completeGraph W → G = ⊤` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 12/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 1 ['github-actions'] nobody
33-76827
1 month ago
33-76896
33 days ago
33-76858
33 days
38529 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Girth): `egirth ⊤ = 3` when there are at least 3 vertices Since `Nontrivial` is not enough, we use the condition `3 ≤ ENat.card α`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 17/0 Mathlib/Combinatorics/SimpleGraph/Girth.lean 1 5 ['SnirBroshi', 'github-actions', 'vlad902'] nobody
33-76770
1 month ago
34-67487
34 days ago
34-67449
34 days
37835 YaelDillies
author:YaelDillies
doc(Algebra/Order): update mentions of `OrderedSemiring` and friends As of #20676, it was replaced by `IsOrderedRing`. Not all docs were straightforward to update. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
123/280 Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Mathlib/Algebra/Group/Subgroup/Order.lean,Mathlib/Algebra/Group/ULift.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Group/Cyclic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval/Set/Monoid.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/ExistsOfLE.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Order/Sub/WithTop.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Cast/Order/Basic.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/Order/Filter/Germ/OrderedMonoid.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Valuation.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/Tactic/NormNum/Ineq.lean 37 9 ['NoahW314', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] nobody
33-68706
1 month ago
33-68731
33 days ago
48-63827
48 days
38032 grunweg
author:grunweg
perf: unbundle algebra from `ENormed*`, April 2026 version Up-to-date version of #28803. Don't merge yet! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 81/78 Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/Defs.lean,Mathlib/Analysis/Normed/Group/Indicator.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/Normed/Group/Real.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/Indicator.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Monotonicity.lean,Mathlib/MeasureTheory/Function/LpSeminorm/SMul.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean 20 6 ['github-actions', 'grunweg', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
33-59689
1 month ago
46-7784
46 days ago
0-9
9 seconds
38193 Jun2M
author:Jun2M
feat(Topology/Algebra/InfiniteSum): Deprecate generalized ENNReal lemmas Following the PR #38489, this PR add deprecated tags to the original `ENNReal` lemmas and change the transitive children files to use the generalized lemmas rather than the deprecated lemmas. Related Zulip thread: [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/588756615) --- - [ ] depends on: #38489 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 483/329 Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/Measure/Content.lean,Mathlib/MeasureTheory/Measure/Count.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasuredSets.lean,Mathlib/MeasureTheory/Measure/MutuallySingular.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/RegularityCompacts.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/Measure/Tight.lean,Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/MeasureTheory/OuterMeasure/Caratheodory.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/MeasureTheory/OuterMeasure/OfAddContent.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/NumberTheory/Transcendental/Liouville/Measure.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Kernel/WithDensity.lean,Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Constructions.lean,Mathlib/Probability/ProbabilityMassFunction/Monad.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Semicontinuity/Basic.lean 52 4 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
33-59685
1 month ago
35-40329
35 days ago
6-13863
6 days
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
33-52161
1 month ago
33-52172
33 days ago
0-26133
7 hours
36850 whocares-abt
author:whocares-abt
feat(Combinatorics/SimpleGraph/Acyclic): deleting leaves from a tree gives a tree Added theorem stating Deleting a leaf from a tree produces a tree. t-combinatorics new-contributor awaiting-author 5/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 9 ['YaelDillies', 'github-actions', 'vlad902'] YaelDillies
assignee:YaelDillies
33-10341
1 month ago
33-10451
33 days ago
38-73648
38 days
38482 dagurtomas
author:dagurtomas
feat(CategoryTheory/Tactic): specialize_map attribute --- - [ ] depends on: #38478 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP LLM-generated t-category-theory t-meta blocked-by-other-PR 861/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,Mathlib/Tactic/CategoryTheory/Op.lean,Mathlib/Tactic/CategoryTheory/SpecializeMap.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean,MathlibTest/CategoryTheory/Op.lean,MathlibTest/CategoryTheory/SpecializeMap.lean 9 2 ['github-actions', 'mathlib-dependent-issues'] nobody
32-71968
1 month ago
35-55583
35 days ago
0-15
15 seconds
37774 weisbrja
author:weisbrja
fix: change variables in `bicompl` to `Sort*` and add missing theorem mentioned in `bicompl` docs [#mathlib4 > Why does Mathlib use Type* instead of Sort* in some places?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Why.20does.20Mathlib.20use.20Type.2A.20instead.20of.20Sort.2A.20in.20some.20places.3F/with/583882342) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic merge-conflict 6/1 Mathlib/Logic/Function/Basic.lean 1 8 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'weisbrja'] nobody
32-59868
1 month ago
32-59869
32 days ago
19-76858
19 days
38554 YaelDillies
author:YaelDillies
chore(Combinatorics/SimpleGraph): use the auto-param in `loopless` more --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 5/13 Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Order/Cover.lean 8 6 ['SnirBroshi', 'YaelDillies', 'github-actions'] nobody
32-57326
1 month ago
33-3267
33 days ago
33-5298
33 days
37445 edwin1729
author:edwin1729
feat(Topology/Order): set of compact elements, generating basic opens contained in a `Locale.PT`, is directed This is (2/4) PRs culminating in a proof that "Scott Topologies over Algebraic DCPOs are Sober". In this PR we prove properties of a certain set of compact elements, w.r.t a `Locale.PT`. A `Locale.PT` can be thought of as a set of `Opens`. Precisely it is a Frame homomorphism from `Opens _` to `Prop` so we are essentially choosing certain `Opens` to form our set and this set has additional properties. Namely it is a completely prime filter: if the supremum of some Opens is contained than atleast one of the Opens must be contained. Take some `Locale.PT`, `x`. In this PR, we prove that the set of compact elements generating basic opens (compact elements generate topological basis see #31662) contained in `x` is directed. This set of compact elements defined above is important in subsequent parts of the proof since it fully determines `x`. - [ ] depends on: #31662 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR new-contributor merge-conflict 296/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
32-42790
1 month ago
59-67268
59 days ago
0-463
7 minutes
37556 edwin1729
author:edwin1729
feat(Topology/Order): Locale.localePointOfSpacePoint if we have a Scott Topology from an Algebraic DCPO (3/4) in a series of PRs proving that "Scott Topologies over Algebraic DCPOs are Sober" We prove here that the unit of the adjunction from `TopCat` to `Locale` defined in `Topology/Order/Category/FrameAdjunction.lean` is a surjective mapping, under the following condition: The underlying TopologicalSpace must be a Scott Topology generated with an underlying Algebraic DCPO structure. - [ ] depends on: #37445 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor blocked-by-other-PR merge-conflict 393/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
32-42789
1 month ago
57-67289
57 days ago
0-1300
21 minutes
38077 b-mehta
author:b-mehta
feat(Combinatorics/Schnirelmann): prove Mann's theorem Lots of this was done in 2024, and so it needs heavy cleaning. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-combinatorics large-import merge-conflict 632/12 Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Action/Pointwise/Set/Finite.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Finset.lean,Mathlib/Combinatorics/Schnirelmann.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/Data/Set/Finite/Lemmas.lean 8 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
32-42664
1 month ago
unknown
0-0
0 seconds
38580 mcdoll
author:mcdoll
perf(Polynomial/HasseDeriv): explicit type annotations for `compHom` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
4/4 Mathlib/Algebra/Polynomial/HasseDeriv.lean 1 4 ['github-actions', 'leanprover-radar', 'mcdoll'] nobody
32-26940
1 month ago
unknown
0-0
0 seconds
38560 Deicyde
author:Deicyde
feat(Geometry/Manifold): `MfldCat` is a `CartesianMonoidalCategory` We prove that the category `MfldCat` of C^n manifolds is a Cartesian monoidal category, and also derive the `BraidedCategory` instance. This PR introduces a new file `Geometry/Manifold/Category/MfldCat/CartesianMonoidal` closely mirroring the structure of `Algebra/Category/Grp/CartesianMonoidal.lean` --- - [ ] depends on: #38223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR new-contributor 281/0 Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/Category/MfldCat/CartesianMonoidal.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
32-16035
1 month ago
unknown
0-0
0 seconds
38621 mariainesdff
author:mariainesdff
feat(Algebra/SkewPolynomial/Basic): add more API We add API for SkewPolynomial, including the definitions erase and update and results about coefficients and supports. Co-authored by: @xgenereux. --- - [ ] depends on: #38619 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
629/24 Mathlib/Algebra/SkewPolynomial/Basic.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
32-3670
1 month ago
32-3671
32 days ago
0-1715
28 minutes
38623 mariainesdff
author:mariainesdff
WIP --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra
label:t-algebra$
44/2 Mathlib/Algebra/Order/Antidiag/Prod.lean 1 2 ['github-actions'] nobody
32-2516
1 month ago
32-2573
32 days ago
0-17
17 seconds
37861 Jun2M
author:Jun2M
feat(Combinatorics/Graph): connected graphs This PR introduces - `IsConnectedComponentOf`, a graph is a connected component of another graph, and - `IsConnected`, a graph is a self component Under this definition, an empty graph is not connected. Co-authored-by: Peter Nelson [apn.uni@gmail.com](mailto:apn.uni@gmail.com) --- - [x] depends on: #37610 - [ ] depends on: #36756 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR 92/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Connected/Component.lean 2 6 ['Jun2M', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues'] nobody
31-57318
1 month ago
42-73087
42 days ago
3-10047
3 days
37067 kbuzzard
author:kbuzzard
feat: add_group tactic Written by Claude Code, additivising the `group` tactic, although there were some problems which needed human input. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This is me burning Claude credits as a result of this comment [#mathlib4 > MulAut and to_additive @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/MulAut.20and.20to_additive/near/581059625) . Just to be clear, all comments below are human-written by me with 0 AI assistance. To my amusement, naively additivising the `group` tactic to make an `add_group` tactic does not work. The problem is that the algorithm run by `group` involves adding `← zpow_neg_one` to the simp set, which rewrites `x⁻¹` to `x ^ (-1)` for `x` in any group: the idea is that `x ^ (z : Int)` is preferred in the algorithm and `x⁻¹` is eliminated. Amusingly, when additivised, this becomes `-x -> -1 • x` which then immediately becomes `(-1 • 1) • x` which then becomes `((-1 • 1) • 1) • x` etc etc, as the integers are themselves an additive group. So we need to find another way of normalising terms of the form `-x`. Claude found the following trick: drop `← neg_one_zsmul` and `neg_one_zsmul_add`, and use `neg_add_rev` and `neg_zero` to reduce `-(a+b)` and `-0`, use `zsmul_neg` to reduce `n • (-a)` to `(-n) • a` and then use things like `add_neg_cancel_right` and `neg_add_cancel_right` to do `-b + b` and `b + -b` together with some new `zsmul_neg_trick` lemmas which normalise `(n • b) + -b` to `(n - 1) • b`. etc. The idea is to ensure that any consecutive chains of `b`'s and `-b`'s and `z • b`'s will now all get amalgamated into something of the form `z • b`, but we cannot change `-b` to `-1 • b` so have to try harder than in the multiplicative case. Here is a detailed (human-written!) explanation of the difference between `Tactic/AddGroup.lean` and the additivisation of `Tactic/Group.Lean`. 1) Note that the `zpow_trick` lemmas in `Tactic/Group.lean` are additivised, so we import `Group.lean` in `AddGroup.lean` to access these additivised lemmas. 2) `Mathlib.Algebra.Group.Commutator` has no additive version (and it's not clear that it should have one), so we don't use an additive version of `commutatorElement_def` (which expands `⁅g₁, g₂⁆` to `g₁ * g₂ * g₁⁻¹ * g₂⁻¹`). Note: that means that we cannot additivise a test. 3) Line 67 of the additive file uses `neg_add_rev, neg_zero, zsmul_neg, ← neg_zsmul,` as a workaround for the looping ` ← zpow_neg_one`. 4) `Int.mul_neg, Int.neg_mul` are dropped (they don't seem to be needed, all tests are passing, ring_nf is probably doing this.) 5) `sub_eq_add_neg` is added: people use subtraction in additive groups; division doesn't seem to be covered for multiplicative groups? So `add_group` can solve `a + b - b = a` but `group` cannot solve `a * b / b = a`. *** There is also one fewer test in the `add_group` tests, as I had to remove the commutator test. I don't know much at all about tactic-writing, the PR is all Claude code, but a lot of it is to_additive copypasta. The review of the code above is my own. t-meta LLM-generated awaiting-author 189/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/AddGroup.lean,MathlibTest/AddGroup.lean 4 21 ['JovanGerb', 'SnirBroshi', 'github-actions', 'kbuzzard', 'mathlib-merge-conflicts', 'thorimur'] thorimur
assignee:thorimur
31-52834
1 month ago
35-29530
35 days ago
28-31880
28 days
38364 openendings
author:openendings
feat: create Order/DirectedCompletePartialOrder/Defs.lean Define DirectedCompletePartialOrder and its interaction with iSup and sSup. --- A DirectedCompletePartialOrder is equivalently: - a partial order with LUBs of nonempty directed sets; - what happens when you remove ⊥ from a CompletePartialOrder; or - a ConditionallyCompletePartialOrder in which every directed set is BddAbove. Like CPOs, DCPOs are commonly studied in denotational semantics. Potential applications: - [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/590070848) -- defining infinite sums in an DCPO-enriched `AddCommMonoidWithTop` such as `ENat` or `ENNReal`. - [#Is there code for X? > Scott Induction](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Scott.20Induction/with/590112858) -- fixpoint theorems similar to `OmegaCompletePartialOrder`, generalised to arbitrary cardinalities. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 123/0 Mathlib.lean,Mathlib/Order/DirectedCompletePartialOrder/Defs.lean,docs/references.bib 3 4 ['SnirBroshi', 'github-actions', 'openendings'] nobody
31-45582
1 month ago
37-35702
37 days ago
38-10490
38 days
36681 SnirBroshi
author:SnirBroshi
feat(SetTheory/Ordinal/Commute): the smallest nonzero ordinal that add-commutes with a given ordinal For any ordinal `o`, `(ω ^ log ω o) + o % (ω ^ log ω o)` is the smallest nonzero ordinal that add-commutes with `o`. This value can also be calculated by considering the CNF of `o` with base `ω` and changing the first coefficient to `1`. --- The proofs involve annoying algebraic manipulations (to annihilate the tails as explained below), golfs welcome.
Details on the math involved Think about the Cantor-normal form: #36664 shows `AddCommute o₁ o₂ ↔ ∃ (o : Ordinal) (n₁ n₂ : ℕ), o * n₁ = o₁ ∧ o * n₂ = o₂`. If you write a given ordinal `o` in CNF in base `ω` as `(ω ^ e₀) * c₀ + (ω ^ e₁) * c₁ + ...` then `o * n = (ω ^ e₀) * (c₀ * n) + (ω ^ e₁) * c₁ + ...`. Notice that only the leading term got multiplied by `n`, because the earlier copies of `o` annihilate all the tails except for the last one (e.g. `o * 2 = o + o = (ω ^ e₀) * c₀ + tail + (ω ^ e₀) * c₀ + tail = (ω ^ e₀) * c₀ + (ω ^ e₀) * c₀ + tail = (ω ^ e₀) * (c₀ * 2) + tail`). So given the characterization of `AddCommute`, if we keep the tail and remove the `* c₀` from the leading coefficient (effectively calculating `o / c₀`, we'll get the smallest ordinal that we can multiply by a natural number to get `o`. `o / (o / (ω ^ log ω o))` should also give the same smallest ordinal (and `o - (ω ^ log ω o) * (o / (ω ^ log ω o) - 1)`), but I chose the expression that fits the existing CNF definitions. Maybe a future PR can show they're all equal.
- [x] depends on: #36664 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-set-theory awaiting-author 71/1 Mathlib/SetTheory/Ordinal/Commute.lean,Mathlib/SetTheory/Ordinal/Principal.lean 2 25 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] vihdzp
assignee:vihdzp
31-37296
1 month ago
31-37296
31 days ago
6-8534
6 days
37814 sglasman
author:sglasman
feat: Equivalence between HopfAlgCat R and Hopf (ModuleCat R) This PR resolves a TODO by demonstrating an equivalence of categories between two models of the category of Hopf algebras over a commutative ring R, that of Hopf objects in the module category of R and that of types with a `HopfAlgebra R` instance. --- AI declaration: I consulted with Claude on proof strategies. The proofs were ultimately written by me. new-contributor large-import t-category-theory WIP 214/4 Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean 2 5 ['dagurtomas', 'github-actions', 'robin-carlier', 'sglasman'] kim-em
assignee:kim-em
31-20553
1 month ago
36-69416
36 days ago
14-69757
14 days
38612 SnirBroshi
author:SnirBroshi
feat(Order/SuccPred/CompleteLinearOrder): `sSup s < x` iff theorems when we know if `x` is a successor pre-limit or not Adds the following theorems (along with their duals and indexed versions): ```lean sSup_lt_iff_of_not_isSuccPrelimit : ¬IsSuccPrelimit x → sSup s < x ↔ ∀ a ∈ s, a < x le_sSup_iff_of_not_isSuccPrelimit : ¬IsSuccPrelimit x → x ≤ sSup s ↔ ∃ a ∈ s, x ≤ a Order.IsSuccPrelimit.sSup_lt_iff : IsSuccPrelimit x → sSup s < x ↔ ∃ a < x, ∀ b ∈ s, b < a Order.IsSuccPrelimit.le_sSup_iff : IsSuccPrelimit x → x ≤ sSup s ↔ ∀ a < x, ∃ b ∈ s, a ≤ b ``` They are similar to these existing theorems, but not the same: ```lean sSup_lt_iff : sSup s < x ↔ ∃ a < x, ∀ b ∈ s, b ≤ a le_sSup_iff_forall_lt : x ≤ sSup s ↔ ∀ a < x, ∃ b ∈ s, a < b ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 43/0 Mathlib/Order/SuccPred/CompleteLinearOrder.lean 1 6 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
31-16391
1 month ago
32-13305
32 days ago
32-13267
32 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
30-84385
1 month ago
30-84416
30 days ago
30-49603
30 days
33485 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/Generation): prove the third part of Dieudonné's theorem Prove the third part of Dieudonné's theorem : if `e : V ≃ₗ[K] V` is a product of `finrank K (V ⧸ e.fixedSubmodule) - 1` transvections and one dilatransvection, then it is not exceptional. Actually, we prove something slightly stronger : if `e : V ≃ₗ[K] V` is a product of a transvection and of `finrank K (V ⧸ e.fixedSubmodule) - 1` dilatransvections, then it is not exceptional. --- - [ ] depends on: #33347 - [ ] depends on: #33348 - [ ] depends on: #33387 - [ ] depends on: #33282 - [ ] depends on: #33392 - [ ] depends on: #33402 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
1122/16 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean 6 13 ['AntoineChambert-Loir', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
30-52592
1 month ago
147-84193
147 days ago
0-955
15 minutes
33560 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/Generation): a linear equivalence is the product of dilatransvections Prove that a linear equivalence `e` is the product of `V ⧸ e.fixedSubmodule` dilatransvections. (It cannot be a product of less.) --- - [ ] depends on: #33347 - [ ] depends on: #33348 - [ ] depends on: #33387 - [ ] depends on: #33282 - [ ] depends on: #33392 - [ ] depends on: #33402 - [ ] depends on: #33485 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
1222/3 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean 6 12 ['AntoineChambert-Loir', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
30-52277
1 month ago
145-42014
145 days ago
0-1282
21 minutes
36740 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): * `AlgebraicGeometry.Scheme.isBasis_affineOpens`: unchanged 🎉 * `SimpleGraph.Walk.takeUntil_eq_take`: 263 ms before, 180 ms after 🎉 * `SimpleGraph.Walk.dropUntil_eq_drop`: 382 ms before, 261 ms after 🎉 * `Int.image_Ico_emod`: unchanged 🎉 * `Equiv.Perm.ofSubtype_swap_eq`: 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/) merge-conflict 7/33 Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Data/Int/Interval.lean,Mathlib/GroupTheory/Perm/Support.lean 4 8 ['artie2000', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] nobody
30-49331
1 month ago
30-49332
30 days ago
43-5868
43 days
37191 artie2000
author:artie2000
chore(Geometry/Convex/Cone/Pointed): clean up variables * Remove variable overwrites by changing `variable` declarations and renaming variables * Rename variables to maintain rough type-consistency within the file * Reorganise sections in order of increasing typeclass strength * Bring explicit/implicit variables in line with convention This PR doesn't change any declarations beyond changing variable explicitness. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry awaiting-author merge-conflict 148/129 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 15 ['YaelDillies', 'artie2000', 'github-actions', 'martinwintermath', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
30-49206
1 month ago
37-7360
37 days ago
25-78701
25 days
33692 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/SpecialLinearGroup): generation of the special linear group by transvections Consider transvections in the special linear group. Prove that they generate the group. Prove Dieudonné's refinement about the minimal number needed to write an element as a product of transvections. --- - [ ] depends on: #33560 - [ ] depends on: #33485 - [ ] depends on: #33402 - [ ] depends on: #33392 - [ ] depends on: #33387 - [ ] depends on: #33348 - [ ] depends on: #33347 - [ ] depends on: #33282 - [x] depends on: #32757 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
1459/18 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean,Mathlib/LinearAlgebra/Transvection/SpecialLinearGroup.lean 7 10 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
30-46117
1 month ago
143-42148
143 days ago
0-93
1 minute
33882 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/SpecialLinearGroup): commutators in the special linear group Over a field, prove the following results : * transvections are conjugate in the general linear group; except in rank 2, they are conjugate in the special linear group. * the special linear group is equal to its commutator subgroup (except when it doesn't, ie, in rank 2 over a field with 2 or 3 elements). --- - [x] depends on: #33347 - [x] depends on: #33348 - [x] depends on: #33387 - [x] depends on: #33282 - [ ] depends on: #33392 - [ ] depends on: #33402 - [ ] depends on: #33485 - [x] depends on: #32757 - [ ] depends on: #33560 - [ ] depends on: #33692 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra
label:t-algebra$
1991/31 Mathlib.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/LinearAlgebra/Basis/Fin.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean,Mathlib/LinearAlgebra/Transvection/SpecialLinearGroup.lean 11 7 ['AntoineChambert-Loir', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
30-45785
1 month ago
137-75959
137 days ago
0-50
50 seconds
33916 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/SpecialLinearGroup/Simple): simplicity of the projective special linear group. Let `K` be a field and `V` be a `K`-vector space. * `SpecialLinearGroup.isQuasiSimpleGroup`: if `finrank K V` is at least 3, or if `finrank K V = 2` and `K` has at least 4 elements, then `SpecialLinearGroup K V` is quasi-simple, namely, the quotient group `SpecialLinearGroup K V ⧸ Subgroup.center (SpecialLinearGroup K V)` is simple. --- - [x] depends on: #32757 - [x] depends on: #33347 - [x] depends on: #33282 - [x] depends on: #33348 - [x] depends on: #33387 - [ ] depends on: #33392 - [ ] depends on: #33402 - [ ] depends on: #33485 - [ ] depends on: #33560 - [ ] depends on: #33692 - [ ] depends on: #33882 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra
label:t-algebra$
2213/31 Mathlib.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/LinearAlgebra/Basis/Fin.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/SpecialLinearGroup/Simple.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean,Mathlib/LinearAlgebra/Transvection/SpecialLinearGroup.lean 12 6 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
30-45757
1 month ago
136-75907
136 days ago
0-1083
18 minutes
37535 grunweg
author:grunweg
chore(FiberBundle/Trivialisation): tag with grind I am unsure if all of these are good grind lemmas; close examination is welcome. I left XXX comments with my questions; there are about 3 different questions repeating a few times. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author merge-conflict 49/19 Mathlib/Topology/FiberBundle/Trivialization.lean 1 7 ['chenson2018', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] urkud
assignee:urkud
30-40728
1 month ago
55-10933
55 days ago
2-73668
2 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
30-40721
1 month ago
30-40722
30 days ago
22-62470
22 days
37806 Raph-DG
author:Raph-DG
chore(Topology): rename `Function.locallyFinsupp` to `Function.LocallyFinsupp` And move single from `LocallyFinSuppWithin` to `LocallyFinsupp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author merge-conflict 343/146 Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Meromorphic/NormalForm.lean,Mathlib/Topology/LocallyFinsupp.lean 8 11 ['Raph-DG', 'chrisflav', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] nobody
30-40718
1 month ago
43-61580
43 days ago
4-50448
4 days
38329 jcommelin
author:jcommelin
chore: tighten down public/exposed API of AlgebraicClosure This PR tightens down the API of AlgebraicClosure, by making few parts of FieldTheory/IsAlgClosed/AlgebraicClosure.lean public and/or exposed. We still need to expose the main definition. It would be great if we can unexpose it in the future. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
73/53 Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/FieldTheory/Differential/Liouville.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/RingTheory/Discriminant.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/RingTheory/Trace/Basic.lean 9 26 ['eric-wieser', 'github-actions', 'jcommelin', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'plp127', 'riccardobrasca'] nobody
30-40704
1 month ago
30-40705
30 days ago
7-41851
7 days
38444 astrainfinita
author:astrainfinita
refactor(Order/(Conditionally)CompletePartialOrder): extends `OrderSupSet` --- - [ ] depends on: #35674 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 438/219 Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Data/Int/ConditionallyCompleteOrder.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Real/Pointwise.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/CompletePartialOrder.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Basic.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Order/Copy.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/SetNotation.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean 33 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
30-40698
1 month ago
36-19389
36 days ago
0-2484
41 minutes
38635 Fieldnote-Echo
author:Fieldnote-Echo
chore(scripts): handle simple to_additive deprecations Closes #38550. This updates `scripts/add_deprecations.sh` so that, when a renamed declaration is near an existing `@[to_additive]` attribute, the script also emits the additive deprecation alias in the common default-name case. For example, `foo_mul -> bar_mul` now produces: ```lean @[deprecated (since := "...")] alias foo_add := bar_add @[to_additive existing, deprecated (since := "...")] alias foo_mul := bar_mul ``` This is intentionally conservative and text-based, matching the existing script. It handles common name translations such as mul/add, prod/sum, one/zero, inv/neg, and div/sub, and skips cases that look like they need less common to_additive name generation. Tested with a local six-case fixture and a scratch Lean file confirming that the generated alias form compiles and produces deprecation warnings for both names. I opened this as draft because I still count as a new contributor under the LLM-assisted PR policy. I have one merged mathlib PR (#36443), and this is a one-file script patch that I reviewed/tested manually. I'll leave it as draft unless a maintainer gives it the green light to flip ready. I used Claude assistance while drafting and testing the patch. I reviewed the final diff manually and tested the generated Lean form locally. CI new-contributor 121/10 scripts/add_deprecations.sh 1 4 ['Fieldnote-Echo', 'SnirBroshi', 'github-actions'] kim-em
assignee:kim-em
30-21648
1 month ago
unknown
0-0
0 seconds
37930 vlad902
author:vlad902
chore(SimpleGraph): move `cycleGraph` to its own file PR #34797 re-defined `cycleGraph` independent of `circulantGraph`. Now move the definition of `cycleGraph` to its own file so that the definition can be used without importing the algebra hierarchy. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 173/148 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
30-20360
1 month ago
30-20383
30 days ago
30-20732
30 days
38752 joelriou
author:joelriou
feat(CategoryTheory): the bicategory of triangulated categories See Zulip [#general > backward.isDefEq.respectTransparency @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/backward.2EisDefEq.2ErespectTransparency/near/591988149) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory 168/0 Mathlib.lean,Mathlib/CategoryTheory/Triangulated/Bicategory.lean 2 1 ['github-actions'] nobody
30-9534
1 month ago
30-11079
30 days ago
0-2
2 seconds
38759 chrisflav
author:chrisflav
chore(CategoryTheory): more experiments with unification hints --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 106/2 Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Simps/UnifHintAttr.lean,MathlibTest/Simps.lean 4 1 ['github-actions'] nobody
30-5178
1 month ago
unknown
0-0
0 seconds
38732 eric-wieser
author:eric-wieser
fix: revert and fix #38703 #38703 removed the canary intended to detect a broken lemma, without fixing the lemma. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated
label:t-algebra$
4/11 Mathlib/Algebra/Group/Action/Units.lean 1 5 ['github-actions', 'kbuzzard', 'mathlib-bors'] nobody
30-2726
1 month ago
30-2726
30 days ago
0-57214
15 hours
38742 Jun2M
author:Jun2M
feat(Tactic): simproc for `Eq.rec` Note: This PR was written with a lot of help from AI (Opus 4.7). I am still learning Lean meta programming. I would very much welcome any feedback. Problem: There are a lot of `cast` like functions for various definitions in Mathlib: [`Fin.cast`](https://leanprover-community.github.io/mathlib4_docs/Init/Data/Fin/Basic.html#Fin.cast), [`List.Vector.congr`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Vector/Defs.html#List.Vector.congr), [`SimpleGraph.Walk.copy`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Combinatorics/SimpleGraph/Walk/Operations.html#SimpleGraph.Walk.copy), [`Path.cast`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Path.html#Path.cast), [`Sym.cast`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Sym/Basic.html#Sym.cast), [`Partition.copy`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Partition/Basic.html#Partition.copy), [`Finpartition.copy`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Partition/Finpartition.html#Finpartition.copy) & etc. All of these functions does the same as `h ▸ a` where `h` is a proof of equality of something in the type of `a`. I think this is caused because proving the properties about `h ▸ a` is too difficult without extra tooling. All of the above follows the pattern where it is an indexed type where it contains * some data * proof that the data is related to the index and casting only changes the second part. The trouble happens when I would like to talk about the data of the casted object. There is `congr_eqRec` lemma in Battery that are exactly for this situation but even after adding `simp` tag to it, it is not being used. [Here](https://live.lean-lang.org/#codez=JYWwDg9gTgLgBAWQIYwBYBtgCMBQeCmAHkuOvnAN6CNwHAFxwAqAnmPgFQC%2BlYdcNgSYR84ggApQIYLhSRwsvKlwAUhXgGUArlhgtyinkgCUBuItS8ZAXlnH6puIA7SOIQMA6AG5J0cK4Xee6VlhMcDhwcADOoDwA2gDGEAB2AOZQAPr4AI4ASvixALoExKTkFAlwILyAqIRKPPQAYsBlimUA1HAAjEYmZvRlViA23Q5wYK4eXlZgfl60gcGhEVFwcYkp6dm5BThEJGBklABqvMysnJQA4mpRZOdQSGBmB1LqcG5wAO68TyYA6rznLh%2BngA1nAXm5jHZ6C8rO9BnZHD9XPgACZJfDhbxwH4uVHozGzWTzMKRcDLeLJNKZHL5BYAWjpcCg%2BAAZo1yBS1tTcnAAPypOBmH6FXb7ajHHRnCiY%2BD0VT4eAKEwiXgiJCwYAwYCJCKQnoRLEweEIuAq%2BhqjVanVGtQKkzyxVdKxmuYhElRXnk1ZUjb5N1wBlM1nsuCcn00vkCswiPA4IA), all of these simp tactics fail. Solution: This PR introduces a simproc `castData` (I would welcome a name suggestion) and attribute `cast_data`. When it sees `f ... (h ▸ x)` where `f` is tagged with `cast_data`, `castData` will try to simplify to `f ... x`. This simproc proves all 4 examples linked above. Hopefully this removes the need for all the `cast`-like definition and their APIs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated 122/7 Mathlib.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean,Mathlib/CategoryTheory/WithTerminal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Data/Subtype.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/CastData.lean 9 9 ['Jun2M', 'SnirBroshi', 'github-actions', 'leanprover-radar', 'mathlib-bors'] nobody
29-67077
29 days ago
30-38794
30 days ago
0-2835
47 minutes
38766 yuanyi-350
author:yuanyi-350
chore(AlgebraicTopology/DoldKan/GammaCompN): remove an erw - rewrites `N₂Γ₂ToKaroubiIso_inv_app` with a single `simp` invocation on the relevant splitting definitions Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology codex LLM-generated awaiting-author 1/1 Mathlib/AlgebraicTopology/DoldKan/GammaCompN.lean 1 2 ['dagurtomas', 'github-actions'] nobody
29-58390
29 days ago
29-58390
29 days ago
0-28342
7 hours
37531 EtienneC30
author:EtienneC30
feat: integral of the binomial distribution Provide the probability of singletons under the binomial distribution and compute the expectation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability merge-conflict 212/6 Mathlib/Data/Set/Card.lean,Mathlib/Probability/Distributions/Binomial.lean,Mathlib/Probability/Distributions/SetBernoulli.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
29-51030
29 days ago
unknown
0-0
0 seconds
38764 yuanyi-350
author:yuanyi-350
chore(AlgebraicGeometry/Modules/Tilde): remove an erw - rewrites the naturality proof in `fromTildeΓNatTrans` by making the `FullSubcategory.comp_hom` and `NatTrans.comp_app` steps explicit in the `rw` chain Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-algebraic-geometry LLM-generated awaiting-author 3/1 Mathlib/AlgebraicGeometry/Modules/Tilde.lean 1 2 ['dagurtomas', 'github-actions'] nobody
29-49217
29 days ago
29-49217
29 days ago
0-37520
10 hours
38747 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Basic): more `neighborSet` and `IsIsolated` lemmas --- `neighborSet_mono` moved from `Maps.lean` to `Basic.lean` with a simpler proof [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 72/17 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 4 2 ['github-actions', 'vlad902'] nobody
29-42039
29 days ago
29-48995
29 days ago
30-16846
30 days
37819 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `WithBot` with basic `ωScottContinuous` lemmas This is a modification of #34093. See #34093 for details. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 337/10 Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/TypeTags.lean,Mathlib/Order/WithBot.lean 6 5 ['Komyyy', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Komyyy
assignee:Komyyy
29-23929
29 days ago
29-23929
29 days ago
22-11204
22 days
38537 astrainfinita
author:astrainfinita
refactor(Order): make completeness typeclasses mixins This PR turns completeness typeclasses that are weaker than `CompleteLattice` into mixins. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F/) Refactoring `CompleteLattice` would touch many more files, and there are still some unresolved design issues. I've modified 100 files and still haven't determined the correct approach. In this PR, `ConditionallyCompleteLattice` only requires `PartialOrder`, so that it can be used for types like `NonemptyInterval`. t-order WIP merge-conflict 578/580 Counterexamples/SorgenfreyLine.lean,Mathlib/Algebra/FiniteSupport/Basic.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Group/CompleteLattice.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/Analysis/Asymptotics/LinearGrowth.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Int/ConditionallyCompleteOrder.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/Category/OmegaCompletePartialOrder.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/CompletePartialOrder.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/ConditionallyCompleteLattice/Group.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Basic.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Order/Copy.lean,Mathlib/Order/Filter/AtTopBot/CompleteLattice.lean,Mathlib/Order/Filter/Extr.lean,Mathlib/Order/Interval/Set/OrdConnectedLinear.lean,Mathlib/Order/IsNormal.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/Monotone/Extension.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/PartialSups.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Order/SupClosed.lean,Mathlib/Probability/IdentDistrib.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/MetricSpace/ProperSpace/Lemmas.lean,Mathlib/Topology/OmegaCompletePartialOrder.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/Bornology.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/IntermediateValue.lean,Mathlib/Topology/Order/IsLUB.lean,Mathlib/Topology/Order/LeftRightLim.lean,Mathlib/Topology/Order/LiminfLimsup.lean,Mathlib/Topology/Order/Monotone.lean,Mathlib/Topology/Order/MonotoneConvergence.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Order/Rolle.lean,Mathlib/Topology/Semicontinuity/Basic.lean,MathlibTest/Delab/SupInf.lean 76 4 ['astrainfinita', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
29-23925
29 days ago
34-34938
34 days ago
0-2782
46 minutes
38751 YaelDillies
author:YaelDillies
feat(Data/Finset/Density): more `NNRat.cast` lemmas From AddCombi --- - [ ] depends on: #38716 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import blocked-by-other-PR
label:t-algebra$
69/39 Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Ring/Rat.lean,Mathlib/Combinatorics/SetFamily/LYM.lean,Mathlib/Data/Finset/Density.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/NNRat/Order.lean,Mathlib/Data/Rat/Star.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/Topology/Instances/Rat.lean 10 2 ['github-actions', 'mathlib-dependent-issues'] nobody
29-15537
29 days ago
30-10428
30 days ago
0-1009
16 minutes
38799 YaelDillies
author:YaelDillies
refactor(Combinatorics/Additive/Energy): switch to the compact normalisation In additive combinatorics, it is natural for the group of study to be considered with its compact normalisation (making it have total mass 1) and its dual group to be considered with its discrete normalisation (so that each singleton has mass 1), instead of the other way around and even when both groups are finite. In this case, I will soon generalise the energy to compact abelian groups, and possibly even to all abelian groups equipped with a mean. This PR is a first step towards that by renormalising the energy to be between 0 and 1. From AddCombi --- - [ ] depends on: #38751 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics large-import 180/94 Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Ring/Rat.lean,Mathlib/Combinatorics/Additive/Energy.lean,Mathlib/Combinatorics/SetFamily/LYM.lean,Mathlib/Data/Finset/Density.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/NNRat/Order.lean,Mathlib/Data/Rat/Star.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/Topology/Instances/Rat.lean 11 2 ['github-actions', 'mathlib-dependent-issues'] nobody
29-10187
29 days ago
29-11488
29 days ago
0-11
11 seconds
37878 YaelDillies
author:YaelDillies
chore(Combinatorics/SimpleGraph): avoid structure relation predicates Relation predicates used to be `def`s over a `forall`, which was optimal for usability in fields of other structures. This changed in #35591 and #35192 as a byproduct of reducing apparent code duplication. Unfortunately, the usability issue was overlooked. This PR restores usability by dropping the use of those relation classes that are `structure`s, ie `Std.Irrefl` and `Std.Transitive`. It also uses more widely the `simp` auto-param on `SimpleGraph.loopless`. --- - [ ] depends on: #38554 I would also be happy to revert #35591 and #35192 since this demonstrates a good use case for the `def` versions of the relation predicates. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR 43/53 Archive/Wiedijk100Theorems/Konigsberg.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Maps.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/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Tripartite.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/Order/Cover.lean,Mathlib/Order/RelClasses.lean 19 17 ['SnirBroshi', 'Vierkantor', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
28-68308
28 days ago
33-65575
33 days ago
16-34670
16 days
38056 Deicyde
author:Deicyde
feat: topological vector bundle homomorphisms This PR implements topological vector bundle morphisms. - [ ] depends on: #38023 - [ ] depends on: #37946 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology merge-conflict 805/0 Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/VectorBundle/Basic.lean,Mathlib/Topology/VectorBundle/Morphism.lean 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
28-56174
28 days ago
unknown
0-0
0 seconds
38192 Jun2M
author:Jun2M
feat(Order/ConditionallyCompleteLattice): ConditionallyCompleteSemiLatticeInf This PR introduces `ConditionallyCompleteSemilatticeSup/Inf`, Sup/Inf only versions of `ConditionallyCompleteLattice`. This is a preliminary PR for #37620, showing that `Graph` forms a `ConditionallyCompleteSemilatticeInf`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order help-wanted merge-conflict 109/33 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Copy.lean 3 13 ['Jun2M', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'staroperator', 'vihdzp'] nobody
28-34241
28 days ago
42-40975
42 days ago
0-5
5 seconds
38841 SnirBroshi
author:SnirBroshi
feat(Mathlib/Order/SuccPred/Limit): more `WithTop` lemmas about `IsMin`/`CovBy`/`IsSuccLimit` --- Continues the work from #38244 We should probably also have such lemmas for `WithTopBot`/`WithBotTop`, but that's for another day [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 111/30 Mathlib/Order/Cover.lean,Mathlib/Order/SuccPred/Limit.lean,Mathlib/Order/WithBot.lean 3 1 ['github-actions'] nobody
28-837
28 days ago
28-11353
28 days ago
28-12122
28 days
38316 tannerduve
author:tannerduve
feat(Order/OmegaCompletePartialOrder): least fixed point and Scott induction Adds `ContinuousHom.lfp` for endomorphisms on an ωCPO with `⊥`, as the `ωSup` of the iterate chain from `⊥`, together with `map_lfp`, `isFixedPt_lfp`, `lfp_le_fixed`, `isLeast_lfp`, and the Scott induction theorem `lfp_induction` (specialized from a more general seed-based `ωSup_iterate_induction`). For `Part.fix`, adds: * `Part.exists_mem_approx_of_mem_fix`: if `y ∈ Part.fix g x`, some finite approximation of `g` already contains `y`. * `Part.Fix.approx_eq_iterate_bot` and `Part.Fix.approxChain_eq_iterateChain`: bridges between `Fix.approx`/`approxChain` and `f^[n] ⊥`/`iterateChain`. * `Part.fix_eq_lfp`: `Part.fix g = ContinuousHom.lfp (.ofFun g hc)` when `g` is ω-Scott continuous. * `Part.fix_scott_induction`: Scott induction specialized to `Part.fix`. * `Part.fix_induction_mem`: membership induction on `Part.fix`, derived from `fix_scott_induction`. new-contributor 114/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
27-62062
27 days ago
39-38164
39 days ago
39-38652
39 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
27-5739
27 days ago
27-5801
27 days ago
38-7419
38 days
37252 artie2000
author:artie2000
feat(Algebra/Group/Submonoid/Support): properties of submonoid support * Prove how the support of a submonoid interacts with various operations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
50/1 Mathlib/Algebra/Group/Submonoid/Support.lean 1 9 ['eric-wieser', 'github-actions', 'themathqueen'] themathqueen
assignee:themathqueen
26-73858
26 days ago
26-73858
26 days ago
37-50338
37 days
38871 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph): add parity lemmas for outer and inner vertices Adds three lemmas to `SimpleGraph.DegreeSum`: - `sum_degrees_option_zmod_two`: the handshaking lemma for `Option I` over ZMod 2 - `degree_none_zmod_two_eq_sum`: simp-normal form of the above - `card_degree_one_option_eq_outer_zmod_two`: under degree bound ≤ 2, count of degree-1 inner vertices equals outer vertex degree mod 2 t-combinatorics new-contributor 65/3 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean 1 6 ['0xTerencePrime', 'SnirBroshi', 'github-actions'] nobody
26-25147
26 days ago
26-81775
26 days ago
26-81737
26 days
38897 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SetFamily): formalize 1D Sperner's Lemma parity Formalizes the 1-dimensional Sperner's Lemma (parity version): given a coloring of the `n + 1` vertices of a subdivided line segment with two colors (`ZMod 2`), if the two endpoints have different colors, then the number of color-changing edges is odd. This is **distinct** from `IsAntichain.sperner` in `SetFamily.LYM`, which concerns antichains in a power set. This file formalizes the topological/combinatorial parity statement used as the base case in higher-dimensional Sperner arguments. ## Key declarations - `SpernerColoring`: type-safe coloring via `Fin (n + 1) → ZMod 2` - `edgeDiff`: color difference on adjacent vertices, computed in `ZMod 2` - `totalDiff`: telescoping sum of all edge differences - `diffEdges`: the `Finset` of bichromatic (color-changing) edges - `sperner_1d`: main theorem — `Odd (diffEdges c).card` ## Design notes - Using `Fin (n + 1) → ZMod 2` instead of `ℕ → ZMod 2` makes boundary conditions unrepresentable at the type level, eliminating out-of-bounds cases entirely. - The proof reduces to a telescoping sum in `ZMod 2`, using `CharTwo.add_self_eq_zero` to cancel all interior vertices, avoiding parity case splits. This is intended as the 1D base case, the approach generalizes to higher-dimensional Sperner's Lemma in future work. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 133/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/Sperner1D.lean 2 3 ['github-actions', 'grunweg'] nobody
26-16381
26 days ago
26-26531
26 days ago
26-26493
26 days
38750 openendings
author:openendings
feat(Data/Nat): add padicValNat_add_eq_min Add lemmas for `padicValNat` mirroring the [e]multiplicity API, including - padicValNat_eq_of_dvd_of_not_dvd - padicValNat_add_of_gt - padicValNat_add_eq_min --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor awaiting-author 36/0 Mathlib/Data/Nat/MaxPowDiv.lean 1 7 ['Ruben-VandeVelde', 'github-actions', 'openendings'] nobody
26-13406
26 days ago
26-38902
26 days ago
3-62762
3 days
37724 xgenereux
author:xgenereux
feat(UniqueFactorizationDomain/Multiplicity): WfDvdMonoid.max_power_factor for finset A version of `WfDvdMonoid.max_power_factor` for finsets/finsupp. That is, we take the highest power which divides everything in the finset. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 66/10 Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean 1 2 ['chrisflav', 'github-actions'] chrisflav
assignee:chrisflav
25-84920
25 days ago
25-84920
25 days ago
27-34531
27 days
37688 grunweg
author:grunweg
feat: try using grind as gcongr discharger Let's see what benchmarks say! Also, this exposes some underlying bug in the gcongr discharger handling (which I have worked around in the handful of places hitting it). --- - [x] depends on: #37591 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-CI t-meta merge-conflict 73/109 Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2019Q4.lean,Archive/Imo/Imo2020Q2.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Ring/Abs.lean,Mathlib/Algebra/Order/Ring/Int.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/TangentCone/Seq.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Convex/BetweenList.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/Distribution/Support.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog/Order.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Additive/VerySmallDoubling.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Data/Real/Basic.lean,Mathlib/GroupTheory/Archimedean.lean,Mathlib/MeasureTheory/Covering/BesicovitchVectorSpace.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Integral/FinMeasAdditive.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/SumCoeff.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Transcendental/Liouville/Basic.lean,Mathlib/Probability/Distributions/Fernique.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/Tactic/GCongr.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Topology/Algebra/Polynomial.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean 55 13 ['JovanGerb', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
25-84430
25 days ago
54-11866
54 days ago
0-7
7 seconds
38930 homeowmorphism
author:homeowmorphism
feat(FinitelyPresentedGroup): quotient of a finitely group by a subgroup which is finitely generated under normal closure is finitely presented Adds `quotient` theorem which states that the quotient of a finitely presented group by a subgroup which is finitely generated in the normal closure is finitely presented. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory large-import 9/0 Mathlib/GroupTheory/FinitelyPresentedGroup.lean 1 3 ['github-actions', 'homeowmorphism', 'mathlib-bors'] nobody
25-81697
25 days ago
25-81925
25 days ago
0-8
8 seconds
38870 JovanGerb
author:JovanGerb
chore(Data/Set/Finite/Basic): fix `Fintype ({a} : Set α)` instance This PR fixes a `implicit_reducible` diamond: there were two different instances on `Fintype ({a} : Set α)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 9/8 Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/Set/Finite/Monad.lean 5 3 ['JovanGerb', 'github-actions', 'sgouezel'] nobody
25-72751
25 days ago
25-71720
25 days ago
1-52
1 day
38893 mcdoll
author:mcdoll
chore: fix diamonds in separation quotient The following two fail on master but succeed on the branch: ``` example [AddMonoid M] [ContinuousAdd M] : instNSMul (M := M) = AddMonoid.toNSMul := by with_reducible_and_instances rfl example [AddGroup G] [IsTopologicalAddGroup G] : instZSMul (G := G) = SubNegMonoid.toZSMul := by with_reducible_and_instances rfl ``` --- I am not sure whether this solution is better, or just deleting the instances. Especially a low-priority `inferInstance` instance seems a bit weird. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author 2/2 Mathlib/Topology/Algebra/SeparationQuotient/Basic.lean 1 4 ['eric-wieser', 'github-actions', 'j-loreaux'] nobody
25-46704
25 days ago
25-46704
25 days ago
0-72248
20 hours
38831 kbuzzard
author:kbuzzard
chore(Algebra/HierarchyDesign): tidy up We don't have `TopologicalField` any more. I've changed it to a more appropriate example. Also, the TODO in this file was ported from mathlib3 which had `topological_ring` and `ordered_ring`; both of these hierarchies have now been decoupled from the algebra hierarchy now. I changed examples to normed examples as this is still not decoupled (and maybe never will be). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
3/3 Mathlib/Algebra/HierarchyDesign.lean 1 3 ['YaelDillies', 'github-actions', 'j-loreaux'] nobody
25-42522
25 days ago
25-42522
25 days ago
2-65409
2 days
38170 maddycrim
author:maddycrim
feat(Algebra/Module/FinitePresentation): Finitely Presented Module Lemma From FLT Project Main Definitions: `Module.FinitePresentation.exists_fin_exact` : A finitely presented module M admits an exact sequence F' -> F -> M -> 0 where F' and F are finite free modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
9/0 Mathlib/Algebra/Module/FinitePresentation.lean 1 17 ['chrisflav', 'github-actions', 'maddycrim', 'themathqueen', 'vlad902'] nobody
25-11737
25 days ago
25-11737
25 days ago
17-43852
17 days
36815 EtienneC30
author:EtienneC30
feat: a measurable space structure on the type of continuous maps Endow the type `C(X, Y)` of continuous maps from `X` to `Y` with the Borel sigma-algebra coming from the compact-open topology and show that, under some assumptions on `X` and `Y`, this is equal to the restriction of the product sigma-algebra over `X → Y`. Provide a measurable equivalence between `{f : X → Y // Continuous f}` and `C(X, Y)`. Co-authored-by: @RemyDegenne --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology brownian t-measure-probability 256/0 Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/ContinuousMap.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Separation/Regular.lean 6 27 ['ADedecker', 'EtienneC30', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] nobody
25-10494
25 days ago
25-10534
25 days ago
65-5846
65 days
38951 thomaskwaring
author:thomaskwaring
feat(Order/PrimeSeparator): remove unnecessary hypotheses In `mem_ideal_sup_principal`, boundedness and distributivity were unused, and in `prime_ideal_of_disjoint_filter_ideal`, boundedness was only used to produce an element of the filter `F`, which is already nonempty by definition. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 9/19 Mathlib/Order/PrimeSeparator.lean 1 2 ['github-actions'] nobody
25-9072
25 days ago
25-9159
25 days ago
25-9121
25 days
37854 JovanGerb
author:JovanGerb
chore(FieldTheory/SplittingField/Construction): don't expose the construction This PR removes `@[expose] public section` from the implementation of `SplittingField`, so that none of the constants with "aux" in the name are exported. Additionally, remove some defeq abuse. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
62/26 Mathlib/FieldTheory/SplittingField/Construction.lean,MathlibTest/instance_diamonds/FieldTheory/SplittingField/Construction.lean 2 3 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
25-7845
25 days ago
49-85331
49 days ago
0-1873
31 minutes
38780 yuanyi-350
author:yuanyi-350
chore(Catalogue PR): kill some `erw`s by adding rfl lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 55/29 Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/LinearAlgebra/BilinearForm/Properties.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/UniformSpace/Matrix.lean 8 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
25-7822
25 days ago
28-380
28 days ago
0-1169
19 minutes
36896 PieterCuijpers
author:PieterCuijpers
feat (Algebra/Order/Quantale): isMulLeftsided, isMulRightsided, isMulTwosided and strict versions * Adding definitions of quantale elements being leftsided, rightsided, and twosided, and strict versions Should we include these definitions in the main Algebra/Order/Quantale.lean file, or start a separate file for them? I have a few basic theorems I would like to include on these notions, but invite suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author
label:t-algebra$
81/1 Mathlib/Algebra/Order/Quantale.lean 1 5 ['NoahW314', 'PieterCuijpers', 'chrisflav', 'github-actions'] mariainesdff
assignee:mariainesdff
24-79282
24 days ago
31-71537
31 days ago
39-18222
39 days
37446 artie2000
author:artie2000
refactor(Algebra): uniform API for substructures * Add class for `SetLike` instances whose map preserves meets - the intended interpretation is substructures whose closure properties are preserved under intersection * Abstract out the `CompleteLattice` instance and `closure` adjunction on such instances This change unifies a significant part of the API for algebraic substructures. --- - [x] depends on #32984 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Original PR: https://github.com/leanprover-community/mathlib4/pull/25963 t-data WIP merge-conflict 721/184 Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/MulOpposite.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Data/SetLike/Lattice.lean,Mathlib/GroupTheory/Subsemigroup/Centralizer.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/Tactic/MkClosureLemmas.lean,Mathlib/Tactic/MkIffOfInductiveProp.lean 16 8 ['artie2000', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
24-56737
24 days ago
59-43029
59 days ago
0-3200
53 minutes
36686 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): * `List.prod_map_ite`: unchanged 🎉 * `Path.Homotopy.trans_assoc_reparam`: 2938 ms before, 717 ms after 🎉 * `SimplexCategory.δ_comp_δ`: 522 ms before, 316 ms after 🎉 * `Finsupp.ext_iff'`: unchanged 🎉 * `Computation.bind_assoc`: unchanged 🎉 * `Set.piecewise_insert`: unchanged 🎉 * `ZMod.valMinAbs_mem_Ioc`: unchanged 🎉 * `Matrix.det_eq_of_forall_row_eq_smul_add_pred_aux`: 2141 ms before, 2004 ms after 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author 11/50 Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Piecewise.lean,Mathlib/Data/ZMod/ValMinAbs.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean 8 14 ['artie2000', 'chenson2018', 'dagurtomas', 'euprunin', 'github-actions', 'mathlib-merge-conflicts', 'ooovi'] dagurtomas
assignee:dagurtomas
24-55391
24 days ago
24-55394
24 days ago
49-23305
49 days
38973 hyeoniuwu
author:hyeoniuwu
feat(Computability): define (single oracle) turing reducibility, relate it to RecursiveIn and prove basic jump theorems feat(Computability): define (single oracle) Turing reducibility, relate it to RecursiveIn and prove basic jump theorems Defines Turing reducibility and the jump operator, with total functions (from naturals to naturals) as oracles. Defines codes for basic primitive recursive functions, and the evaluation function. Proves basic reducibility arguments, such as `K0_eq_K` asserting that K0 of an oracle is Turing equivalent to K of an oracle. Our reducibility is related back to `RecursiveIn` as is currently defined in Mathlib via the theorem `SingleReducibleIff`. This is part of a larger repository where more advanced theorems such as KP54 have been proven. (https://github.com/hyeoniuwu/CiL) Co-authored-by: Tanner Duve --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor awaiting-author 4988/0 Mathlib/Computability/SingleOracle/Basic.lean,Mathlib/Computability/SingleOracle/Constructions/Basic.lean,Mathlib/Computability/SingleOracle/Constructions/CovRec.lean,Mathlib/Computability/SingleOracle/Constructions/Dovetail.lean,Mathlib/Computability/SingleOracle/Constructions/Eval.lean,Mathlib/Computability/SingleOracle/Constructions/Eval_Aux.lean,Mathlib/Computability/SingleOracle/Constructions/List.lean,Mathlib/Computability/SingleOracle/Constructions/Meta.lean,Mathlib/Computability/SingleOracle/Constructions/Option.lean,Mathlib/Computability/SingleOracle/Constructions/Primitive.lean,Mathlib/Computability/SingleOracle/Encoding.lean,Mathlib/Computability/SingleOracle/Jump.lean,Mathlib/Computability/SingleOracle/Oracle.lean,Mathlib/Computability/SingleOracle/Order.lean,Mathlib/Computability/SingleOracle/RecursiveIn.lean,Mathlib/Computability/SingleOracle/Reducibilities.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Tactic/Attr/Register.lean,Mathlib/Tactic/Computability/Basic.lean 19 3 ['github-actions', 'grunweg'] nobody
24-50614
24 days ago
unknown
0-0
0 seconds
38942 euprunin
author:euprunin
chore: golf using `grind` and `simp` 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): * `CategoryTheory.Abelian.SpectralObject.isZero_H_obj_of_isIso`: 73 ms before, <30 ms after 🎉 * `MvPolynomial.eval₂_uniqueAlgEquiv`: unchanged 🎉 * `Graph.restrict_restrict`: unchanged 🎉 * `SimpleGraph.edge_le_iff`: 86 ms before, 45 ms after 🎉 * `DFinsupp.induction`: unchanged 🎉 * `Finset.Nat.antidiagonal.snd_lt`: unchanged 🎉 * `List.prefix_append_drop`: unchanged 🎉 * `List.pairwise_of_reflexive_of_forall_ne`: unchanged 🎉 * `Relation.reflTransGen_iff_eq_or_transGen`: 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/) awaiting-author 9/52 Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Combinatorics/Graph/Delete.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/Finset/NatAntidiagonal.lean,Mathlib/Data/List/Infix.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Logic/Relation.lean 9 2 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
24-50493
24 days ago
24-50493
24 days ago
0-83701
23 hours
37456 Robertboy18
author:Robertboy18
feat(LinearAlgebra/AffineSpace): add parallel form of Desargues's theorem This PR adds an affine parallel form of Desargues's theorem, corresponding to entry `87` of the Lean community “100 theorems” list and following the related Rocq/Coq affine-geometry statement. **Main changes** - New file `Mathlib/LinearAlgebra/AffineSpace/Desargues.lean` with `parallel_third_side_of_perspective`. - Add the corresponding `public import` to `Mathlib.lean`. - Update `docs/100.yaml` entry `87` with a note that this is the parallel affine form. **Proof idea** The proof compares side vectors using `exists_eq_smul_of_parallel` for the two given pairs of parallel sides. The shared comparison along `SA` forces the same scalar, which gives parallelism of the third pair of sides. Tests: `lake build Mathlib.LinearAlgebra.AffineSpace.Desargues` AI disclosure: GPT-5.2 Pro was used for assistance with web search/background details about the theorem and for finding useful existing Mathlib lemmas. The theorem statement and Lean formalization were written and checked by hand. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-author LLM-generated
label:t-algebra$
133/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Desargues.lean 2 17 ['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] eric-wieser
assignee:eric-wieser
24-47252
24 days ago
50-75400
50 days ago
8-72313
8 days
38667 SnirBroshi
author:SnirBroshi
feat(Order/Hom/Basic): equivalences of `Order{Hom/Embedding/Iso}` - `OrderHom`s are equivalent to `RelHom`s of `LE` (unlike `OrderEmbedding`/`OrderIso` they aren't defined using it) - Congruence equivs for `OrderEmbedding`/`OrderIso` when the two sides are order-isomorphic. This already exists for `OrderHom`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 55/1 Mathlib/Order/Hom/Basic.lean 1 3 ['SnirBroshi', 'dagurtomas', 'github-actions'] nobody
24-46122
24 days ago
24-46122
24 days ago
31-43605
31 days
38792 openendings
author:openendings
wip, chore: rename Directed -> Predirected [please-adopt] This **incomplete** PR renames `Directed` to `Predirected`. As [discussed in Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20complete.20partial.20order.20and.20domain.20theory.20formalization/near/592156927), `Directed` misleadingly mismatches the literature. (The literature says a directed set is nonempty, and we do not.) #### f19d3e79 Rename Directed -> Predirected (class + namespace) Automated changes: - LSP code action renaming `Directed` to `Predirected` - with the affected 69 files open in [lean.nvim](https://github.com/julian/lean.nvim), a series of commands roughly equivalent to ```nvim :bufdo :silent %s/\(theorem \|lemma \|to_dual \)Directed\>/\1Predirected/ge :bufdo :silent %s/\\./Predirected./ge :bufdo :w ``` EDIT: manual changes - one `namespace Directed` replaced. ### Corners cut: - line-length linting has **not** been resolved. - no snake-cased `directed` has been renamed. - only tested via `lake build --old`, plus maybe ten minutes of `lake build` before I (@openendings ) got bored and wanted my CPU back. --- WIP please-adopt t-order [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt new-contributor WIP merge-conflict 196/195 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Membership.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Strict.lean,Mathlib/Analysis/InnerProductSpace/Orthonormal.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/Data/Finset/Order.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Lattice/Image.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Sub.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/ModelTheory/Satisfiability.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/ModelTheory/Syntax.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompletePartialOrder.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Defs.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Order/Directed.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Lift.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/RelIso/Set.lean,Mathlib/Probability/Independence/Basic.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Independence/Kernel/Indep.lean,Mathlib/Probability/Independence/ZeroOne.lean,Mathlib/Probability/Kernel/Disintegration/CDFToKernel.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Category/TopCat/Limits/Konig.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/CompactSystem.lean,Mathlib/Topology/Compactness/CountablyCompact.lean,Mathlib/Topology/Semicontinuity/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,Mathlib/Topology/Separation/Profinite.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean 69 7 ['github-actions', 'kbuzzard', 'mathlib-merge-conflicts', 'openendings'] nobody
24-42641
24 days ago
unknown
0-0
0 seconds
38868 JovanGerb
author:JovanGerb
feat(GRewrite): strict rewriting This PR is a follow-up to #38318, and implements strict rewriting. Implementation note: The `gcongr` and `grw` tactics need to look up slightly differently in the `@[gcongr]` environment extension, because `gcongr` knows the constant on both sides of the relation, and `grw` only knows one. It would be possible to have two separate maps in the environment for these two use cases. However, I have implemented it with just a single map in the environment, as I think this is more efficient. Note: `lt_of_lt_of_le` and `lt_of_lt_of_le'` are tagged with `gcongr` after `ge_imp_ge_of_le_of_le` and `gt_imp_gt_of_le_of_le` so that they are tried first in `grw`. As a result, strict rewriting is done instead of the old behaviour whenever possible. TODO: tag a few more lemmas with `gcongr strict`. TODO: fix test and add more tests TODO: document `gcongr strict` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 725/302 Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Ring/GeomSum.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Analysis/CStarAlgebra/Extreme.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/Convex/StrictCombination.lean,Mathlib/Analysis/Distribution/Support.lean,Mathlib/Combinatorics/Graph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Average.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/AbsolutelyContinuousFun.lean,Mathlib/Order/Basic.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Independence.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/CoreAttrs.lean,Mathlib/Tactic/GRewrite/Core.lean,Mathlib/Tactic/GRewrite/Elab.lean,Mathlib/Topology/MetricSpace/ThickenedIndicator.lean,MathlibTest/GCongr/GCongr.lean,MathlibTest/GCongr/implications.lean,MathlibTest/GRewrite.lean 26 3 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
24-42638
24 days ago
27-636
27 days ago
0-507
8 minutes
38980 thorimur
author:thorimur
bench: `haveI'` -> `have` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 131/131 Mathlib/Algebra/Order/Field/Power.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/Tactic/ModCases.lean,Mathlib/Tactic/NormNum/Basic.lean,Mathlib/Tactic/NormNum/BigOperators.lean,Mathlib/Tactic/NormNum/DivMod.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/LegendreSymbol.lean,Mathlib/Tactic/NormNum/OfScientific.lean,Mathlib/Tactic/NormNum/Ordinal.lean,Mathlib/Tactic/NormNum/Pow.lean,Mathlib/Tactic/NormNum/Prime.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/ReduceModChar.lean 18 4 ['eric-wieser', 'github-actions', 'leanprover-radar', 'thorimur'] nobody
24-18133
24 days ago
unknown
0-0
0 seconds
38922 yuanyi-350
author:yuanyi-350
chore(CategoryTheory/Triangulated/Pretriangulated): remove an erw - rewrites the `isIso₂_of_isIso₁₃` proof by using `Triangle.invRotate_mor₂` directly in the rewrite chain - shortens `productTriangle_distinguished` by rewriting `productTriangle.π_hom₃` explicitly instead of using `erw` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-category-theory awaiting-author 5/4 Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean 1 3 ['github-actions', 'joelriou'] nobody
24-15302
24 days ago
25-67809
25 days ago
0-20200
5 hours
38561 mcdoll
author:mcdoll
feat: use `Is*Apply` classes for continuous linear maps --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 912/416 Mathlib.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/Darboux.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/CompMul.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Norm.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Harmonic/Analytic.lean,Mathlib/Analysis/Convex/Birkhoff.lean,Mathlib/Analysis/Convex/DoublyStochasticMatrix.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/ConformalLinearMap.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/LinearMap.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Rayleigh.lean,Mathlib/Analysis/InnerProductSpace/Reproducing.lean,Mathlib/Analysis/InnerProductSpace/StarOrder.lean,Mathlib/Analysis/LocallyConvex/PointwiseConvergence.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/Normed/Group/SeparationQuotient.lean,Mathlib/Analysis/Normed/Module/Alternating/Uncurry/Fin.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Analysis/Normed/Operator/Bilinear.lean,Mathlib/Analysis/Normed/Operator/Compact.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/Normed/Operator/Mul.lean,Mathlib/Analysis/Normed/Unbundled/FiniteExtension.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Data/FunLike/Group.lean,Mathlib/Data/FunLike/IsApply.lean,Mathlib/Data/FunLike/Module.lean,Mathlib/Data/FunLike/MonoidWithZero.lean,Mathlib/Data/FunLike/Ring.lean,Mathlib/Data/Matrix/PEquiv.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/ContinuousLinearMap.lean,Mathlib/LinearAlgebra/Matrix/Polynomial.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL2.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/JacobianOneDim.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Group/Prod.lean,Mathlib/MeasureTheory/Integral/Bochner/L1.lean,Mathlib/MeasureTheory/Integral/FinMeasAdditive.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/DistribChar.lean,Mathlib/MeasureTheory/Measure/Haar/MulEquivHaarChar.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Hahn.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Jordan.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Probability/Moments/Variance.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 101 4 ['Vierkantor', 'github-actions', 'mathlib-merge-conflicts'] nobody
24-3600
24 days ago
unknown
0-0
0 seconds
38037 linesthatinterlace
author:linesthatinterlace
feat: extend `LawfulXor` lemmas and add `Equiv.xor` This PR extends the work of #37712 by adding additional lemmas and adding `xor-as-a-permutation`. --- - [ ] depends on: #37712 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data blocked-by-other-PR 270/0 Mathlib.lean,Mathlib/Data/Fin/Init.lean,Mathlib/Data/LawfulXor/Basic.lean,Mathlib/Data/LawfulXor/Equiv.lean 4 4 ['github-actions', 'linesthatinterlace', 'mathlib-dependent-issues'] linesthatinterlace
assignee:linesthatinterlace
24-3498
24 days ago
24-3499
24 days ago
21-80359
21 days
38960 ajhendel
author:ajhendel
chore: remove ℕ+ interval_cases workaround in ADEInequality `interval_cases` now supports `ℕ+`, so the manual `Finset.mem_Iio`/`Finset.mem_Ico` + `conv` + `fin_cases` workaround (marked with a porting note) is no longer needed. Replaces three 3-4 line workaround blocks with `interval_cases p`/`q`/`r`. t-number-theory new-contributor awaiting-CI 3/10 Mathlib/NumberTheory/ADEInequality.lean 1 2 ['github-actions'] nobody
23-81833
23 days ago
24-82765
24 days ago
0-105
1 minute
38979 ldct
author:ldct
feat(EReal): simplify nat + ⊤ Alternative version of https://github.com/leanprover-community/mathlib4/pull/38975 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 28/2 Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Operations.lean,MathlibTest/EReal.lean 3 6 ['SnirBroshi', 'eric-wieser', 'github-actions', 'ldct', 'leanprover-radar'] nobody
23-76404
23 days ago
23-76170
23 days ago
23-76262
23 days
38136 homeowmorphism
author:homeowmorphism
feat(FinitelyPresentedGroup): add definitional equivalence with generating set given by `S : Set G`. A group `G` is finitely presented if and only if it admits a finite generating set given by `S : Set G` such that the canonical inclusion map is surjective and the kernel is finitely generated as a normal subgroup. --- Co-pilot + Gemini Pro 3.1 was used for assistance. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 40/0 Mathlib/GroupTheory/FinitelyPresentedGroup.lean 1 7 ['copilot-pull-request-reviewer', 'github-actions', 'homeowmorphism', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
23-39980
23 days ago
43-46076
43 days ago
0-17
17 seconds
39004 zhuyizheng
author:zhuyizheng
chore(ModelTheory): fix hypo of `realize_liftAt` changes the hypo of `realize_liftAt` from the incorrect `(hmn : m + n' ≤ n + 1)` to the correct `(hmn : m ≤ n)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 2/2 Mathlib/ModelTheory/Semantics.lean 1 3 ['github-actions', 'plp127', 'zhuyizheng'] nobody
23-36633
23 days ago
23-72762
23 days ago
23-72724
23 days
38310 ZRTMRH
author:ZRTMRH
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability Adds word evaluation and reachability results to the Schreier graph API. * `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`. * `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`. * `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`. * `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`. * `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other. Follow-up to #36320. This PR was written with AI assistance (Claude). The code has been reviewed by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import LLM-generated 157/0 Mathlib/Combinatorics/Quiver/Schreier.lean 1 2 ['github-actions'] nobody
23-23087
23 days ago
39-56561
39 days ago
39-56523
39 days
39023 TBUGTB
author:TBUGTB
feat(Algebra/Order): API lemmas on floor and abs Co-authored-by: Etienne Marion @EtienneC30 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra brownian new-contributor
label:t-algebra$
9/0 Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Ring/Abs.lean 2 3 ['TBUGTB', 'github-actions'] nobody
23-4813
23 days ago
23-8002
23 days ago
23-7964
23 days
38374 idontgetoutmuch
author:idontgetoutmuch
Principal Bundles, Connection 1-forms and the Frame Bundle --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 2017/0 Mathlib/Geometry/Manifold/Algebra/FakeFormII.lean,Mathlib/Geometry/Manifold/Algebra/PrincipalGBundle.lean,Mathlib/Geometry/Manifold/Algebra/SmoothLieExp.lean 3 2 ['github-actions'] nobody
22-80430
22 days ago
unknown
0-0
0 seconds
38781 JovanGerb
author:JovanGerb
feat: instance diamond linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter 111/4 Mathlib.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Limits/Shapes/ConcreteCategory.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/InstanceDiamonds.lean 6 2 ['github-actions', 'mathlib-bors'] nobody
22-75152
22 days ago
29-69731
29 days ago
0-12
12 seconds
37023 xroblot
author:xroblot
feat(NumberTheory/NumberField): linear disjointness from coprime discriminants The key new result is `dvd_discr_iff_dvd_discr_normalClosure`: a prime `p` divides `discr K` if and only if it divides the discriminant of the normal closure of `K` over `ℚ`. Thanks to this result, we generalize `linearDisjoint_of_isGalois_isCoprime_discr` by removing the Galois hypothesis: if K₁ and K₂ are number fields with coprime discriminants, then they are linearly disjoint over ℚ. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #36843 - [ ] depends on: #30666 merge-conflict blocked-by-other-PR 1575/57 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/TransferInstance.lean,Mathlib/Algebra/Ring/Int/Field.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/IntermediateField/ExtendTop.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Ideal/Galois.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean 24 1 ['mathlib-dependent-issues'] nobody
22-59657
22 days ago
68-10506
68 days ago
0-83
1 minute
37701 grunweg
author:grunweg
debug: investigate error in #37688 --- Goal: figure out the bad error messages in #37688. This PR focuses on one such proof: adding grind as default gcongr discharger just locally already produces an error. `grind` cannot solve the first side goal; that is fine --- the error caused is not; that should be improved. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis merge-conflict 11/2 Mathlib/Analysis/Fourier/FourierTransformDeriv.lean 1 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
22-49398
22 days ago
53-70237
53 days ago
0-7
7 seconds
38901 thorimur
author:thorimur
bench: null linters This PR tries to determine the "flat fees" of linters are in benching. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 12/0 Mathlib/Init.lean 1 7 ['github-actions', 'leanprover-radar', 'thorimur'] nobody
22-42911
22 days ago
unknown
0-0
0 seconds
36756 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike/Walks): add general walks for `GraphLike` structures Per discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)), This PR introduces the basic theory of walks as a general framework that works across different graph-like structures including `SimpleGraph`, `Digraph`, and `Graph`. ## Main definitions * `Walk G u v`: The type of walks from vertex `u` to vertex `v` in a graph-like structure `G` * `Walk.length`: The number of edges in a walk * `Walk.support`: The list of vertices visited by a walk * `Walk.darts`: The list of `darts` (oriented edges) in a walk --- - [ ] depends on: #36743 - [ ] depends on: #39047 - [ ] depends on: #36829 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 789/0 Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/GraphLike/Symm.lean,Mathlib/Combinatorics/GraphLike/Walks/Basic.lean,Mathlib/Combinatorics/GraphLike/Walks/Simple.lean 5 4 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
22-42649
22 days ago
74-41749
74 days ago
0-547
9 minutes
39048 AydenLamp
author:AydenLamp
feat(Algebra/Group/Defs): add positive natural exponentiation for semigroups Introduce exponentiation for semigroups with positive natural exponents. This serves as a foundation for future results on Green’s relations and Rees matrix constructions in semigroups. --- Co-authored-by: Howard Straubing Soleil Repple Nathan Hart-Hodgson [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra awaiting-author
label:t-algebra$
106/0 Mathlib.lean,Mathlib/Algebra/Group/SemigroupPow.lean 2 7 ['ScottCarnahan', 'github-actions', 'wwylele'] nobody
22-8204
22 days ago
22-52175
22 days ago
0-115
1 minute
39046 adamtopaz
author:adamtopaz
feat: Fill three proof_wanted declarations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra awaiting-author
label:t-algebra$
54/13 Mathlib/Data/EReal/Operations.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Trace.lean 3 4 ['github-actions', 'themathqueen'] nobody
22-4235
22 days ago
22-59166
22 days ago
0-1
1 second
38476 agusakov
author:agusakov
refactor(Combinatorics/Digraph): add vertex sets --- Adopting #33466 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 381/50 Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Digraph/Orientation.lean 2 16 ['Shreyas4991', 'YaelDillies', 'agusakov', 'github-actions'] nobody
21-83948
21 days ago
31-16089
31 days ago
3-33232
3 days
39078 fpvandoorn
author:fpvandoorn
feat: add lemmas about products over Finset.Iio * Mostly useful for `ℕ` * I added the `Finset.Iic` lemmas by symmetry, but I'm happy to remove them if we think they are redundant. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/0 Mathlib/Algebra/Order/BigOperators/Group/LocallyFinite.lean 1 1 ['github-actions'] nobody
21-81858
21 days ago
21-81938
21 days ago
21-81900
21 days
38499 SnirBroshi
author:SnirBroshi
feat(Order/Hom/Basic): `Relation.Map`/`Function.onFun` form an order isomorphism between `α`-relations and `β`-relations For an injective function `f : α → β`, `Relation.Map · f f` is an order embedding from `α`-relations into `β`-relations. For a surjective function `f : α → β`, `Function.onFun · f` is an order embedding from `β`-relations into `α`-relations. For a bijective function `f : α → β`, `Relation.Map · f f` and `Function.onFun · f` form an order isomorphism between `α`-relations and `β`-relations. --- - [ ] depends on: #38432 TODO: generalize to `bicompl` after the dependency is merged [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR 42/0 Mathlib/Order/Hom/Basic.lean 1 7 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'plp127', 'wwylele'] nobody
21-59927
21 days ago
31-14066
31 days ago
4-11004
4 days
37190 cjrl
author:cjrl
feat(Combinatorics): Set-Valued Pigeonhole Principle This PR contributes two theorems to combinatorics: - `exists_lt_card_cover_of_card_biUnion_lt_card` is a set-valued version of the pigeonhole principle. - `sum_card_eq_sum_card_cover_biUnion` is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This was needed to prove the above pigeonhole principle. The motivation for these results is our Latin Square PR #36698. These results were proved in less general terms in that PR, but are independent of Latin Square considerations and so we have generalized and moved them into more relevant files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 38/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Pigeonhole.lean 2 16 ['IvanRenison', 'cjrl', 'ghseeli', 'github-actions', 'j-loreaux', 'vlad902'] b-mehta
assignee:b-mehta
21-36839
21 days ago
47-57335
47 days ago
63-28096
63 days
38309 ntapiam
author:ntapiam
feat(Algebra/NonAssoc): dendriform algebras Define dendriform semirings and algebras --- This PR introduces dendriform structures such as dendriform semirings and algebras, and proves basic facts linking them to their pre-Lie counterparts. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
270/0 Mathlib.lean,Mathlib/Algebra/NonAssoc/Dendriform/Defs.lean,docs/references.bib 3 5 ['dagurtomas', 'github-actions', 'ntapiam'] ocfnash
assignee:ocfnash
21-36829
21 days ago
22-2607
22 days ago
37-7866
37 days
38373 Nicola9Falciola
author:Nicola9Falciola
feat (Algebra/FreeAbelianGroup /Finsupp) : The support of non zero element in a freeabeliangroup is non empty Add the lemma that for a nonzero a : FreeAbelianGroup X the support of it is non empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
3/0 Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean 1 7 ['Nicola9Falciola', 'SnirBroshi', 'github-actions'] ocfnash
assignee:ocfnash
21-36821
21 days ago
36-78964
36 days ago
37-67367
37 days
38943 felixpernegger
author:felixpernegger
feat(Topology/CWComplex/Classical): discrete spaces are CW complexes as well as some useful lemmas This is partly based on code by @scholzhannah I think this is notable to include, since it is pretty much the only (easy) "topological" sufficient condition for something being a CW complex there is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 89/3 Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/DiscreteSubset.lean 2 28 ['felixpernegger', 'github-actions', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
21-36818
21 days ago
24-7672
24 days ago
25-21671
25 days
39105 ldct
author:ldct
feat: Add Real.exp_int_mul Adds the missing `Real.exp_int_mul`, completing the matrix: | | `ℕ` | `ℤ` | |---|---|---| | `ℂ` | `Complex.exp_nat_mul` | `Complex.exp_int_mul` | | `ℝ` | `Real.exp_nat_mul` | `Real.exp_int_mul` (**new**) | --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 9/0 Mathlib/Analysis/Complex/Exponential.lean,MathlibTest/rexp.lean 2 1 ['github-actions'] nobody
21-26705
21 days ago
21-26604
21 days ago
0-476
7 minutes
38328 astrainfinita
author:astrainfinita
feat: `OrderSupSet` This PR introduces `OrderSupSet` and `OrderInfSet`, which are typeclasses expressing that `sSup` (resp., `sInf`) returns the least upper bound (resp., the greatest lower bound) of a set whenever one exists. This allows us to prove properties about the `sSup` of specific sets (such as `∅`, singletons, finite sets, and `univ`) without any typeclasses asserting the existence of LUBs. For example, `sSup ∅ = ⊥` holds for any type equipped with `OrderBot` `OrderSupSet`, no longer requiring typeclasses like `ConditionallyCompleteLinearOrderBot`. For a general set `s`, this gives a uniform way to extend results about `IsLUB s a → motive a` to `motive (sSup s)`, `motive (⨆ i, f i)`, `motive (a ⊔ b)`, etc., which allows proof reuse for basic API such as [`csSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/ConditionallyCompleteLattice/Basic.html#csSup_insert), [`iSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/CompleteLattice/Basic.html#iSup_insert), and [`sSup_insert`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/CompleteLattice/Basic.html#sSup_insert) and downstream code like [`csSup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.html#csSup_add), [`sSup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Pointwise/CompleteLattice.html#sSup_add), and [`sup_add`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Lattice.html#sup_add). Furthermore, this allows us to refactor incrementally, reducing the dependency of results about various completeness typeclasses on the specific implementation of `sSup`. --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 156/73 Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/SetNotation.lean,Mathlib/Topology/UniformSpace/OfCompactT2.lean 7 16 ['JovanGerb', 'astrainfinita', 'b-mehta', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'openendings', 'vihdzp'] nobody
21-14968
21 days ago
21-15007
21 days ago
26-45677
26 days
39116 khwilson
author:khwilson
feat(Topology/Semicontinuity/Michael): michael's selection theorem Michael's selection theorem states that a correspondence `f : α → Set β` from a normal, paracompact topological space `α` to a Frechet space `β` that is lower hemicontinuous, and has nonempty, closed, convex values admits a continuous selection, i.e., a map `g : α → β` such that `g x ∈ f x` for all `x`. This theorem is used in many places, e.g., to find continuous sections to certain functions. This PR proves this theorem. N.B. At this time, this PR doesn't pass as it depends on two other PRs which may go through substantial changes - [ ] depends on: #38601 - [ ] depends on: #39063 AI Disclosure: Various simplifications and refactors provided by Claude Code and then edited by me. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR 159/0 Mathlib/Topology/Semicontinuity/Michael.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
21-2391
21 days ago
21-2481
21 days ago
0-29
29 seconds
39108 idontgetoutmuch
author:idontgetoutmuch
feat(Geometry/Manifold/GroupLieAlgebra): Add mfderiv_mul_left_mul and left-translate for integral curves Add the following: `mfderiv_mul_left_mul`: the derivative of left-multiplication satisfies a chain rule: $$d(L_{g \cdot h})_x = d(L_g)_{h \cdot x} \circ d(L_h)_x$$ `mulInvariantVectorField_mul`: the vector field at the translated point is the push forward of the vector field: $$V(g \cdot h) = d(L_g)_h(V(h))$$ `IsMIntegralCurve.left_translate`: using these, if $\gamma$ is an integral curve of $V$, then so is $t \mapsto g \bullet \gamma(t)$ for any $g \in G$, since: $$\frac{d}{dt}(g \bullet \gamma(t)) = d(L_g)_{\gamma(t)}\left(\frac{d\gamma}{dt}(t)\right) = d(L_g)_{\gamma(t)}(V(\gamma(t))) = V(g \bullet \gamma(t))$$ I argue (*) all the time with LLMs so this PR will certainly have had some input from them. Is that enough of a disclosure? (*) Like Lewis Carroll: In my youth said the sage I took to the law and argued each case with wife And the muscular strength that it gave to my jaw has lasted the rest of my life t-differential-geometry new-contributor awaiting-author LLM-generated 73/0 Mathlib/Geometry/Manifold/GroupLieAlgebra.lean 1 8 ['github-actions', 'grunweg'] nobody
20-63004
20 days ago
20-63069
20 days ago
0-37992
10 hours
39123 SnirBroshi
author:SnirBroshi
chore(Data/Matrix/Basic): mention `mopMatrix` in `transpose{Ring/Alg}Equiv`s docstring and vice versa - `RingEquiv.mopMatrix` and `transposeRingEquiv` differ by a `ᵐᵒᵖ` since the latter assumes `CommMagma α` instead of `Mul α` - `AlgEquiv.mopMatrix` and `transposeAlgEquiv` differ by a `ᵐᵒᵖ` since the latter assumes `CommSemiring α` instead of `Semiring α` --- Also slightly golfs `RingEquiv.mopMatrix` as a drive-by. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 18/11 Mathlib/Data/Matrix/Basic.lean 1 1 ['github-actions'] nobody
20-59828
20 days ago
20-59910
20 days ago
20-59872
20 days
38587 dagurtomas
author:dagurtomas
feat(Tactic/CategoryTheory): concrete category boilerplate Adds `mk_concrete_category`, a command for generating the initial boilerplate for concrete categories whose morphisms are given by a bundled function type. The command creates the wrapper `Hom` type, named category and concrete category instances, `ofHom`, `Hom.hom`, and the basic dsimp lemmas. It handles parameterized categories such as `ModuleCat`, and has a paired additive/multiplicative form for generating both structures at once (e.g. `MonCat`/`AddMonCat`). Includes test categories checking the generated declarations. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated t-meta t-category-theory 905/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/MkConcreteCategory.lean,MathlibTest/CategoryTheory/MkConcreteCategory.lean 4 8 ['dagurtomas', 'eric-wieser', 'github-actions'] adamtopaz
assignee:adamtopaz
20-36499
20 days ago
23-27238
23 days ago
23-27961
23 days
39130 peabrainiac
author:peabrainiac
feat(Topology/Algebra): topological multiplicative torsors Introduce a class `IsTopologicalTorsor` for topological torsors of multiplicative groups, as a multiplicative counterpart to the existing `IsTopologicalAddTorsor` for topological torsors of additive groups. --- - [ ] depends on: #38896 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra blocked-by-other-PR
label:t-algebra$
464/349 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/Group/AddTorsor.lean,Mathlib/Topology/Algebra/ProperAction/AddTorsor.lean 8 2 ['github-actions', 'mathlib-dependent-issues'] nobody
20-36316
20 days ago
20-36774
20 days ago
0-1162
19 minutes
39134 peabrainiac
author:peabrainiac
chore(Algebra): module deprecations for `Mathlib.Algebra.AddTorsor` --- - [ ] depends on: #38896 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 650/538 Mathlib.lean,Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Torsor/Basic.lean,Mathlib/Algebra/Torsor/Defs.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/LinearAlgebra/AffineSpace/Defs.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/Group/AddTorsor.lean,Mathlib/Topology/Algebra/MulAction.lean,scripts/noshake.json 14 2 ['github-actions', 'mathlib-dependent-issues'] nobody
20-23337
20 days ago
20-23338
20 days ago
0-1666
27 minutes
38855 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Indexed): `≤` version of `ciSup_or'` for `ConditionallyCompleteLattice` Deprime `ciSup_or'` because there's no `ciSup_or`, and add a `≤` version (and dual) for `ConditionallyCompleteLattice`. Only `≤` because equality does not hold when `p ≠ q` without `sSup ∅ = ⊥`. --- `ciSup_or'` can't have a dual because there's no dual to `ConditionallyCompleteLinearOrderBot`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 8/1 Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 1 1 ['github-actions'] nobody
20-12009
20 days ago
27-33217
27 days ago
27-33179
27 days
39151 anovickis
author:anovickis
feat(Analysis/CStarAlgebra/Matrix): IsTopologicalGroup for specialUnitaryGroup Adds `ContinuousInv` and `IsTopologicalGroup` instances for `Matrix.specialUnitaryGroup n 𝕜`. The unitary group `Matrix.unitaryGroup n α` already inherits these via the `unitaryGroup ≡ unitary R` abbrev + existing instances on `unitary R` (in `Mathlib/Topology/Algebra/Star/Unitary.lean`). However, `specialUnitaryGroup` is the sub-Submonoid `unitaryGroup ⊓ MonoidHom.mker detMonoidHom` — it does not auto-inherit those instances since it is not literally an alias of `unitary R`. ### New declarations - `instance Matrix.specialUnitaryGroup.instContinuousInv` — proven via `Matrix.star_eq_inv` + `continuous_star` - `instance Matrix.specialUnitaryGroup.instIsTopologicalGroup` — combining `ContinuousMul` (from Submonoid structure) + `ContinuousInv` Both placed inside the existing `EntrywiseSupNorm` section in `Mathlib/Analysis/CStarAlgebra/Matrix.lean` (the natural neighborhood for matrix-specific topological structure on (special) unitary groups). ### Motivation These instances enable using `specialUnitaryGroup` as a topological group in homogeneous-space constructions (e.g., `SU(3) ⧸ T = F₂` flag manifolds). They complement #39146 (CompactSpace instances for the same groups) — together giving the standard 'compact topological group' typeclass set on `specialUnitaryGroup`. ### Verification \`\`\`lean example : ContinuousInv (Matrix.specialUnitaryGroup (Fin 3) ℂ) := inferInstance -- now works example : IsTopologicalGroup (Matrix.specialUnitaryGroup (Fin 3) ℂ) := inferInstance -- now works \`\`\` Both fail on master without this PR; both succeed after. t-analysis new-contributor awaiting-author 30/0 Mathlib/Analysis/CStarAlgebra/Matrix.lean 1 3 ['github-actions', 'j-loreaux', 'wwylele'] nobody
19-52128
19 days ago
19-52128
19 days ago
0-3921
1 hour
38489 Jun2M
author:Jun2M
feat(Topology/Algebra/InfiniteSum): Generalize ENNReal lemmas This PR generalizes many theorems in Topology/Algebra/InfiniteSum/ENNReal.lean from `ENNREal` to any type that satisfies a list of order-related instances, mostly `[CommMonoid α] [CompleteLattice α] [CanonicallyOrderedMul α] [TopologicalSpace α] [SupConvergenceClass α]` Deprecation of the original `ENNReal` lemmas are done in the next PR: #38193. Related Zulip thread: [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/588756615) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 261/3 Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 4 7 ['Jun2M', 'SnirBroshi', 'github-actions', 'wwylele'] nobody
19-49043
19 days ago
19-49120
19 days ago
35-39127
35 days
38649 chrisflav
author:chrisflav
chore(RingTheory): equality of linear map with values in finite module spreads out We add some corollaries of `Module.Finite.exists_smul_of_comp_eq_of_isLocalizedModule`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 75/1 Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Module.lean 3 2 ['github-actions'] alreadydone
assignee:alreadydone
19-36418
19 days ago
31-75567
31 days ago
31-75529
31 days
39107 SnirBroshi
author:SnirBroshi
feat(Geometry/Manifold/ChartedSpace): `H ≃ₜ M` → `ChartedSpace H M` --- I thought it was strange that `Homeomorph`s didn't have this easy dot-notation, though I'm not familiar with this part of the library so I might be missing something. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 6/0 Mathlib/Geometry/Manifold/ChartedSpace.lean 1 1 ['github-actions'] PatrickMassot
assignee:PatrickMassot
19-36407
19 days ago
21-14935
21 days ago
21-14897
21 days
39163 j-loreaux
author:j-loreaux
feat: `star` structures on `ContinuousLinearMapWOT` In particular, with these instances it makes sense to consider the `StarSubalgebra.topologicalClosure` of some `S : StarSubalgebra 𝕜 (F →WOT[𝕜] F)`. --- - [ ] depends on: #37914 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 157/4 Mathlib.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/TransferInstance.lean,Mathlib/Analysis/InnerProductSpace/WeakOperatorTopology.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] nobody
19-27811
19 days ago
19-27811
19 days ago
0-405
6 minutes
33664 ooovi
author:ooovi
feat(Geometry/Convex/Cone/Pointed): face lattice of pointed cones - Define PointedCone.IsFaceOf, for a pointed cone being a face of another pointed cone. - Prove some basic properties, that faces are extreme sets of their cone, and how they behave under intersection, map and product operations. - Define `Face` by bundling the `IsFaceOf` structure, and show the complete lattice structure on it. - Prove that taking the product of two faces is an order isomorphism. Co-authored-by: Martin Winter --- - [x] depends on: #33780 for the definition of the lineal space - [ ] depends on: #39185 for `isFaceOf` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry blocked-by-other-PR 485/0 Mathlib.lean,Mathlib/Geometry/Convex/Cone/Face/Basic.lean,Mathlib/Geometry/Convex/Cone/Face/Lattice.lean 3 200 ['YaelDillies', 'eric-wieser', 'github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'ooovi', 'vihdzp'] nobody
19-3761
19 days ago
44-73468
44 days ago
5-78229
5 days
39191 m13683320924-hue
author:m13683320924-hue
feat: define Asymptotics.IsSubpolynomial This PR defines `Asymptotics.IsSubpolynomial l f g`, meaning that `f` is asymptotically bounded by `1 + ‖g‖ ^ k` for some `k : ℕ`. It also adds basic closure lemmas for constants, addition, multiplication, and natural powers. Towards #32658. The formalization was developed with the help of Doubao-Seed-2.0-code and manually checked in Lean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 259/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/Subpolynomial.lean 2 3 ['github-actions'] nobody
18-78086
18 days ago
19-2647
19 days ago
0-344
5 minutes
35773 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat): another approach to the module structure on stalks In this draft PR, we define the colimit of a presheaf of modules indexed by an initially small cofiltered category. We apply this to the definition of fiber functors on (pre)sheaves of modules. After showing that these fiber functors are monoidal, we may deduce that the category of sheaves of modules is monoidal when the site has enough points. In particular, if `X` is a scheme, the category `X.Modules` of $$\mathcal O_X$$-Modules is monoidal. After some sorries are removed, we may obtain that the fullsubcategory of `X.Modules` consisting of quasi-coherent sheaves is also monoidal. --- - [x] depends on: #37662 - [x] depends on: #37370 - [x] depends on: #37369 - [x] depends on: #36688 - [x] depends on: #36810 - [x] depends on: #36692 - [x] depends on: #36680 - [x] depends on: #36599 - [x] depends on: #36457 - [x] depends on: #36470 - [x] depends on: #35572 - [x] depends on: #35806 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory large-import
label:t-algebra$
1126/4 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Adjunction.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctorMonoidal.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Point.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/PushforwardLaxMonoidal.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/RestrictScalarsLaxMonoidal.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/FreeMonoidal.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Point.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/QuasicoherentMonoidal.lean,Mathlib/AlgebraicGeometry/Modules/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Preadditive.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Sites/CoversTop/Basic.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean 19 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
18-77284
18 days ago
93-63728
93 days ago
0-1
1 second
39157 vihdzp
author:vihdzp
feat: `Nat.cast` commutes with addition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 26/9 Mathlib/Data/Nat/Cast/Commute.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean 2 2 ['github-actions', 'plp127'] nobody
18-76725
18 days ago
19-51790
19 days ago
19-51752
19 days
34054 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): OmegaCompletePartialOrder instance for `Sigma` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sigma` along with `ωScottContinuous` lemmas for basic operations (`mk`, `fst`, `snd`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sigma`s. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order please-merge-master awaiting-author 231/0 Mathlib/Data/Sigma/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean 2 29 ['Vierkantor', 'YellPika', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
18-72838
18 days ago
98-54089
98 days ago
16-66871
16 days
33611 urkud
author:urkud
feat(ImplicitFunction): add a parametric version --- I'm not sure if the supporting linear algebra lemmas are in the form we want to see them in Mathlib. - [x] depends on: #33585 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 191/0 Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Calculus/ImplicitFunction/Parametric.lean,Mathlib/LinearAlgebra/Prod.lean 4 13 ['PatrickMassot', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] ADedecker
assignee:ADedecker
18-67437
18 days ago
108-59976
108 days ago
36-2785
36 days
39213 m13683320924-hue
author:m13683320924-hue
feat: define maximal cliques and independent sets This PR adds explicit predicates for maximal cliques and maximal independent sets: - `SimpleGraph.IsMaximalClique` - `SimpleGraph.IsMaximalIndepSet` It also adds conversion lemmas to and from the existing `Maximal G.IsClique` and `Maximal G.IsIndepSet` formulations, plus basic complement and maximum-to-maximal lemmas. Towards #34962. The formalization was developed with the help of Doubao-Seed-2.0-code and manually checked in Lean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 60/22 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 3 ['SnirBroshi', 'github-actions'] nobody
18-57493
18 days ago
18-65322
18 days ago
0-389
6 minutes
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
18-54672
18 days ago
158-65394
158 days ago
10-66980
10 days
37625 slavanaprienko
author:slavanaprienko
feat(LinearAlgebra/Matrix/Charpoly): general coefficient formula as sum of principal minors This PR adds a general formula for the coefficients of `det(1 + X • M)` as sums of principal minors, generalizing the existing `coeff_det_one_add_X_smul_one` (k=1, trace) and `det_eq_sign_charpoly_coeff` (k=n, determinant). It also derives the corresponding formula for the coefficients of the characteristic polynomial via `charpolyRev`. New results: - `det_piecewise_one_eq_submatrix_det`: relates piecewise-with-identity to principal submatrix determinants - `coeff_det_one_add_X_smul_eq_sum_minors`: the k-th coefficient of `det(1 + X • M)` equals the sum of k×k principal minors - `charpoly_coeff_eq_sum_minors`: coefficients of the characteristic polynomial as signed sums of principal minors --- t-algebra new-contributor ready-to-merge
label:t-algebra$
105/1 Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean 1 28 ['eric-wieser', 'github-actions', 'kim-em', 'mathlib-bors', 'slavanaprienko', 'wwylele'] nobody
18-52931
18 days ago
19-23106
19 days ago
37-17965
37 days
39219 WenrongZou
author:WenrongZou
feat(FieldTheory/Finite): add variant theorems for `expand_card` Add `MvPolynomial, MvPowerSeries, PowerSeries` version of `FiniteField.expand_card`, which is only for polynomial. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
45/4 Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/FiniteField.lean,Mathlib/RingTheory/MvPolynomial/Expand.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/PowerSeries/Expand.lean 5 1 ['github-actions'] nobody
18-52112
18 days ago
18-52153
18 days ago
18-52347
18 days
37399 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): `IsPath` and `Nil` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 10/3 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean 2 8 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
18-50308
18 days ago
60-29957
60 days ago
60-30063
60 days
36863 artie2000
author:artie2000
refactor(Algebra/Order/Ring/Ordering): unbundle `RingPreordering` The current design for [RingPreordering](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Ordering/Defs.html#RingPreordering) ran into issues at PR #32077. This PR unbundles [RingPreordering](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Ordering/Defs.html#RingPreordering) into a class predicate on [Subsemiring](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Ring/Subsemiring/Defs.html#Subsemiring), generalising the material on supports as far as possible. Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Ring.20orderings.20-.20structure.20or.20predicate.3F/with/562594050 See #37298 for the analogous change to group and ring cones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
455/87 Mathlib.lean,Mathlib/Algebra/Order/Ring/Ordering/Basic.lean,Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/Algebra/Ring/Subsemiring/Support.lean 4 14 ['artie2000', 'chrisflav', 'github-actions', 'mathlib-merge-conflicts'] eric-wieser
assignee:eric-wieser
18-49056
18 days ago
18-49056
18 days ago
61-3850
61 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
18-48934
18 days ago
18-48935
18 days ago
46-71615
46 days
39049 thorimur
author:thorimur
bench: review Benching a modification to the overlapping instances linter before suggesting it... --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 715/43 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimits.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Invertible.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/Analysis/Fourier/FiniteAbelian/Orthogonality.lean,Mathlib/Analysis/Normed/Field/Krasner.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/ConjSqrt.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/CategoryTheory/Localization/Predicate.lean,Mathlib/CategoryTheory/Monoidal/Closed/Cartesian.lean,Mathlib/CategoryTheory/MorphismProperty/OverAdjunction.lean,Mathlib/Control/Applicative.lean,Mathlib/Control/Functor.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/Init.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean,Mathlib/LinearAlgebra/Eigenspace/Matrix.lean,Mathlib/LinearAlgebra/RootSystem/Finite/G2.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Lemmas.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean,Mathlib/Logic/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/NumberTheory/ClassNumber/Finite.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/ChainOfDivisors.lean,Mathlib/RingTheory/ClassGroup.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/DedekindDomain/LinearDisjoint.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/HahnSeries/Lex.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean,Mathlib/RingTheory/NormalClosure.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/OverlappingInstances.lean,Mathlib/Tactic/Linter/UnusedInstancesInType.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Topology/Algebra/MulAction.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Connected/PathConnected.lean,MathlibTest/OverlappingInstances.lean,MathlibTest/Subsingleton.lean,MathlibTest/Variable.lean,MathlibTest/WhitespaceLinter.lean,MathlibTest/congr.lean,MathlibTest/norm_num.lean 64 6 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'thorimur'] nobody
18-48902
18 days ago
unknown
0-0
0 seconds
39128 joelriou
author:joelriou
feat(CategoryTheory): triangulated derived functors using derivability structures --- - [ ] depends on: #39126 - [ ] depends on: #39117 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory blocked-by-other-PR merge-conflict 839/16 Mathlib.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerived.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerivedTriangulated.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerived.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedCommShift.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedTriangulated.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/GuitartExact/KanExtension.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/Derives.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/DerivesTriangulated.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/PointwiseLeftDerived.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/Localization.lean 13 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
18-48901
18 days ago
20-50234
20 days ago
0-1
1 second
37299 XC0R
author:XC0R
feat(NumberTheory): Chebyshev's lower bound on primorial ## Summary Prove `primorial(n) ≥ 2^(n/2)` for all `n ≥ 2` (Chebyshev's 1852 lower bound). This is the lower bound complement to `primorial_le_four_pow`. Addresses the TODO at `Chebyshev.lean` line 50: "Prove Chebyshev's lower bound." ### New file: `Mathlib/NumberTheory/PrimorialLowerBound.lean` **Main theorems:** - `two_pow_le_primorial`: `2 ^ n ≤ primorial (2 * n)` for `n ≥ 29` - `two_pow_div_two_le_primorial`: `2 ^ (n / 2) ≤ primorial n` for `n ≥ 2` **Key intermediates:** - `centralBinom_le_pow_mul_primorial`: `C(2n,n) ≤ (2n)^{π(√(2n)+1)} * primorial(2n)` - `eight_mul_sq_add_le_two_pow`: `8u² + 16u + 8 ≤ 2^u` for `u ≥ 10` ### Proof technique Central binomial decomposition: from `four_pow_lt_mul_centralBinom` and `factorization_choose_le_log`, bound `C(2n,n)` above by `(2n)^{π(√(2n)+1)} * primorial(2n)`. Rearranging gives `primorial(2n) ≥ 2^n` for `n ≥ 29`. Base cases by `norm_num` + `decide`, large `n` analytically via `√n` factoring. ### AI disclosure Claude (Anthropic) was used as a coding assistant for Lean tactic exploration, file structuring, and CI debugging. All proof strategy, mathematical content, and final code have been reviewed and are understood by the author. t-number-theory new-contributor awaiting-author 226/2 Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Primorial.lean 2 53 ['MichaelStollBayreuth', 'Parcly-Taxel', 'XC0R', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
18-46677
18 days ago
49-58780
49 days ago
13-62238
13 days
31580 grunweg
author:grunweg
feat: towards `ContMDiff` support in fun_prop Create a `find_model` tactic for solving `ModelWithCorners k E H` goals, and a #find_model command to simplify testing it. (Both implementations are a bit hacky right now.) next step: extend the tactic, test that it works well then try to hook it up to fun_prop --- - [x] depends on: #30463 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry merge-conflict t-meta 1254/64 Mathlib/Geometry/Manifold/Instances/UnitsOfNormedAlgebra.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/TestFunPropM.lean,MathlibTest/DifferentialGeometry/Notation.lean,MathlibTest/DifferentialGeometry/NotationAdvanced.lean,mathlib-immersions 6 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
18-45423
18 days ago
198-8118
198 days ago
0-1
1 second
39162 anovickis
author:anovickis
feat(Topology/PartitionOfUnity): add pointwise_decomposition_finsum + companions Add three short lemmas to `Mathlib/Topology/PartitionOfUnity.lean` extending the existing `PartitionOfUnity` API: - `pointwise_decomposition_finsum` — for `f : X → ℝ` and `x ∈ s`, `f x = ∑ᶠ i, ρ i x · f x`. This is the pointwise step that lifts to integral linearity in measure-theoretic PoU integration: `∫_s f dμ = ∑ᶠ i, ∫_s (ρ i · f) dμ`. - `one_minus_sum_nonneg` — `0 ≤ 1 - ∑ᶠ i, ρ i x`. Direct rearrangement of the existing `sum_le_one` field; useful as a complement-mass remainder bound in chart-by-chart estimates. - `abs_le_one` — `|ρ i x| ≤ 1`. Combines the existing `nonneg` and `le_one`; convenience for absolute-value bounds. All three are short proofs using existing structure fields (`sum_eq_one`, `sum_le_one`, `nonneg`, `le_one`). These came up while writing chart-by-chart Stokes-on-manifold estimates where one wants to decompose `∫_M f` into chart-supported pieces using a partition of unity. The pointwise identity is the obvious first step; the other two are complementary algebraic bounds that show up in remainder estimates. --- 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-topology new-contributor LLM-generated 27/0 Mathlib/Topology/PartitionOfUnity.lean 1 2 ['github-actions'] urkud
assignee:urkud
18-36794
18 days ago
19-32715
19 days ago
19-32677
19 days
36559 faenuccio
author:faenuccio
feat(Analysis/Convex/Uniform): uniformly convex spaces using filters This PR adds an equivalent formulation for a space being uniformly convex using filters. Co-authored-by: Aristotle (Harmonic) WIP t-analysis 205/2 Mathlib/Analysis/Convex/Uniform.lean 1 1 ['github-actions'] faenuccio
assignee:faenuccio
18-31152
18 days ago
78-54905
78 days ago
0-20
20 seconds
39232 jerwaynejones
author:jerwaynejones
feat(Analysis/Complex): residue theorem for rectangular contours Adds `Mathlib/Analysis/Complex/RectangleResidue.lean` (644 LoC), filling the gap between Cauchy–Goursat for rectangles (`Complex.integral_boundary_rect_eq_zero_of_differentiable_on_off_countable`) and the Cauchy integral formula for circles. The file proves the residue formula for rectangular boundary integrals together with a rotated principal log branch needed to evaluate the left-edge integral that crosses the standard cut. ## Why Mathlib has Cauchy–Goursat for rectangles and the Cauchy integral formula for circles, but no residue theorem for rectangular contours. This file fills that gap. It was extracted from a downstream Lean 4 formalization project (a conditional proof of Goldbach's conjecture, where contour shifting on rectangles arises naturally in Perron's formula). ## Main results - **`Complex.hasDerivAt_log_neg`** — the rotated logarithm `log_neg z := log (-z) + I * π` has derivative `z⁻¹` on the rotated slit plane `{z | -z ∈ slitPlane}` (cut on the positive real axis). - **`Complex.boundaryIntegral_inv_sub_eq_two_pi_I`** — for `ρ` strictly inside the rectangle `[z, w]`, `∮_{∂[z,w]} (s − ρ)⁻¹ ds = 2πi`. - **`Complex.boundaryIntegral_eq_residue_sum`** — parametric residue theorem for a sum of simple poles plus a holomorphic remainder, packaged as `Complex.RectangleResidueData`. - **`Complex.boundaryIntegral_single_pole`** — the one-pole specialization. ## Structure The development proceeds in five stages: 1. A notation `Complex.boundaryIntegral` for the oriented boundary integral over `[z, w]`, with a Cauchy–Goursat wrapper and additivity/scaling lemmas. 2. A rotated principal logarithm `Complex.log_neg z := log (-z) + I * π` with cut on the *positive* real axis, plus its derivative and corner-comparison identities with the standard `Complex.log`. 3. Explicit FTC-based evaluations of the four edge integrals of `(s − ρ)⁻¹`. 4. A closed-form residue boundary integral `∮_{∂[z,w]} (s − ρ)⁻¹ ds = 2πi` for `ρ` strictly inside the rectangle. 5. A parametric residue theorem for sums of simple poles plus a holomorphic remainder, packaged as `Complex.RectangleResidueData`. ## References - L. Ahlfors, *Complex Analysis* (3rd ed.), §4.5. - E. Stein and R. Shakarchi, *Complex Analysis*, Ch. 2 §3 Thm 3.1. ## Status Draft while CI verifies the build against current `master` — the file was developed against `v4.28.0` and cherry-picked forward 2942 commits, so import surface changes are possible. Once CI is green I will flip to ready-for-review. 🤖 Generated with [Claude Code](https://claude.com/claude-code) t-analysis new-contributor 644/0 Mathlib.lean,Mathlib/Analysis/Complex/RectangleResidue.lean 2 2 ['github-actions'] nobody
18-18147
18 days ago
unknown
0-0
0 seconds
39239 alainchmt
author:alainchmt
feat(FieldTheory/Finite): irreducible polynomial divides X^q^n - X iff degree divides n --- Add the theorem saying that, for an irreducible polynomial `f` over a finite field `K`, the degree of `f` divides `n` if and only if `f` divides `X ^ (Nat.card K) ^ n - X`. Include auxiliary lemmas. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
34/0 Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Minpoly/Field.lean 2 2 ['github-actions'] nobody
18-5967
18 days ago
18-6056
18 days ago
18-6018
18 days
39165 allenhaozhu
author:allenhaozhu
feat(Probability/Moments): add IsSubExponential class Add `ProbabilityTheory.IsSubExponential X μ ν b`, the sub-exponential random variable class: `mgf X μ s ≤ exp (s²ν/2)` for `|s| < 1/b`. Mirror the structure of the existing `Mathlib/Probability/Moments/SubGaussian.lean`. Include constructor lemmas (`IsSubExponential.const`, `mono_b`, `mono_nu`) and a tail bound derived through Mathlib's `measure_ge_le_exp_mul_mgf`. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-measure-probability new-contributor LLM-generated awaiting-author 257/0 Mathlib.lean,Mathlib/Probability/Moments/SubExponential.lean 2 4 ['allenhaozhu', 'github-actions', 'grunweg'] nobody
17-83970
17 days ago
19-7213
19 days ago
0-2698
44 minutes
39168 allenhaozhu
author:allenhaozhu
feat(Analysis/Convex/Subgradient): add subgradient characterization for |·| and ℓ¹ Add `Convex.IsAbsSubgradient x g`, the predicate that `g` is a subgradient of `|·|` at `x`. Prove the standard characterization: the only subgradient at `x > 0` is `1`; at `x < 0` it is `-1`; at `x = 0` the subgradients are exactly `[-1, 1]`. Add `IsL1Subgradient`, the componentwise lift to `Fin n → ℝ` used by ℓ¹-regularized estimation (Lasso KKT). --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-analysis new-contributor LLM-generated awaiting-author 231/0 Mathlib.lean,Mathlib/Analysis/Convex/Subgradient/Abs.lean 2 4 ['allenhaozhu', 'github-actions', 'grunweg'] nobody
17-83968
17 days ago
19-7298
19 days ago
0-2608
43 minutes
39195 linesthatinterlace
author:linesthatinterlace
feat(Logic/Function/Defs): Add dcomp lemmas This PR adds API lemmas about `dcomp` that were previously missing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 13/0 Mathlib/Logic/Function/Defs.lean 1 6 ['github-actions', 'linesthatinterlace', 'plp127'] nobody
17-81626
17 days ago
18-83125
18 days ago
18-83087
18 days
25427 Paul-Lez
author:Paul-Lez
feat(Analysis/Calculus/PartialDerivatives): Propose notation for partial derivatives. This PR introduces a notation for partial derivatives, taken with respect to a canonical basis. The idea here is that this might be useful for e.g. writing down PDEs. The notation allows use to write things like ```lean -- The canonical basis for `ℝ × ℝ` is indexed by `Fin 0` so `∂₀[ℝ]` corresponds to taking -- the first partial derivative example : (∂₀[ℝ] fun (x : ℝ × ℝ) => x.1) 0 = 1 := by simp [Pi.zero_def, lineDeriv] ``` This has already been discussed on Zulip [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Partial.20derivatives). I've opened this PR as a draft in order to get preliminary feedback on the contents (e.g. is this appropriate for Mathlib?); the file contains some demos of the notation in action. Co-authored-by: Eric Wieser --- - [ ] depends on: #25425 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 195/0 Mathlib.lean,Mathlib/Analysis/Calculus/PartialDerivatives/Notation.lean,Mathlib/LinearAlgebra/Basis/HasCanonicalBasis.lean 3 16 ['Paul-Lez', 'github-actions', 'leanprover-community-bot-assistant', 'lecopivo', 'mathlib-dependent-issues', 'ocfnash'] nobody
17-75641
17 days ago
unknown
0-0
0 seconds
38887 Rosario-Leonardi-CT
author:Rosario-Leonardi-CT
feat(Analysis/Fourier/ZMod): add dft_star_comp Adds `ZMod.dft_star_comp`, expressing that `𝓕 (star ∘ Φ) k = star (𝓕 Φ (-k))`, the discrete analogue of the Fourier transform's interaction with complex conjugation, complementing the existing `dft_comp_neg`. --- AI disclosure: lemma statement and proof drafted with assistance from Claude Code; verified by the Lean compiler with no `sorry` and standard axioms only (`propext`, `Classical.choice`, `Quot.sound`). t-analysis new-contributor awaiting-author 9/0 Mathlib/Analysis/Fourier/ZMod.lean 1 8 ['Rosario-Leonardi-CT', 'github-actions', 'wwylele'] j-loreaux
assignee:j-loreaux
17-68966
17 days ago
21-62784
21 days ago
5-6447
5 days
18551 joelriou
author:joelriou
feat(AlgebraicGeometry): the algebraic De Rham complex If `B` is an `A`-algebra, we construct the algebraic De Rham complex of `B` over `A`: it is a cochain complex of `A`-modules. --- - [ ] depends on: #18735 - [ ] depends on: #18662 - [ ] depends on: #26464 - [ ] depends on: #26465 - [x] depends on: #18534 - [x] depends on: #18440 - [x] depends on: #18432 - [x] depends on: #18408 - [x] depends on: #18389 - [x] depends on: #18374 - [x] depends on: #18359 - [x] depends on: #18332 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR merge-conflict t-algebraic-geometry
label:t-algebra$
2836/156 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/Cokernel.lean,Mathlib/Algebra/Module/Presentation/Differentials.lean,Mathlib/Algebra/Module/Presentation/DirectSum.lean,Mathlib/Algebra/Module/Presentation/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Algebra/Module/Presentation/RestrictScalars.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/DeRham/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 26 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
17-64838
17 days ago
unknown
0-0
0 seconds
27392 Paul-Lez
author:Paul-Lez
feat(Tactic/SimpUtils): add simproc finding commands This PR adds some commands to allow users to find simprocs/dsimprocs/simp theorems that match on a given pattern. Thanks to Robin Arnez for telling me about `simprocDeclExt` :) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 173/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimpUtils.lean,MathlibTest/SimpUtils.lean 4 14 ['Paul-Lez', 'Vierkantor', 'eric-wieser', 'github-actions', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
17-61393
17 days ago
309-80720
309 days ago
0-5960
1 hour
34288 winstonyin
author:winstonyin
feat: Integral curve is smooth in initial condition I prove the local smoothness theorem for integral curves of ODEs on Banach spaces with respect to the initial condition. Serge Lang's _Fundamentals of Differential Geometry_ gives two proofs (Theorem 1.11). The first one is based on Grönwall's inequality. The second one (p. 81 onwards) is based on the implicit function theorem, found by Pugh and Robbin 1968. I've chosen to formalise the second, even though it may be more involved. I wanted to do this as a challenge, and because the second proof also applies to $H^k$ vector fields (Ebin and Marsden 1970), which are not yet in Mathlib. I am open to splitting this up into several smaller PRs. ## Statement Let $f : E \to E$ be a vector field that is $C^n$ at $x_0 : E$ with $n \geq 1$. There exists a neighbourhood $U$ of $x_0$ and time interval $[t_{\mathrm{min}},t_{\mathrm{max}}]$ containing $t_0$ such that for every $x \in U$, there exists an integral curve $\alpha_x : C([t_{\mathrm{min}},t_{\mathrm{max}}], E)$ of $f$ with initial condition $\alpha_x(t_0) = x$, and that $x \mapsto \alpha_x$ is $C^n$. Note that this is not the full smoothness theorem for local flows, which states that the local flow $\alpha : [t_{\mathrm{min}},t_{\mathrm{max}}] \times U \to E$ is $C^n$ at $(t_0, x_0)$. We will prove this in a series of future PRs. ## Proof strategy * Define implicit equation $T_f : E \times C([t_{\mathrm{min}},t_{\mathrm{max}}],E) \to C([t_{\mathrm{min}},t_{\mathrm{max}}],E)$ so that $T(x,\alpha) = 0$ implies that $\alpha$ is an integral curve of $f$ with initial condition $x$. * Prove implicit equation is $C^n$ if $f$ is $C^n$. * Prove $\partial_\alpha T_f$ is invertible for some choice of $[t_{\mathrm{min}},t_{\mathrm{max}}]$. * Extract the local flow $(x : E) \mapsto (\alpha_x : C([t_{\mathrm{min}},t_{\mathrm{max}}],E))$ as the implicit function of $T_f$ around a known integral curve. * Conclude that $x \mapsto \alpha_x$ is $C^n$. ## For reviewers * Where should `Set.Icc.abs_sub_le` go? * Some proofs (marked with TODO) can be shortened after #34120, but I don't want it to be blocking. - [x] depends on: #34860 - [x] depends on: #34861 - [x] depends on: #34862 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 863/0 Mathlib.lean,Mathlib/Analysis/ODE/SmoothFlow.lean,Mathlib/Topology/MetricSpace/Pseudo/Lemmas.lean 3 8 ['github-actions', 'idontgetoutmuch', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
17-49153
17 days ago
80-70438
80 days ago
14-50302
14 days
39230 bryangingechen
author:bryangingechen
chore: extract API from #38807 and golf I wanted to understand why these two proofs in #38807 were long (and also play around more with the API in this corner of the library) so I walked through them with Claude Opus. prepared with Claude code t-order LLM-generated 23/37 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/DirSupClosed.lean 2 2 ['github-actions', 'vihdzp'] nobody
17-45989
17 days ago
18-34225
18 days ago
18-34187
18 days
32305 faenuccio
author:faenuccio
feat: define Sobolev Spaces Nothing to see yet. --- - [x] depends on: #32250 - [x] depends on: #31809 - [ ] depends on: #39217 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis large-import 2487/53 Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Distribution/WeakDeriv.lean,Mathlib/Analysis/FunctionalSpaces/Sobolev/Basic.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean 7 8 ['ADedecker', 'faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
17-42360
17 days ago
179-80675
179 days ago
0-2
2 seconds
38918 yuanyi-350
author:yuanyi-350
chore(CategoryTheory/Groupoid/FreeGroupoid): remove an erw - rewrites `lift` by simplifying the quotient-lift compatibility condition with `simp only` - replaces the remaining `erw` chain with a direct rewrite through `Quiver.symmetrify_reverse` and `Groupoid.reverse_eq_inv` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated awaiting-author 5/3 Mathlib/CategoryTheory/Groupoid/FreeGroupoid.lean 1 2 ['github-actions', 'loefflerd'] nobody
17-36304
17 days ago
17-36304
17 days ago
8-51714
8 days
35415 joneugster
author:joneugster
feat(Cache): enable partial cache in downstream projects Migrated to fork from: #21238. Enable partial cache retrieval in downstream projects: `lake exe cache get MyProject.Basic` downloads only the relevant cache to build `MyProject/Basic.lean` --- ### Notes: - replaces: #21195 - should address: #8767 - should address: #20568 ### Completed: - [x] depends on: #21632 - [x] ~~depends on: #21663~~ - [x] depends on: #21666 - [x] depends on: #21701 - [x] depends on: #21703 - [x] depends on: #21704 - [x] depends on: #21705 - [x] depends on: #21707 - [x] depends on: #21711 - [x] depends on: #21750 - [x] depends on: #21815 - [x] depends on: #21816 - [x] depends on: #21817 - [x] depends on: #21818 - [x] depends on: #21822 - [x] depends on: #21830 - [x] depends on: #21848 - [x] depends on: #21834 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI t-meta awaiting-author 27/15 Cache/Hashing.lean,Cache/IO.lean,Cache/Main.lean 3 5 ['github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
17-14950
17 days ago
25-24462
25 days ago
44-79297
44 days
31187 loefflerd
author:loefflerd
feat(NumberTheory/LSeries): Define the L-series of a modular form Define the L-function of a modular form (showing it is meromorphic on C and agrees with the naive Dirichlet series for `re s` large). --- - [x] depends on: #30089 WIP t-number-theory 237/28 Mathlib.lean,Mathlib/NumberTheory/LSeries/AbstractFuncEq.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/ModularForms/LFunction.lean 4 8 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
17-14473
17 days ago
208-71490
208 days ago
0-1
1 second
36202 vihdzp
author:vihdzp
feat: more theorems on the Cantor normal form We also remove some redundant assumptions. Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 68/17 Mathlib/SetTheory/Ordinal/CantorNormalForm.lean 1 21 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] YaelDillies
assignee:YaelDillies
17-7911
17 days ago
66-7460
66 days ago
84-85783
84 days
36388 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/AdjMatrix): submatrices and homomorphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 73/3 Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean 1 19 ['SnirBroshi', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody
16-86192
16 days ago
17-36370
17 days ago
46-73287
46 days
31176 mcdoll
author:mcdoll
feat(Analysis): Taylor's theorem with the integral remainder Prove Taylor's theorem with the integral remainder in higher dimensions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author 145/1 Mathlib.lean,Mathlib/Analysis/Calculus/TaylorIntegral.lean,docs/100.yaml,docs/undergrad.yaml 4 10 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mcdoll', 'sgouezel'] j-loreaux
assignee:j-loreaux
16-84871
16 days ago
16-84871
16 days ago
42-57557
42 days
38762 yuanyi-350
author:yuanyi-350
chore(AlgebraicGeometry/EllipticCurve/Projective/Point): remove erws - rewrites `neg_of_Z_ne_zero` by splitting the `Fin 3` equality and closing the coordinates with `rw` - rewrites `addXYZ_neg` with `rw` followed by `simp` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-algebraic-geometry LLM-generated awaiting-author 6/3 Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean 1 4 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
16-79078
16 days ago
16-79078
16 days ago
12-86367
12 days
39050 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): `Digraph` is `GraphLike` `Digraph` has `GraphLike` instance. --- - [ ] depends on: #36743 - [ ] depends on: #39047 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR 184/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/GraphLike.lean,Mathlib/Combinatorics/GraphLike/Basic.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
16-74454
16 days ago
22-50103
22 days ago
0-523
8 minutes
38606 dennj
author:dennj
feat: preparation for Vanishing Sum of Roots of Unity Adds the Mathlib API extensions needed for an upcoming formalization of the Lam-style classification theorem for vanishing sums of roots of unity. * Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean + `exists_eq_const_of_sum_smul_eq_zero_of_sum_eq_zero_of_linearIndependent`: if `∑ vᵢ = 0` and the first `n-1` of `n` vectors are linearly independent, every linear relation has constant coefficients. * Mathlib/RingTheory/Radical/NatInt.lean + `Nat.totient_eq_div_radical_mul_totient_radical`: Euler's totient splits as `φ(n) = (n / rad n) * φ(rad n)`. * Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean + `IsPrimitiveRoot.sum_range_pow_mul_div_eq_zero_of_dvd`: the `d` evenly-spaced powers of a primitive `k`-th root sum to zero, for `d ∣ k` and `1 < d`. * Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean (new) + `IsPrimitiveRoot.linearDisjoint_adjoin_pow_of_coprime`: cyclotomic subfields of coprime orders are linearly disjoint over `ℚ`. * Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean (new) + `IsPrimitiveRoot.coeffs_eq_of_sum_pow_eq_zero_prime_coprime`: in the cyclotomic field of order `p * m` with `p` prime coprime to `m`, any `ℚ⟮ζ^p⟯`-linear relation among powers of `ζ^m` has all coefficients equal. --- I need these as preparation to start formalizing the theorem: Let k be a positive integer. If a finite family of complex k-th roots of unity sums to zero, then the size of the family is a non-negative integer combination of the prime divisors of k. --- Human-made PR with AI used for golfing and documentation new-contributor 219/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean,Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean,Mathlib/RingTheory/Radical/Totient.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
16-72457
16 days ago
16-50626
16 days ago
8-31594
8 days
39054 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): `SimpleGraph` is `GraphLike` --- - [ ] depends on: #36743 - [ ] depends on: #39047 - [ ] depends on: #36829 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 292/0 Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/SimpleGraph/GraphLike.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
16-71820
16 days ago
22-43542
22 days ago
0-405
6 minutes
39053 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): `Graph` is `GraphLike` --- - [ ] depends on: #36743 - [ ] depends on: #39047 - [ ] depends on: #36829 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 326/0 Mathlib.lean,Mathlib/Combinatorics/Graph/GraphLike.lean,Mathlib/Combinatorics/GraphLike/Basic.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
16-71704
16 days ago
22-44558
22 days ago
0-242
4 minutes
39279 jayscambler
author:jayscambler
feat(Cryptography/Sigma): Schnorr sigma protocol and signature scheme Adds `Mathlib/Cryptography/Sigma/Schnorr.lean`. New file in a new top-level directory; mathlib currently has no `Mathlib/Cryptography/`, so I've taken `Mathlib/Cryptography/Sigma/` as the natural home for sigma-protocol formalizations. The file proves the three defining properties of Schnorr's identification scheme as a sigma protocol: - `Schnorr.correct`: completeness. Honest verifier accepts honest signer's transcript. - `Schnorr.specialSoundness`: from two accepting transcripts sharing the commitment but using different challenges `c, c'`, the witness `x = (s - s') / (c - c')` is recovered. Needs `q` prime so `c - c'` is invertible in `ZMod q`. - `Schnorr.hvzkAccepts`: the HVZK simulator `g^s · (y^c)⁻¹` always yields accepting transcripts. This is the structural-correctness half of HVZK only; the distributional indistinguishability statement is a separate result and not in this PR. On top of the sigma protocol there's `Schnorr.Signature.{keyGen, sign, verify, correct}` wrapping it as a Fiat-Shamir signature scheme; `Schnorr.Signature.correct` is a one-line corollary of `Schnorr.correct`. Two auxiliary lemmas, `Schnorr.gpow_sub` and `Schnorr.gpow_mul`, bridge `ZMod q` arithmetic and group exponentiation under `Fintype.card G = q`. They're local to this file for now because the surrounding `gpow` API is itself cryptography-specific; if a general `ZMod q`-graded group action framework lands in mathlib later, both lemmas would become instances of it. There's also a small `example` instantiating everything on `Multiplicative (ZMod q)` for `Fact q.Prime` to show the API typechecks. That instantiation is a toy (DLOG is trivial in that group), but it confirms the abstraction is usable. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 352/0 Mathlib.lean,Mathlib/Cryptography/Sigma/Schnorr.lean 2 2 ['github-actions'] nobody
16-69809
16 days ago
16-69888
16 days ago
16-70340
16 days
35255 vlad902
author:vlad902
feat(SimpleGraph): `cycleGraph.IsContained` in every graph with a cycle --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 35/0 Mathlib/Combinatorics/SimpleGraph/Circulant.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-66449
16 days ago
31-52921
31 days ago
31-53830
31 days
39047 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): GraphLike with no multi edges This PR introduces `NoMultiEdgeGraphLike` (alternative name suggestion are welcome), extension of `GraphLike` for those with no multiple darts, and therefore edges, between a pair of vertices. --- - [ ] depends on: #36743 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 140/0 Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
16-65935
16 days ago
22-52851
22 days ago
0-23
23 seconds
36829 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): introduce SymmGraphLike typeclass Per discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)), This PR extends `GraphLike` typeclass defined in #36743 for graphs with symmetric darts (`SimpleGraph` and `Graph`, not `Digraph`). ### Main definitions * `SymmGraphLike V D E Gr`: A typeclass extending `GraphLike` with together with `inv`, an involution function on darts that swaps `src` and `tgt`. * `NoMultiEdgeSymmGraphLike V D E Gr`: A typeclass extending `NoMultiEdgeGraphLike` and `SymmGraphLike`. --- - [ ] depends on: #36743 - [ ] depends on: #39047 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 245/0 Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean 2 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-65814
16 days ago
72-56355
72 days ago
0-154
2 minutes
39293 kbuzzard
author:kbuzzard
perf: Field.toEuclideanDomain fast_instance% --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Just an experiment. Pulled this fast_instance% off #38087 to see if it makes a difference. Will then try it after #39263 to see if it still makes a difference. WIP t-algebra
label:t-algebra$
3/1 Mathlib/Algebra/EuclideanDomain/Field.lean 1 5 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
16-62741
16 days ago
17-6176
17 days ago
0-2
2 seconds
38114 javgomzar
author:javgomzar
feat(FinitelyPresentedGroup): add finite groups instance Add IsFinitelyPresented instance for finite groups. Co-authored-by: Hang Lu Su , Thomas Browning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor large-import 31/2 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 33 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] mattrobball
assignee:mattrobball
16-61419
16 days ago
16-61455
16 days ago
39-59154
39 days
31662 edwin1729
author:edwin1729
feat(Topology/Order): topological basis of scott topology on Complete… …PartialOrder --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20Algebraic.20complete.20partial.20order.20and.20domain.20theory/with/536359313) for this PR. (2/5) PRs in domain theory, proving that scott topologies over Algebraic DCPOs (`CompletePartialOrder`) are sober. The main reference is [Renata, Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf). But the statements can also be found in the canonical text [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) This first PR proves two prerequisites, namely: - the specialization order induced by the scott topology corresponds to the existing order of the DCPO. Prop 3.1.5 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.2(1) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - the upward closures of compact elements of the DCPO form a topological basis for the Scott Topology. Prop 3.5.2 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.6(2) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - [x] depends on: #33061 **The next PR is here:** #31670 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor awaiting-author 165/1 Mathlib.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 5 99 ['b-mehta', 'edwin1729', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] b-mehta
assignee:b-mehta
16-60320
16 days ago
24-61756
24 days ago
64-31147
64 days
36345 Brian-Nugent
author:Brian-Nugent
feat(AlgebraicGeometry): Vanishing for Affine Schemes Proves that quasi-coherent sheaves on affine schemes have vanishing higher cohomology. --- - [ ] depends on: #37187 - [ ] depends on: #35785 - [ ] depends on: #34742 - [ ] depends on: #36218 - [ ] depends on: #35790 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebraic-geometry t-category-theory blocked-by-other-PR merge-conflict 1711/116 Mathlib.lean,Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/AlgebraicGeometry/Modules/AffineVanishing.lean,Mathlib/AlgebraicGeometry/Modules/KempfProp1.lean,Mathlib/AlgebraicGeometry/Modules/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/CategoryTheory/Sites/Abelian.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean,Mathlib/Topology/Sheaves/AddCommGrpCat.lean,Mathlib/Topology/Sheaves/Flasque.lean,Mathlib/Topology/Sheaves/Presheaf.lean,Mathlib/Topology/Sheaves/Restrict.lean,Mathlib/Topology/Sheaves/Sheaf.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean,Mathlib/Topology/Sheaves/SheafCondition/UniqueGluing.lean,Mathlib/Topology/Sheaves/ZeroOutside.lean 21 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-56362
16 days ago
unknown
0-0
0 seconds
34855 staroperator
author:staroperator
feat(Order): use `to_dual` for `PFilter` This PR redefines `PFilter` to get rid of `OrderDual` and uses `to_dual` to translate theorems. The whole file of `PFilter` is now deprecated. Some changes: - To align with `Filter`, the order on `PFilter` is changed to the reversed set inclusion. Ultrafilters, the dual notion of maximal ideals, become minimal in this order. - `to_dual` does not work on `sequenceOfCofinals`. I left `Order.Cofinal` and the Rasiowa–Sikorski lemma not `to_dual`-ized, and we should move them to a separate file later. - `IsLEChain` is added to tag `to_dual`. - `IsCoatom.isProper`/`IsCoatom.isMaximal` is deprecated by `Order.Ideal.isProper_of_isCoatom`/`Order.Ideal.isMaximal_of_isProper`, since this result is special to ideals while `IsCoatom` namespace should be for orders in general. --- - [x] depends on: #34820 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 292/242 Mathlib/Order/Atoms.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/BooleanAlgebra/Defs.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/Ideal.lean,Mathlib/Order/PFilter.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/PrimeIdeal.lean,Mathlib/Order/PrimeSeparator.lean,Mathlib/Order/ZornAtoms.lean,Mathlib/RingTheory/IdealFilter/Basic.lean,Mathlib/RingTheory/IdealFilter/Topology.lean,Mathlib/Tactic/Translate/ToDual.lean 13 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-54230
16 days ago
16-54008
16 days ago
28-77282
28 days
39310 edegeltje
author:edegeltje
feat(CategoryTheory/FiberedCategory/Fibered): Add composition of (strongly) cartesian morphisms and of fibered functors This PR defines the "vertical pasting" aspects of homlifts and (strongly) cartesian morphisms, it proves that the composition of fibered functors is fibered, and it proves that if an equivalence of categories has the identity natural transformation as its unit or counit, then the backward or forward directions of that equivalence are fibered functors, respectively. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author 179/6 Mathlib/CategoryTheory/FiberedCategory/Cartesian.lean,Mathlib/CategoryTheory/FiberedCategory/Fibered.lean,Mathlib/CategoryTheory/FiberedCategory/HomLift.lean 3 19 ['dagurtomas', 'edegeltje', 'github-actions'] nobody
16-49529
16 days ago
16-49529
16 days ago
0-17474
4 hours
38783 marcelolynch
author:marcelolynch
experiment / do not review: breaking change for downstream do not review WIP toric carleson 7/0 Mathlib/Probability/Combinatorics/BinomialRandomGraph/Defs.lean 1 18 ['downstream-reports-automation', 'github-actions'] nobody
16-49247
16 days ago
29-66573
29 days ago
0-473
7 minutes
39334 mcdoll
author:mcdoll
feat(FunProp): tag `Monotone` and friends --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order large-import 64/0 Mathlib/Order/Monotone/Defs.lean 1 1 ['github-actions'] nobody
16-48954
16 days ago
unknown
0-0
0 seconds
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
16-41280
16 days ago
23-5858
23 days ago
48-72076
48 days
36534 Vierkantor
author:Vierkantor
experiment: define a simproc for simplifying `a = b` from `b = a` Can we define a working simproc that tries to simplify expressions of the form `b = a` given simp lemmas talking about `a = b`? If this does not hurt build times too much, that would solve [task 40](https://github.com/mathlib-initiative/TaskList/issues/40). --- - [ ] depends on: #37850 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic WIP merge-conflict 146/56 Archive/Examples/IfNormalization/WithoutAesop.lean,Archive/Imo/Imo2024Q5.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/Order/Antidiag/Finsupp.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Pi.lean,Mathlib/Analysis/Complex/Arg.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/Fin/Tuple/Sort.lean,Mathlib/Data/Matrix/Diagonal.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/Prod.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/LinearAlgebra/Matrix/Permutation.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/NumberTheory/LegendreSymbol/GaussEisensteinLemmas.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/Tactic/NormNum/Irrational.lean 33 16 ['Vierkantor', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-40468
16 days ago
78-75284
78 days ago
0-1598
26 minutes
37553 grunweg
author:grunweg
chore: golf using .ne and friends ne_of_gt -> .ne' ne_of_lt -> .ne le_of_lt -> .le Drive-by golfs using gcongr and positivity and been split into separate PRs. --- - [x] depends on: #37462 - [x] depends on: #37715 - [x] depends on: #37554 - [x] depends on: #37845 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 302/321 Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/NowhereDifferentiable.lean,Counterexamples/TopologistsSineCurve.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Finite.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Interval/Set/Instances.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/DenomsClearable.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/QuadraticDiscriminant.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/Asymptotics/LinearGrowth.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Tagged.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/DerivativeTest.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean,Mathlib/Analysis/Calculus/LHopital.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/OpenMapping.lean,Mathlib/Analysis/Complex/Poisson.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convex/Caratheodory.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/Radon.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/MellinInversion.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Field/Approximation.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/Analysis/Normed/Unbundled/IsPowMulFaithful.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/Real/Hyperreal.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/IntegralRepresentation.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Int/Interval.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Log.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Real/ConjExponents.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean 114 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-40220
16 days ago
16-40220
16 days ago
13-66876
13 days
36698 ghseeli
author:ghseeli
feat(Combinatorics/Enumerative): Latin squares This PR defines Latin rectangles and Latin squares and proves an extension theorem using Hall's Marriage Theorem. ## Main results - `group_to_cayley_table`: every finite group `G` yields a `LatinSquare G G`. - `latin_rectangle_extends_one_row`: a (non-square) `LatinRectangle` extends to a `LatinRectangle` with one more row. This is an application of **Hall's Marriage Theorem**, `hallMatchingsOn.nonempty`. - `latin_rectangle_extends_to_latin_square`: a `LatinRectangle` extends to a `LatinSquare`. This is included in a new file `Combinatorics/Enumerative/LatinSquare.lean`. --- - [ ] depends on: #37190 - [ ] depends on: #37720 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics blocked-by-other-PR 638/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Enumerative/LatinSquare.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Data/Fintype/Card.lean,docs/references.bib 6 78 ['SnirBroshi', 'cjrl', 'eric-wieser', 'ghseeli', 'github-actions', 'mathlib-dependent-issues', 'vlad902'] nobody
16-38890
16 days ago
56-61510
56 days ago
16-40743
16 days
38822 ldct
author:ldct
feat(IntervalIntegrable): add `fun_prop` support Allow `fun_prop` to work on `IntervalIntegrable` goals --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author merge-conflict 27/6 Archive/Wiedijk100Theorems/AreaOfACircle.lean,Mathlib/Analysis/Real/Pi/Irrational.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,MathlibTest/fun_prop.lean 4 8 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] kex-y
assignee:kex-y
16-36776
16 days ago
26-70995
26 days ago
1-68245
1 day
39119 kbuzzard
author:kbuzzard
perf(Algebra/*): fast_instance% for prio 100 instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) I got Claude code to put `fast_instance%` in front of every priority 100 type-valued instance in `Mathlib/Algebra`, just because this sort of thing is easy now. This broke a couple of files with typeclass inference failing to find instances on fields, so I reverted the changes in `Mathlib/Algebra/Field/Defs.lean` and now mathlib builds. WIP t-algebra merge-conflict
label:t-algebra$
138/114 Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Semisimple/Basic.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Ring/Action/Basic.lean,Mathlib/Algebra/Ring/Action/Rat.lean,Mathlib/Algebra/Ring/Commute.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Star/Basic.lean 18 7 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
16-36768
16 days ago
20-74250
20 days ago
0-1
1 second
39169 thorimur
author:thorimur
bench: experiment --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed merge-conflict 428/456 Mathlib.lean,Mathlib/Algebra/Expr.lean,Mathlib/Algebra/Field/ModEq.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Note.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/CategoryTheory/Abelian/Injective/Resolution.lean,Mathlib/CategoryTheory/Category/Init.lean,Mathlib/CategoryTheory/ConcreteCategory/Bundled.lean,Mathlib/Combinatorics/Matroid/Init.lean,Mathlib/Combinatorics/SimpleGraph/Init.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Control/Combinators.lean,Mathlib/Control/Fold.lean,Mathlib/Control/Lawful.lean,Mathlib/Control/ULift.lean,Mathlib/Data/Array/Defs.lean,Mathlib/Data/Array/Extract.lean,Mathlib/Data/Bool/AllAny.lean,Mathlib/Data/Bracket.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finset/Attr.lean,Mathlib/Data/Ineq.lean,Mathlib/Data/Int/DivMod.lean,Mathlib/Data/Int/Notation.lean,Mathlib/Data/List/Lookmap.lean,Mathlib/Data/List/ModifyLast.lean,Mathlib/Data/List/Monad.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/List/TFAE.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Notation.lean,Mathlib/Data/Nat/NthRoot/Defs.lean,Mathlib/Data/Option/Defs.lean,Mathlib/Data/Option/NAry.lean,Mathlib/Data/Ordering/Basic.lean,Mathlib/Data/Prod/PProd.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/String/Defs.lean,Mathlib/Data/Subtype.lean,Mathlib/Data/Sym/Sym2/Init.lean,Mathlib/Data/UInt.lean,Mathlib/Deprecated/Aliases.lean,Mathlib/Geometry/Euclidean/Inversion/Basic.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Lean/EnvExtension.lean,Mathlib/Lean/Exception.lean,Mathlib/Lean/Expr.lean,Mathlib/Lean/Expr/Rat.lean,Mathlib/Lean/FoldEnvironment.lean,Mathlib/Lean/GoalsLocation.lean,Mathlib/Lean/Json.lean,Mathlib/Lean/LocalContext.lean,Mathlib/Lean/MessageData/ForExprs.lean,Mathlib/Lean/MessageData/Trace.lean,Mathlib/Lean/Meta.lean,Mathlib/Lean/Meta/Basic.lean,Mathlib/Lean/Meta/DiscrTree.lean,Mathlib/Lean/Meta/KAbstractPositions.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/Lean/Meta/Simp.lean,Mathlib/Lean/Meta/Tactic/Rewrite.lean,Mathlib/Lean/Name.lean,Mathlib/Lean/PrettyPrinter/Delaborator.lean,Mathlib/Lean/Thunk.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/Logic/ExistsUnique.lean,Mathlib/Logic/Function/Coequalizer.lean,Mathlib/Logic/Function/CompTypeclasses.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Logic/Function/ULift.lean,Mathlib/Logic/IsEmpty/Defs.lean,Mathlib/Logic/Nonempty.lean,Mathlib/Logic/OpClass.lean,Mathlib/MeasureTheory/Covering/BesicovitchVectorSpace.lean,Mathlib/NumberTheory/ModularForms/SlashActions.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ApplyAt.lean,Mathlib/Tactic/ApplyCongr.lean,Mathlib/Tactic/ApplyFun.lean,Mathlib/Tactic/ApplyWith.lean,Mathlib/Tactic/ArithMult/Init.lean,Mathlib/Tactic/Attr/Register.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/Bound/Init.lean,Mathlib/Tactic/Cases.lean,Mathlib/Tactic/CasesM.lean,Mathlib/Tactic/CategoryTheory/CategoryStar.lean,Mathlib/Tactic/CategoryTheory/Coherence/Datatypes.lean,Mathlib/Tactic/Change.lean,Mathlib/Tactic/Check.lean 314 4 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'thorimur'] nobody
16-36765
16 days ago
unknown
0-0
0 seconds
39194 grunweg
author:grunweg
Sobolev wip #32305 on current master, hopefully --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-CI t-measure-probability merge-conflict 2116/9 Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Distribution/WeakDeriv.lean,Mathlib/Analysis/FunctionalSpaces/Sobolev/Basic.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean 7 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
16-36764
16 days ago
unknown
0-0
0 seconds
39253 Paul-Lez
author:Paul-Lez
feat(LinearAlgebra/Basis/HasCanonicalBasis): propose `HasCanonicalBasis` class This PR continues the work from #25425. Original PR: https://github.com/leanprover-community/mathlib4/pull/25425 104/0 Mathlib/LinearAlgebra/Basis/HasCanonicalBasis.lean 1 1 ['github-actions'] nobody
16-36759
16 days ago
unknown
0-0
0 seconds
38816 tb65536
author:tb65536
refactor(GroupTheory/Finiteness): make duplicate definitions into abbrevs The definitions `Submonoid.FG`, `Group.FG`, and `Subgroup.FG` are all equivalent to `Monoid.FG`, so I've made them into abbrevs. In the future we might even want to consider deprecating all but one to avoid having four ways to write the same thing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
140/122 Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/MonoidLocalization/Finite.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Defs.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean 9 5 ['eric-wieser', 'github-actions', 'j-loreaux', 'tb65536'] mattrobball
assignee:mattrobball
16-36421
16 days ago
28-59344
28 days ago
28-59307
28 days
39341 drocta
author:drocta
feat(Algebra/Colimit/DirectLimit): add DirectLimit.(NonUnital)StarAlgebra.(lift/of) maps and associated lemmas add the `of` and `lift` maps for `DirectLimit.StarAlgebra` and `DirectLimit.NonUnitalStarAlgebra`, as well as the associated lemmas, `of_f`, `lift_comp_of`, `lift_of`, and `hom_ext` for each. Also make `DirectLimit.NonUnitalAlgebra` only require `[Monoid R]` rather than `[CommSemiring R]`. --- Use of AI: I again asked ChatGPT for some advice about some things about this code. I can personally vouch for all of the code I'm submitting, and that I understand all of it. This is the third part of my project towards supporting direct limits of $C^∗$ -algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR adds an import of `Mathlib.Algebra.Star.StarAlgHom` (because it needs `StarAlgHom` and `NonUnitalStarAlgHom`) replacing/encompassing the previously added imports of `Mathlib.Algebra.Star.StarRingHom` and `Mathlib.Algebra.Algebra.NonUnitalHom` (added in PR #38308 and #38672 respectively). t-algebra new-contributor
label:t-algebra$
100/3 Mathlib/Algebra/Colimit/DirectLimit.lean 1 2 ['github-actions'] nobody
16-35832
16 days ago
16-38524
16 days ago
16-38486
16 days
38472 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): The Weil divisor associated to an element of the function field on a locally Noetherian integral scheme In this PR we define and provide some basic API for principal Weil divisors, i.e. the Weil divisor associated to an element of the function field of a locally noetherian, integral scheme. - [ ] depends on: #29774 - [ ] depends on: #37985 - [ ] depends on: #37901 - [ ] depends on: #38002 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 713/0 Mathlib.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Principal.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Minimal.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/LocallyFinsupp/Pushforward.lean,Mathlib/Topology/Sober.lean 11 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-8082
16 days ago
35-71232
35 days ago
0-1194
19 minutes
36806 grunweg
author:grunweg
fix(Tactic/Continuity): mark Continuous.comp' as unsafe This issue was pre-existing: `Continuous.comp'` was never full safe, as a constant function could be written as the composition of any function and a constant function (and then applying the lemma could lead to something unprovable). The change in #31607 triggered such a case: make is an unsafe rule with very high probability instead. This change broke three proofs: one was easy to switch to fun_prop; the others seemed to depend on this being a safe rule. I have added a workaround for now. There was another test failure, exposing a pre-existing internal bug in aesop. With smaller imports, continuity succeeds [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/aesop.20error.20during.20proof.20reconstruction.2C.20goal.20not.20normalised/with/580202602), so I have accepted this result as fine. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author 54/2 Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Topology/Continuous.lean,MathlibTest/Continuity.lean 5 4 ['github-actions', 'joneugster'] joneugster
assignee:joneugster
15-80166
15 days ago
15-80166
15 days ago
56-81666
56 days
38199 vihdzp
author:vihdzp
chore: add items to set theory overview --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-set-theory maintainer-merge 11/2 docs/overview.yaml 1 5 ['SnirBroshi', 'github-actions', 'joneugster', 'vihdzp'] alreadydone
assignee:alreadydone
15-78271
15 days ago
42-10647
42 days ago
42-10708
42 days
37666 TJHeeringa
author:TJHeeringa
feat(Analysis/InnerProductSpace/Reproducing): Lipschitz wrt the kernel pseudometric --- RKHSs $H$ have bounded point evaluations. This induces a pseudometric on the underlying space `X`. The function $f\in H$ are Lipschitz continuous with Lipschitz constant $\||f\||$. This PR puts the pseudometric instance inline. The instance cannot just be put outside the theorem, because that gives problems with resolving type classes / instance synthesis. An alternative to inlining the instance is a type class synonym. One copy would be the RKHS with whatever metric X came equipped with and one copy would be the RKHS with the induced metric. Since there are likely more theorems depending on this pseudometric, I suspect that it is actually a better solution. AI: I had the instance outside the theorem. Lean gave problems with resolving type classes / instance synthesis. I asked Claude and ChatGPT to interpret the error and fix it. The latter just spit gibberish and the former suggested inlining but in a way that didn't work. Then, I asked on Zulip and got the same suggestion but working. The type synonym alternative was also suggested there. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor help-wanted 71/6 Mathlib/Analysis/InnerProductSpace/Reproducing.lean 1 3 ['TJHeeringa', 'github-actions'] nobody
15-77485
15 days ago
unknown
0-0
0 seconds
38347 artie2000
author:artie2000
doc(LinearAlgebra/FreeModule/StrongRankCondition): clarify context of `commRing_strongRankCondition` * Replace mathematical documentation in `Mathlib.LinearAlgebra.FreeModule.StrongRankCondition`, with explanation that the file comprises a shortcut instance `commRing_strongRankCondition` * Signpost `commRing_strongRankCondition` at both its parent instances * Increase priority of shortcut instance `commRing_strongRankCondition` above that of its parent instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 28/41 Mathlib/LinearAlgebra/FreeModule/StrongRankCondition.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/RingTheory/FiniteType.lean 3 3 ['github-actions', 'joneugster', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
15-69377
15 days ago
15-69377
15 days ago
22-40813
22 days
39373 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/CongruenceSubgroups` - simplifies `Gamma_mem` to a single `simp` proof via `Gamma_mem'` and `SpecialLinearGroup.ext_iff` - shortens `ModularGroup_T_pow_mem_Gamma` and the `Gamma0` closure proofs with direct `simp`/`simpa` arguments Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 4/22 Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
15-68906
15 days ago
15-70639
15 days ago
15-70601
15 days
33985 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): `OmegaCompletePartialOrder` instance for `Sum` with basic `ωScottContinuous` lemmas This PR adds an `OmegaCompletePartialOrder` instance for `Sum`, along with `ωScottContinuous` lemmas for basic operations (`inl`, `inr`, `elim`). Appropriate lemmas are marked with `@[fun_prop]` so that the `fun_prop` tactic can automatically deduce `ωScottContinuous` proofs for functions involving `Sum`s (e.g. see the proof of `Sum.ωScottContinuous_map`). --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-order awaiting-author 205/3 Mathlib/Data/Sum/Basic.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean,Mathlib/Topology/Constructions/SumProd.lean 5 58 ['Komyyy', 'Vierkantor', 'YaelDillies', 'YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] YaelDillies and pechersky
assignee:pechersky assignee:YaelDillies
15-68814
15 days ago
56-74624
56 days ago
52-59724
52 days
39374 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/Derivative` - rewrites `normalizedDerivOfComplex_sub` to reuse the additive and negation lemmas instead of reproving the subtraction formula pointwise Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 4/10 Mathlib/NumberTheory/ModularForms/Derivative.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
15-68700
15 days ago
15-70636
15 days ago
15-70598
15 days
39375 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/SlashActions` - streamlines `prod_slash_sum_weights` by letting `simp` handle the empty case and removing the redundant singleton split in the inductive step Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 1/5 Mathlib/NumberTheory/ModularForms/SlashActions.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
15-68543
15 days ago
15-70633
15 days ago
15-70595
15 days
39376 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/RamificationInertia/Basic` - shortens `quotientToQuotientRangePowQuotSucc_surjective` by switching the ideal-factor argument to `irreducible_pow_sup` and `count_normalizedFactors_eq` after isolating the span hypotheses Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 4/10 Mathlib/NumberTheory/RamificationInertia/Basic.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
15-68371
15 days ago
15-70631
15 days ago
15-70593
15 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
15-60771
15 days ago
18-13728
18 days ago
35-12445
35 days
39371 fpvandoorn
author:fpvandoorn
feat: tag lemmas with compactness and closedness --- - [ ] depends on: #39370 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 190/11 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean 13 2 ['github-actions', 'mathlib-dependent-issues'] nobody
15-57143
15 days ago
15-71414
15 days ago
0-1
1 second
35686 harahu
author:harahu
chore: run docstrings through mdformat --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 10282/5889 Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/Azumaya/Defs.lean,Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Gaps.lean,Mathlib/Algebra/BigOperators/Group/Finset/Indicator.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/Grp/EquivalenceGroupAddGroup.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/Grp/Ulift.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Projective.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/Epi.lean,Mathlib/Algebra/Category/Ring/EqualizerPushout.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/Category/Semigrp/Basic.lean,Mathlib/Algebra/Central/Basic.lean,Mathlib/Algebra/Central/Defs.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/CharAndCard.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/CharP/LinearMaps.lean,Mathlib/Algebra/CharP/MixedCharZero.lean,Mathlib/Algebra/CharP/Subring.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/ContinuedFractions/ContinuantsRecurrence.lean,Mathlib/Algebra/ContinuedFractions/ConvergentsEquiv.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/EuclideanDomain/Int.lean,Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/Periodic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/FreeMonoid/FreeSemigroup.lean,Mathlib/Algebra/FreeNonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/GCDMonoid/Nat.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/End.lean,Mathlib/Algebra/Group/Action/Pretransitive.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Group/AddChar.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Center.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Finsupp.lean,Mathlib/Algebra/Group/ForwardDiff.lean,Mathlib/Algebra/Group/Hom/CompTypeclasses.lean,Mathlib/Algebra/Group/Hom/Defs.lean 2809 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
15-56383
15 days ago
unknown
0-0
0 seconds
39382 fpvandoorn
author:fpvandoorn
feat: add some lemmas that closures of some sets are compact * Also tag them with `closedness`/`compactness`. * This can be refactored to use `RelativelyCompact` once we define that notion. * Note: this is only equivalent to `IsBounded` in `ProperSpace`. It is equivalent to `@IsBounded _ (inCompact X) s` in a T2-space, but the latter thing is cumbersome to write. --- - [ ] depends on: #39371 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 265/11 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean 14 2 ['github-actions', 'mathlib-dependent-issues'] nobody
15-53054
15 days ago
15-67154
15 days ago
0-359
5 minutes
36541 BGuillemet
author:BGuillemet
feat(CategoryTheory): define internal equivalence relations Define internal equivalence relations in any category `C`, as a structure on parallel pairs of morphisms. Prove that equivalence relations on types are equivalence relations in the category of types. Prove that kernel pairs are equivalence relations. Define (universally) effective equivalence relations, and a associated class for categories in which every equivalence relation is effective universal. Prove that an effective equivalence relation yields a coequalizer diagram, and that the associated projection on the "quotient" of the relation is a regular epimorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 320/0 Mathlib.lean,Mathlib/CategoryTheory/EquivalenceRelation.lean,Mathlib/CategoryTheory/Limits/Shapes/RegularMono.lean 3 26 ['BGuillemet', 'chrisflav', 'dagurtomas', 'github-actions', 'robin-carlier'] b-mehta
assignee:b-mehta
15-50467
15 days ago
15-81633
15 days ago
37-7859
37 days
39387 marcelolynch
author:marcelolynch
feat(Tactic/Linter): add superfluousExpose linter Dual of `privateModule`: lints against modules with `@[expose] public section` where no declaration needs its body visible downstream. Suggests removing the `@[expose]` modifier. A declaration 'benefits from exposure' iff its body matters to downstream typechecking: plain `def`, plain `inductive`, `@[match_pattern]` def, `@[irreducible] def` / `irreducible_def`, or a `@[to_additive]`-decorated def. Theorems, abbrevs, classes, structures, instances, `unsafe`/`partial` defs, compiler-generated auxiliaries, projections, matchers, and notation- generated parser entries do not. The linter is conservative: known limitations produce a false negative (scoped/local instances and tactic-implementation defs may stay silent), never a false positive that would break downstream builds. Includes test files covering positive and negative cases. Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230 t-linter LLM-generated 897/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/SuperfluousExpose.lean,MathlibTest/Linter/SuperfluousExpose.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ExposeInBlockComment.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ExposeOnNonPublicSection.lean,MathlibTest/Linter/SuperfluousExpose/Negative_Inductive.lean,MathlibTest/Linter/SuperfluousExpose/Negative_InstPrefixedDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_IrreducibleDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_LocalInstance.lean,MathlibTest/Linter/SuperfluousExpose/Negative_MatchPattern.lean,MathlibTest/Linter/SuperfluousExpose/Negative_NoExposeSection.lean,MathlibTest/Linter/SuperfluousExpose/Negative_PlainDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ScopedInstance.lean,MathlibTest/Linter/SuperfluousExpose/Negative_TermPrefixedDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ToAdditive.lean,MathlibTest/Linter/SuperfluousExpose/Positive_AbbrevOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_ClassOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_Notation.lean,MathlibTest/Linter/SuperfluousExpose/Positive_PartialDef.lean,MathlibTest/Linter/SuperfluousExpose/Positive_Recursors.lean,MathlibTest/Linter/SuperfluousExpose/Positive_TheoremOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_UnsafeDef.lean 23 2 ['eric-wieser', 'github-actions'] nobody
15-46168
15 days ago
unknown
0-0
0 seconds
39392 jayscambler
author:jayscambler
feat(Cryptography): one-time pad and Shannon perfect secrecy Adds `Mathlib/Cryptography/OTP.lean`. One-time pad over an arbitrary finite abelian group `G`: - `OTP.encrypt k m := m + k`, `OTP.decrypt k c := c - k`. - `OTP.correct`: `decrypt k (encrypt k m) = m`, by `abel`. - `OTP.perfect_secrecy`: for any `m₀, m₁`, the distributions of `encrypt k m₀` and `encrypt k m₁` over uniform `k` are equal; both reduce to `PMF.uniformOfFintype G`. Proof goes via `Equiv.addLeft`. Independent of the Schnorr PR (#39279); no shared definitions. Unlike everything else likely to live under `Mathlib/Cryptography/`, the security guarantee here is information-theoretic, not computational. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 76/0 Mathlib.lean,Mathlib/Cryptography/OTP.lean 2 3 ['MrBrain295', 'github-actions'] nobody
15-32361
15 days ago
15-54835
15 days ago
15-54797
15 days
34507 metakunt
author:metakunt
feat(NumberTheory/AKSPrimality): Adds the AKS primality test Adds the completed proof for the AKS primality test. Everything except the final theorem is marked private as it's only needed for the final proof. Also everything except the final theorem is namespaced with AKS. ---- Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Aks.20primality.20Theorem.206.2E1.20Claim.20.28i.29.20proven - [ ] depends on: #39404 t-number-theory awaiting-author blocked-by-other-PR 645/0 Mathlib.lean,Mathlib/NumberTheory/AKSPrimality.lean 2 61 ['MichaelStollBayreuth', 'dagurtomas', 'github-actions', 'jcommelin', 'kim-em', 'mathlib-bors', 'mathlib-dependent-issues', 'metakunt', 'qawbecrdtey', 'tb65536', 'vihdzp'] tb65536
assignee:tb65536
15-24447
15 days ago
15-61295
15 days ago
76-34349
76 days
39393 jayscambler
author:jayscambler
feat(GameTheory): von Neumann minimax theorem for finite matrix games Adds `Mathlib/GameTheory/MatrixGame.lean`. Resolves the TODO at `Mathlib/Topology/Sion.lean:48` ("spell out the particular case of von Neumann theorem") by specialising `Sion.exists_isSaddlePointOn` to the bilinear payoff `∑ i j, x i * M i j * y j` on the pair of standard simplices. Two theorems: - `Matrix.exists_saddle_point`: existence of a saddle point in mathlib's `IsSaddlePointOn` convention (`a` minimiser-in-`X`, `b` maximiser-in-`Y`). - `Matrix.exists_mixedNash`: existence of a mixed Nash equilibrium in the textbook matrix-game orientation (row player maximises, column player minimises). Proved by applying Sion to `-payoff M`. Both forms are useful: the first matches mathlib's existing saddle-point machinery, and the second is the statement most game-theory texts use directly. Supporting lemmas: continuity of the payoff in each argument (linear in each), and quasi-convexity / quasi-concavity from `LinearMap.convexOn` / `LinearMap.concaveOn`. The simplex hypotheses for Sion (`Convex`, `IsCompact`, `Nonempty`) come from existing mathlib lemmas (`convex_stdSimplex`, `isCompact_stdSimplex`, `single_mem_stdSimplex`). Creates a new top-level `Mathlib/GameTheory/` directory; mathlib currently has none. A natural follow-up would be a `Mathlib/GameTheory/NormalForm.lean` for general n-player normal-form games and pure Nash equilibrium. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) t-topology new-contributor LLM-generated 216/2 Mathlib.lean,Mathlib/GameTheory/MatrixGame.lean,Mathlib/Topology/Sion.lean 3 3 ['github-actions', 'vihdzp'] nobody
15-15638
15 days ago
15-49568
15 days ago
0-355
5 minutes
28802 grunweg
author:grunweg
feat: a tactic linter for continuity/measurability which can be `fun_prop` --- Let's see if this finds further locations in mathlib :tada: This PR also runs the linter in mathlib by default. I strongly think this is a good idea --- but leaves all kinds of fun questions around "where do you import this linter best". Opinions on this welcome; this PR is a first start (but no more). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import awaiting-CI t-meta 72/0 Mathlib/Tactic/Continuity.lean,Mathlib/Tactic/Measurability.lean,MathlibTest/ContinuityToFunprop.lean 3 15 ['Vierkantor', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
15-4485
15 days ago
279-86177
279 days ago
0-260
4 minutes
37745 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/AugmentationIdeal): base change for augmentation ideals Base change for augmentation ideals Co-authored with: @mariainesdff --- - [x] depends on: #37744 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra large-import
label:t-algebra$
441/1 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Projection.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/LinearAlgebra/TensorProduct/Submodule.lean,Mathlib/Order/Disjoint.lean,Mathlib/RingTheory/Ideal/IsAugmentation.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 12 18 ['AntoineChambert-Loir', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues'] nobody
15-1700
15 days ago
15-1771
15 days ago
15-62109
15 days
22925 ggranberry
author:ggranberry
feat(Mathlib/PlaceHolder/ToeplitzHausdorff): Toeplitz-Hausdorff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor will-close-soon awaiting-author help-wanted t-analysis 411/0 Mathlib/PlaceHolder/ToeplitzHausdorff.lean,Mathlib/PlaceHolder/ToeplitzHausdorff_v2.lean 2 16 ['AntoineChambert-Loir', 'faenuccio', 'ggranberry', 'github-actions', 'vihdzp'] faenuccio
assignee:faenuccio
14-80565
14 days ago
438-72074
438 days ago
3-8649
3 days
34088 kbuzzard
author:kbuzzard
perf(RingTheory/Kaehler/Polynomial): change universe name for speed-up Changing the choice of `R`'s universe to `v` from `u` in this file means that alphabetically it's after `u_1` which is a workaround for the issue described here https://github.com/leanprover/lean4/issues/12102 . The bottom line is that Lean's defeq algorithm is now able to typecheck the `left_inv` and `right_inv` proofs in `KaehlerDifferential.mvPolynomialEquiv` over 200 times more quickly (for example `right_inv` goes from 54494621 heartbeats to 222096, i.e. from about 5 seconds to about 0.02 seconds on a typical machine). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Before this PR, Lean was spending far too long in the proof fields of `KaehlerDifferential.mvPolynomialEquiv`, checking defeq on the following kinds of terms (with `pp.all` on): ``` [isDefEq] [815425.000000] ✅️ @Module.{max u u_1, max u_1 u} (@MvPolynomial.{u_1, u} σ R (@CommRing.toCommSemiring.{u} R inst✝)) (@KaehlerDifferential.{u, max u_1 u} R [20 lines omitted] =?= @Module.{max u u_1, max u u_1} (@MvPolynomial.{u_1, u} σ R (@CommRing.toCommSemiring.{u} R inst✝)) (@KaehlerDifferential.{u, max u u_1} R [pretty much the same 20 lines omitted except with max u_1 u replaced by max u u_1 sometimes] ``` with the crucial difference that the second universes in the terms are `max u_1 u` for the first and `max u u_1` for the second. The proofs were taking a few seconds to compile, and then after compilation the kernel was also taking a few seconds to typecheck them. The alphabetical hack in this PR stops this happening and Lean's defeq algorithm now terminates essentially instantly on these terms. Zulip thread: [#mathlib4 > KaehlerDifferential.mvPolynomialEquiv typechecking @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/KaehlerDifferential.2EmvPolynomialEquiv.20typechecking/near/568614162) t-ring-theory WIP 5/1 Mathlib/RingTheory/Kaehler/Polynomial.lean 1 43 ['Vierkantor', 'erdOne', 'github-actions', 'j-loreaux', 'kbuzzard', 'leanprover-radar', 'mattrobball'] chrisflav
assignee:chrisflav
14-76947
14 days ago
111-59081
111 days ago
8-42588
8 days
35685 riccardobrasca
author:riccardobrasca
feat: reduce the use of Classical.choice ## Let's avoid the axiom of choice! This PR is an experiment in developing a version of `mathlib` that minimizes uses of the axiom of choice, especially in basic declarations. For example, [Finset.image](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/Image.html#Finset.image) currently depends on the axiom of choice in `mathlib` but not on this branch. You can use this PR branch just like any other `mathlib` PR branch, in particular the cache system should work normally (you may get a warning to run `lake exe cache get` manually though, just do it). However, you may notice that it uses a custom `lean4` toolchain. The reason is that Lean core itself currently contains results that rely on choice (in particular, via uses of `grind`). Indeed, this branch uses a custom Lean toolchain built from our fork, currently [this version](https://github.com/riccardobrasca/lean4/releases/latest). You can inspect the diff vs `master` [here](https://github.com/leanprover/lean4/compare/master...riccardobrasca:lean4:less_choice) (this diff also contains some GitHub workflow changes, which can be ignored). For the same reason, we also use a custom version of `batteries`, found at the branch [`less_choice`](https://github.com/riccardobrasca/batteries/tree/less_choice). You can see the diff [here](https://github.com/leanprover-community/batteries/compare/main...riccardobrasca:batteries:less_choice). ### Does it work? If you want to count how many declarations depend on choice (on this branch or on `master`), you can use the following script, written by [Robin Arnez](https://github.com/Rob23oba) and Paul Lezeau (thanks!). ```lean import Mathlib open Lean structure State where visited : NameMap Bool := {} abbrev M := ReaderT Environment <| StateM (NameMap Bool) partial def collect (c : Name) : M Bool := do let collectExpr (e : Expr) : M Bool := e.getUsedConstants.anyM collect let s ← get if let some res := s.find? c then return res let env ← read modify fun s => s.insert c false let res ← match env.checked.get.find? c with | some (ConstantInfo.axiomInfo v) => collectExpr v.type | some (ConstantInfo.defnInfo v) => collectExpr v.type <||> collectExpr v.value | some (ConstantInfo.thmInfo v) => collectExpr v.type <||> collectExpr v.value | some (ConstantInfo.opaqueInfo v) => collectExpr v.type <||> collectExpr v.value | some (ConstantInfo.quotInfo _) => pure false | some (ConstantInfo.ctorInfo v) => collectExpr v.type | some (ConstantInfo.recInfo v) => collectExpr v.type | some (ConstantInfo.inductInfo v) => collectExpr v.type <||> v.ctors.anyM collect | none => pure false modify fun s => s.insert c res return res partial def collectAll : M (Nat × Nat) := do modify fun s => s.insert ``Classical.choice true let env ← read let mut count := 0 let mut total := 0 for (constName, _) in env.constants do total := total + 1 let hasChoice ← collect constName if hasChoice then count := count + 1 return (count, total) run_cmd do let env ← getEnv let (count, total) := collectAll.run env |>.run' {} let pctTimes10 := if total = 0 then 0 else (count * 1000 + total / 2) / total let pctWhole := pctTimes10 / 10 let pctDecimal := pctTimes10 % 10 Lean.logInfo m!"Found {count} constants depending on Classical.choice out of {total} total ({pctWhole}.{pctDecimal}%)" ``` Currently, we have 383493 declaration that depend on choice, over 722290 in total (53.1%). For comparison, `master` has 391709 use of choice (54.2%). More than eight thousands declarations have become choice free! ### Can I contribute? Yes! If you want to help just open a PR in the usual way (to the forks!). Note that I plan to update core not very often, probably only once a month, when `mathlib` does so. ### How to Remove the Dependency on Choice from a declaration? First of all, note that #print axioms does not work with the new module system. If you want to check whether `X` depends on choice, you should create a new file starting with `import Mathlib` and use `#print axioms foo`. If `X` depends on choice and you want to remove that dependency, there are several steps to consider (for simplicity, we focus on the case where `X` is a theorem): * The first question is mathematical: do you have a choice-free proof? Remember that this means a proof that does not use the law of excluded middle. An important remark is that if the answer is not “yes, this result is trivial”, then it is going to be *very hard* to do this in `mathlib`. At the moment, it is better to stick to mathematically trivial or very easy declarations. * `mathlib` is *very* intricate. It is very likely that the proof of `X` consists of just a couple of lines invoking `Y` and `Z`, which are often mathematically almost identical to `X`. In that case, removing choice from `X` amounts to removing choice from `Y` and `Z`. And the same situation may very well arise again for `Y` and `Z`. * In practice, you will quickly find yourself asking: “Where is choice *really* introduced?” To answer this question, you can use the following script: ```lean import Mathlib open Lean Meta Elab Command namespace ChoiceDeps abbrev DepSet := Std.HashSet Name abbrev ChoiceMemo := NameMap Bool def addExprDeps (deps : DepSet) (e : Expr) : DepSet := Id.run <| do let mut out := deps for c in e.getUsedConstants do out := out.insert c return out def directDeps (env : Environment) (decl : Name) : DepSet := let deps := match env.checked.get.find? decl with | some (.axiomInfo v) => addExprDeps {} v.type | some (.defnInfo v) => addExprDeps (addExprDeps {} v.type) v.value | some (.thmInfo v) => addExprDeps (addExprDeps {} v.type) v.value | some (.opaqueInfo v) => addExprDeps (addExprDeps {} v.type) v.value | some (.quotInfo _) => {} | some (.ctorInfo v) => addExprDeps {} v.type | some (.recInfo v) => addExprDeps {} v.type | some (.inductInfo v) => v.ctors.foldl (init := addExprDeps {} v.type) fun acc c => acc.insert c | none => {} deps.erase decl partial def transitiveDeps (env : Environment) (root : Name) : DepSet := let rec visit (decl : Name) (visited : DepSet) : DepSet := if visited.contains decl then visited else (directDeps env decl).toArray.foldl (init := visited.insert decl) fun acc dep => visit dep acc (visit root {}).erase root partial def dependsOnChoiceM (env : Environment) (decl : Name) : StateM ChoiceMemo Bool := do let memo ← get if let some b := memo.find? decl then return b modify fun s => s.insert decl false let deps := directDeps env decl if deps.contains ``Classical.choice then modify fun s => s.insert decl true return true let rec go (i : Nat) (arr : Array Name) : StateM ChoiceMemo Bool := do if h : i < arr.size then let d := arr[i] if ← dependsOnChoiceM env d then return true go (i + 1) arr else return false let res ← go 0 deps.toArray modify fun s => s.insert decl res return res def choiceDependencyGraph (env : Environment) (root : Name) : Array Name × NameMap (Array Name) := let work : StateM ChoiceMemo (Array Name × NameMap (Array Name)) := do let mut bfsOrder : Array Name := #[] let mut graph : NameMap (Array Name) := {} let mut queue : Array Name := #[root] let mut qHead := 0 let mut visited : DepSet := {} while qHead < queue.size do let current := queue[qHead]! qHead := qHead + 1 if visited.contains current then continue if !(← dependsOnChoiceM env current) then continue visited := visited.insert current bfsOrder := bfsOrder.push current let allDeps := directDeps env current let mut choiceDeps : Array Name := #[] if allDeps.contains ``Classical.choice then choiceDeps := choiceDeps.push ``Classical.choice for d in allDeps.toArray.qsort Name.quickLt do if d == ``Classical.choice then continue if ← dependsOnChoiceM env d then choiceDeps := choiceDeps.push d if !visited.contains d then queue := queue.push d graph := graph.insert current choiceDeps return (bfsOrder, graph) work.run' {} def formatGraph (bfsOrder : Array Name) (graph : NameMap (Array Name)) : MessageData := let lines := bfsOrder.toList.filterMap fun n => match graph.find? n with | none => none | some deps => let depsMsg := MessageData.joinSep (deps.toList.map fun d => m!"{.ofConstName d}") ", " some m!"{.ofConstName n} → {depsMsg}" MessageData.joinSep lines "\n" private def dotNode (n : Name) : String := "\"" ++ n.toString ++ "\"" /-- Produce a Graphviz DOT string for the choice-dependency graph. Paste it at https://dreampuf.github.io/GraphvizOnline -/ def formatDot (root : Name) (bfsOrder : Array Name) (graph : NameMap (Array Name)) : String := let edges : Array String := bfsOrder.foldl (init := #[]) fun acc n => match graph.find? n with | none => acc | some deps => deps.foldl (init := acc) fun acc2 d => acc2.push s!" {dotNode n} -> {dotNode d};" let allNodes : Array String := bfsOrder.foldl (init := #[dotNode ``Classical.choice ++ " [shape=diamond, style=filled, fillcolor=tomato]"]) fun acc n => if n == ``Classical.choice then acc else if n == root then acc.push s!"{dotNode n} [style=filled, fillcolor=lightblue]" else acc.push s!"{dotNode n} [style=filled, fillcolor=lightyellow]" let body := ((allNodes.map fun s => " " ++ s) ++ edges).toList "digraph choice_deps {\n rankdir=TB;\n node [fontname=\"Helvetica\", fontsize=10];\n" ++ "\n".intercalate body ++ "\n}" syntax (name := printChoiceDeps) "#print " &"choice_deps_on_choice" ppSpace ident : command syntax (name := printChoiceDepsDot) "#print " &"choice_deps_on_choice_dot" ppSpace ident : command elab_rules : command | `(#print choice_deps_on_choice $id:ident) => do let targets ← liftCoreM <| realizeGlobalConstWithInfos id let env ← getEnv for target in targets do let (bfsOrder, graph) := choiceDependencyGraph env target if graph.isEmpty then logInfo m!"{.ofConstName target}: no dependency on Classical.choice" else logInfo m!"{.ofConstName target}:\n{formatGraph bfsOrder graph}" elab_rules : command | `(#print choice_deps_on_choice_dot $id:ident) => do let targets ← liftCoreM <| realizeGlobalConstWithInfos id let env ← getEnv for target in targets do let (bfsOrder, graph) := choiceDependencyGraph env target if graph.isEmpty then logInfo m!"{.ofConstName target}: no dependency on Classical.choice" else let dot := formatDot target bfsOrder graph IO.FS.writeFile "graph.dot" dot logInfo m!"DOT graph written to graph.dot\n\n{dot}" end ChoiceDeps /- Example: #print choice_deps_on_choice Finset.univ_eq_empty #print choice_deps_on_choice_dot Finset.univ_eq_empty -- paste output into GraphvizOnline -/ ``` * `#print choice_deps_on_choice_dot X` produces a file (text) `graph.dot`: you can copy/paste the content in [https://dreampuf.github.io/GraphvizOnline/](https://dreampuf.github.io/GraphvizOnline/) the see the dependency graph of declaration used in the proof of `X` that depend on choice. Note that those are ordered from `X` to choice (so the first node is always `X` and the last is always choice). An arrow (to the bottom) from `Y` to `Z` means that `Z` is used in the proof of `Y` and the goal is to change some proof (i.e. modifying the arrows) to disconnect `X` from choice. In the low part of the graph you will usually identify an area of declarations really equivalent to choice (usually everything starting with `Classical.` and everything containing `grind` in the name, plus various other stuff) you should of course treat those as they are choice, it's useless to try to touch this area. It's sometimes not easy to guess where to "attack" the graph, but it's fun, enjoy! --- The github workflow files have been copied from Matthew Ballard's [repository](https://github.com/mattrobball/lean4/tree/eqvModLevels/.github/workflows). We thank Matthew for his work. merge-conflict 318/88 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/Order/Group/Multiset.lean,Mathlib/Data/Fin/SuccPred.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/SDiff.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/Lattice.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Count.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Interval/Finset/Nat.lean,lake-manifest.json,lakefile.lean,lean-toolchain 24 6 ['github-actions', 'mathlib-merge-conflicts', 'mattrobball', 'riccardobrasca'] nobody
14-73790
14 days ago
unknown
0-0
0 seconds
39417 kbuzzard
author:kbuzzard
perf: make `Ring` extend `AddCommGroupWithOne` `NonAssocRing` already has this pattern. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This PR was entirely AI-generated but I have read it and am happy with both of the changed lines. WIP t-algebra
label:t-algebra$
2/2 Mathlib/Algebra/Ring/Defs.lean,Mathlib/FieldTheory/PolynomialGaloisGroup.lean 2 4 ['github-actions', 'kbuzzard', 'leanprover-radar', 'plp127'] nobody
14-71100
14 days ago
14-73547
14 days ago
0-78
1 minute
39386 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: shake --keep-implied --keep-prefix --fix --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt large-import merge-conflict 113346/9457 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/AddConstMap/Equiv.lean,Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/AffineMonoid/Basic.lean,Mathlib/Algebra/AffineMonoid/Embedding.lean,Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/Algebra/AffineMonoid/UniqueSums.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Epi.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Hom/Rat.lean,Mathlib/Algebra/Algebra/IsSimpleRing.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Algebra/Shrink.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Spectrum/Pi.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Matrix.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Order.lean,Mathlib/Algebra/Algebra/Subalgebra/Pi.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Rank.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Subalgebra/Unitization.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/Azumaya/Defs.lean,Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Balance.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Field.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Finsupp/Fin.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Gaps.lean,Mathlib/Algebra/BigOperators/Group/Finset/Indicator.lean,Mathlib/Algebra/BigOperators/Group/Finset/Interval.lean,Mathlib/Algebra/BigOperators/Group/Finset/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Finset/Pi.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Powerset.lean,Mathlib/Algebra/BigOperators/Group/Finset/Preimage.lean,Mathlib/Algebra/BigOperators/Group/Finset/Sigma.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Action.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/ModEq.lean,Mathlib/Algebra/BigOperators/Module.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/BigOperators/Ring/Nat.lean,Mathlib/Algebra/BigOperators/RingEquiv.lean,Mathlib/Algebra/BigOperators/Sym.lean,Mathlib/Algebra/BigOperators/WithTop.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/AlgCat/Monoidal.lean,Mathlib/Algebra/Category/AlgCat/Symmetric.lean,Mathlib/Algebra/Category/BialgCat/Basic.lean,Mathlib/Algebra/Category/BialgCat/Monoidal.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CoalgCat/Basic.lean 7976 3 ['MichaelStollBayreuth', 'github-actions', 'mathlib-merge-conflicts'] nobody
14-68587
14 days ago
15-62419
15 days ago
0-2
2 seconds
36218 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory): Add exact sequences for Sheaf Cohomology In this PR, I add the long exact sequence for sheaf cohomology as well as prove that it is functorial. Since sheaf cohomology is defined in terms of `Ext`, this is done using the covariant sequence for `Ext`. --- - [x] depends on: #34742 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 229/1 Mathlib.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean 4 29 ['Brian-Nugent', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
14-64969
14 days ago
14-64969
14 days ago
17-4184
17 days
39270 m13683320924-hue
author:m13683320924-hue
feat: prove strict group homs are stable under Prod.map This PR proves that strict group homomorphisms are stable under product maps. It adds an auxiliary lemma showing that the range restriction of a strict group homomorphism is an open quotient map, and uses it to prove that `MonoidHom.prodMap` preserves `Topology.IsStrictMap`. Towards #38421. t-topology new-contributor 44/0 Mathlib/Topology/Algebra/Group/Basic.lean 1 7 ['eric-wieser', 'github-actions', 'm13683320924-hue'] nobody
14-64918
14 days ago
17-54332
17 days ago
0-1401
23 minutes
38899 thorimur
author:thorimur
feat: `#scope` This PR is the first step in creating a toolset of (transient) utilities for assisting with moving declaration commands between files (including sorting out their dependencies, and integrating their needs into the new location). Capturing the current scope necessary for the command is the first task, and to that end this PR contributes the command `#scope`, which reifies the current scope into portable syntax. `#scope` by itself produces a try-this suggestion placing a scope specification after `#scope`, of the following form: ``` #scope (@[expose])? (public)? (noncomputable)? (section)? scope (universe ...)? (namespace ...)? (open @id₁ @id₂ ...)? (open scoped @id₁ @id₂ ...)? (set_options key₁ val₁, key₂ val₂ ...)? (variable ...)? (include ...)? (omit ...)? ``` This is intended to fully capture the "semantic" aspects of the current scope, but not the full scope stack (and so e.g. disregards `section`s). Likewise this slightly-unusual syntax (e.g. `open @Foo` instead of `open Foo`) is intended to act as a portable record of the open declaration which can be acted on by automation, and to discourage interpretation as a "normal" `open` statement. By itself, this is only a slightly odd `#where`. Future PRs (e.g. #38900) will build on this in order to provide a suite of tools for transporting scopes between files and managing them once there, making it easier to move declarations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author 513/3 Mathlib.lean,Mathlib/Lean/Elab/Options.lean,Mathlib/Lean/Name.lean,Mathlib/Util/Scope.lean,MathlibTest/Scope.lean 5 12 ['JovanGerb', 'Vierkantor', 'github-actions', 'thorimur'] JovanGerb
assignee:JovanGerb
14-60756
14 days ago
16-66408
16 days ago
9-32375
9 days
39429 lecopivo
author:lecopivo
feat: IsOfAsymptoticClassAt measure asymptotic behavior of functions The idea behind `IsOfAsymptoticClassAt` is to measure asymptotic behavior of a function which we can be used to reason about integrability of a function. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 346/0 Mathlib/Analysis/Asymptotics/AsymptoticClass.lean 1 2 ['github-actions', 'mathlib-bors'] nobody
14-60578
14 days ago
14-60653
14 days ago
0-8
8 seconds
38900 thorimur
author:thorimur
feat: `#scope!` This PR extends `#scope ` to `#scope! `, which resets the current scope to match the scope specification. This is intended to enable a user to flip back and forth between having the scope specification, which may have been created in a separate scope and separate file, inactive (`#scope`) and active (`#scope!`), to observe the effects on subsequent commands and declarations. --- - [ ] depends on: #38899 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta blocked-by-other-PR 773/3 Mathlib.lean,Mathlib/Lean/Elab/Options.lean,Mathlib/Lean/Name.lean,Mathlib/Util/Scope.lean,MathlibTest/Scope.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] nobody
14-60344
14 days ago
unknown
0-0
0 seconds
39432 DavidLedvinka
author:DavidLedvinka
feat: HasBoundedENorm t-analysis 133/0 Mathlib/Analysis/Normed/Group/HasBoundedENorm.lean 1 1 ['github-actions'] nobody
14-58118
14 days ago
unknown
0-0
0 seconds
39424 kbuzzard
author:kbuzzard
chore(Algebra/Field/Defs): add `Ring K` as direct extends arm of `Field` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) (potentially ridiculous Claude idea) WIP t-algebra
label:t-algebra$
4/1 Mathlib/Algebra/Field/Defs.lean 1 8 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
14-56078
14 days ago
14-62544
14 days ago
0-8
8 seconds
39325 mcdoll
author:mcdoll
feat(FunProp): tag integrableOn Add tags so that `fun_prop` can prove `IntegrableOn` Done at 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/) t-measure-probability awaiting-author 108/12 Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,MathlibTest/FunProp.lean 3 4 ['fpvandoorn', 'github-actions'] nobody
14-41321
14 days ago
14-56387
14 days ago
0-1567
26 minutes
38731 martinwintermath
author:martinwintermath
feat(LinearAlgebra/AffineSpace/AffineSubspace): using `AffineSubspace.direction` to reinterpret `AffineSubspace` as `Submodule` * add `AffineSubspace.vsub_self_of_zero_mem` that states `s -ᵥ s = s ` if `0 ∈ s` * add `AffineSubspace.direction_eq_self_of_zero_mem` that states that if `0 ∈ s`, then the directions coerce back to the affine subspace. * add corresponding `CanLift` instance. * modify doc-string of `AffineSubspace.direction` to state that this can be used for reinterpretation of an affine subspace as a submodule. * add `Coe` instance based on `Submodule.toAffineSubspace` and adds corresponding @[coe] attribute. The PR also performs a slight cleanup of the file: statements about `SetLike` or `Submodule.toAffineSubspace` have been moved closer to their respective definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
56/26 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean 1 3 ['github-actions', 'wwylele'] themathqueen
assignee:themathqueen
14-36858
14 days ago
30-61609
30 days ago
30-62722
30 days
39440 mckoen
author:mckoen
feat(AlgebraicTopology/Quasicategory): functor quasi-categories WIP --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP t-category-theory 212/0 Mathlib/AlgebraicTopology/Quasicategory/InternalHom.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean 2 1 ['github-actions'] nobody
14-36810
14 days ago
14-47335
14 days ago
0-17
17 seconds
39438 SnirBroshi
author:SnirBroshi
chore(Order/WellFounded): use `to_dual` Creates `argmax`/`argmaxOn` duals to the existing `argmin`/`argminOn`, and `WellFoundedLT.min`/`WellFoundedGT.max` in order to properly dualize `WellFounded.min_le`. Some theorems about `WellFounded{LT/GT}` which didn't have a dual before have to be renamed to make room, e.g. `StrictMono.range_inj` is renamed to `StrictMono.range_inj_of_wellFoundedLT`. --- This is blocking dualizing things in `ConditionallyCompleteLattice/Basic.lean`. `WellFounded.min_le` has ~30 usages in ~10 files, so deprecating it should probably happen in a separate PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 80/34 Mathlib/Data/Finset/Sort.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/WellFounded.lean,Mathlib/SetTheory/Ordinal/Enum.lean 4 5 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
14-34767
14 days ago
14-34839
14 days ago
14-43397
14 days
39106 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Matrix/Reindex): `AddEquiv` and `RingEquiv` We had `Matrix.reindex` bundled as a `LinearEquiv` and an `AlgEquiv`, and this bundles it as an `AddEquiv` and a `RingEquiv`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
158/43 Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean 4 10 ['SnirBroshi', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
14-34326
14 days ago
17-37013
17 days ago
17-59177
17 days
39456 BMMilligan1
author:BMMilligan1
feat(Probability/PMF): advantageFromHalf for Bool-valued PMFs This PR adds `PMF.advantageFromHalf : PMF Bool → ℝ`, defined as `2 * (p true).toReal - 1`, together with API lemmas covering bounds (`_le_one`, `_neg_one_le`), the zero-advantage characterization (`_eq_zero_iff_half`), `PMF.map` composition (`_map_tsum`), and canonical witness evaluations on `uniformOfFintype Bool`, `pure true`, and `pure false`. ## Motivation The "advantage from half" of a Bernoulli-like distribution is the signed gap of the `true`-probability away from `1/2`, rescaled to `[-1, 1]`. It is the natural decision-algorithm advantage notion in computational complexity: when a heuristic `H : α → Bool` is post-composed with a `PMF α` via `PMF.map`, the resulting `PMF Bool`'s `advantageFromHalf` is the advantage of `H` as a decision procedure on the source distribution. Concretely, the definition supports formalizations of Hirahara 2018 (FOCS, [arXiv:1808.06974](https://arxiv.org/abs/1808.06974)) Theorem 1.1's worst-case-to-average-case reduction for Gap-MCSP, where the heuristic algorithm's advantage `ε(n) = 1/poly(n)` over the uniform truth-table distribution is the load-bearing quantity. The current Mathlib `PMF` library supports `PMF.uniformOfFintype` (see `Mathlib/Probability/Distributions/Uniform.lean`) but lacks the bias-from-half notion at this signature. ## API summary - `PMF.advantageFromHalf : PMF Bool → ℝ` - `PMF.advantageFromHalf_le_one` (`@[simp]`) - `PMF.advantageFromHalf_neg_one_le` (`@[simp]`) - `PMF.advantageFromHalf_eq_zero_iff_half` - `PMF.advantageFromHalf_map_tsum` - `PMF.advantageFromHalf_uniformBool` (witness: advantage 0) - `PMF.advantageFromHalf_pure_true` (witness: advantage 1) - `PMF.advantageFromHalf_pure_false` (witness: advantage -1) ## Notes * The file lives at `Mathlib/Probability/ProbabilityMassFunction/Advantage.lean`, alphabetically before `Basic.lean`, and is imported in `Mathlib.lean` at the corresponding alphabetical position. * All proofs are sorry-free. * The definition is `noncomputable` (matches `PMF` style; `(p true).toReal` threading through `ENNReal`). * No new imports outside the existing PMF / ENNReal substrate. * Maintainer review of the naming (`advantageFromHalf` vs alternative candidates like `biasFromHalf`) and of whether the `tsum`-form composition lemma should be supplemented by a `Finset.sum` variant for `Fintype` sources is most welcome. Co-authored-by: Claude Opus 4.7 (1M context) t-measure-probability new-contributor 120/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Advantage.lean 2 2 ['github-actions'] nobody
14-32874
14 days ago
unknown
0-0
0 seconds
39404 metakunt
author:metakunt
feat(NumberTheory/AKSPrimality): Introspective definition This defines the introspective relation and proves the key property for the AKS theorem. From #34507 t-number-theory awaiting-author 147/0 Mathlib.lean,Mathlib/NumberTheory/AKSPrimality.lean 2 2 ['github-actions', 'tb65536'] tb65536
assignee:tb65536
14-29281
14 days ago
14-29281
14 days ago
0-85415
23 hours
39229 grunweg
author:grunweg
dev: towards `fun_prop` on manifolds --- - [ ] depends on: #39226 Rebased version of #31580. Meant to be a prototype that demonstrate how this could possibly work. Not functional yet; waiting on cache to continue. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 305/1 Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Tactic/FunProp/Core.lean,MathlibTest/DifferentialGeometry/FunPropM.lean,MathlibTest/fun_prop_dev.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
14-21110
14 days ago
18-34682
18 days ago
0-12
12 seconds
37405 Paul-Lez
author:Paul-Lez
feat(Mathlib/Algebra/BigOperators/Fin): lemma about List.ofFn I tried several places for this lemma but wasn't able to find any one that didn't result in a `large-import` issue - suggestions would be welcome! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import awaiting-author
label:t-algebra$
7/0 Mathlib/Algebra/BigOperators/GroupWithZero/Action.lean 1 2 ['YaelDillies', 'github-actions'] nobody
14-17958
14 days ago
14-17958
14 days ago
4-51272
4 days
37707 MavenRain
author:MavenRain
feat(Combinatorics/SimpleGraph): add IsMaximalClique/IsMaximalIndepSet, refactor IsMaximum* to MaximalFor Addresses #34962 new-contributor t-combinatorics 63/31 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 6 ['MavenRain', 'SnirBroshi', 'eric-wieser', 'github-actions'] nobody
14-16084
14 days ago
14-16156
14 days ago
14-17758
14 days
31730 thorimur
author:thorimur
feat(Meta): declaration manipulation meta API: allow logging on type signature of theorems This PR introduces some initial definitions in the space of a declaration manipulation meta API. In the course of #31142, it became apparent that we could benefit from having tools for handling the syntax and elaboration info of user-written declarations. This PR makes a small beginning towards that end in the Mathlib.Util.DeclarationManipulation module, and provides API for - getting the info and syntax ref of a declaration given its `Name` - getting the ref of a theorem's type signature from within some command source syntax given the declaration's ref given above - running a monadic action with the ambient ref set to that of the type signature of a theorem, with sensible fallbacks This is used to improve logging locations for the unused-instances-in-types linters, and may be useful for other linters that want to inpsect a theorem's type at the expression level (instead of the syntax level). (It also introduces the small helper definitions `Syntax.findSome?` and `Syntax.rangeEq`, which behave as expected.) For context: in the future, it would be nice to - provide support for all sorts of declarations, not just theorems--but this requires a lot more syntax matching - provide "exploded views" of declaration syntax like `mkDefView`, but finer grained, and geared for use during linting rather than elaboration - make it easy to compose complex suggestions to transform different parts of a declaration at once --- - [x] depends on: #31725 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 131/0 Mathlib.lean,Mathlib/Lean/Syntax.lean,Mathlib/Util/DeclarationManipulation.lean 3 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
14-11149
14 days ago
176-27389
176 days ago
2-29773
2 days
38317 WenrongZou
author:WenrongZou
feat(Date/Choose): add some lemmas about choose of prime pow In this PR, I add some lemma about choose of prime pow. 1) For primes `p` and positive integer `n`, assume that for all `i ∈ Icc 1 (n - 1)`, `choose n i` congruent to `0` module `p`, then `n = p ^ multiplicity p n`. 2) For a prime power `n`, the greatest common divisor of `choose n 1, ⋯, choose n (n - 1)` is actually the minimal prime factor of `n`. 3) For a natural number `n` greater than `1`, assume that `n` is not a prime power, then the greatest common divisor of `choose n 1, ⋯, choose n (n - 1)` is `1`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 98/0 Mathlib/Data/Nat/Choose/Lucas.lean 1 5 ['WenrongZou', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
14-9549
14 days ago
14-9349
14 days ago
39-46399
39 days
37056 lecopivo
author:lecopivo
feat(Tactic/FunProp): proper support for metavariables in fun_prop goals This PR add proper support for metavariables in `fun_prop` goals thus allows for properly solving goals like `HasFDerivAt k f ?f' x`. --- This extension to `fun_prop` will enable computation of derivatives by properly handling metavariables in `fun_prop` goal thus allowing us to solve `HasFDerivAt k f ?f' x` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta large-import awaiting-author merge-conflict 1217/220 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/Simproc.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/Measurability.lean,MathlibTest/FunPropMinimal.lean,MathlibTest/FunPropMinimalOutParam.lean 12 31 ['eric-wieser', 'github-actions', 'lecopivo', 'mathlib-merge-conflicts', 'thorimur'] alexjbest and thorimur
assignee:alexjbest assignee:thorimur
14-8113
14 days ago
57-34955
57 days ago
7-45984
7 days
37231 lecopivo
author:lecopivo
feat(Tactic/FunProp): set up `fun_prop` for HasFDerivAt Correctly set up `fun_prop` for `HasFDerivAt` and set up `deriv_simproc` for simplifying `fderiv ...`. - [ ] depends on: #37056 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import t-meta merge-conflict 1327/228 Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/Calculus/FDeriv/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Pow.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/SpecialFunctions/Arsinh.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Sqrt.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/Simproc.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/Measurability.lean,MathlibTest/FunProp.lean,MathlibTest/FunPropMinimal.lean,MathlibTest/FunPropMinimalOutParam.lean 24 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
14-8112
14 days ago
64-63594
64 days ago
0-432
7 minutes
37270 lecopivo
author:lecopivo
feat(Tactic/FunProp): set up fun_prop for HasDerivAt Correctly set up fun_prop for `HasDerivAt` and set up deriv_simproc for simplifying `deriv ...`. - [ ] depends on: #37231 - [ ] depends on: #37056 --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import t-meta merge-conflict 1709/252 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Pi.lean,Mathlib/Analysis/Calculus/Deriv/Pow.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/Calculus/FDeriv/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Pow.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/SpecialFunctions/Arcosh.lean,Mathlib/Analysis/SpecialFunctions/Arsinh.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogDeriv.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/ArctanDeriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/ComplexDeriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/DerivHyp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/Simproc.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/Measurability.lean,MathlibTest/FunProp.lean,MathlibTest/FunPropMinimal.lean,MathlibTest/FunPropMinimalOutParam.lean 46 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
14-8111
14 days ago
63-84497
63 days ago
0-350
5 minutes
39140 kim-em
author:kim-em
feat(scripts): add lake exe no_expose tool for @[expose] removal This PR adds `lake exe no_expose`, a tool that identifies and removes `@[expose]` attributes on defs that aren't needed downstream. Three subcommands: `collect`, `report`, `edit`. The `collect` subcommand walks the built Mathlib environment via `Lean.withImportModules` to emit per-decl enumeration, static cross-references, and per-decl reference lists. Without `--skip-build` it additionally patches the lakefile to enable `diagnostics=true / diagnostics.threshold=0` and parses the build log for unfold events; backups are restored on cleanup or on startup recovery from an interrupted run. The `edit` subcommand resolves a `@[expose] public section` file by dropping the section-level marker and re-adding `@[expose]` only on needed decls (`auto`/`section`/`individual` strategies; merges into existing attribute lists correctly to avoid stacked `@[...]` blocks). Edits apply by default; `--dry-run` previews. Refuses on uncommitted changes or stale report data unless explicitly overridden; differential parse-validation before writing; `--verify` runs `lake build` on the touched module and rolls back on failure; every change is recorded as a unified diff in `scripts/.no_expose/edits.patch`. 🤖 Prepared with Claude Code merge-conflict 8185/1240 .github/workflows/build_template.yml,.gitignore,Archive/Examples/IfNormalization/Result.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2024Q6.lean,Cache/Requests.lean,Counterexamples/Phillips.lean,Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/Grp/Biproducts.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/LargeColimits.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/Grp/Yoneda.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/LeftResolution.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Adjunction.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafification.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/MonCat/Yoneda.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Category/Ring/Under/Basic.lean,Mathlib/Algebra/Category/Ring/Under/Limits.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Nat/Even.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Homology/AlternatingConst.lean,Mathlib/Algebra/Homology/Augment.lean,Mathlib/Algebra/Homology/Bifunctor.lean,Mathlib/Algebra/Homology/BifunctorAssociator.lean,Mathlib/Algebra/Homology/BifunctorHomotopy.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/CochainComplexOpposite.lean,Mathlib/Algebra/Homology/CochainComplexPlus.lean,Mathlib/Algebra/Homology/CommSq.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/ExactFunctor.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughInjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExactSequences.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExtClass.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean,Mathlib/Algebra/Homology/DerivedCategory/KInjective.lean,Mathlib/Algebra/Homology/DerivedCategory/KProjective.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean 1416 1 ['urkud'] nobody
14-6453
14 days ago
unknown
0-0
0 seconds
36777 jjdishere
author:jjdishere
feat(Valuation/ValuativeRel): generalize `ValuativeRel` to non-commutative rings This is the second in a series of PRs, with the final goal of removing the class `Valued` from Mathlib. A `Valued` instance will be replaced by `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R] (v : Valuation R A) [v.Compatible]`. This PR generalize `ValuativeRel` from `CommRing` to `Ring` by adding a field `vle_mul_comm {x y} : vle (x * y) (y * x)`. Without this field, the value group associated to the valuative relation may be non-abelian. The APIs of `ValuativeRel.ofValuation` and `ValuativeRel.valuation` are also generalized, showing this new definition is indeed equivalent to the valuations on non commutative rings. This is a prerequisite of #36769 . --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author merge-conflict 210/128 Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Valuation/DiscreteValuativeRel.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 8 47 ['JovanGerb', 'faenuccio', 'github-actions', 'jjdishere', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'riccardobrasca', 'wwylele'] faenuccio and riccardobrasca
assignee:riccardobrasca assignee:faenuccio
13-84007
13 days ago
61-387
61 days ago
11-64422
11 days
39323 lecopivo
author:lecopivo
feat: fun_prop for integrability setting up fun_prop with integrability --- - [ ] depends on: #39370 - [ ] depends on: #39371 - [ ] depends on: #39325 - [ ] depends on: #39329 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR merge-conflict 1713/55 Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/MeasureTheory/Function/L1Space/AEEqFun.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntegrableOnFunProp.lean,Mathlib/MeasureTheory/Integral/LocallyIntegrableOnFunProp.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Tactic/RunAutoParam.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean,MathlibTest/FunProp.lean,MathlibTest/FunPropMinimal.lean,MathlibTest/IntegrabilityTactic.lean,MathlibTest/RunAutoParam.lean,scripts/README.md,scripts/update-integrability-tactic-counts.sh 32 6 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
13-81876
13 days ago
16-53963
16 days ago
0-1508
25 minutes
39368 gasparattila
author:gasparattila
feat: homogenization of an affine space --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
401/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Homogenization.lean,docs/references.bib 3 15 ['eric-wieser', 'gasparattila', 'github-actions'] nobody
13-79366
13 days ago
15-70872
15 days ago
15-72036
15 days
39472 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/Homogeneous): add homogeneous lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 74/2 Mathlib/Data/Finsupp/Weight.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 3 1 ['github-actions'] nobody
13-58415
13 days ago
13-58485
13 days ago
13-58641
13 days
39161 alreadydone
author:alreadydone
feat(LinearAlgebra): commutative semirings satisfy strong rank condition Co-authored-by: Aristotle (Harmonic) Thanks to ChatGPT and Gemini for converting part of Yi-Jia Tan's paper into LaTeX, which served as solutions provided to Aristotle. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra LLM-generated
label:t-algebra$
616/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Nonsingular.lean,docs/references.bib 3 3 ['SnirBroshi', 'github-actions'] nobody
13-52772
13 days ago
19-33127
19 days ago
0-3
3 seconds
7873 astrainfinita
author:astrainfinita
perf: reorder `extends` and change instance priority in algebra hierarchy There are no strict rules, but in general `Cancel` is dropped first, then `Comm`, then `Neg / Inv`, then `Assoc`. Not sure if there's a better way. An important goal is to search for `Zero/One/Add/Mul` instances first along `Zero/One/Add/Mul` -> ... -> `Ring` -> `CommRing` -> `Field`. --- - [ ] depends on: #14712 - [x] depends on: #16638 - [ ] depends on: #18464 - [ ] depends on: #18468 - [ ] depends on: #18470 - [ ] depends on: #18472 - [ ] depends on: #18474 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra blocked-by-other-PR
label:t-algebra$
494/204 Archive/Imo/Imo1998Q2.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Associated.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/GroupWithZero/Semiconj.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Multiplier.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/CategoryTheory/Preadditive/SingleObj.lean,Mathlib/CategoryTheory/Triangulated/Functor.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Rat/Denumerable.lean,Mathlib/Data/Real/ENatENNReal.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/Init/ZeroOne.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean,Mathlib/MeasureTheory/Decomposition/Jordan.lean,Mathlib/MeasureTheory/Decomposition/SignedLebesgue.lean,Mathlib/NumberTheory/ArithmeticFunction.lean,Mathlib/NumberTheory/LegendreSymbol/GaussEisensteinLemmas.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/NumberTheory/Zsqrtd/QuadraticReciprocity.lean,Mathlib/Order/Filter/Germ.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/Ideal/IsPrincipal.lean,Mathlib/RingTheory/Ideal/LocalRing.lean,Mathlib/RingTheory/Ideal/Norm.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/MvPolynomial/Symmetric.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Tactic/Positivity/Core.lean 104 84 ['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'kim-em', 'leanprover-bot', 'mattrobball'] nobody
13-50866
13 days ago
685-64477
685 days ago
3-36575
3 days
39333 lecopivo
author:lecopivo
feat(run_auto_param): tactic to run autoParam tactic Tactic `run_auto_param` is designed to solve goals in the form `autoParam P tac` by executing tactic `tac` on the goal `P`. It is mainly meant to be used as a discharger for other tactics like `simp` or `fun_prop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 97/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/RunAutoParam.lean,MathlibTest/RunAutoParam.lean 4 8 ['JovanGerb', 'fpvandoorn', 'github-actions', 'lecopivo'] JovanGerb
assignee:JovanGerb
13-41034
13 days ago
14-55450
14 days ago
0-602
10 minutes
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
13-34646
13 days ago
127-71069
127 days ago
40-42357
40 days
37720 cjrl
author:cjrl
feat(Data/Fintype/Card): existsUnique_notMem_image_of_injective_of_card_succ This pull requests adds a small theorem `existsUnique_notMem_image_of_injective_of_card_succ` to `Mathlib/Data/Fintype/Card` that says given an injective map f : α → β such that β has cardinality one more than α, there exists a unique element of β not in the image of f. This can be viewed as going in the opposite direction of `card_lt_of_injective_of_notMem`. This little fact is needed for our Latin Square PR #36698. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor t-set-theory 19/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/Card.lean 2 10 ['IvanRenison', 'cjrl', 'dagurtomas', 'ghseeli', 'github-actions'] nobody
13-33064
13 days ago
13-33064
13 days ago
51-3882
51 days
35197 j-loreaux
author:j-loreaux
feat: Hölder framework for `lp` spaces --- - [ ] depends on: #35152 - [ ] depends on: #35198 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 311/9 Mathlib.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Lp/lpHolder.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Tactic/Linter/TextBased.lean 6 13 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll', 'mike1729', 'themathqueen'] themathqueen
assignee:themathqueen
13-31352
13 days ago
36-66727
36 days ago
55-69468
55 days
32829 Hagb
author:Hagb
feat(Data/Finsupp/MonomialOrder): weaken `IsOrderedCancelAddMonoid` to `IsOrderedAddMonoid` `IsOrderedCancelAddMonoid syn` (`.iocam`) can be obtained from `IsOrderedAddMonoid syn` and other fields. --- - [ ] depends on: #32828 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-order 11/2 Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Data/Finsupp/MonomialOrder.lean 2 9 ['Hagb', 'Vierkantor', 'github-actions', 'mathlib4-dependent-issues-bot', 'vihdzp'] nobody
13-28869
13 days ago
168-25499
168 days ago
0-137
2 minutes
39443 justus-springer
author:justus-springer
feat(Data/Set/Image): `nonempty_preimage_iff` Basically a converse to `nonempty_of_nonempty_preimage`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 4/0 Mathlib/Data/Set/Image.lean 1 4 ['Paul-Lez', 'github-actions', 'justus-springer', 'urkud'] nobody
13-15165
13 days ago
14-46342
14 days ago
14-46304
14 days
33392 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/Generation): non-exceptional case in Dieudonné's theorem We prove the theorem of [Dieudonné-1955][J. Dieudonné, “Sur les générateurs des groupes classiques”]. Let `K` be a division ring and `V` be a `K`-module. * `LinearEquiv.mem_transvections_pow_mul_dilatransvections_of_fixedReduce_eq_one`: If `e.fixedReduce = 1`, then `e` can be written as the product of `finrank K (V ⧸ e.fixedSubmodule) - 1` transvections and one dilatransvection. This is the first part of the non-exceptional case in Dieudonné's theorem. (This statement is not interesting when `e = 1`.) * `LinearEquiv.mem_transvections_pow_mul_dilatransvections_of_fixedReduce_ne_smul_id`: If `e.fixedReduce` is not a homothety, then `e` can be written as the product of `finrank K (V ⧸ e.fixedSubmodule) - 1` transvections and one dilatransvection. This is the second part of the non-exceptional case in Dieudonné's theorem. * `LinearEquiv.IsExceptional`: A linear equivalence `e : V ≃ₗ[K] V` is exceptional if `1 < finrank K (V ⧸ e.fixedSubmodule)` and if `e.fixedReduce` is a nontrivial homothety. * `LinearEquiv.mem_dilatransvections_pow_of_notIsExceptional`: This is the non-exceptional case in Dieudonné's theorem, as a combination of the two preceding statements. --- - [x] depends on: #33348 - [x] depends on: #33282 - [x] depends on: #33347 - [ ] depends on: #33387 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
551/0 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean 4 16 ['AntoineChambert-Loir', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
13-11695
13 days ago
13-11763
13 days ago
60-50573
60 days
30351 JLimperg
author:JLimperg
[Not a PR] Benchmark Aesop's lazy forward state construction Testing the performance impact of an Aesop change. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict dependency-bump 3/3 lake-manifest.json,lakefile.lean 2 11 ['JLimperg', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'niro4-1'] nobody
13-5808
13 days ago
unknown
0-0
0 seconds
38427 mckoen
author:mckoen
feat(AlgebraicTopology/SimplicialSet): strong inner anodyne morphisms Defines strong inner anodyne morphisms, WIP --- - [ ] depends on: #37869 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP merge-conflict 267/0 Mathlib.lean,Mathlib/AlgebraicTopology/Quasicategory/Basic.lean,Mathlib/AlgebraicTopology/Quasicategory/InnerFibration.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Inner/Basic.lean 4 4 ['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
13-4928
13 days ago
36-61483
36 days ago
0-14
14 seconds
39499 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: run `lake shake` successively from the leaves We do the experiment from #39481 in reverse order: starting from the leaves, run `lake shake --force --only --fix` and then `lake build` until something breaks. Then fix the problems manually and continue. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt 8057/0 MS_test/topsort.txt 1 2 ['MichaelStollBayreuth', 'github-actions'] nobody
13-3801
13 days ago
13-16560
13 days ago
0-1
1 second
39231 mbkybky
author:mbkybky
chore(RingTheory/PicardGroup): drop `StrongRankCondition` assumptions in two lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 3/6 Mathlib/RingTheory/PicardGroup.lean 1 1 ['github-actions'] nobody
13-743
13 days ago
18-20109
18 days ago
18-29461
18 days
37680 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Clique): add lemmas about isomorphisms and cliques --- 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) - [x] depends on: #37649 - [x] depends on: #37640 - [x] depends on: #37676 - [ ] depends on: #37697 - [ ] depends on: #37700 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics 156/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-82329
12 days ago
unknown
0-0
0 seconds
39504 WenrongZou
author:WenrongZou
feat(MvPowerSeries/Ideal): kernel of map equals map `C` of kernel In this PR, we prove that given a ring homomorphism f, suppose that kernel of f is finitely generated, then kernel of map equals map `C` of kernel. (See `ker_map_of_FG`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 87/0 Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/Ideal.lean 2 4 ['CoolRmal', 'WenrongZou', 'github-actions'] nobody
12-77946
12 days ago
13-1863
13 days ago
13-2125
13 days
26088 grunweg
author:grunweg
chore(Linter/DirectoryDependency): move forbidden directories into a JSON file This PR continues the work from #25406. Original PR: https://github.com/leanprover-community/mathlib4/pull/25406 please-adopt t-linter merge-conflict 387/19 Mathlib/Tactic/Linter/DirectoryDependency.lean,scripts/README.md,scripts/forbiddenDirs.json 3 7 ['Vierkantor', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'rosborn'] nobody
12-69026
12 days ago
276-7605
276 days ago
0-2565
42 minutes
37848 rwst
author:rwst
feat(RingTheory/PowerSeries/Log): log and exp as inverses This adds the lemmas `exp_subst_log` and `log_subst_exp_sub_one`, together with two helpers needed for the proofs. Note: I'm using Claude + Opus for supervised formalization tasks. Claude has no permission to use git on my machine. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory LLM-generated 88/0 Mathlib/RingTheory/PowerSeries/Log.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 2 10 ['chrisflav', 'github-actions', 'rwst'] chrisflav
assignee:chrisflav
12-64345
12 days ago
18-74474
18 days ago
49-56912
49 days
38917 yuanyi-350
author:yuanyi-350
chore(CategoryTheory/Comma/Basic): remove an erw - rewrites the `full_map` proof by pushing `Functor.comp_map` and the naturality equalities into a single `rw`/`simp only` chain - removes the `erw`-based transport of `α.naturality_assoc` and `β.naturality` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated awaiting-author 5/5 Mathlib/CategoryTheory/Comma/Basic.lean 1 2 ['github-actions', 'loefflerd'] nobody
12-57819
12 days ago
12-57819
12 days ago
13-30201
13 days
39514 SnirBroshi
author:SnirBroshi
chore(RingTheory/Polynomial/Basic): golf `degreeLTEquiv` Also extracts the `monomial i a ∈ degreeLT R n` proof to a lemma. --- The semicolons might be a bit excessive, let me know if so. Also the `right_inv` proof is slower than the previous version, so maybe it should be reverted, but the rest is fine. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 11/32 Mathlib/RingTheory/Polynomial/Basic.lean 1 1 ['github-actions'] nobody
12-57744
12 days ago
12-58030
12 days ago
12-58400
12 days
36954 FMLJohn
author:FMLJohn
feat(Topology/ClosedBases): `TopologicalSpace.IsClosedBasis` and `TopologicalSpace.IsClosedSubbasis s` In this pull request, I have defined closed bases and closed subbases of topologies, and proved some basic properties of them. ## Main definitions * `TopologicalSpace.IsClosedBasis s`: A closed basis of a topological space `α` is a collection of closed sets `s : Set (Set α)` such that every closed subset of `α` can be written as an intersection of elements of `s`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 117/0 Mathlib.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/ClosedBases.lean 3 19 ['github-actions', 'scholzhannah'] urkud
assignee:urkud
12-57310
12 days ago
36-84065
36 days ago
65-86353
65 days
38916 yuanyi-350
author:yuanyi-350
chore(CategoryTheory/CatCommSq): remove an erw - rewrites `hInv_hInv` by using `conv_rhs` with `iso_hom_naturality` - removes the `rw`/`erw` pair around `Functor.comp_map` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 3/2 Mathlib/CategoryTheory/CatCommSq.lean 1 2 ['github-actions', 'loefflerd'] nobody
12-56498
12 days ago
26-1622
26 days ago
26-1584
26 days
36934 Parcly-Taxel
author:Parcly-Taxel
refactor: `Language` as a one-field structure I came across definitional equality problems when trying to prove the following as part of a challenge from my PhD advisor: ```lean import Mathlib.Computability.Language variable {α : Type*} /-- `IsSingleton y` states that `y` consists of only one word, and that word is not empty. -/ def IsSingleton (y : Language α) : Prop := (∀ z ≤ y, z = y ∨ z = 0) ∧ y ≠ 1 ∧ y ≠ 0 lemma isSingleton_iff {y : Language α} : IsSingleton y ↔ ∃ w ≠ [], y = {w} := by sorry ``` This refactor resolves said defeq problems by making `Language` into a one-field structure with `toSet` and `ofSet`. --- - [ ] depends on: #37603 t-computability blocked-by-other-PR merge-conflict 179/110 Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/DFA.lean,Mathlib/Computability/EpsilonNFA.lean,Mathlib/Computability/Language.lean,Mathlib/Computability/MyhillNerode.lean,Mathlib/Computability/NFA.lean,Mathlib/Computability/RegularExpressions.lean 7 22 ['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
12-44130
12 days ago
52-16558
52 days ago
11-26368
11 days
36971 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): Change SimpleGraph files to use GraphLike Per discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)), this PR changes a swath of files in `SimpleGraph` folder to use `GraphLike` class and its APIs. --- - [ ] depends on: #36743 - [ ] depends on: #39047 - [ ] depends on: #36829 - [ ] depends on: #36756 - [ ] depends on: #39054 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics merge-conflict 2202/1597 Archive/Wiedijk100Theorems/Konigsberg.lean,Mathlib.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean,Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/GraphLike/Walks/Basic.lean,Mathlib/Combinatorics/GraphLike/Walks/Simple.lean,Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Combinatorics/SimpleGraph/GraphLike.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Chord.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Counting.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Traversal.lean,Mathlib/Data/Subtype.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/CastData.lean 43 7 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-44129
12 days ago
69-32147
69 days ago
0-533
8 minutes
37671 grunweg
author:grunweg
feat: also check for norm_num in the flexible linter Most other flexible tactics are terminal; dsimp is missing from this list (but perhaps less important in practice. --- - [x] depends on: #37880 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-author merge-conflict 31/1 Archive/Wiedijk100Theorems/AbelRuffini.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean,Mathlib/Analysis/InnerProductSpace/Convex.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Measure/IntegralCharFun.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Harmonic/EulerMascheroni.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Topology/UrysohnsLemma.lean 19 12 ['SnirBroshi', 'github-actions', 'grunweg', 'joneugster', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-44005
12 days ago
42-82198
42 days ago
4-15280
4 days
38054 chrisflav
author:chrisflav
feat(RingTheory): category of finite étale algebras over a separably closed field We define the category of finite étale `R`-algebras for a ring `R` and show it is equivalent to `FintypeCat` if `R` is a separably closed field. From Pi1. --- - [ ] depends on: #38016 - [ ] depends on: #38409 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import blocked-by-other-PR merge-conflict 338/1 Mathlib.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Etale/Finite.lean,Mathlib/RingTheory/TensorProduct/Maps.lean,Mathlib/RingTheory/TotallySplit.lean 10 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-42712
12 days ago
36-84869
36 days ago
0-82112
22 hours
39287 xgenereux
author:xgenereux
feat(Localization/AtPrime/Basic): upgrade `equivQuotMaximalIdeal` to an AlgEquiv The definition [IsLocalization.AtPrime.equivQuotMaximalIdealPow](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Localization/AtPrime/Basic.html#IsLocalization.AtPrime.equivQuotMaximalIdealPow) was added in #36783. The case with `n = 1` is still important and interesting. I have upgraded it to an AlgEquiv using `equivQuotMaximalIdealPow`. This did break a few small things, because we need to bridge back to a `RingEquiv` in some places. I took the liberty to add some missing `apply` lemmas to ease fixing these proofs. Disclaimer: I used Claude to suggest the first shot and refined it from there. María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 45/68 Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean 3 2 ['github-actions', 'mathlib-merge-conflicts', 'wwylele'] nobody
12-42333
12 days ago
12-42334
12 days ago
4-53165
4 days
39481 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: run `lake shake` iteratively and fix problems This adds `-- shake: keep-all` to all modules under `Mathlib.Lean`, `Mathlib.Tactic` and `Mathlib.Util`. Then it goes through the remaining modules in topological order (according to the list in `MS_test/topsort3.txt`) and for each of them, runs `lake shake --force --only --fix`, followed by `lake build `. If there is no error, the changes are commited. Otherwise, the problems are fixed manually; then the changes are committed. This has been done for the first ~400 modules in the list. 38 of them required manual fixes; they are listed in `MS_test/after_shake_fixes.txt`. We note that the import stats bot claims that the number of imports actually *increases* in most files, which somehow runs counter expectations... Discussion: [#mathlib4 > shake without --add-public @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/shake.20without.20--add-public/near/595349216) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt large-import merge-conflict 9178/858 MS_test/after_shake_fixes.txt,MS_test/topsort3.txt,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/Expr.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/FreeMonoid/Count.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Pretransitive.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Commute/Basic.lean,Mathlib/Algebra/Group/Commute/Units.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Equiv/TypeTags.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Idempotent.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/Int/Units.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Invertible/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/ModEq.lean,Mathlib/Algebra/Group/Nat/Hom.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Units.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Semiconj/Basic.lean,Mathlib/Algebra/Group/Semiconj/Defs.lean,Mathlib/Algebra/Group/Semiconj/Units.lean,Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Commute.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Divisibility.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/GroupWithZero/Idempotent.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/NeZero.lean,Mathlib/Algebra/GroupWithZero/Opposite.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/GroupWithZero/Regular.lean,Mathlib/Algebra/GroupWithZero/Semiconj.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/NeZero.lean,Mathlib/Algebra/Notation.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Notation/Lemmas.lean,Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Opposites.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Quotient.lean,Mathlib/Algebra/Regular/Basic.lean,Mathlib/Algebra/Regular/Defs.lean,Mathlib/Algebra/Ring/Basic.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/GrindInstances.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Ring/Hom/InjSurj.lean,Mathlib/Algebra/Ring/Idempotent.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Int/Defs.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/Algebra/Ring/MinimalAxioms.lean 690 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
12-42330
12 days ago
unknown
0-0
0 seconds
39482 kbuzzard
author:kbuzzard
(fixing up another PR because I'm impatient): --- - [ ] depends on: #39467 [(in fact it _is_ #39467, I was just impatient] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra merge-conflict
label:t-algebra$
24/10 Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/GrindInstances.lean 3 6 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-42329
12 days ago
13-48669
13 days ago
0-1
1 second
26479 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis sphere-packing 219/0 Mathlib/Analysis/Complex/CauchyIntegral.lean 1 7 ['github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'wwylele'] urkud
assignee:urkud
12-23899
12 days ago
12-23899
12 days ago
46-35083
46 days
39183 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Complex/Exponential` - shortens the reindexing step in `norm_exp_sub_sum_le_norm_mul_exp` by switching from `sum_bij` to `sum_Ico_eq_sum_range` with `simp` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated maintainer-merge 8/23 Mathlib/Analysis/Complex/Exponential.lean 1 4 ['Komyyy', 'github-actions', 'yuanyi-350'] urkud
assignee:urkud
12-21392
12 days ago
12-21580
12 days ago
19-3150
19 days
35122 Marygold-Dusk
author:Marygold-Dusk
feat: define C^n submersions This PR defines submersions between C^n manifolds. In the infinite-dimensional setting, submersions are defined via local normal forms rather than surjectivity of the mfderiv. A map f is a submersion at x if, in suitable charts around x and f x, it has the form (u, v) ↦ u after identifying the model space with a product. We prove a few basic properties: - being a submersion is a local property, - products of submersions are submersions, - the set of submersed points is open Future PRs will prove that submersions are C^n and deduce equivalence with the standard definition in finite dimensions. From the path towards the regular value theorem. This file was developed under the supervision of Michael Rothgang. Co-authored-by: Michael Rothgang --- Most of the design is analogues to immersions. t-differential-geometry new-contributor 642/0 Mathlib.lean,Mathlib/Geometry/Manifold/Submersion.lean,docs/references.bib 3 54 ['Marygold-Dusk', 'chrisflav', 'github-actions', 'grunweg'] PatrickMassot and grunweg
assignee:grunweg assignee:PatrickMassot
12-12087
12 days ago
12-12087
12 days ago
56-32583
56 days
39447 Paul-Lez
author:Paul-Lez
feat: define map from PowerSeries to FormalMultilinearSeries WIP: I'm not fully happy with the design yet and would like to change a few things around **before** anyone takes a look for review! This PR defines a map from `PowerSeries R` to `FormalMultilinearSeries R A A`, and proves that this map preserves addition and composition. Co-authored-by: Xavier Genereux --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory 181/0 Mathlib/RingTheory/PowerSeries/ToFormalMultilinearSeries.lean 1 1 ['github-actions'] nobody
12-10087
12 days ago
14-44782
14 days ago
0-23
23 seconds
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 32/5 Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 11 ['IvanRenison', 'YaelDillies', 'github-actions'] nobody
12-4723
12 days ago
13-59312
13 days ago
55-9668
55 days
37010 pion2024
author:pion2024
`Sl2`update: add theorem `finrank_weightSpace_eq_one_of_isIrreducible` # Background: I am a 2nd year undergrad student in mathematics currently self-teaching Lie algebra and representation theory. Before starting the formalization, I searched for related keywords on Zulip and in the GitHub issues and commits. As far as I could tell, there were no existing results or ongoing attempts before I started. All feedback is welcome. Even a quick check on the statement design/an idea on the generalization (cf Limitations below) would be incredibly helpful. # Overview In this PR, I added the new section `IsAlgClosedIrreducible` which formalizes the well-known theorem `finrank_weightSpace_eq_one_of_isIrreducible` for the Lie algebra $\mathfrak{sl}_2$ step by step. It proves that for a finite-dimensional irreducible representation of $\mathfrak{sl}_2$ over an algebraically closed field $K$ of characteristic zero, every non-trivial weight space has a dimension of exactly 1. # Formalization Structure : Instead of relying on explicit finite sums (`Finset.sum`) and manipulating coefficients, I heavily leverage Mathlib's abstractions in Submodule Lattice Theory and Coordinate-free Linear Algebra. The formalization proceeds in the following logic: 1. Existence of a Primitive Vector (`exists_primitiveVector`): I construct a primitive (highest-weight) vector by showing that repeated applications of the raising operator $e$ must eventually yield zero due to the finite-dimensionality of $M$ and the linear independence of eigenvectors corresponding to distinct eigenvalues. 2. The span of $f$-Tower as a Lie Submodule equals to the whole space (`fTowerLieSubmodule_eq_top`): I define the $f$-tower submodule as the $K$-span of $\{f^k m \mid k \in \mathbb{N}\}$. By proving its closure under the action of $f, h$, and $e$, I establish it as a Lie submodule. Since $M$ is irreducible, this submodule must be the entire space ($\top$). 3. Submodule Lattice Operations (`exists_mem_fTower_of_weightSpace_ne_bot`): To prove that every weight in $M$ is of the form $\mu_0 - 2k$, I use lattice operations (iSup, inf, and Disjoint) to avoid element-wise tracking. Since the $f$-tower spans $M$, the supremum of its weight spaces is $\top$. By leveraging `Module.End.eigenspaces_iSupIndep`, I show that any arbitrary non-trivial weight space would have a trivial intersection with $\top$ if its weight didn't belong to the sequence, yielding a contradiction. 4. Dimension Calculation via Basis Equivalence (`finrank_weightSpace_eq_one_of_isIrreducible`): Finally, I construct a basis from the non-zero elements of the $f$-tower. To show the weight space is 1-dimensional, I use `Basis.equivFun` to compare coefficients algebraically. This avoids heavy manual indexing and index-shifting, proving that any vector in the weight space $\mu_0 - 2k$ is merely a scalar multiple of $f^k m$. # Use of AI: I used Gemini 3.1 Pro for tactics, theorems, improvement suggestions, and error explanations. I fully understand and can vouch for all the modifications I have made to the file. # Limitations: I only managed to formalize the finite-dimensional version, although the theorem also holds in the infinite-dimensional case. In the infinite case the existence of a primitive vector is not guaranteed. A quick search suggests that we might need heavy tools like Casimir operators and the universal enveloping algebra, which are totally beyond my current level. I am looking into it, but since there is a significant mathematical gap, I thought it would be best to get this finite-dimensional version merged first. new-contributor t-algebra large-import awaiting-author merge-conflict
label:t-algebra$
336/0 Mathlib/Algebra/Lie/Sl2.lean 1 11 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash', 'pion2024'] ocfnash
assignee:ocfnash
12-3663
12 days ago
58-70700
58 days ago
2-57577
2 days
39526 chrisflav
author:chrisflav
feat(CategoryTheory/Sites): definition of hypercovers This is WIP. Co-authored by: Robin Carlier --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory t-algebraic-topology 905/0 Mathlib/AlgebraicTopology/SimplicialObject/Cotensor.lean 1 1 ['github-actions'] nobody
12-1118
12 days ago
unknown
0-0
0 seconds
36832 KryptosAI
author:KryptosAI
chore(Data/Finset/Card): rename `pred_card_le_card_erase` to `sub_one_card_le_card_erase` ## Summary The name `pred_card_le_card_erase` suggests `Nat.pred` but the statement uses `- 1` (i.e., `Nat.sub 1`). Rename to `sub_one_card_le_card_erase` to match the actual statement. A deprecated alias is added for backwards compatibility. ### Files changed - `Mathlib/Data/Finset/Card.lean` — definition renamed + deprecated alias - `Mathlib/Data/Finset/Powerset.lean` — reference updated - `Mathlib/Combinatorics/Additive/SubsetSum.lean` — reference updated - `Mathlib/Algebra/Polynomial/EraseLead.lean` — reference updated Addresses the `Finset.pred_card_le_card_erase` item in #21584. ## AI disclosure I used Claude Code to explore the codebase (finding all references to rename) and to draft the PR description. I reviewed and understand all changes — these are straightforward renames with a deprecated alias. new-contributor awaiting-author 22/15 Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SetFamily/Shadow.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/RingTheory/Ideal/Operations.lean 9 8 ['KryptosAI', 'Multramate', 'dagurtomas', 'github-actions', 'mattrobball', 'ooovi'] nobody
11-82507
11 days ago
11-82507
11 days ago
59-48094
59 days
39370 fpvandoorn
author:fpvandoorn
feat: add specialized grind sets This adds two grind attributes for specialized tactics. See module doc for more information and motivation. This PR does not tag any lemmas yet. [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/small.20specialized.20grind.20sets/with/595132109) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 113/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean 4 5 ['chenson2018', 'fpvandoorn', 'github-actions'] dwrensha
assignee:dwrensha
11-72783
11 days ago
15-71459
15 days ago
15-71421
15 days
39216 emlis42
author:emlis42
feat(Topology/Algebra/InfiniteSum): add `limUnder_eq_tprod` This PR adds `limUnder_eq_tprod` and `limUnder_eq_tsum`. t-topology new-contributor 10/0 Mathlib/Topology/Algebra/InfiniteSum/Defs.lean 1 6 ['SnirBroshi', 'emlis42', 'github-actions', 'grunweg', 'mathlib-bors'] urkud
assignee:urkud
11-70290
11 days ago
11-70292
11 days ago
6-79087
6 days
32555 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph/Matching): maximum and maximal matchings for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 112/0 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean 2 46 ['SnirBroshi', 'SproutSeeds', 'YaelDillies', 'b-mehta', 'github-actions', 'jcommelin', 'ksenono'] YaelDillies
assignee:YaelDillies
11-69729
11 days ago
11-83888
11 days ago
130-57925
130 days
39269 godofecht
author:godofecht
feat(Algebra/Spectrum): add the second resolvent identity Adds `spectrum.resolvent_sub_resolvent`: For `a b : A` in an `R`-algebra and `r` in the resolvent set of both, `resolvent a r - resolvent b r = resolvent a r * (a - b) * resolvent b r`. Companion to `spectrum.resolvent_eq`. t-algebra new-contributor
label:t-algebra$
15/0 Mathlib/Algebra/Algebra/Spectrum/Basic.lean 1 3 ['github-actions', 'wwylele'] nobody
11-68281
11 days ago
17-56446
17 days ago
17-56408
17 days
39329 lecopivo
author:lecopivo
feat(fun_prop): eager application of transition theorems for fun_prop For properties like Integrable we want to apply transition theorems(like Continuous -> Integrable) eagerly --- This is a change necessary in preparation for making `fun_prop` work for integrability. --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 93/30 Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,MathlibTest/FunPropMinimal.lean 4 14 ['b-mehta', 'github-actions', 'lecopivo', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
11-67928
11 days ago
13-81876
13 days ago
1-47071
1 day
39366 akiezun
author:akiezun
feat(Data/Nat): add prime divisibility for ascFactorial and choose Adds two prime-divisibility lemmas for natural-number factorial/binomial APIs. The first characterizes when a prime divides an ascending factorial: `Nat.Prime.dvd_ascFactorial_iff`. The second applies this to binomial coefficients: `Nat.Prime.dvd_choose_add_sub_one_iff`, using `Nat.ascFactorial_eq_factorial_mul_choose'` and cancellation of the `n!` factor when `n < p`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor large-import 46/0 Mathlib.lean,Mathlib/Data/Nat/Choose/Consecutive.lean,Mathlib/Data/Nat/Factorial/BigOperators.lean 3 9 ['SnirBroshi', 'akiezun', 'github-actions', 'wwylele'] nobody
11-60828
11 days ago
11-62869
11 days ago
15-73210
15 days
31613 xyzw12345
author:xyzw12345
feat(RepresentationTheory/GroupCohomology): Non-abelian Group Cohomology In this PR, we develop the theory of non-abelian group cohomology, following the section in GTM 67 - Local Fields by Jean-Pierre Serre. We defined H0 and H1, constructed the connection maps, proved the long exact sequence, and constructed natural isomorphisms between our H0, H1 and the existing `groupCohomology` API. Co-authored by: Jiedong Jiang @jjdishere --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
610/1 Mathlib.lean,Mathlib/GroupTheory/Subgroup/Center.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/NonAbelian.lean 3 11 ['eric-wieser', 'github-actions', 'kbuzzard', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'tb65536', 'xyzw12345'] eric-wieser
assignee:eric-wieser
11-59852
11 days ago
101-72674
101 days ago
35-32011
35 days
37584 kennethgoodman
author:kennethgoodman
feat(Data/Nat/Fib): formalize Lamé's theorem ## Summary Formalize [Lamé's theorem](https://en.wikipedia.org/wiki/Lam%C3%A9%27s_theorem) (1844), the founding result of computational complexity theory. **Lamé's Theorem:** If the Euclidean algorithm on inputs `(a, b)` with `b ≤ a` takes `n + 1` division steps, then `b ≥ fib(n + 1)` and `a ≥ fib(n + 2)`. ### New definitions - `Nat.euclidSteps`: counts the number of division steps in the Euclidean algorithm on natural number inputs. ### New theorems - `Nat.fib_le_of_euclidSteps`: the main Lamé bound — Fibonacci lower bound on inputs given a step count. - `Nat.euclidSteps_le_of_lt_fib`: the contrapositive — step count upper bound given a Fibonacci bound on the smaller input. - `Nat.add_mod_le`: helper lemma that `b + a % b ≤ a` when `b ≤ a` and `0 < b`. ### Proof strategy Induction on `n`, tracking both elements of the pair. The key insight is that each Euclidean step replaces `(a, b)` with `(b, a % b)`, and since `a ≥ b + a % b` (because `a / b ≥ 1`), the Fibonacci recurrence `fib(n+3) = fib(n+2) + fib(n+1)` matches the structure of the algorithm. ### References - Gabriel Lamé, *Note sur la limite du nombre des divisions dans la recherche du plus grand commun diviseur entre deux nombres entiers*, Comptes rendus de l'Académie des sciences, 1844. --- ### AI usage disclosure Per the [Mathlib AI guidelines](https://leanprover-community.github.io/contribute/index.html#use-of-ai): Claude Code (Claude Opus 4.6) was used to assist with writing the Lean 4 proof code, fixing tactic errors, and drafting this PR description. The mathematical proof (induction on step count, tracking both pair elements through the Fibonacci recurrence) was designed by hand and verified on paper before formalization. I have reviewed and understand every line of the resulting Lean code and can explain all proof steps. --- - [x] builds cleanly (`lake build Mathlib.Data.Nat.Fib.Lame`) - [x] no `sorry` - [x] lines ≤ 100 characters, no trailing whitespace - [x] `autoImplicit false` - [x] docstrings on all public declarations new-contributor LLM-generated t-data merge-conflict 121/0 Mathlib.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Fib/Lame.lean,docs/1000.yaml 5 25 ['euprunin', 'github-actions', 'kennethgoodman', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] TwoFX
assignee:TwoFX
11-56601
11 days ago
11-56602
11 days ago
44-66371
44 days
38415 yuanyi-350
author:yuanyi-350
chore: kill 100 `erw`s Still open - [ ] depends on: #38725 - [ ] depends on: #38762 - [ ] depends on: #38764 - [ ] depends on: #38766 - [ ] depends on: #38916 - [ ] depends on: #38917 - [ ] depends on: #38918 - [ ] depends on: #38922 Fixed - [ ] depends on: #38418 - [ ] depends on: #38417 - [ ] depends on: #38501 - [ ] depends on: #38502 - [ ] depends on: #38503 - [ ] depends on: #38504 - [ ] depends on: #38505 - [ ] depends on: #38506 - [ ] depends on: #38508 - [ ] depends on: #38514 - [ ] depends on: #38515 - [ ] depends on: #38516 - [ ] depends on: #38517 - [ ] depends on: #38518 - [ ] depends on: #38519 - [ ] depends on: #38520 - [ ] depends on: #38521 - [ ] depends on: #38522 - [ ] depends on: #38644 - [ ] depends on: #38645 - [ ] depends on: #38675 - [ ] depends on: #38676 - [ ] depends on: #38677 - [ ] depends on: #38678 - [ ] depends on: #38679 - [ ] depends on: #38680 - [ ] depends on: #38681 - [ ] depends on: #38682 - [ ] depends on: #38683 - [ ] depends on: #38684 - [ ] depends on: #38685 - [ ] depends on: #38686 - [ ] depends on: #38687 - [ ] depends on: #38688 - [ ] depends on: #38689 - [ ] depends on: #38690 - [ ] depends on: #38724 - [ ] depends on: #38726 - [ ] depends on: #38727 - [ ] depends on: #38728 - [ ] depends on: #38734 - [ ] depends on: #38735 - [ ] depends on: #38736 - [ ] depends on: #38737 - [ ] depends on: #38738 - [ ] depends on: #38761 - [ ] depends on: #38763 - [ ] depends on: #38765 - [ ] depends on: #38767 - [ ] depends on: #38768 - [ ] depends on: #38769 - [ ] depends on: #38770 - [ ] depends on: #38771 - [ ] depends on: #38772 - [ ] depends on: #38773 - [ ] depends on: #38774 - [ ] depends on: #38912 - [ ] depends on: #38913 - [ ] depends on: #38914 - [ ] depends on: #38915 - [ ] depends on: #38919 - [ ] depends on: #38920 - [ ] depends on: #38921 - [ ] depends on: #38923 - [ ] depends on: #38924 - [ ] depends on: #38925 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 60/58 Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafification.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/AlgebraicTopology/DoldKan/GammaCompN.lean,Mathlib/CategoryTheory/CatCommSq.lean,Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoid.lean,Mathlib/CategoryTheory/Preadditive/Mat.lean,Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean,Mathlib/LinearAlgebra/CliffordAlgebra/EvenEquiv.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean 14 13 ['Whysoserioushah', 'github-actions', 'leanprover-radar', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'yuanyi-350'] nobody
11-54472
11 days ago
35-14452
35 days ago
1-1966
1 day
39549 Hagb
author:Hagb
feat(Order/RelIso/Basic): `swap`s and `compl`s are `Equiv`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 13/8 Mathlib/Order/RelIso/Basic.lean 1 3 ['Hagb', 'github-actions', 'leanprover-radar'] nobody
11-53164
11 days ago
11-55605
11 days ago
11-55567
11 days
39508 mcdoll
author:mcdoll
chore(Algebra/Module): rename multiplication lemmas and add `push/pull_end` attributes The renaming makes this file consistent with `Equiv.Perm`, where the custom `simp` set was first used. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-CI merge-conflict
label:t-algebra$
59/50 Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Central/End.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Star/LinearMap.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/Data/Matrix/Bilinear.lean,Mathlib/LinearAlgebra/Charpoly/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Reflection.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/FiniteCyclic.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/TensorProduct/Maps.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 28 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
11-52281
11 days ago
12-23891
12 days ago
0-2572
42 minutes
39555 b-mehta
author:b-mehta
feat(Data/Finset/Image): relate images with nontriviality --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 20/0 Mathlib/Data/Finset/Image.lean 1 1 ['github-actions'] nobody
11-46704
11 days ago
11-46782
11 days ago
11-46744
11 days
35017 robo7179
author:robo7179
feat(Combinatorics/SimpleGraph/Acyclic): every nontrivial tree has at least two leaves Add two theorems to prove that every non trivial tree has at least two leaves (one in Finite the other in Acyclic). --- - [ ] depends on: #37399 - [ ] depends on: #37400 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author blocked-by-other-PR 24/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean 2 44 ['IvanRenison', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robo7179'] YaelDillies
assignee:YaelDillies
11-42291
11 days ago
73-67633
73 days ago
35-3753
35 days
39098 BoltonBailey
author:BoltonBailey
chore(Data/Vector): add `grind` to cons lemmas This PR affects `List.Vector.head_cons` and `List.Vector.tail_cons`. It moves the simp attribute assignment of these lemmas to the lemma declarations and also applies the `grind =` attribute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 2/2 Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Defs.lean 2 4 ['BoltonBailey', 'github-actions', 'leanprover-radar'] nobody
11-39826
11 days ago
11-39900
11 days ago
20-53492
20 days
31587 JovanGerb
author:JovanGerb
Lean pr testing 11156 Testing the performance improvement given by not deleting cache so often when modifying the environment. cf. https://github.com/leanprover/lean4/pull/11156 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 5932/1306 .github/workflows/build_template.yml,Archive/Examples/IfNormalization/Result.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2024Q6.lean,Cache/IO.lean,Counterexamples/Phillips.lean,Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/Grp/Biproducts.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/LargeColimits.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/Grp/Yoneda.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/LeftResolution.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Adjunction.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafification.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/MonCat/Yoneda.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Category/Ring/Under/Basic.lean,Mathlib/Algebra/Category/Ring/Under/Limits.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Nat/Even.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Homology/AlternatingConst.lean,Mathlib/Algebra/Homology/Augment.lean,Mathlib/Algebra/Homology/Bifunctor.lean,Mathlib/Algebra/Homology/BifunctorAssociator.lean,Mathlib/Algebra/Homology/BifunctorHomotopy.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/CochainComplexOpposite.lean,Mathlib/Algebra/Homology/CochainComplexPlus.lean,Mathlib/Algebra/Homology/CommSq.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/ExactFunctor.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughInjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExactSequences.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExtClass.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean,Mathlib/Algebra/Homology/DerivedCategory/KInjective.lean,Mathlib/Algebra/Homology/DerivedCategory/KProjective.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/DerivedCategory/TStructure.lean 1425 5 ['JovanGerb', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
11-37814
11 days ago
197-71802
197 days ago
0-13411
3 hours
29744 espottesmith
author:espottesmith
feat(Combinatorics): define directed hypergraphs This PR defines directed hypergraphs: ``` @[ext] structure DiHypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The edge set -/ edgeSet : Set ((Set α) × (Set α)) /-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/ edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet ``` Additional definitions: - tail/head stars and negative/positive stars - some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty) - Vertex and (hyper)edge adjacency - isolated vertices - empty and nonempty dihypergraphs The design employed here is based off of #28613, but this PR does not depend on that one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 398/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 4 ['b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
11-37691
11 days ago
57-7076
57 days ago
114-76905
114 days
33928 jsm28
author:jsm28
feat(Combinatorics/Tiling/TileSet): indexed families of tiles Define the type `TileSet` for indexed families of tiles (in a discrete context), and some associated definitions (including `symmetryGroup`) and API lemmas. `TileSet` can be used for tilings of the whole space; for tilings of part of the space; for patches of tiles (extracted from a tiling by considering tiles meeting some set of points, or considered on their own without extracting from a tiling); for multiple tilings (covering the space more than once). In particular, the fact that people study multiple tilings provides a clear justification for using indexed families rather than sets of tiles, and basic definitions and API lemmas generally work for all these different uses of `TileSet` (sometimes with weak constraints such as tiles being finite, nonempty and only having finitely many tiles meeting any point of the space). Definitions for saying e.g. "this `TileSet` is a tiling of the whole space" are to be included in subsequent files in subsequent PRs. From AperiodicMonotilesLean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 460/0 Mathlib.lean,Mathlib/Combinatorics/Tiling/TileSet.lean 2 23 ['Parcly-Taxel', 'b-mehta', 'eric-wieser', 'github-actions', 'jsm28', 'vihdzp'] nobody
11-37690
11 days ago
136-54798
136 days ago
136-54760
136 days
36274 JTylM
author:JTylM
feat(Combinatorics/SimpleGraph/Matching): implemented the matchingNumber of a graph --- - [ ] depends on: #36406 - [ ] depends on: #32555 I implemented the matchingNumber as described in the issue and proved some statements including showing that there exists a matching achieving the matchingNumber. matchingNumber is increasing under injective maps matchingNumber is equal under isomorphisms matchingNumber of a matching is the cardinality of the matching This is my first PR and i had some trouble with some of the proofs, especially with the proof for matchingNumber.isAttained. So any suggestions on how to make the proofs shorter would be welcome. Also i was not sure about the naming of some of the theorems so i would apprechiate feedback here as well. new-contributor t-combinatorics blocked-by-other-PR merge-conflict 292/2 Mathlib/Combinatorics/SimpleGraph/Matching.lean 1 40 ['JTylM', 'SnirBroshi', 'SproutSeeds', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vlad902'] nobody
11-36451
11 days ago
71-76518
71 days ago
9-69432
9 days
37443 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walk/Operations): permutations of support --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 17/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 2 6 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
11-36225
11 days ago
19-9083
19 days ago
58-80721
58 days
39027 fpvandoorn
author:fpvandoorn
feat: delaborators for inequalities in big operators `∏ i < n, f i` was already accepted as valid syntax, but this PR now also prints appropriate sums/products using this notation. --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/missing.20delaborator.20for.20finsum) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-meta
label:t-algebra$
132/49 Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,MathlibTest/BigOps.lean 2 2 ['fpvandoorn', 'github-actions'] kim-em
assignee:kim-em
11-36220
11 days ago
11-73017
11 days ago
11-83582
11 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'] nobody
11-26103
11 days ago
11-26142
11 days ago
43-12233
43 days
36936 Rida-Hamadani
author:Rida-Hamadani
feat(CategoryTheory): PBW Theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 142/0 Mathlib/CategoryTheory/Monad/PBW.lean 1 1 ['github-actions'] nobody
11-21958
11 days ago
unknown
0-0
0 seconds
39558 b-mehta
author:b-mehta
feat(Data/Finset/Prod): count the number of ordered pairs in a set These proofs were written a while ago, so they may be golfable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 21/0 Mathlib/Data/Finset/Prod.lean 1 2 ['github-actions', 'plp127'] nobody
11-16822
11 days ago
11-44177
11 days ago
11-44139
11 days
38189 artie2000
author:artie2000
feat: simplify proof of `IsAdjoinRootMonic.mkOfAdjoinEqTop'` * Simplify the proof of `IsAdjoinRootMonic.mkOfAdjoinEqTop'` by factoring out a lemma `OrzechProperty.bijective_of_surjective_of_finrank_le` and making use of the existing lemma `finrank_le_iff_exists_linearMap`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory delegated 22/21 Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/RingTheory/IsAdjoinRoot.lean 2 9 ['Vierkantor', 'artie2000', 'github-actions', 'mathlib-bors', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
11-4807
11 days ago
18-3736
18 days ago
24-41408
24 days
39569 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Units): Units are (in)finite if type is (in)finite Shows - [ ] depends on: #39568 - [ ] depends on: #39567 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-data new-contributor 75/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean,Mathlib/Data/Finite/Subtype.lean,Mathlib/Data/Finite/Units.lean 4 3 ['github-actions', 'mathlib-dependent-issues'] nobody
10-84011
10 days ago
11-3496
11 days ago
0-121
2 minutes
38409 chrisflav
author:chrisflav
feat(RingTheory): totally split algebras over a field We show that for a totally split algebra over a field, the `k`-rational points are in bijection with the prime spectrum. We also show that an étale algebra over a separably closed field is totally split. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 123/2 Mathlib/Algebra/Algebra/Pi.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/TotallySplit.lean 6 2 ['github-actions', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
10-81540
10 days ago
10-81617
10 days ago
35-39489
35 days
37747 JovanGerb
author:JovanGerb
chore(Order/Filter/AtTopBot/Basic): use `to_dual` This PR uses `to_dual` for `atTop`/`atBot`. A lot of theorems that have been tagged contain the expression `∀ a ≥ b, ...`, which means that their dual will be `∀ a, b ≥ a → ...`, which is obviourly undesirable. Hence, I would like to ask the reviewers to reconsider the possibility of merging #32985. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 56/164 Mathlib/Order/Filter/AtTopBot/Basic.lean 1 6 ['Komyyy', 'github-actions'] bryangingechen
assignee:bryangingechen
10-77819
10 days ago
10-77819
10 days ago
41-84436
41 days
38906 lua-vr
author:lua-vr
feat(ConditionallyCompleteLattice/Indexed): add binary versions of lemmas Add binary versions of some of the lemmas. Those are useful when the domain is indexed over the members of a set. From the Carleson project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order carleson 21/5 Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 1 19 ['JovanGerb', 'SnirBroshi', 'github-actions', 'grunweg', 'lua-vr', 'mathlib-merge-conflicts'] nobody
10-75748
10 days ago
10-75813
10 days ago
20-49688
20 days
39567 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Option): option type is finite iff type is finite Option type is finite if and only if the type is finite. This is an intermediate result to proving that if the `GroupWithZero` is (in)finite then the `Units` are (in)finite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean 2 11 ['AlexBrodbelt', 'github-actions', 'plp127', 'themathqueen'] nobody
10-75363
10 days ago
11-5014
11 days ago
11-5590
11 days
39568 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Data/Finite/Subtype): Subtype of elements not equal to a term is finite iff type is finite Subtype of terms not equal to a term is finite iff type is finite. This is an intermediate result to prove that if a `GroupWithZero` is (in)finite then the `Units` are (in)finite. - [ ] depends on: #39567 [shows option type is finite iff type is finite] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor blocked-by-other-PR 45/0 Mathlib.lean,Mathlib/Data/Finite/Option.lean,Mathlib/Data/Finite/Subtype.lean 3 5 ['AlexBrodbelt', 'github-actions', 'mathlib-dependent-issues', 'themathqueen'] nobody
10-73647
10 days ago
11-2837
11 days ago
0-2171
36 minutes
39583 WilliamCoram
author:WilliamCoram
refactor: change definition of restricted power series to align with restricted multivariate power series Previously, restricted power series were defined in terms of a `tendsto atTop` this has been changed to be an abbrev of `MvPowerSeries.IsRestricted` with `isRestricted_iff` lemmas to convert to nicer usable definitions. --- - [ ] depends on: #32692 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 232/142 Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Antidiag/Tendsto.lean,Mathlib/RingTheory/MvPowerSeries/Restricted.lean,Mathlib/RingTheory/PowerSeries/Restricted.lean 5 3 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] nobody
10-69281
10 days ago
10-70179
10 days ago
0-2156
35 minutes
37350 aditya-ramabadran
author:aditya-ramabadran
feat(Analysis/Distribution): define canonical maps between Schwartz/test functions, distributions/tempered distributions Defines these canonical maps: (1) continuous linear map from $\mathcal D$ to $\mathcal S$, and (2) induced (linear) restriction map from $\mathcal S'$ to $\mathcal D'$, as assigned by @ADedecker. --- Put in a separate file since Distribution.lean only imports TestFunction right now and I thought it was cleaner to do in a new bridge file with both the maps. Open to changing this though. * Made use of #36445 (proved first map locally on fixed support spaces first by local seminorm estimates, then used limitCLM) * Needed a real to complex bridge `TestFunction.ToComplexSchwartzMap` since distributions are defined on real-valued test functions but tempered distributions in mathlib are defined on complex-valued Schwartz functions * Induced map $\mathcal S'(E,F) \to \mathcal D'(Ω,F)$ is $\mathbb C$-linear The main important defs are `ContDiffMapSupportedIn.toSchwartzMapCLM` which is the local fixed-support part, then `TestFunction.toSchwartzMapCLM` (where the continuity uses limitCLM to glue the local continuous linear maps on each $\mathcal D_K$), and `TemperedDistribution.toDistributionLM` which is the linear map from tempered distributions to ordinary distributions. Tested with `lake env lean Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 225/0 Mathlib.lean,Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean 2 24 ['aditya-ramabadran', 'github-actions', 'j-loreaux'] ADedecker and mcdoll
assignee:mcdoll assignee:ADedecker
10-67322
10 days ago
19-72496
19 days ago
51-72754
51 days
38869 TJHeeringa
author:TJHeeringa
feat(Analysis/InnerProductSpace): Add instance for quotient of InnerProductSpace --- Couldn't find the inner product space instance for a quotient of an inner product space. After confirming at [#Is there code for X? > Quotient of inner product space is inner product space](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Quotient.20of.20inner.20product.20space.20is.20inner.20product.20space/with/592464432), I made this PR. Defines an innerProductSpace instance on the quotient based on the isometry with the orthogonal complement, which is a closed subspace of the full space and thus has an innerProductSpace instance. AI usage: Didn't understand how to properly apply `quotient_norm_mk_eq K.toAddSubgroup x`. Claude suggested using convert. Otherwise no AI used, aside from acting as secondary Loogle. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor delegated 59/0 Mathlib/Analysis/InnerProductSpace/ProdL2.lean 1 39 ['TJHeeringa', 'github-actions', 'j-loreaux', 'mathlib-bors', 'themathqueen', 'wwylele'] j-loreaux
assignee:j-loreaux
10-67044
10 days ago
10-67044
10 days ago
14-47986
14 days
39529 lecopivo
author:lecopivo
feat: tactic `apply_rulesets` `apply_rulesets` is just like `apply_rules` but allows to create rule sets, ruleprocs (similar to simprocs), handles metavariables in the goal and couple of other nifty features --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 1953/0 Mathlib/Tactic.lean,Mathlib/Tactic/ApplyRuleSets.lean,Mathlib/Tactic/ApplyRuleSets/Attr.lean,Mathlib/Tactic/ApplyRuleSets/Core.lean,Mathlib/Tactic/ApplyRuleSets/Elab.lean,Mathlib/Tactic/ApplyRuleSets/RuleProc.lean,Mathlib/Tactic/ApplyRuleSets/Types.lean,MathlibTest/ApplyRuleSetsAttr.lean,MathlibTest/ApplyRuleSetsRegister.lean,MathlibTest/ApplyRuleSetsRingExpr.lean,MathlibTest/apply_rulesets.lean 11 2 ['github-actions', 'mathlib-bors'] nobody
10-66747
10 days ago
11-78934
11 days ago
0-8
8 seconds
33786 hdmkindom
author:hdmkindom
feat(Analysis/Matrix): add Jacobian matrix for matrix-valued functions This PR introduces the Jacobian matrix for matrix-valued functions `F : Matrix m n 𝕜 → Matrix p q 𝕜`. The Jacobian matrix `jacobianMatrix F X` at point `X` is indexed by `(p × q) × (m × n)`, where each entry represents the partial derivative with respect to a basis element. To handle instance-mismatch issues with matrix norms, we use local Frobenius norm instances. This PR adds the new file: 'Analysis/Matrix/Jacobian.lean' ## Main definitions - `jacobianMatrix F X`: The Jacobian matrix at point `X`, defined by `jacobianMatrix F X (i, k) (j, l) = (fderiv ℝ F X (Matrix.single j l 1)) i k` ## Main theorems - `fderiv_eq_jacobian_mul`: Express the Fréchet derivative as a contraction with the Jacobian - `jacobianMatrix_comp`: Chain rule for Jacobian matrices - `jacobianMatrix_linear`, `jacobianMatrix_id`, `jacobianMatrix_const`: Basic properties - `jacobianMatrix_add`, `jacobianMatrix_smul`: Linearity properties t-analysis new-contributor awaiting-author 174/0 Mathlib.lean,Mathlib/Analysis/Matrix/Jacobian.lean 2 21 ['erdOne', 'github-actions', 'hdmkindom', 'jcommelin'] sgouezel
assignee:sgouezel
10-66449
10 days ago
101-72891
101 days ago
39-35999
39 days
39585 chrisflav
author:chrisflav
chore(RingTheory): add `rfl` lemmas for `Ideal.quotientInfRingEquivPiQuotient` From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 11/0 Mathlib/RingTheory/Ideal/Quotient/Operations.lean 1 1 ['github-actions'] nobody
10-66386
10 days ago
10-66469
10 days ago
10-66431
10 days
39494 Hagb
author:Hagb
chore(Data/Finsupp/MonomialOrder): rename fields of `MonomialOrder` to match naming conventions Moves: - MonomialOrder.acm -> MonomialOrder.addCommMonoid_syn - MonomialOrder.lo -> MonomialOrder.linearOrder_syn - MonomialOrder.iocam -> MonomialOrder.isOrderedCancelAddMonoid_syn - MonomialOrder.wf -> MonomialOrder.wellFoundedLT_syn --- See https://github.com/leanprover-community/mathlib4/pull/32829#discussion_r2716534558. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 15/6 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean 2 1 ['github-actions'] nobody
10-63458
10 days ago
13-28748
13 days ago
13-29237
13 days
38584 TJHeeringa
author:TJHeeringa
feat(Analysis/InnerProductSpace/Reproducing): Add outerKernel, mem_iff --- Adds the `outerKernel` definition and the theorem `mem_iff`. These are needed for proving statements involving embeddings of RKHS. I can split `mem_of_posSemidef` and `mem_iff` off into a different pull request if that is preferred. The theorems `mem_of_posSemidef` and `posSemidef_of_mem` are the two directions of `mem_iff`. `posSemidef_of_mem` is slightly stronger than the converse direction of `mem_iff` in the sense that it also specifies the constant `c` in the statement. The specified `c` is in fact the smallest possible `c` for which the statement holds. The statement `mem_of_posSemidef` proves `∃ (g : H), (g : X → V) = f`. We could instead write `f ∈ (coeCLM 𝕜 (H:=H)).range`. Making this change would require the addition of the line `simp only [LinearMap.mem_range, coe_coe, coeCLM_apply]` in the beginning of the proof. The full beginning is then ``` lemma mem_of_posSemidef (f : X → V) {c : ℝ} (hc : ((c : 𝕜) ^ 2 • kernel H - outerKernel 𝕜 f).PosSemidef) : f ∈ (coeCLM 𝕜 (H:=H)).range := by simp only [LinearMap.mem_range, coe_coe, coeCLM_apply] let Laux : ... ``` Making a `MemRKHS` like MemLp and MemSobolev and then writing `MemRKHS H f` is also an option. Happy to change it to whatever is preferred. The proof of `mem_of_posSemidef` is based on the idea that any function f in the RKHS satisfies `=\sum_{n} ` for `x_n\in X` and `v_n\in V` by the reproducing property. We define the operator L(\sum_n K(\cdot,x_n)v_n) = \sum_{n} . This is bounded by the condition based on the kernels, and thus extends to a bounded linear operator on the RKHS. Its Riesz' representer agrees pointwise with f. AI: When asking how to avoid Classical.choose in constructing the operator L, Claude suggested the approach of going through the quotient. I made the proof using Claude as supplementary Loogle. Afterwards, I asked it to help shorted the proofs. Some suggestions for `mem_of_posSemidef` were applied. The other suggestions were not helping or not correct. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor awaiting-author 122/1 Mathlib/Analysis/InnerProductSpace/Reproducing.lean 1 12 ['TJHeeringa', 'github-actions', 'j-loreaux', 'themathqueen'] j-loreaux
assignee:j-loreaux
10-63085
10 days ago
10-63085
10 days ago
22-2608
22 days
39427 Hagb
author:Hagb
feat(Order/Interval/Finset/Defs): `LocallyFiniteOrder{Bot,Top}` implies `WellFounded{LT,GT}` --- - [ ] depends on: #39547 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR 22/25 Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/Preorder/Finite.lean 2 5 ['Hagb', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues'] nobody
10-60712
10 days ago
10-60713
10 days ago
0-4027
1 hour
39383 fpvandoorn
author:fpvandoorn
fix: use notation3 more * `notation3` is better at generating delaborators in the presence of implicit arguments, other notation and some other complications. * I explicitly tested that each change was not correctly pretty-printed before, but now is. * Add spaces around the global notation `^+` (that maybe shouldn't be global at all?) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated 21/21 Mathlib/Algebra/Ring/Action/Submonoid.lean,Mathlib/Analysis/RCLike/Inner.lean,Mathlib/Data/Sum/Order.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/Marginal.lean,Mathlib/MeasureTheory/OuterMeasure/AE.lean,Mathlib/Order/InitialSeg.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 10 4 ['github-actions', 'j-loreaux', 'mathlib-bors'] nobody
10-57119
10 days ago
10-57119
10 days ago
5-8227
5 days
39591 plp127
author:plp127
feat: `Equiv.symm_trans` Add theorem `Equiv.symm_trans`, which says `(f.trans g).symm = g.symm.trans f.symm`. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.60Equiv.2Esymm_trans.60/near/596266434). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-logic 2/0 Mathlib/Logic/Equiv/Defs.lean 1 1 ['github-actions'] nobody
10-55710
10 days ago
10-55805
10 days ago
10-55767
10 days
39596 grunweg
author:grunweg
feat: experimental hack to allow by finiteness auto-params This provides a way to apply `by finiteness` auto-parameters in simp lemmas. (Making simp run dischargers natively requires unfortunate hacks... so is not easily doable.) Another alternative: make a simproc to run auto-params in general. This might be even better. Written at the Mathlib Initiative Retreat. Thanks to Joachim Breitner and Henrik Böving for the help writing this! --- The hack is calling `runTactic`: if `finiteness` (and, hence, `aesop`) could be called from an appropriate meta function instead, we could make the implementation more robust. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-data 52/3 Mathlib/Data/ENNReal/Basic.lean 1 2 ['github-actions', 'grunweg'] nobody
10-49616
10 days ago
10-52774
10 days ago
0-1
1 second
39597 grunweg
author:grunweg
Don't look up! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry WIP 4849/69 Mathlib.lean,Mathlib/Geometry/Manifold/CheatSheet.md,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/Riemannian/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/ContMDiffSection.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/ChristoffelSymbols.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Curvature.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Ehresmann.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Geodesics.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/IntegralCurvePrelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/LeviCivita.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Lift.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Metric.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Prelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Torsion2.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/TrivPrelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Trivial.lean,Mathlib/Geometry/Manifold/VectorBundle/GramSchmidtOrtho.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/Geometry/Manifold/VectorBundle/OrthonormalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/Tensoriality.lean,Mathlib/Geometry/Manifold/VectorBundle/Unused.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean 28 1 ['github-actions'] nobody
10-49485
10 days ago
10-51746
10 days ago
0-51
51 seconds
39431 gasparattila
author:gasparattila
feat: homogenization of an affine space (computable version) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
615/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Homogenization.lean,docs/references.bib 3 2 ['eric-wieser', 'github-actions'] nobody
10-49447
10 days ago
unknown
0-0
0 seconds
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 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 10 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
10-36157
10 days ago
10-50435
10 days ago
11-9463
11 days
34713 dennj
author:dennj
feat(Probability/Markov): stationary distributions for stochastic matrices This PR proves that every row-stochastic matrix on a finite nonempty state space has a stationary distribution in the standard simplex. Main additions to `Mathlib/Probability/Markov/Stationary.lean`: - `IsStationary`: A distribution μ is stationary for matrix P if μ ᵥ* P = μ - `cesaroAverage`: Cesàro average of iterates of a vector under a matrix - `Matrix.rowStochastic.exists_stationary_distribution`: existence theorem The proof uses Cesàro averaging: start with uniform distribution, form averages, extract convergent subsequence by compactness, show limit is stationary via L¹ non-expansiveness. Also adds `vecMul_mem_stdSimplex` to `Stochastic.lean`: multiplying a probability vector by a row-stochastic matrix preserves simplex membership. This is human-made PR with AI help in golfing proof and documenting the code. new-contributor t-measure-probability 166/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean,Mathlib/Probability/Markov/Stationary.lean 3 17 ['EtienneC30', 'dennj', 'dupuisf', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts', 'riccardobrasca'] kex-y
assignee:kex-y
10-36156
10 days ago
33-44610
33 days ago
43-77585
43 days
35619 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Clique): intersection and union of cliques Plus a couple of lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 45/14 Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Data/Set/Pairwise/Basic.lean 3 13 ['SnirBroshi', 'YaelDillies', 'github-actions'] b-mehta
assignee:b-mehta
10-36155
10 days ago
36-65445
36 days ago
58-41432
58 days
38014 cduenasnavarro
author:cduenasnavarro
feat(InformationTheory): linear codes over finite fields and minimum distance properties Define linear codes over a finite field `F` as finite-dimensional subspaces of `Fin n → F`, together with their minimum Hamming distance. Main definitions: * `LinearCode` * `minDist` * `LinearCodeWithDist` * `hammingSphere` Main results: * `minDist_eq_sInf_pairwiseDist`: characterisation of the minimum distance via pairwise distances * `disjoint_spheres`: Hamming spheres of radius `t` around distinct codewords are disjoint if `2 * t < d` Pending: * Choosing an adequate book reference --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 181/0 Mathlib.lean,Mathlib/InformationTheory/Coding/LinearCode.lean 2 37 ['cduenasnavarro', 'github-actions', 'linesthatinterlace', 'rkirov', 'vihdzp', 'wwylele'] kex-y
assignee:kex-y
10-36152
10 days ago
46-55633
46 days ago
46-56358
46 days
38055 felixpernegger
author:felixpernegger
feat(Topology/EMetricSpace): add r-variation Redoing #37007 (I had accidently deleted my fork which nuked the PR). See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/p-variation for discussion. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-analysis 408/0 Mathlib.lean,Mathlib/Topology/EMetricSpace/RVariation.lean 2 2 ['felixpernegger', 'github-actions'] urkud
assignee:urkud
10-36151
10 days ago
44-8270
44 days ago
44-8626
44 days
38716 YaelDillies
author:YaelDillies
feat(Algebra/Order): `NNRat.cast_sub` From AddCombi --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
29/22 Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Ring/Rat.lean,Mathlib/Combinatorics/SetFamily/LYM.lean,Mathlib/Data/Finset/Density.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/NNRat/Order.lean,Mathlib/Data/Rat/Star.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/Topology/Instances/Rat.lean 10 1 ['github-actions'] themathqueen
assignee:themathqueen
10-36150
10 days ago
29-16005
29 days ago
29-20350
29 days
38974 Brian-Nugent
author:Brian-Nugent
chore: fix documentation of `LocallyQuasiFinite` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry easy 6/5 Mathlib/AlgebraicGeometry/Morphisms/QuasiFinite.lean 1 1 ['github-actions'] alreadydone
assignee:alreadydone
10-36149
10 days ago
24-48822
24 days ago
24-48784
24 days
39172 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic` - refactors `Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic` by simplifying `stronglyMeasurable_in_set` and `stronglyMeasurable_of_measurableSpace_le_on` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 16/42 Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean 1 2 ['github-actions', 'yuanyi-350'] kex-y
assignee:kex-y
10-36147
10 days ago
19-11577
19 days ago
19-11539
19 days
39384 EngelsVon
author:EngelsVon
feat(Analysis/Calculus/DifferentialForm): Stokes' theorem on rectangular boxes ## Summary This PR proves the generalized Stokes theorem for differential forms on rectangular boxes $[a, b] \subset \mathbb{R}^{m+1}$. The proof strategy is: 1. Extract the `i`-th signed face component `boxFaceComponent ω i` from an `m`-form `ω` — a scalar function whose divergence equals the top-form density of the exterior derivative `dω`. 2. Apply Mathlib's existing divergence theorem for boxes (`integral_divergence_of_hasFDerivAt_off_countable'`). This gives a genuine proved Stokes formula in the Euclidean setting, complementing the existing infrastructure for differential forms. ## Main definitions - `DifferentialForm.topFormDensity`: density function of a top-form field - `DifferentialForm.boxFaceComponent`: the `i`-th signed face component of an `m`-form on `ℝ^(m+1)` - `DifferentialForm.boxBoundaryIntegral`: the signed boundary integral over `∂[a,b]` ## Main results - `box_stokes_of_hasFDerivAt`: Stokes' theorem on boxes with pointwise differentiability hypotheses - `box_stokes_of_contDiff`: a convenient `C¹` formulation t-analysis new-contributor 314/0 Mathlib.lean,Mathlib/Analysis/Calculus/DifferentialForm/BoxStokes.lean 2 2 ['github-actions'] j-loreaux
assignee:j-loreaux
10-36143
10 days ago
15-63208
15 days ago
15-63170
15 days
39389 i-love-lean
author:i-love-lean
feat(Analysis/SpecialFunctions): homeomorphism for spherical coordinates A few months ago, I noticed that mathlib was missing change of variables to spherical coordinates, which is taught in undergraduate calculus and useful for many 3D integrals. So far, I used `PolarCoord.lean` as reference and implemented a similar homeomorphism for spherical coordinates. There's still a lot of work left to prove an analog of `integral_comp_polarCoord_symm` but for spherical coordinates, so I'm splitting up the work into several PRs. I also fixed a typo in `PolarCoord.lean`. t-analysis new-contributor 133/2 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SpecialFunctions/SphericalCoord.lean 4 4 ['github-actions', 'i-love-lean', 'wwylele'] j-loreaux
assignee:j-loreaux
10-36142
10 days ago
15-54343
15 days ago
15-55125
15 days
39406 roos-j
author:roos-j
feat(Analysis): van der Corput's lemma Adds van der Corput's lemma on one-dimensional oscillatory integrals, a standard tool in harmonic analysis. Co-authored-by: Manasa Praveen --- From https://github.com/roos-j/lean-oscillatory, see there for future plans Zulip discussion [#mathlib4 > Oscillatory integrals in Lean](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Oscillatory.20integrals.20in.20Lean/with/584786060) AI disclosure: The code in this PR was predominantly human-written. gpt-5.5 has helped in the later stages with shortening proofs, golfing and general advice. t-analysis new-contributor 551/0 Mathlib.lean,Mathlib/Analysis/OscillatoryIntegrals/VanDerCorput.lean 2 2 ['github-actions'] j-loreaux
assignee:j-loreaux
10-36140
10 days ago
15-13802
15 days ago
15-14828
15 days
39441 Paul-Lez
author:Paul-Lez
feat: small lemma about multilinear power series I'm currently working on a PR that connects the `PowerSeries` API to the `FormalMultilinearSeries` API, and in particular constructs a map from `PowerSeries A` to `FormalMultilinearSeries R A A` for any `R`-algebra `A`. This lemma was useful for proving that this map respects composition. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 7/0 Mathlib/Analysis/Analytic/Composition.lean 1 3 ['Paul-Lez', 'github-actions', 'grunweg'] j-loreaux
assignee:j-loreaux
10-36139
10 days ago
14-47267
14 days ago
14-47229
14 days
39454 SnirBroshi
author:SnirBroshi
feat(Analysis/Convex/Jensen): more forms of Jensen's strict inequality Adds iff theorems for Jensen's strict inequality for `<`/`=`, positive/nonnegative weights, and canonical form versions. --- Note that as established by existing theorems in the file, "canonical" here refers to comparing terms to the center of mass instead of to each other. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 95/13 Mathlib/Analysis/Convex/Jensen.lean 1 1 ['github-actions'] j-loreaux
assignee:j-loreaux
10-36137
10 days ago
14-35888
14 days ago
14-35850
14 days
34703 martinwintermath
author:martinwintermath
Generalizing orthogonalBilin --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 51/25 Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
10-32607
10 days ago
unknown
0-0
0 seconds
36412 Timeroot
author:Timeroot
refactor(Topology/Perfect): Change PerfectSpace to be a synonym for NeBot Refactor PerfectSpace to be, equivalently, just `forall (x : α) : Filter.NeBot (𝓝[≠] x)`. See [#mathlib4 > Changing PerfectSpace](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Changing.20PerfectSpace/with/575568102) for discussion This is unmodified output from @Aristotle-Harmonic ! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Co-authored-by: Aristotle (Harmonic) merge-conflict 54/50 Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Module/RCLike/Real.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Module/PerfectSpace.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean,Mathlib/Topology/Perfect.lean,Mathlib/Topology/Separation/Connected.lean 7 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
10-32363
10 days ago
79-56376
79 days ago
0-1127
18 minutes
37963 martinwintermath
author:martinwintermath
feat(LinearAlgebra/SesquilinearForm): moving orthogonality to own file and adding lemmas * Move `Submodule.orthogonalBilin` and all lemmas that use it from SesquilinearForm/Basic.lean to its own file SesquilinearForm/Orthogonal.lean. * Add the features proposed in #34007 to align with `PointedCone.dual`. --- - [ ] depends on: #37381 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra merge-conflict
label:t-algebra$
389/190 Mathlib.lean,Mathlib/Algebra/Lie/InvariantForm.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/IsometryEquiv.lean,Mathlib/LinearAlgebra/QuadraticForm/Radical.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct/Isometries.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Orthogonal.lean,docs/undergrad.yaml 15 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
10-32119
10 days ago
47-45754
47 days ago
0-584
9 minutes
38663 vihdzp
author:vihdzp
chore: deprecate duplicate theorems about `IsBotZeroClass` I'll probably split this into various PRs, for ease of review. --- - [x] depends on: #38148 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 210/270 Archive/Imo/Imo2024Q3.lean,Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/IsBotOne.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Polynomial/Degree/TrailingDegree.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Operator/NNNorm.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Real/Pi/Irrational.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Combinatorics/Enumerative/Composition.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/Extremal/RuzsaSzemeredi.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Equitabilise.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Computability/Primrec/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/Finset/Density.lean,Mathlib/Data/Int/WithZero.lean,Mathlib/Data/List/Shortlex.lean,Mathlib/Data/Nat/Nth.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/FieldTheory/Finite/Valuation.lean,Mathlib/FieldTheory/RatFunc/Valuation.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/KleinFour.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/SimpleFuncDense.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Map.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/OuterMeasure/AE.lean,Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/FLT/Polynomial.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Probability/Kernel/IonescuTulcea/Traj.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/RingTheory/ChainOfDivisors.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Discriminant.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/Polynomial/Resultant/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Polynomial.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/ContinuousMap/Ideals.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/MetricSpace/Pseudo/Constructions.lean 92 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
10-32116
10 days ago
30-65280
30 days ago
0-762
12 minutes
38896 peabrainiac
author:peabrainiac
feat(Algebra): multiplicative torsors Introduce a class `Torsor` for torsors of multiplicative groups, as a multiplicative counterpart to the existing `AddTorsor` for torsors of additive groups. --- Adopted / migrated from #8608. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
385/286 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Tactic/Translate/ToAdditive.lean 6 2 ['github-actions', 'grunweg'] nobody
10-31133
10 days ago
10-31207
10 days ago
16-34856
16 days
39547 Hagb
author:Hagb
chore(Order/Preorder/Finite): use `@[to_dual]` on lemmas about `{Min,Max}imal{For,}` Proofs of other theorems (e.g. in #39427) with dual theorems dependent on these lemmas would benefit from their duality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 11/25 Mathlib/Order/Preorder/Finite.lean 1 4 ['Hagb', 'github-actions', 'vihdzp'] nobody
10-29368
10 days ago
11-56026
11 days ago
11-55988
11 days
39606 harahu
author:harahu
doc: remove superfluous empty lines These aren't needed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 0/704 Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Subalgebra/Rank.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/Grp/EnoughInjectives.lean,Mathlib/Algebra/Category/Grp/FiniteGrp.lean,Mathlib/Algebra/Category/ModuleCat/AB.lean,Mathlib/Algebra/Category/ModuleCat/Ext/DimensionShifting.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Finite.lean,Mathlib/Algebra/Category/ModuleCat/Ext/HasExt.lean,Mathlib/Algebra/Category/ModuleCat/Localization.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/ProjectiveDimension.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/CharP/IntermediateField.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/GCDMonoid/IntegrallyClosed.lean,Mathlib/Algebra/Group/Indicator.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/MapBijective.lean,Mathlib/Algebra/Lie/Derivation/BaseChange.lean,Mathlib/Algebra/Lie/SemiDirect.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LocalizedModule/Int.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/Module/SnakeLemma.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/IterateMapComap.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Module/Submodule/LinearMap.lean,Mathlib/Algebra/Module/Submodule/RestrictScalars.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Antidiag/FinsuppEquiv.lean,Mathlib/Algebra/Order/Chebyshev.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Hom/TypeTags.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Module/Synonym.lean,Mathlib/Algebra/Order/Monoid/LocallyFiniteOrder.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Polynomial/Basis.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/Polynomial/Sequence.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,Mathlib/Algebra/Ring/Subring/MulOpposite.lean,Mathlib/Algebra/Ring/Subring/Units.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/AlgebraicGeometry/AffineTransitionLimit.lean,Mathlib/AlgebraicGeometry/Birational/RationalMap.lean,Mathlib/AlgebraicGeometry/ColimitsOver.lean,Mathlib/AlgebraicGeometry/Cover/Over.lean,Mathlib/AlgebraicGeometry/EllipticCurve/IsomOfJ.lean,Mathlib/AlgebraicGeometry/EllipticCurve/NormalForms.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Constructors.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Morphisms/Finite.lean,Mathlib/AlgebraicGeometry/Morphisms/FinitePresentation.lean,Mathlib/AlgebraicGeometry/Morphisms/Immersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Integral.lean,Mathlib/AlgebraicGeometry/Morphisms/IsIso.lean,Mathlib/AlgebraicGeometry/Morphisms/LocalFlatDescent.lean,Mathlib/AlgebraicGeometry/Morphisms/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Preimmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Morphisms/Separated.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/AlgebraicGeometry/Morphisms/WeaklyEtale.lean,Mathlib/AlgebraicGeometry/PointsPi.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicGeometry/QuasiAffine.lean,Mathlib/AlgebraicGeometry/ResidueField.lean,Mathlib/AlgebraicGeometry/Sites/ElladicCohomology.lean,Mathlib/AlgebraicGeometry/Sites/Etale.lean,Mathlib/AlgebraicGeometry/Sites/MorphismProperty.lean,Mathlib/AlgebraicGeometry/Sites/Proetale.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ZariskisMainTheorem.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean 661 1 ['github-actions'] nobody
10-11613
10 days ago
unknown
0-0
0 seconds
39599 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/GeneralizedEuclidean): the canonical Euclidean filtration on a ring * Define the canonical euclidean filtration on a semiring * Define the euclidean level of an element of a semiring. * A semiring is euclidean (in the generalized sense) if and only if the filtration is exhaustive. Note : The PR defines two variants, one is Nat-indexed, and the other one, more general, is Ordinal-indexed. Probably the first one should be deleted. TODO : * prove that the euclidean level is the minimal stathm of a euclidean algorithm. * give examples (Nat, Int, Polynomial…) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory t-algebra
label:t-algebra$
585/0 Mathlib.lean,Mathlib/RingTheory/GeneralizedEuclidean.lean,docs/references.bib 3 2 ['eric-wieser', 'github-actions'] nobody
10-2773
10 days ago
10-45723
10 days ago
0-17
17 seconds
38369 quantumsnow
author:quantumsnow
feat(AlgebraicTopology): Eilenberg Steenrod axioms This introduces the Eilenberg-Steenrod axioms for a homology theory. --- - [x] depends on: #36621 - [ ] depends on: #39236 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebraic-topology blocked-by-other-PR 365/0 Mathlib.lean,Mathlib/AlgebraicTopology/EilenbergSteenrod.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopPair.lean 4 38 ['chrisflav', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'quantumsnow'] nobody
10-1943
10 days ago
18-8239
18 days ago
3-44318
3 days
39611 mbkybky
author:mbkybky
feat(RingTheory): let `B` be a faithfully flat `A`-algebra, then `A` is a local ring if `B` is Let `B` be a faithfully flat `A`-algebra, then `A` is a local ring if `B` is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 13/0 Mathlib/RingTheory/Flat/FaithfullyFlat/Algebra.lean 1 1 ['github-actions'] nobody
10-797
10 days ago
10-880
10 days ago
10-842
10 days
39605 Qinghev
author:Qinghev
Add docstrings for reversed range telescoping lemmas This PR adds docstrings for two existing Finset telescoping lemmas and their additive versions generated by `to_additive`: * `Finset.prod_range_div'` / `Finset.sum_range_sub'` * `Finset.eq_prod_range_div` / `Finset.eq_sum_range_sub` The goal is a small documentation-only contribution that makes the reversed range telescoping API easier to discover from search and hover docs. Local checks: * `git diff --check -- Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean` * Attempted `lake env lean Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean`, but local validation is currently blocked by downloading the `leanprover/lean4:v4.30.0-rc2` toolchain from GitHub timing out/connection-resetting on this machine. Opened as draft until the toolchain/network check can be completed or CI confirms the documentation-only change. t-algebra new-contributor
label:t-algebra$
8/2 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 2 ['github-actions'] nobody
9-85645
9 days ago
9-85645
9 days ago
9-85607
9 days
39332 Michaillus
author:Michaillus
chore(Topology/Spectral): Added two small lemmas chore(Topology/Spectral): Added two lemmas `IsCompact.isClosed_constructibleTopology_of_isOpen` `IsCompact.isClosed_constructibleTopology_of_isClosed` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 12/0 Mathlib/Topology/Spectral/ConstructibleTopology.lean 1 7 ['Michaillus', 'github-actions', 'plp127', 'qawbecrdtey'] PatrickMassot
assignee:PatrickMassot
9-82139
9 days ago
16-50215
16 days ago
16-50177
16 days
33454 astrainfinita
author:astrainfinita
feat: lemmas about `IsometryClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-analysis awaiting-author merge-conflict 60/37 Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/Topology/MetricSpace/DilationEquiv.lean,Mathlib/Topology/MetricSpace/Isometry.lean 5 9 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] urkud
assignee:urkud
9-81797
9 days ago
143-55469
143 days ago
4-44581
4 days
37477 kebekus
author:kebekus
feat: canonical decomposition of complex-meromorphic functions on disks Establish the Finite Canonical Decomposition of meromorphic functions, where a complex-meromorphic function `f` on a disk is written as a product of an analytic function without zeros and poles, and canonical factors that take only values of norm one on the boundary of the disk. A future PR will extend this theorem to handle zeros/poles on the boundary of the disk. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 354/12 Mathlib.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Analysis/Complex/CanonicalDecomposition.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Analysis/Meromorphic/RCLike.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 8 25 ['github-actions', 'j-loreaux', 'kebekus'] j-loreaux
assignee:j-loreaux
9-81740
9 days ago
9-81740
9 days ago
58-20873
58 days
38047 mbkybky
author:mbkybky
feat(RingTheory/Finiteness/Ideal): `I` is finitely generated if `f(I)` and `I ∩ ker(f)` are finitely generated Let `f : R →+* S` be a surjective ring homomorphism, and let `I` be an ideal of `R`. If `f(I)` and `I ∩ ker(f)` are finitely generated ideals, then `I` is also finitely generated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 10/3 Mathlib/RingTheory/Finiteness/Ideal.lean 1 1 ['github-actions'] mattrobball
assignee:mattrobball
9-78983
9 days ago
18-78575
18 days ago
45-27192
45 days
39225 junodeveloper
author:junodeveloper
feat(SimpleGraph): add no-bridge theorem for even degree graphs This PR proves that a finite graph in which every vertex has even degree has no bridge. It adds: * `SimpleGraph.not_isBridge_of_even_degree` The proof argues by contradiction: if an edge is a bridge, delete it and look at the connected component containing one endpoint. In that component, the endpoint has odd degree, while any other odd-degree vertex would contradict the bridge assumption and the even-degree hypothesis. This contradicts the handshaking lemma via the existing odd-degree API. Local checks: ```bash lake build Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity lake exe lint-style Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity lake exe runLinter Mathlib.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity ``` ## AI usage disclosure I used OpenClaw/Codex while developing this PR. Much of the Lean proof of `not_isBridge_of_even_degree` was drafted with AI assistance, including API search and proof refactoring. I reviewed the generated code, made edits, ran the local checks above, and understand and take responsibility for the final statement and proof. t-combinatorics new-contributor large-import LLM-generated 122/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean 1 12 ['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'junodeveloper', 'linesthatinterlace'] nobody
9-76910
9 days ago
18-46485
18 days ago
18-46447
18 days
39607 TentativeConvert
author:TentativeConvert
feat(Algebra/DirectSum): equivalence between direct sum indexed by ι₁ and double sum indexed by ι₂ and fibres of f : ι₁ → ι₂ 1. Add variant `equivCongrLeft'` of `equivCongrLeft`, and corresponding `…_apply` lemma. 2. Add `…_of lemmas` for both `equivCongrLeft` and `equivCongrLeft'`. 3. Add `…of lemma` for `sigmaCurry`, i.e. `sigmaCurry_of`. 4. Add `sigmaFiberAddEquiv`: the equivalence between a direct sum indexed by a type `ι₁` and the double sum indexed by a type `ι₂` and the fibres of a map `f : ι₁ → ι₂`. Add two `…_apply` lemmas and an `…_of` lemma. --- This is supposed to be a first step towards merging the draft PR #39356. re 1: Mathematically, I don't see why one version should be preferred over the other, but I found the existing `equivCongrLeft` more difficult to work with when the equivalence `h : ι ≃ κ` is naturally given in the opposite direction. (I could not avoid explicit type casts through the equality `h.symm.symm = h` when defining `sigmaFiberAddEquiv` in terms of `equivCongrLeft`.) Very unsure about the name of `equivCongrLeft'`. (I see that the name `equivCongrLeft` was chosen in analogy with `Equiv.piCongrLeft`. `Equiv.piCongrRight` looks very different, so presumably `equivCongrLeft'` should *not* be called `equivCongrRight`.) re 4: Very unsure about the naming of the two different `…_apply` lemmas; called them `…_apply` and `…_apply'` for now. The second (`…_apply'`) cannot be a `simp` lemma as it would prevent the first (`…_apply`) from firing. I've used Claude Opus for understanding error messages and git interaction, but everything is hand coded. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
66/1 Mathlib/Algebra/DirectSum/Basic.lean 1 3 ['github-actions'] nobody
9-76180
9 days ago
10-2333
10 days ago
10-3925
10 days
39619 dagurtomas
author:dagurtomas
feat(CategoryTheory): the bicategory of profunctors --- - [ ] depends on: #38086 WIP blocked-by-other-PR 496/0 Mathlib.lean,Mathlib/CategoryTheory/Profunctor/Bicategory.lean,Mathlib/CategoryTheory/Profunctor/Comp.lean,Mathlib/Logic/Relation.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
9-71062
9 days ago
9-71096
9 days ago
0-84
1 minute
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
9-69705
9 days ago
9-69705
9 days ago
2-50409
2 days
39624 justus-springer
author:justus-springer
feat(Algebra/MvPolynomial/PDeriv): a coefficient formula for `pderiv` This formula is useful for defining partial derivatives of multivariate power series, see PR #39626. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
15/0 Mathlib/Algebra/MvPolynomial/PDeriv.lean 1 1 ['github-actions'] nobody
9-66357
9 days ago
9-66951
9 days ago
9-66913
9 days
39625 justus-springer
author:justus-springer
feat(RingTheory/MvPowerSeries/Trunc): generalize truncation lemmas Generalize `coeff_trunc_mul_trunc_eq_coeff_mul` (and its analogs for `truncFinset` and `trunc'`) to allow for different truncation levels for the two arguments. This matches the API for univariate power series, where we already have `PowerSeries.coeff_mul_eq_coeff_trunc_mul_trunc₂`. This is useful for defining partial derivatives of multivariate power series, see PR #39626. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 39/7 Mathlib/RingTheory/MvPowerSeries/Trunc.lean 1 1 ['github-actions'] nobody
9-66339
9 days ago
9-66734
9 days ago
9-66696
9 days
39622 kim-em
author:kim-em
feat(CategoryTheory): add a grind propagator that normalizes morphism composition This PR adds a `grind` upward propagator on `CategoryTheory.CategoryStruct.comp` that, every time `grind` internalizes a composition `f ≫ g`, pushes the equality `f ≫ g = (right-associated form with syntactic identity factors removed)` back into the e-graph. The motivation is the Catalan blow-up of e-matching on `Category.assoc`: a chain of length `n` lets e-matching generate all Catalan(n − 1) parenthesizations as e-graph terms. Mathlib already has the runaway documented at `Mathlib/CategoryTheory/Iso.lean:146`. The propagator commits to a single canonical representative per fresh composition; the normalized form is a fixed point, so it never re-fires on the form it produces — the e-graph grows by O(1) terms per user-visible composition instead of Catalan-many. Notes: - The `@[grind =]` / `@[grind _=_]` attributes are removed from `Category.id_comp`, `Category.comp_id`, `Category.assoc` because the propagator subsumes them and they would re-introduce the blow-up. - `uliftCategory` in `Category/Basic.lean` now provides its three category axioms explicitly, since the `cat_disch` autoparam used to rely on the e-matching tags above and `Category/Basic.lean` runs before the propagator file is loaded. - The propagator is registered via `initialize` calling `registerBuiltinUpwardPropagator` directly. The `builtin_grind_propagator` macro can't be used downstream in `module`-mode mathlib (see https://github.com/leanprover/lean4/issues/13805) and `grind_propagator` (the user-facing form) is not yet implemented in lean4. - The normalizer is hand-written rather than reusing `Meta.Simp.main`, which has no IR body and crashes the interpreter when invoked from a `module`-mode downstream file. Tests in `MathlibTest/CategoryTheory/GrindCatNorm.lean` cover associativity, identity removal, mixed cases, hypotheses flowing through the normalizer, reducible-alias morphism types, and a long-chain heart-beat guard. Filed upstream tracking issue: https://github.com/leanprover/lean4/issues/13805 🤖 Prepared with Claude Code t-category-theory 186/2 Mathlib.lean,Mathlib/CategoryTheory/Category/Basic.lean,Mathlib/CategoryTheory/Tactic/GrindCatNorm.lean,MathlibTest/CategoryTheory/GrindCatNorm.lean 4 1 ['github-actions'] nobody
9-65068
9 days ago
unknown
0-0
0 seconds
35790 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory/AlgebraicGeometry): Flasque Sheaves have vanishing cohomology Proves cohomology vanishing for flasque sheaves. --- - [x] depends on: #34742 - [x] depends on: #34267 - [x] depends on: #35785 - [ ] depends on: #36218 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 367/2 Mathlib.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean,Mathlib/Topology/Sheaves/AddCommGrpCat.lean,Mathlib/Topology/Sheaves/Flasque.lean,Mathlib/Topology/Sheaves/Sheaf.lean 8 10 ['Brian-Nugent', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'smorel394'] dagurtomas
assignee:dagurtomas
9-62869
9 days ago
93-37546
93 days ago
0-23
23 seconds
39626 justus-springer
author:justus-springer
feat(RingTheory/MvPowerSeries): partial derivatives of `MvPowerSeries` Previously, we had formal derivatives for `PowerSeries` and `Polynomial` and formal partial derivatives for `MvPolynomial`, but no formal partial derivatives for `MvPowerSeries`. This PR adds them. Furthermore, `PowerSeries.derivative` is refactored to be defined in terms of `MvPowerSeries.pderiv`, which reduces code duplication (In particular, there is no need to define the bare function `PowerSeries.derivativeFun` anymore). Most proofs are direct generalizations from the univariate case. I only had to add a few missing API lemmas, which I am PR'ing separately below: - [ ] depends on: #39623 - [ ] depends on: #39624 - [ ] depends on: #39625 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 385/139 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Derivative.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean,Mathlib/RingTheory/PowerSeries/Exp.lean 8 2 ['github-actions', 'mathlib-dependent-issues'] nobody
9-62301
9 days ago
9-65351
9 days ago
0-1053
17 minutes
39553 Brian-Nugent
author:Brian-Nugent
feat(Algebra/CategoryTheory/ModuleCat): Locally Free is local We define `SheafOfModules.LocalGeneratorsData.bind` just like `SheafOfModules.QuasicoherentData.bind` and use it to show that being locally free is a local condition. --- - [ ] depends on: #39544 - [ ] depends on: #39399 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
267/6 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/LocallyFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
9-62187
9 days ago
11-51575
11 days ago
0-1165
19 minutes
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
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 10 ['ADedecker', 'b-mehta', 'github-actions', 'j-loreaux', 'themathqueen'] nobody
9-49710
9 days ago
10-4850
10 days ago
12-63067
12 days
39493 ADedecker
author:ADedecker
chore: switch `AlgHom.equalizer` from `AlgHomClass` to `AlgHom` --- - [ ] depends on: #39487 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 29/31 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Module/Submodule/EqLocus.lean,Mathlib/Analysis/InnerProductSpace/MeanErgodic.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
9-49424
9 days ago
13-28541
13 days ago
0-1151
19 minutes
33505 urkud
author:urkud
feat(Analysis/Complex): prove Riemann mapping theorem I'll list dependencies later. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 974/1 Mathlib/Analysis/Complex/RiemannMapping.lean,Mathlib/Analysis/Complex/UnitDisc/Shift.lean,Mathlib/Topology/Algebra/Group/CompactOpen.lean 3 9 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
9-41854
9 days ago
unknown
0-0
0 seconds
34941 urkud
author:urkud
feat(FDeriv/Prod): generalize to TVS --- Doesn't work yet - [ ] depends on: #34867 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-analysis merge-conflict 326/178 Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/CompCLM.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/MeasureTheory/Integral/DivergenceTheorem.lean,Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean 10 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
9-40414
9 days ago
112-19695
112 days ago
0-50
50 seconds
35666 urkud
author:urkud
chore(Calculus/FDeriv/Pi): migrate to TVS --- - [ ] depends on: #35663 - [ ] depends on: #34941 - [ ] depends on: #34867 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 330/179 Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/CompCLM.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Pi.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/MeasureTheory/Integral/DivergenceTheorem.lean,Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean 11 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
9-40290
9 days ago
96-37994
96 days ago
0-827
13 minutes
38036 JovanGerb
author:JovanGerb
feat: `NSMul`/`NPow` type class This PR is adds `NSMul`, `NPow`, `ZSMul` and `ZPow` classes for the `nsmul`, `npow`, `zsmul`, `zpow` data fields. This has a few advantages: - If you first declare a `SMul` instance, then you don't need to manually write `nsmul := (· • ·)` and `zsmul := (· • ·)` . For `Pow`, the extra benefit is that inferring the instance is preferred over the default field `npowRecAuto`. So this helps avoid accidental diamonds. - If you first declare a `SMul` instance on a type synonym, then `inferInstanceAs` will infer the `nsmul` field from the `SMul` instance. This makes it easier to avoid diamonds on type synonyms like `Matrix` and `MonoidAlgebra`. - The not-yet-merged instance diamond linter will be able to detect cases where the `NSMul` and `SMul` classes do not agree. In the process of making this PR, I have identified two existing `NPow` diamonds: - In `Mathlib.Algebra.Order.Positive.Field`, there were two conflicting `NPow` instances. - For `Fin`, there are two conflicting `NPow` instances. I have overwritten the one in core lean with the one from mathlib that is more computationally efficient. TODO: the same for `QSMul` and `NNQSMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 276/273 Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Group/Action/Opposite.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Opposite.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/MinimalAxioms.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/ZPow.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,MathlibTest/instance_diamonds.lean 41 17 ['JovanGerb', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-merge-conflicts', 'vihdzp'] nobody
9-40164
9 days ago
9-40165
9 days ago
29-38312
29 days
38637 amellendijk
author:amellendijk
test(Tactic/Algebra): try to replace `ring` with algebra in many places --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 497/89 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/AddConstMap/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/IsSimpleRing.lean,Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Archimedean/Hom.lean,Mathlib/Algebra/Order/Archimedean/Submonoid.lean,Mathlib/Algebra/Polynomial/DenomsClearable.lean,Mathlib/Algebra/Polynomial/Homogenize.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/Int/WithZero.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/NNReal/Star.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Real/ENatENNReal.lean,Mathlib/Data/Real/Pointwise.lean,Mathlib/GroupTheory/Archimedean.lean,Mathlib/GroupTheory/Perm/Fin.lean,Mathlib/LinearAlgebra/Basis/Submodule.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleAbs.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/RingTheory/Derivation/ToSquareZero.lean,Mathlib/RingTheory/Nilpotent/Exp.lean,Mathlib/RingTheory/Polynomial/Pochhammer.lean,Mathlib/Tactic/Algebra/Basic.lean,Mathlib/Tactic/Algebra/Lemmas.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/Ring.lean,Mathlib/Tactic/Ring/Common.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/MetricSpace/Defs.lean,MathlibTest/Algebra.lean 45 17 ['FLDutchmann', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
9-40161
9 days ago
unknown
0-0
0 seconds
39102 yuanyi-350
author:yuanyi-350
chore: reduce imports in 50 files --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 70/81 Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Distribution/DerivNotation.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean,Mathlib/Analysis/Distribution/Sobolev.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Barrelled.lean,Mathlib/Analysis/LocallyConvex/ContinuousOfBounded.lean,Mathlib/Analysis/LocallyConvex/Montel.lean,Mathlib/Analysis/LocallyConvex/PointwiseConvergence.lean,Mathlib/Analysis/LocallyConvex/SeparatingDual.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Normed/Affine/AddTorsor.lean,Mathlib/Analysis/Normed/Affine/AddTorsorBases.lean,Mathlib/Analysis/Normed/Affine/Convex.lean,Mathlib/Analysis/Normed/Algebra/Basic.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/Analysis/Normed/Algebra/QuaternionExponential.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Field/Instances.lean,Mathlib/Analysis/Normed/Field/Ultra.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Group/Bounded.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/Normed/Group/FunctionSeries.lean,Mathlib/Analysis/Normed/Group/Indicator.lean,Mathlib/Analysis/Normed/Group/NullSubmodule.lean,Mathlib/Analysis/Normed/Group/Tannery.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Normed/MulAction.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/PSeriesComplex.lean,Mathlib/Analysis/SpecificLimits/Fibonacci.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Analysis/Subadditive.lean,Mathlib/Analysis/SumIntegralComparisons.lean 48 13 ['JovanGerb', 'YaelDillies', 'bryangingechen', 'github-actions', 'j-loreaux', 'leanprover-radar', 'mathlib-merge-conflicts', 'yuanyi-350'] j-loreaux
assignee:j-loreaux
9-40157
9 days ago
9-40158
9 days ago
11-63042
11 days
39254 urkud
author:urkud
feat: define contour integrals Specialize `curveIntegral` to the case if the domain is `ℂ`. In this case, we can integrate a function, not a 1-form. I've decided not to specialize `HasFDerivWithinAt` etc theorems, because I want to review API for curve integrals first. This PR was written at ICERM meeting. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability merge-conflict 255/4 Mathlib.lean,Mathlib/MeasureTheory/Integral/ContourIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
9-40153
9 days ago
17-70977
17 days ago
0-1607
26 minutes
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 723/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 4 200 ['Rida-Hamadani', 'github-actions', 'grunweg', 'idontgetoutmuch'] nobody
9-37689
9 days ago
40-77240
40 days ago
85-84185
85 days
39635 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Eigenspace/Matrix): a scalar is in the spectrum iff it's an eigenvalue --- [#Is there code for X? > Matrix eigenvalues: spectrum and mulVec](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Matrix.20eigenvalues.3A.20spectrum.20and.20mulVec/with/596538140) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
18/0 Mathlib/LinearAlgebra/Eigenspace/Matrix.lean 1 1 ['github-actions'] nobody
9-36143
9 days ago
9-36224
9 days ago
9-36186
9 days
36709 kim-em
author:kim-em
feat(DefEqAbuse): suggest minimal @[implicit_reducible] workaround This PR extends `#defeq_abuse` to suggest a minimal set of `@[implicit_reducible]` annotations that would make the failing tactic or command succeed with `backward.isDefEq.respectTransparency true`. When `#defeq_abuse` detects a failure, it now runs a greedy minimisation over semireducible definitions reachable from the goal/command, finding a (possibly non-unique) minimal subset that, when temporarily marked `@[implicit_reducible]`, fixes the issue. The result is reported as an `info` message: ``` info: Workaround: the following @[implicit_reducible] annotations (a possibly non-unique minimal set) would paper over this problem, but the real issue is likely a leaky instance somewhere. set_option allowUnsafeReducibility true attribute [implicit_reducible] MyPred ``` This is a workaround, not a fix — the real cause is usually a leaky instance (which `#check_instance` from https://github.com/leanprover-community/mathlib4/pull/36706 can diagnose). But it can be useful for quick debugging. New helpers: `collectCandidates`, `markImplicitReducible`, `withTempImplicitReducible`, `withTempImplicitReducibleCmd`, `suggestAnnotationsTac`, `suggestAnnotationsCmd`, `formatAnnotations`, `logAnnotationSuggestions`. 🤖 Prepared with Claude Code t-meta LLM-generated 187/17 Mathlib/Tactic/DefEqAbuse.lean,MathlibTest/DefEqAbuse.lean 2 6 ['github-actions', 'kim-em', 'mathlib-merge-conflicts', 'thorimur'] JovanGerb
assignee:JovanGerb
9-36109
9 days ago
32-2129
32 days ago
49-302
49 days
38225 kim-em
author:kim-em
ci: block merging PRs with large import increases unless reviewed This PR makes the existing `large-import` label into a merge gate. PRs that significantly increase transitive imports (>2% for any modified file) are now blocked from merging until a reviewer adds the `allow-large-import` label. ### Why three labels? Bors's `block_labels` has no conditional logic — if a label is in the list, merge is blocked unconditionally. We need "blocked unless a reviewer has approved", i.e. `large-import ∧ ¬allow-large-import`. Since bors can't express that, we use a derived label: | Label | Managed by | Purpose | |---|---|---| | `large-import` | `build` job (import analysis) | Factual: this PR increases imports | | `blocked-by-large-import` | `check-large-import` job | Operational: blocks bors | | `allow-large-import` | Reviewer | Override: reviewer approves the increase | Each label is managed by exactly one actor, so there is no label-fighting. ### How it works 1. The existing `build` job adds/removes `large-import` based on import analysis (unchanged). 2. A new `check-large-import` job (in the same workflow) waits for `build` to finish, then: - If `large-import` is present and `allow-large-import` is absent → adds `blocked-by-large-import` - Otherwise → removes `blocked-by-large-import` 3. `blocked-by-large-import` is added to `block_labels` in `bors.toml`. When a reviewer adds `allow-large-import`, the `labeled` event re-triggers the workflow. The heavy `build` job is skipped (guarded by `github.event.action != 'labeled'`), but the lightweight `check-large-import` job runs, sees both labels, and removes `blocked-by-large-import`. Bors can now merge. ### Reviewer workflow The CI failure message tells the reviewer to consider whether the PR could be improved by splitting files, rearranging material, or creating new intermediate files. If the import increase is reasonable, they add `allow-large-import`. False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/large-import.20label). 🤖 Prepared with Claude Code CI 78/2 .github/workflows/PR_summary.yml,bors.toml 2 7 ['SnirBroshi', 'github-actions', 'jcommelin', 'joneugster', 'kim-em'] bryangingechen
assignee:bryangingechen
9-36105
9 days ago
39-42441
39 days ago
39-43021
39 days
38500 kebekus
author:kebekus
feat: integral presentation of the proximity function of value distribution theory If `f : ℂ → ℂ` is meromorphic, establish a presentation of the proximity function `proximity f ⊤` as iterated circle averages. This statement can be used to compare the proximity- and logarithmic counting functions, and is one of the key ingredients in the proof of Cartan's classic formula for the characteristic function. This is the first section of a multi-part PR, establishing Cartan's formula. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 211/0 Mathlib.lean,Mathlib/Analysis/Complex/ValueDistribution/Proximity/IntegralPresentation.lean 2 11 ['github-actions', 'kebekus', 'wwylele'] j-loreaux
assignee:j-loreaux
9-36104
9 days ago
34-21162
34 days ago
35-15827
35 days
38823 matthewjasper
author:matthewjasper
chore(LinearAlgebra/TensorProduct): fix diamond in `AddCommGroup` instance The `SMul` instance for tensor products directly used `AddCon.lift`, so wasn't type correct at instance transparency. This caused a diamond with the `AddCommGroup` instance on tensor products because after unfolding some types didn't match, so I've wrapped the sMul function in a semireducible def to prevent this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
30/23 Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean 2 6 ['dagurtomas', 'github-actions', 'kbuzzard', 'leanprover-radar'] themathqueen
assignee:themathqueen
9-36103
9 days ago
28-50500
28 days ago
28-50462
28 days
39474 emlis42
author:emlis42
feat(Topology/Separation/Hausdorff): add `Filter.limUnder_congr` This PR adds `Filter.limUnder_congr` and some lemmas about `limUnder`. `Filter.limUnder_congr` allows rewriting `limUnder` expressions using equivalences of convergence behavior, without proving the filters actually converge, allowing convergence proofs to be carried out on more convenient expressions latter. t-topology new-contributor large-import 24/1 Mathlib/Order/Filter/AtTopBot/Archimedean.lean,Mathlib/Topology/Separation/Hausdorff.lean 2 2 ['github-actions'] PatrickMassot
assignee:PatrickMassot
9-36101
9 days ago
13-57531
13 days ago
13-57493
13 days
39509 mcdoll
author:mcdoll
chore(Topology): add `push/pull_end` tags for CLMs Simpsets were introduced in #38359, see also #39508 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology merge-conflict 2/0 Mathlib/Topology/Algebra/Module/LinearMap.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
9-36101
9 days ago
9-40149
9 days ago
3-40182
3 days
38483 jessealama
author:jessealama
feat(Algebra/BigOperators): add `Antiperiodic.sum_Ico_shift` Three lemmas about `Finset` sums of `Function.Antiperiodic` functions: `sum_map_add_right` says that for `f` antiperiodic with antiperiod `c`, summing `f` over a `Finset` shifted by `c` (via `addRightEmbedding c`) negates the sum over the original; `sum_Ico_shift` is the half-open-interval specialization, immediate via `Finset.map_add_right_Ico`; and `sum_Ico_mul_add_sum_Ico_mul_shift_eq_zero` is a bilinear cancellation variant. Spun off from #29713 (Euler-Poincaré formula), where the bilinear form is used. t-algebra
label:t-algebra$
63/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Periodic.lean 2 5 ['github-actions', 'j-loreaux', 'jessealama', 'wwylele'] ocfnash
assignee:ocfnash
9-35065
9 days ago
25-17292
25 days ago
34-76685
34 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'] nobody
9-32655
9 days ago
11-17484
11 days ago
55-37185
55 days
33477 mcdoll
author:mcdoll
refactor(Algebra): add type-classes for algebraic properties of `FunLike` --- Zulip discussion: [#mathlib4 > Refactoring algebraic properties of bundled maps](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Refactoring.20algebraic.20properties.20of.20bundled.20maps/with/566142461) - [ ] depends on: #37779 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 1782/897 Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Central/End.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Group/Finsupp.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExactSequences.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexCohomology.lean,Mathlib/Algebra/Homology/ShortComplex/Ab.lean,Mathlib/Algebra/Lie/Abelian.lean,Mathlib/Algebra/Lie/BaseChange.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/Cochain.lean,Mathlib/Algebra/Lie/Derivation/AdjointAction.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Lie/EngelSubalgebra.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/InvariantForm.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/TensorProduct.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Lie/Weights/Cartan.lean,Mathlib/Algebra/Lie/Weights/IsSimple.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Submodule/LinearMap.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Division.lean,Mathlib/Algebra/MvPolynomial/NoZeroDivisors.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Order/Floor/Div.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/CompMul.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Conformal.lean 266 8 ['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'mcdoll', 'plp127'] nobody
9-32489
9 days ago
unknown
0-0
0 seconds
38789 dupuisf
author:dupuisf
feat(UniformOnFun): lemma for proving uniform convergence from uncurried form --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-topology 195/1 Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Isometric.lean,Mathlib/Topology/Continuous.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean 6 1 ['github-actions'] nobody
9-26800
9 days ago
29-35529
29 days ago
0-2
2 seconds
39638 mcdoll
author:mcdoll
feat(Algebra): use `Is*Apply` for `LinearMap` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
33/33 Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean 3 1 ['github-actions'] nobody
9-25151
9 days ago
unknown
0-0
0 seconds
39631 MichaelStollBayreuth
author:MichaelStollBayreuth
chore: make Injective and Surjective `fun_prop`able --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import 22/3 Mathlib/Logic/Function/Basic.lean,Mathlib/Tactic/FunProp.lean,MathlibTest/FunPropMinimal.lean 3 1 ['github-actions'] nobody
9-13010
9 days ago
9-53892
9 days ago
0-2
2 seconds
39205 ooovi
author:ooovi
feat(Geometry/Convex): Bundled convex set Add a bundled version of `IsConvexSet`. --- Once the dependencies are merged, this PR only changes `Mathlib.Geometry.Convex.Set` and `Mathlib.Geometry.Convex.Hull`, at the bottom of the file, adding `ConvexSet` and everything in the corresponding namespace. - [ ] depends on: #38934 - [ ] depends on: #38905 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR merge-conflict 989/172 Mathlib.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/Hull.lean,Mathlib/Geometry/Convex/README.md,Mathlib/Geometry/Convex/Set.lean 8 6 ['github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
9-2548
9 days ago
unknown
0-0
0 seconds
38934 YaelDillies
author:YaelDillies
feat(Geometry): convex hull in a `ConvexSpace` --- - [x] depends on: #38905 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 119/0 Mathlib.lean,Mathlib/Geometry/Convex/Hull.lean 2 11 ['YaelDillies', 'github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
9-2068
9 days ago
9-2499
9 days ago
9-3174
9 days
34826 wwylele
author:wwylele
feat(Geometry/Euclidean): volume of a simplex and extra WIP. sorry-free but still need cleaning up and breaking into smaller PRs --- - [x] depends on: #34697 - [x] depends on: #34858 - [x] depends on: #34859 - [x] depends on: #35039 - [x] depends on: #35358 - [x] depends on: #35365 - [x] depends on: #35837 - [ ] depends on: #36018 - [x] depends on: #36462 - [x] depends on: #36466 - [x] depends on: #36952 - [ ] depends on: #37910 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry blocked-by-other-PR merge-conflict 1211/6 Mathlib.lean,Mathlib/Geometry/Euclidean/Volume/Basic.lean,Mathlib/Geometry/Euclidean/Volume/Def.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Euclidean/Volume/MeasureSimplex.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean 9 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-82399
8 days ago
unknown
0-0
0 seconds
38531 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): `Walk.map` preserves more properties Adds some missing theorems about how `Walk.map` behaves with `IsTrail`/`IsPath`/`IsCircuit`/`IsCycle`. Summary of what we have now, with the 8 new theorems and 2 renames marked: ``` IsTrail.of_map : (p.map f).IsTrail → p.IsTrail -- new map_isTrail_iff_of_injective : f.Injective → (p.map f).IsTrail ↔ p.IsTrail IsTrail.map : f.Injective → p.IsTrail → (p.map f).IsTrail -- renamed from map_isTrail_of_injective IsPath.of_map : (p.map f).IsPath → p.IsPath map_isPath_iff_of_injective : f.Injective → (p.map f).IsPath ↔ p.IsPath IsPath.map : f.Injective f → p.IsPath → (p.map f).IsPath -- renamed from map_isPath_of_injective IsCircuit.of_map : (p.map f).IsCircuit → p.IsCircuit -- new map_isCircuit_iff_of_injective : f.Injective → (p.map f).IsCircuit ↔ p.IsCircuit -- new IsCircuit.map : f.Injective → p.IsCircuit → (p.map f).IsCircuit -- new IsCycle.of_map : (p.map f).IsCycle → p.IsCycle -- new map_isCycle_iff_of_injective : f.Injective → (p.map f).IsCycle ↔ p.IsCycle IsCycle.map : f.Injective → p.IsCycle → (p.map f).IsCycle mapLe_isTrail : G ≤ G' → (p.mapLe h).IsTrail ↔ p.IsTrail IsTrail.of_mapLe : G ≤ G' → (p.mapLe h).IsTrail → p.IsTrail IsTrail.mapLe : G ≤ G' → p.IsTrail → (p.mapLe h).IsTrail mapLe_isPath : G ≤ G' → (p.mapLe h).IsPath ↔ p.IsPath IsPath.of_mapLe : G ≤ G' → (p.mapLe h).IsPath → p.IsPath IsPath.mapLe : G ≤ G' → p.IsPath → (p.mapLe h).IsPath mapLe_isCircuit : G ≤ G' → (p.mapLe h).IsCircuit ↔ p.IsCircuit -- new IsCircuit.of_mapLe : G ≤ G' → (p.mapLe h).IsCircuit → p.IsCircuit -- new IsCircuit.mapLe : G ≤ G' → p.IsCircuit → (p.mapLe h).IsCircuit -- new mapLe_isCycle : G ≤ G' → (p.mapLe h).IsCycle ↔ p.IsCycle IsCycle.of_mapLe : G ≤ G' → (p.mapLe h).IsCycle → p.IsCycle IsCycle.mapLe : G ≤ G' → p.IsCycle → (p.mapLe h).IsCycle ``` --- Also golfs `map_isPath_of_injective`/`IsPath.of_map`/`map_isTrail_iff_of_injective`, they don't need induction. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 47/30 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 1 ['github-actions'] nobody
8-82376
8 days ago
34-52990
34 days ago
34-52952
34 days
38357 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Coloring/Greedy): Greedy coloring --- Dependencies are included as sorried theorems to make the diff saner, but exist in the dependent PRs in full. - [ ] depends on: #35619 - [x] depends on: #35622 - [x] depends on: #35628 - [ ] depends on: #36626 - [x] depends on: #38422 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import blocked-by-other-PR 307/1 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Greedy.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
8-81925
8 days ago
38-23514
38 days ago
0-3012
50 minutes
39627 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/LapMatrix): 0 is always an eigenvalue and the determinant is always zero, plus a few other small lemmas. --- - [x] depends on: #39642 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 71/15 Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
8-80491
8 days ago
8-84961
8 days ago
9-46233
9 days
35504 JoaBjo
author:JoaBjo
feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property Add the main analytic results for the exponential distribution: - moment-generating function `mgf id (expMeasure r) t = r / (r - t)` for `t < r` - mean `∫ x, x ∂(expMeasure r) = r⁻¹` - variance `Var[id; expMeasure r] = r⁻¹ ^ 2` - `ℒp` membership for all `p` - tail probability `P(X > x) = exp (-(r * x))` - memoryless property `P(X > s + t | X > s) = P(X > t)` The MGF is computed by reducing to the known improper integral `∫ exp(c * x)` on `Ioi`, and integrability is deduced by contradiction from the positive closed-form value. The mean and variance are computed via the Gamma function integral `∫₀^∞ x^(n-1) exp(-r x) dx = Γ(n) / rⁿ`. The memoryless property follows from the exponential identity `exp(-(r(s+t))) = exp(-rt) * exp(-rs)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability awaiting-author 200/0 Mathlib/Probability/Distributions/Exponential.lean 1 7 ['EtienneC30', 'JoaBjo', 'Timeroot', 'github-actions'] EtienneC30
assignee:EtienneC30
8-75945
8 days ago
8-75946
8 days ago
42-10925
42 days
39192 jayscambler
author:jayscambler
feat(InnerProductSpace/PiL2): det of a linear isometry has unit norm Adds `LinearIsometryEquiv.norm_det` and the real corollary `LinearIsometryEquiv.abs_det`. The proof uses the unitary matrix of a linear isometry in orthonormal bases, via `LinearIsometryEquiv.toMatrix_mem_unitaryGroup` and `Matrix.det_of_mem_unitary`. The supporting matrix lemma is moved from `Adjoint.lean` to `PiL2.lean`, where it no longer depends on adjoints. t-analysis new-contributor LLM-generated awaiting-author 36/10 Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean 2 8 ['github-actions', 'grunweg', 'jayscambler', 'sgouezel', 'themathqueen', 'wwylele'] sgouezel
assignee:sgouezel
8-75422
8 days ago
8-75422
8 days ago
10-9493
10 days
39586 thomaskwaring
author:thomaskwaring
feat: GraphLike typeclass A proposal for a typeclass representing `GraphLike` objects. This is axiomatised in terms of a relations `IsSource` and `IsTarget` between edges and vertices, as well as `IsLink` to represent walks of length one. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 539/0 Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/GraphLike/Walk.lean 2 4 ['SnirBroshi', 'eric-wieser', 'github-actions'] nobody
8-73291
8 days ago
unknown
0-0
0 seconds
39657 mcdoll
author:mcdoll
feat(Algebra): add abstract `prod_apply` and `FunLike.coe_prod` Follow-up of #37779, where abstract `IsApply` classes were introduced. Now, we can prove a generic `sum_apply` lemma and in following PRs this will replace specific ones in function spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
25/5 Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Data/Matrix/PEquiv.lean,Mathlib/LinearAlgebra/Matrix/Polynomial.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean 5 2 ['github-actions', 'mcdoll'] nobody
8-72711
8 days ago
8-73315
8 days ago
8-73277
8 days
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 199/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib 3 37 ['Shreyas4991', 'YaelDillies', 'Zetetic-Dhruv', 'github-actions'] nobody
8-68076
8 days ago
20-50309
20 days ago
37-10920
37 days
39450 amellendijk
author:amellendijk
feat(Asymptotics): define (d)elaborator for asymptotic notation --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 873/0 Mathlib/Tactic/Asymptotics/Basic.lean,Mathlib/Tactic/Asymptotics/Init.lean 2 2 ['github-actions', 'mathlib-bors'] nobody
8-67409
8 days ago
14-41547
14 days ago
0-16
16 seconds
37189 Brian-Nugent
author:Brian-Nugent
feat(AlgebraicGeometry): The pushforward of a quasi-coherent sheaf between affines is quasi-coherent To be more precise, we show that if `AlgebraicGeometry.Scheme.Modules.fromTildeΓ` is an isomorphism then the same holds for the pushforward. This will show that being quasicoherent is stable under pushforward for affine morphisms once it is shown that `AlgebraicGeometry.Scheme.Modules.fromTildeΓ` being an isomorphism is equivalent to being quasicoherent. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry maintainer-merge 215/6 Mathlib/Algebra/Category/ModuleCat/Localization.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean 7 49 ['Brian-Nugent', 'chrisflav', 'github-actions', 'joelriou'] adamtopaz and chrisflav
assignee:adamtopaz assignee:chrisflav
8-66548
8 days ago
9-49233
9 days ago
43-68473
43 days
33288 vihdzp
author:vihdzp
chore(Combinatorics/SimpleGraph/Paths): review API This PR does the following: - Add `grind` annotations. - Rename theorems `X_isY` to the more idiomatic `isY_X`. - Remove many redundant namespaces. - Golf accordingly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 156/126 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean 6 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
8-56184
8 days ago
8-56115
8 days ago
47-81907
47 days
38337 Jun2M
author:Jun2M
feat(Combinatorics/Graph): supremum This PR introduces the union of `Graph`, as `sup`. Due to compatibility issue, in general, `sup` is not very well-behaved: `SemilatticeSup` is not true. In the case of incompatible edge, unlike `inf` which simply removed such edge, we include it following its incidence in the left graph. This has the benefit of associativity being true in general at the cost of commutativity. Assuming compatibility or existence of mutual supergraph, which are shown to be equivalent in this PR, everything behaves nicely. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 86/1 Mathlib/Combinatorics/Graph/Lattice.lean 1 3 ['github-actions', 'mathlib-bors', 'vihdzp'] nobody
8-55966
8 days ago
8-55968
8 days ago
30-18848
30 days
36472 EtienneC30
author:EtienneC30
feat: finite dimensional distribution of Brownian motion Define `gaussianProjectiveFamily : (I : Finset ℝ≥0) → Measure (I → ℝ)`. Each `gaussianProjectiveFamily I` is the centered Gaussian measure over `I → ℝ` with covariance matrix given by `brownianCovMatrix I s t := min s t`. Prove that these measures satisfy `IsProjectiveMeasureFamily`, which means that they can be extended into a measure over `ℝ≥0 → ℝ` thanks to the Kolmogorov's extension theorem (not in Mathlib yet). The obtained measure is a measure over the set of real processes indexed by `ℝ≥0` and is the law of the Brownian motion. --- - [x] depends on: #36143 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability large-import 236/1 Mathlib.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Moments/Basic.lean 5 5 ['EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'sgouezel'] sgouezel
assignee:sgouezel
8-55775
8 days ago
8-55742
8 days ago
74-69455
74 days
39223 BryceT233
author:BryceT233
feat(RingTheory/Extension): surjectivity and kernel of `Cotangent.map` This PR adds `Cotangent.map_surjective_of_comap_eq` and `Cotangent.map_ker_of_surjective`, which are adaptations of the existing lemmas `Ideal.mapCotangent_surjective_of_comap_eq` and `Ideal.mapCotangent_ker_of_surjective` to the cotangent space of extensions. Because `Algebra.Extension.Cotangent` uses a type synonym to define the cotangent space of an extension, the results for `Ideal.mapCotangent` could not be used directly and needed to be restated in terms of `Algebra.Extension.Cotangent.map`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 32/0 Mathlib/RingTheory/Extension/Basic.lean 1 1 ['github-actions'] nobody
8-47260
8 days ago
18-48682
18 days ago
18-48644
18 days
36775 ADedecker
author:ADedecker
feat: flip arguments for continuous linear maps under finite dimension assumptions --- - [x] depends on: #36776 - [x] depends on: #36870 - [ ] depends on: #37435 - [ ] depends on: #37439 - [x] depends on: #37614 - [ ] depends on: #38168 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR merge-conflict 540/32 Mathlib.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean,Mathlib/Topology/Algebra/Module/Spaces/FiniteDimensionCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 7 10 ['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
8-40343
8 days ago
60-74807
60 days ago
9-41060
9 days
36868 ADedecker
author:ADedecker
feat: Fréchet derivative of distributions, as a CLM --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 409/30 Mathlib.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/Spaces/FiniteDimensionCLM.lean 4 4 ['github-actions', 'mathlib-merge-conflicts'] nobody
8-40340
8 days ago
unknown
0-0
0 seconds
36667 NoneMore
author:NoneMore
feat(ModelTheory): add `exClosure` definition for first-order formulas Prepare for moving realizations between elementarily equivalent structures. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 37/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 2 ['github-actions'] nobody
8-37688
8 days ago
76-21909
76 days ago
76-21871
76 days
27493 themathqueen
author:themathqueen
feat(RingTheory/Coalgebra): define Frobenius algebra A Frobenius algebra `A` has the structure of both an algebra and a coalgebra such that: `(mul ⊗ id) ∘ assoc.symm ∘ (id ⊗ comul) = comul ∘ mul = (id ⊗ mul) ∘ assoc ∘ (comul ⊗ id)`. In diagrams this law looks like: ![](https://ncatlab.org/nlab/files/frobenius_laws.jpg) It suffices to show that `(mul ⊗ id) ∘ assoc.symm ∘ (id ⊗ comul) = (id ⊗ mul) ∘ assoc ∘ (comul ⊗ id)`. --- - [x] depends on: #27567 - [x] depends on: #27569 - [x] depends on: #32245 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 112/0 Mathlib.lean,Mathlib/RingTheory/FrobeniusAlgebra.lean 2 25 ['YaelDillies', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'themathqueen'] mariainesdff
assignee:mariainesdff
8-36207
8 days ago
30-49433
30 days ago
77-27785
77 days
38141 Jun2M
author:Jun2M
feat(Order/Partition): Partition induced by symmetric, transitive relation We introduce a constructor for Partition from a symmetric, transitive relation, with `copy` function baked into the definition. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 41/7 Mathlib/Order/Partition/Basic.lean 1 1 ['github-actions'] bryangingechen
assignee:bryangingechen
8-36199
8 days ago
43-34584
43 days ago
43-34546
43 days
38975 ldct
author:ldct
feat(EReal): Add equations for EReal Add equational lemmas for the simplifier to simplify `[natural number literal] + ⊤` in `EReal`, and add a test file in `MathlibTest/EReal.lean`. Without these lemmas, `simp` fails to close many of the goals in `MathlibTest/EReal.lean`. I believe simp should close all of them. An alternative is to add something like this as a simp lemma, to allow `top_add_of_ne_bot` to make progress, but it's not clear to me that this is desirable as a simp lemma, since it's not equational ``` example {n : ℕ} [n.AtLeastTwo] : (ofNat(n) : EReal) ≠ ⊤ := by exact Ne.symm (not_eq_of_beq_eq_false rfl) ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 32/0 Mathlib/Data/EReal/Operations.lean,MathlibTest/EReal.lean 2 2 ['github-actions', 'vihdzp'] TwoFX
assignee:TwoFX
8-36195
8 days ago
24-44877
24 days ago
24-44839
24 days
39174 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Integral/Asymptotics` - refactors `Mathlib/MeasureTheory/Integral/Asymptotics` by simplifying `IsBigO.set_integral_isBigO` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 6/12 Mathlib/MeasureTheory/Integral/Asymptotics.lean 1 2 ['github-actions', 'yuanyi-350'] kex-y
assignee:kex-y
8-36194
8 days ago
19-11573
19 days ago
19-11535
19 days
39175 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Integral/CircleTransform` - refactors `Mathlib/MeasureTheory/Integral/CircleTransform` by shortening `circleTransformDeriv_periodic` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 1/6 Mathlib/MeasureTheory/Integral/CircleTransform.lean 1 2 ['github-actions', 'yuanyi-350'] RemyDegenne
assignee:RemyDegenne
8-36193
8 days ago
19-11570
19 days ago
19-11532
19 days
39679 BryceT233
author:BryceT233
feat(RingTheory/Extension): `fromH1Cotangent` This PR is a continuation of #39520. For an extension `P : Extension R S`, we introduce `fromH1Cotangent`, a linear map from `H1Cotangent R S` to `P.H1Cotangent` induced by the default extension homomorphism. We show that the following diagram commutes: 屏幕截图_22-5-2026_82335_www overleaf com Finally, by combining this commutativity lemma with the exactness of Jacobi-Zariski sequence, we prove that `fromH1Cotangent` is surjective. --- - [ ] depends on: #39520 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 104/0 Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
8-32944
8 days ago
8-32945
8 days ago
0-3726
1 hour
39673 drocta
author:drocta
feat: add instances of MetricSpace, NormedAddGroup, and NormedAddCommGroup for DirectLimit add files `Topology/MetricSpace/DirectLimit.lean` (with an instance of `MetricSpace` for a `DirectLimit` of a directed system of `MetricSpace`s with `IsometryClass` map types between them) and `Analysis/Normed/Group/DirectLimit.lean` (with instances of `NormedAddGroup` and `NormedAddCommGroup` on `DirectLimit`) also lemmas `dist_def` and `norm_def` for these. --- This PR is part of a project of adding support for direct limits of $C^*$-algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR uses `IsometryClass` to implement the requirement that the directed systems preserve the `Norm` on the `NormedAddGroup`s, following the advice I got [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Representing.20norm-preservation.20for.20directed.20systems.3F/with/595941824) . Use of AI: I again used ChatGPT a bit for some advice when writing this (for example, for ideas for simplifying parts of proofs that I suspected could be simpler/shorter, and for advice on which of a couple options would be more idiomatic). I can personally vouch for all of these contributions, and that I understand this code. t-topology new-contributor awaiting-author 258/0 Mathlib.lean,Mathlib/Analysis/Normed/Group/DirectLimit.lean,Mathlib/Analysis/Normed/Ring/DirectLimit.lean,Mathlib/Topology/MetricSpace/DirectLimit.lean 4 23 ['drocta', 'eric-wieser', 'github-actions', 'j-loreaux'] nobody
8-20520
8 days ago
8-33990
8 days ago
0-14741
4 hours
39437 ooovi
author:ooovi
feat(Geometry/Convex/ConvexSpace): show that an `AffineMap` `IsAffineMap` Show that `Convexity.IsAffineMap` generalises `AffineMap`s between affine spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 34/3 Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean 2 3 ['github-actions', 'mathlib-merge-conflicts', 'ooovi'] nobody
8-15956
8 days ago
8-16029
8 days ago
13-25482
13 days
39356 TentativeConvert
author:TentativeConvert
pushforward of gradings along map between indexing sets Pushforward of grading along map between indexing sets The main result of #36501 is that the quotient of a graded algebra by a homogeneous relation inherits a grading. This draft complements #36501 with the result that the grading on a graded algebra can be changed by "pushing forward" along an additive map of additive monoids. For example, an ℕ-grading can be turned into a ℤ-grading by pushing forward along the inclusion ℕ → ℤ, or collapsed to an even/odd-grading by pushing forward along the projection ℤ → ZMod 2. This result is currently in [`RingTheory/GradedAlgebra/Map/DecompositionMap_SetLike.lean`](https://github.com/TentativeConvert/mathlib4/blob/f4e54e0ec25f44c5d373e355e9926481e3102ccd/Mathlib/RingTheory/GradedAlgebra/Map/DecompositionMap_SetLike.lean). The changes to [`Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean`](https://github.com/TentativeConvert/mathlib4/blob/f4e54e0ec25f44c5d373e355e9926481e3102ccd/Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean) illustrate how the two results can be combined to give a new construction of the grading on the Clifford algebra: First, the grading on the tensor algebra is collapsed to an even/odd grading. With respect to this grading, the Clifford relation is homogeneous. The Clifford algebra is the quotient of the tensor algebra by the Clifford relation, so we obtain an induced grading on the Clifford algebra. Notes: This draft includes all of #36501, as this is necessary to demonstrate the application to Clifford algebras. Most of the changes shown below are from that PR. (I don't know how to include that PR and highlight only the changes made on top of it here.) --- - [ ] depends on: #36501 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry new-contributor blocked-by-other-PR merge-conflict 1303/46 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Conjugation.lean,Mathlib/LinearAlgebra/CliffordAlgebra/EvenEquiv.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Grading.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean,Mathlib/LinearAlgebra/TensorAlgebra/Grading.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/GradedAlgebra/Map/AddSubmonoidSSup.lean,Mathlib/RingTheory/GradedAlgebra/Map/DecompositionMap_SetLike.lean,Mathlib/RingTheory/GradedAlgebra/Map/Tests.lean,Mathlib/RingTheory/GradedAlgebra/Map/auxiliary.lean,Mathlib/RingTheory/GradedAlgebra/Map/locations.md,Mathlib/RingTheory/GradedAlgebra/Map/order-preserving-maps.md,Mathlib/RingTheory/Ideal/Span.lean 22 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-11781
8 days ago
unknown
0-0
0 seconds
39575 YaelDillies
author:YaelDillies
chore(Data/Finsupp): make `mapDomain_congr` congr This makes simp stronger. It particular, it breaks some proofs that relied on simp being weak. From MeanFourier --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 29/36 Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/NumberTheory/NumberField/EquivReindex.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Intertwining.lean 10 1 ['github-actions'] nobody
8-10573
8 days ago
8-10650
8 days ago
8-20264
8 days
34472 ADedecker
author:ADedecker
feat: characterize TVS asymptotics in terms of seminorms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 472/24 Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Convex/EGauge.lean,Mathlib/Analysis/LocallyConvex/Asymptotics.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Seminorm.lean 5 9 ['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'mcdoll'] nobody
8-8530
8 days ago
unknown
0-0
0 seconds
34440 grunweg
author:grunweg
feat: linter for name components in uppercase Per the naming convention, these are errors (unless they are an abbreviation). Mathlib has *many* violations at the moment: for this reason, we add this as an environment linter and automatically add all current exceptions. Once these have been fixed, converting to a syntax linter is desirable. Until then, track the number of such exceptions as technical debt. --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/naming.20convention.20linter/with/570617527) Note to self: wait for CI, then do a final nolints update. and try to implement the follow-up soon [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import awaiting-author please-adopt merge-conflict 1024/8 Mathlib/Tactic/Linter/Style.lean,MathlibTest/DoubleUnderscore.lean,MathlibTest/Lint.lean,MathlibTest/LintStyle.lean,scripts/nolints.json 5 29 ['Vierkantor', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts'] nobody
8-7194
8 days ago
101-9075
101 days ago
13-82065
13 days
34466 Komyyy
author:Komyyy
chore: modulize tests (N/N) --- Privately imports are intentional. I manually modulize each test so that the purpose of the tests is not lost by modulizing. - [x] Await the release of leanprover/lean4#12198 - [x] depends on: #34970 - [x] depends on: #35288 - [x] depends on: #36882 - [x] depends on: #36981 - [x] depends on: #37654 - [ ] Await the release of leanprover/lean4#13329 - [x] depends on: #37820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI merge-conflict 310/63 MathlibTest/AssertImported.lean,MathlibTest/BinaryRec.lean,MathlibTest/Bound/attribute.lean,MathlibTest/Bound/bound.lean,MathlibTest/CategoryTheory/Bicategory/Normalize.lean,MathlibTest/CategoryTheory/Elementwise.lean,MathlibTest/CategoryTheory/Monoidal/Normalize.lean,MathlibTest/Clean.lean,MathlibTest/DFinsuppMultiLinear.lean,MathlibTest/GRewrite.lean,MathlibTest/LibrarySuggestions/sineQuaNon.lean,MathlibTest/LongFile.lean,MathlibTest/Nat/log.lean,MathlibTest/Perm.lean,MathlibTest/Polynomial.lean,MathlibTest/Quaternion.lean,MathlibTest/RefinedDiscrTree.lean,MathlibTest/antidiagonal.lean,MathlibTest/dfinsupp_notation.lean,MathlibTest/fast_instance.lean,MathlibTest/grind/ac.lean,MathlibTest/grind/cc.lean,MathlibTest/grind/field.lean,MathlibTest/grind/field_instance.lean,MathlibTest/grind/grobner.lean,MathlibTest/grind/linarith.lean,MathlibTest/grind/lint.lean,MathlibTest/grind/natCast_instance.lean,MathlibTest/grind/ordered_ring.lean,MathlibTest/grind/pairwise_disjoint.lean,MathlibTest/grind/panic.lean,MathlibTest/grind/ring.lean,MathlibTest/grind/set.lean,MathlibTest/grind/trig.lean,MathlibTest/hintAll.lean,MathlibTest/slow_simp.lean,MathlibTest/solve_by_elim/basic.lean,MathlibTest/solve_by_elim/dummy_label_attr.lean,MathlibTest/solve_by_elim/instances.lean,MathlibTest/vec_notation.lean,check_modulized_tests.lean,not_modulized_modules.txt 42 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-7192
8 days ago
unknown
0-0
0 seconds
38292 kim-em
author:kim-em
feat(AlgebraicTopology): universal cover construction This PR constructs the universal cover of a path-connected, locally path-connected, semilocally simply connected space `X` as the based-path space modulo endpoint-preserving homotopy, topologised by coinduction from the compact-open based-path space. Split across three files: * `FundamentalGroupoid/BasedPath.lean` — the based-path space and the path-component machinery of `endpoint ⁻¹' U`. * `FundamentalGroupoid/UniversalCover/Basic.lean` — quotient topology, `proj`, and the sheet decomposition. * `FundamentalGroupoid/UniversalCover/Covering.lean` — `isCoveringMap`, `pathConnectedSpace`, `simplyConnectedSpace`, and the universal lifting property `existsUnique_continuousMap_lifts`. - [ ] depends on: #31576 I want to note this takes a different approach than Hatcher et al, which build the universal cover as the path space, but with a "custom" topology. It is then a theorem (often not proved in textbooks) that with the usual hypotheses this topology coincides with the one coinduced from the compact-open topology. I decided that "the mathlib way" was just to start with the "natural" topology, and not take this shortcut. 🤖 Prepared with Claude Code and Codex. 2996/33 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/BasedPath.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SemilocallySimplyConnected.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/UniversalCover/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/UniversalCover/Covering.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean 11 50 ['github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-7186
8 days ago
unknown
0-0
0 seconds
38168 ADedecker
author:ADedecker
feat: if `E` is finite dimensional, `E →L[𝕜] F` has the product topology --- - [x] depends on: #38164 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-analysis awaiting-author merge-conflict 235/29 Mathlib.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/Spaces/FiniteDimensionCLM.lean 3 8 ['ADedecker', 'faenuccio', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
8-6941
8 days ago
31-76158
31 days ago
4-66970
4 days
38853 ldct
author:ldct
chore: tag set lemmas with @[push] Tag set theory lemmas for pushing intersection, union and complement --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author merge-conflict 31/4 Mathlib/Data/Set/Basic.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/BooleanAlgebra/Set.lean,MathlibTest/push.lean 4 2 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] nobody
8-6935
8 days ago
27-6729
27 days ago
0-18718
5 hours
39101 ldct
author:ldct
feat: Tag exp_nat_mul and exp_int_mul Tag these two lemmas to allow - pushing the `^` in `(exp ...)^...` - pushing the `exp` in `exp (... * ...)` and add unit tests. Also tag the real versions, and `exp 0` for `push exp` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author merge-conflict 28/2 Mathlib/Analysis/Complex/Exponential.lean,MathlibTest/push.lean 2 6 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
8-6931
8 days ago
14-37512
14 days ago
6-85937
6 days
39111 hanwenzhu
author:hanwenzhu
chore(Probability/Martingale): use `to_dual` for Submartingale/Supermartingale WIP, will probably split to a PR for EventuallyLE etc cc @CoolRmal --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 169/169 Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Analysis/Normed/Order/Lattice.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/Set.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/ToDual.lean 12 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
8-6929
8 days ago
unknown
0-0
0 seconds
39421 harahu
author:harahu
chore: add empty lines after headers --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1250/0 Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/PeanoCurve.lean,Counterexamples/Pseudoelement.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Epi.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/Central/Defs.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/Algebra/CharP/CharAndCard.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/EuclideanDomain/Int.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/FreeMonoid/FreeSemigroup.lean,Mathlib/Algebra/GCDMonoid/Nat.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Indicator.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Subgroup/MulOppositeLemmas.lean,Mathlib/Algebra/Group/Subgroup/ZPowers/Basic.lean,Mathlib/Algebra/Group/Subgroup/ZPowers/Lemmas.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Membership.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/TStructure.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/Embedding/HomEquiv.lean,Mathlib/Algebra/Homology/Embedding/StupidTrunc.lean,Mathlib/Algebra/Homology/Embedding/TruncGE.lean,Mathlib/Algebra/Homology/Functor.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Homology/HomotopyCategory/KInjective.lean,Mathlib/Algebra/Homology/HomotopyCategory/KProjective.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/ModelCategory/Injective.lean,Mathlib/Algebra/Homology/Opposite.lean,Mathlib/Algebra/Homology/ShortComplex/Ab.lean,Mathlib/Algebra/Homology/SpectralObject/Basic.lean,Mathlib/Algebra/Homology/SpectralObject/Cycles.lean,Mathlib/Algebra/Homology/SpectralObject/Differentials.lean,Mathlib/Algebra/Homology/SpectralObject/EpiMono.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/Cochain.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/Loop.lean,Mathlib/Algebra/Lie/Prod.lean,Mathlib/Algebra/Lie/Semisimple/Lemmas.lean,Mathlib/Algebra/Lie/SerreConstruction.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Lie/Weights/IsSimple.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Lie/Weights/Linear.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LinearMap/Prod.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/RestrictScalars.lean,Mathlib/Algebra/Module/SnakeLemma.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/Algebra/Module/StablyFree/Basic.lean,Mathlib/Algebra/Module/Submodule/EqLocus.lean 876 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
8-6925
8 days ago
unknown
0-0
0 seconds
39593 BoltonBailey
author:BoltonBailey
add linter for name capitalization This PR adds a `nameCheck.capitalization` linter to try and capture the guidelines in [this section](https://leanprover-community.github.io/contribute/naming.html#capitalization) of the conventions page. Some potentially relevant Zulip threads: - [#lean4 > automatic spelling generation & comparison](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/automatic.20spelling.20generation.20.26.20comparison/with/505760384) - [#mathlib4 > naming convention linter](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/naming.20convention.20linter/with/564571875) - [#mathlib4 > Naming convention](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.20convention/with/535123036) These changes were made entirely with Claude Code and have not currently been audited. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter merge-conflict 352/1 Mathlib/Tactic/Linter/Style.lean,MathlibTest/NameCheckCapitalization.lean 2 3 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
8-6919
8 days ago
unknown
0-0
0 seconds
38953 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): The sheaf of modules associated to a Weil divisor In this PR, we construct the sheaf of modules associated to a Weil divisor. Funnily enough, the definition does not actually require that the cycle is a Weil divisor, so in fact we construct a sheaf of modules associated to an arbitrary algebraic cycle. This isn't a particularly interesting definition outside of the case where the cycle is a Weil divisor as far as I can tell, but still I thought that was interesting. - [ ] depends on: #38472 - [ ] depends on: #35868 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import blocked-by-other-PR 1382/0 Mathlib.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Principal.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Sheaf.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Minimal.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/LocallyFinsupp/Pushforward.lean,Mathlib/Topology/Sheaves/SheafCondition/UniqueGluing.lean,Mathlib/Topology/Sober.lean 14 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-6095
8 days ago
25-7841
25 days ago
0-12
12 seconds
39687 TentativeConvert
author:TentativeConvert
feat(Algebra/Group/Submonoid): type class to indicate that supremum in a SubmonoidClass agrees with supremum of submonoids Add a type class `SubmonoidClass.IsConcreteSSup` to indicate that the canonical map `.ofClass` from a class `S` of submonoids of `M` to `Submonoid M` preserves suprema. --- This PR implements the minimal type class assumption needed to make „pushfoward of gradings along maps of indexing sets“ – see draft PR #39356 – work in some `SetLike` generality. Given `{S M : Type*} [SetLike S M] [Monoid M] [SubmonoidClass S M]`, we have canonical maps ``` S → Submonoid M → Set M ``` The first is `Submonoid.ofClass`, the second and the composition are `coe` maps coming from the `SetLike` structures. Depending on `S`, these maps may or may not satisfy various properties with respect the lattice structures on `Submonoid M` and `Set M`. Mathlib so far includes the type class `[IsConcreteLE S M]`, which asserts that the composition `S → Set M` is order-preserving and order-reflecting. The type class defined here asserts that the first map, `S → Submonoid M`, preserves suprema. In examples such as `S = Subgroup M`, `S = Submodule R M`, much more is true – in these cases, `S` is a complete sublattice of `Submonoid M`. But there are also examples where only the weaker property defined here holds, e.g. `S = OpenSubgroup M` for a topological group `M`. Note on `outParam`: I did *not* write `(M : outParam Type*)` in the assumptions of `SubmonoidClass.IsConcreteSSup` in accordance with the [DocString of `Setlike`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/SetLike/Basic.html#SetLike). However, we do have `(B : outParam Type*)` in the definition of `IsConcreteLE`, so perhaps I'm misinterpreting the DocString. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
56/0 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/SSup.lean 2 2 ['github-actions'] nobody
8-6082
8 days ago
8-6151
8 days ago
8-6713
8 days
39646 YaelDillies
author:YaelDillies
feat(Algebra/Order): maximally varying version of `prod_le_prod_of_subset_of_one_le` We need this for `gcongr`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
49/26 Mathlib/Algebra/Module/ZLattice/Summable.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Analysis/Complex/Exponential.lean 4 7 ['YaelDillies', 'b-mehta', 'github-actions'] nobody
8-4392
8 days ago
9-5160
9 days ago
9-8578
9 days
36275 smmercuri
author:smmercuri
feat: norm for the finite adele ring of a number field --- - [x] depends on: #35820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 137/1 Mathlib.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-2378
8 days ago
8-2451
8 days ago
8-3673
8 days
39120 wwylele
author:wwylele
feat(MeasureTheory,Euclidean): area formula This PR aims to prove the generalization of [MeasureTheory.lintegral_abs_det_fderiv_eq_addHaar_image](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Function/Jacobian.html#MeasureTheory.lintegral_abs_det_fderiv_eq_addHaar_image) in inner product spaces, where the domain and the codomain are allowed to be different. WIP. TODO: - Remove the restriction on f'.ker = bot - Rmoeve [SecondCountableTopology V] - Clean up the proof AI usage disclosure: Aristotle were used to prove some "trivial" lemma (measurability, summability etc.) --- - [ ] depends on: #37295 - [ ] depends on: #39132 - [ ] depends on: #39160 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 1957/5 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/NormDet.lean,Mathlib/Geometry/Euclidean/Volume/Area.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,docs/references.bib 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
8-4
8 days ago
unknown
0-0
0 seconds
39699 kbuzzard
author:kbuzzard
chore: refactor Algebra.TensorProduct.rightAlgebra (was #25481 ; now re-opened from a fork). The declaration `Algebra.TensorProduct.rightAlgebra` makes `A ⊗[R] B` into a `B`-algebra (here `R` is a `CommSemiring`, `A` is a `Semiring` and an `R`-algebra, and `B` is a `CommSemiring` and an `R`-algebra). It is not an instance because if A = B it causes a diamond. However in the many cases where A isn't B, it can occasionally be useful. However one could imagine that in the many cases where an R-module `M` also isn't `B`, it might occasionally be useful to make `M ⊗[R] B` into a `B`-module (and indeed I am finding this in FLT). With the current definition of `Algebra.TensorProduct.rightAlgebra` this is difficult to do without causing diamonds in the case when `M` happens to be an `R`-algebra (by which I mean "I failed to do this in finite time"). One fix for this is just to redefine `Algebra.TensorProduct.rightAlgebra` so that the `smul` field is ``` smul b ab := TensorProduct.comm _ _ _ (b • (TensorProduct.comm _ _ _ ab)) ``` i.e. literally "swap the product around, use mathlib's instance making `B ⊗[R] A` into a `B`-algebra, and then swap back". Then the same definition can be used to make `M ⊗[R] B` into a `B`-module and on the odd occasion where this point of view is useful, there is no diamond. This is what we do in this PR. After adding one simp lemma there is no breakage at all in mathlib. Furthermore, for those who have observed that we want to build on this algebra instance sometimes and, for example, add instances of the form "if M is finite over R then M ⊗[R] B is finite over B" -- these instances are really easy to add now with this new definition, because you simply pull back the analogous finite left module instance along the isomorphism M ⊗[R] B = B ⊗[R] M. Examples (from FLT, where the right action is put in a scope): ``` scoped instance [Module.Finite R M] : Module.Finite A (M ⊗[R] A) := Module.Finite.equiv (Module.TensorProduct.comm R A M) scoped instance [Module.Free R M] : Module.Free A (M ⊗[R] A) := Module.Free.of_equiv (Module.TensorProduct.comm R A M) ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 29/6 Mathlib/RingTheory/TensorProduct/Basic.lean 1 2 ['github-actions', 'kbuzzard'] nobody
7-78666
7 days ago
7-79258
7 days ago
0-69
1 minute
35296 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): taking or droping from a cycle results in a path --- - [x] depends on: #33249 - [ ] depends on: #35295 - [x] depends on: #35292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics merge-conflict 80/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean,Mathlib/Data/List/Infix.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
7-77304
7 days ago
104-83031
104 days ago
0-1258
20 minutes
39589 ScottWe
author:ScottWe
feat: simple lemmas about Hermitian matrices This pull request establishes some simple proofs about Hermitian algebras. In particular: - Unitary Hermitian matrices are self-inverse; - Hermitian matrices are in correspondence with skew-adjoint matrices. new-contributor awaiting-author t-algebra t-analysis
label:t-algebra$
72/0 Mathlib.lean,Mathlib/Analysis/Matrix/SkewAdjoint.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/Unitary.lean 4 13 ['ScottWe', 'SnirBroshi', 'github-actions', 'j-loreaux', 'themathqueen'] nobody
7-75505
7 days ago
10-50787
10 days ago
0-7869
2 hours
39689 kbuzzard
author:kbuzzard
perf: increase prio of AddCommMonoid.toAddMonoid The idea is that to prove M is an additive monoid, then essentially always it's a good idea to try to prove that it's a commutative additive monoid. This is in stark contrast to multiplication, which is often not commutative. This change will not make failures any slower, but it might make successes faster. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra WIP
label:t-algebra$
7/3 Mathlib/Algebra/Group/Defs.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean 4 11 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mattrobball'] nobody
7-70502
7 days ago
7-70502
7 days ago
0-22163
6 hours
33832 alreadydone
author:alreadydone
feat(Algebra): localization preserves unique factorization --- - [x] depends on: #33851 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
143/12 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/UniqueFactorization.lean,Mathlib/RingTheory/Localization/Defs.lean 6 13 ['Vierkantor', 'alreadydone', 'dagurtomas', 'github-actions', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] Vierkantor
assignee:Vierkantor
7-69161
7 days ago
113-64829
113 days ago
15-81158
15 days
39711 robin-carlier
author:robin-carlier
test: specify univ vars in Cat The current return type of `Cat` is `Type max (u + 1) u (v + 1)`, let’s see if forcing it to be `Type max _ _` helps. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 1/1 Mathlib/CategoryTheory/Category/Cat.lean 1 5 ['github-actions', 'leanprover-radar', 'robin-carlier'] nobody
7-68120
7 days ago
unknown
0-0
0 seconds
39621 chrisflav
author:chrisflav
refactor(Topology): use `WithTopology` to define `WithConstructibleTopology` We replace the type synonym `WithConstructibleTopology` by `WithTopology _ (constructibleTopology X)`. This breaks the def-eq `X = WithConstructibleTopology X`, which was luckily not abused much yet. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 38/5 Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Spectral/ConstructibleTopology.lean,Mathlib/Topology/WithTopology.lean 3 2 ['github-actions', 'plp127'] nobody
7-66331
7 days ago
9-68522
9 days ago
9-68484
9 days
39413 vihdzp
author:vihdzp
bug: turning theorem into alias breaks bound tactic I have no idea what's going on. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra will-close-soon
label:t-algebra$
1/3 Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean 1 1 ['github-actions'] nobody
7-59088
7 days ago
unknown
0-0
0 seconds
38234 vihdzp
author:vihdzp
chore: make `IsSuccLimit` a structure This lets us name the fields. Note that the `mk_iff` lemma overwrites a recently deprecated theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 40/33 Mathlib/Order/SuccPred/InitialSeg.lean,Mathlib/Order/SuccPred/Limit.lean 2 6 ['YaelDillies', 'github-actions', 'plp127'] nobody
7-54784
7 days ago
21-12843
21 days ago
37-1092
37 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
7-52799
7 days ago
8-44595
8 days ago
53-38899
53 days
36636 Vierkantor
author:Vierkantor
feat(Tactic/Linter): linter for comments that should become docstrings This PR adds a linter that warns when there is a comment before a declaration which could become a docstring instead. A lot of the instances it spots appear to be simple typos, where a docstring was actually intended. Where a comment was originally intended, I would argue it is still a good idea include the comments in the generated documentation, or at least it does not hurt anyone. Closes: https://github.com/mathlib-initiative/TaskList/issues/41 --- - [ ] depends on: #36635 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter blocked-by-other-PR merge-conflict 312/260 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Abelian.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Subgroup/MulOppositeLemmas.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/Group/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Morphisms/WeaklyEtale.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Synonym.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Fourier/Convolution.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/LConvolution.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Normed/Algebra/GelfandMazur.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/Normed/Operator/Banach.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/FintypeCat.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryBiproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Monoidal/Closed/Ideal.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/ENNReal/Holder.lean,Mathlib/Data/Finset/Sym.lean,Mathlib/Data/Fintype/Sets.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Set/Pointwise/Support.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeGroup/IsFreeGroup.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/MaximalSubgroups.lean,Mathlib/Init.lean,Mathlib/LinearAlgebra/CliffordAlgebra/SpinGroup.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Isomorphisms.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/UnivLE.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalLExpectation.lean,Mathlib/MeasureTheory/Function/JacobianOneDim.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/Measure/Haar/NormedSpace.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean,Mathlib/ModelTheory/Algebra/Field/CharP.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/BourbakiWitt.lean 142 8 ['adomani', 'github-actions', 'grunweg', 'jcommelin', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
7-50995
7 days ago
77-2378
77 days ago
0-45
45 seconds
36015 mcdoll
author:mcdoll
chore(Analysis/SchwartzMap): unify style for `mkCLM` uses Avoid using `refine` for definitions in favour of `where finally` and unify the indentation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-author merge-conflict 238/208 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean 3 10 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'mcdoll'] j-loreaux
assignee:j-loreaux
7-46166
7 days ago
73-54072
73 days ago
9-43106
9 days
39697 sorrachai
author:sorrachai
feat(Data/Tree/Basic): add Membership instance, new notation, rename Tree Summary: 1. [Rename]([#CSLib > Splay tree PR: BinaryTree vs Tree @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR.3A.20BinaryTree.20vs.20Tree/near/596482765)) from Tree to BinaryTree, which propagates the changes to other files that use it. 2. Add membership instance, prove decidability of membership. 3. Add toListInOrder, toListPreOrder, toListPostOrder Suggestion based on the discussion in the cslib [thread](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391)[#CSLib > Splay tree PR @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391). --- * depends on: #39707 new-contributor 187/75 Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Tree/Get.lean,Mathlib/Data/Tree/Traversable.lean,Mathlib/Tactic/CancelDenoms/Core.lean,docs/overview.yaml 7 4 ['eric-wieser', 'github-actions', 'sorrachai'] nobody
7-45814
7 days ago
7-77374
7 days ago
7-79391
7 days
39280 Thmoas-Guan
author:Thmoas-Guan
refactor(Ideal/MinimalPrimes): Refactor minimal primes APIs more entirely --- - [ ] depends on: #38029 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 222/111 Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/RingTheory/Algebraic/StronglyTranscendental.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Colon.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean,Mathlib/RingTheory/KrullDimension/Basic.lean,Mathlib/RingTheory/KrullDimension/Zero.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/Unramified/Dedekind.lean 14 4 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
7-44299
7 days ago
17-21593
17 days ago
0-7
7 seconds
35069 A-M-Berns
author:A-M-Berns
feat(Geometry/Polygon): simple polygons and boundary map This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution. - [x] depends on: #34598 --- new-contributor t-euclidean-geometry LLM-generated 360/0 Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean 4 30 ['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] nobody
7-37691
7 days ago
93-63546
93 days ago
96-11394
96 days
35402 samueloettl
author:samueloettl
feat(Dynamics/BirkhoffSum): birkhoffAverage const --- I think this is useful and one of these should be a simp lemma. I'm not really sure if I got the naming of the theorems correct. When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 14/0 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 26 ['Maldooor', 'github-actions', 'lua-vr', 'mcdoll', 'samueloettl'] sgouezel
assignee:sgouezel
7-36517
7 days ago
30-77040
30 days ago
96-75815
96 days
39033 tb65536
author:tb65536
feat(Analysis/DirichletEigenvalue): Dirichlet eigenvalues of a set This PR defines the Dirichlet eigenvalues of a set (in the sense of "can you hear the shape of a drum"). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 58/0 Mathlib.lean,Mathlib/Analysis/DirichletEigenvalue.lean 2 1 ['github-actions'] sgouezel
assignee:sgouezel
7-36509
7 days ago
22-80015
22 days ago
22-79979
22 days
39738 NoahW314
author:NoahW314
feat(Algebra/Algebra/Bilinear): generalize to `NonUnitalNonAssocCommSemiring` Complete a TODO which can now be done since #28604 is merged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
2/4 Mathlib/Algebra/Algebra/Bilinear.lean 1 1 ['github-actions'] nobody
7-28851
7 days ago
7-28926
7 days ago
7-28888
7 days
39518 abeldonate
author:abeldonate
feat(RingTheory/LocalProperties/Projective): Projective Module theorem Theorem: R Noetherian, M finitely generated R-Mod. Then: M projective iff M_m free for all m maximal t-ring-theory new-contributor large-import 21/0 Mathlib/RingTheory/LocalProperties/Projective.lean 1 9 ['abeldonate', 'github-actions', 'mbkybky', 'vlad902'] nobody
7-12206
7 days ago
10-76225
10 days ago
11-32042
11 days
39735 allenhaozhu
author:allenhaozhu
feat(LinearAlgebra/Matrix): regularized inverse limit and trace continuity Add `Matrix.regularizedInv_mul_tendsto_one` and the trace corollaries `Matrix.trace_regularizedInv_mul_tendsto` and `Matrix.trace_regularizedInv_mul_tendsto_card`: for a square matrix `M` over a normed field with `det M ≠ 0`, the Tikhonov-regularized expression `(M + lam • 1)⁻¹ * M` tends to the identity matrix as the scalar `lam` tends to zero, and consequently its trace tends to `tr 1 = (Fintype.card d : R)`. The proofs compose `NormedRing.inverse_continuousAt`, `continuousAt_matrix_inv`, `Matrix.nonsing_inv_mul`, and `Continuous.matrix_trace`; no new definitions are added. These lemmas are useful in matrix-regularization limit arguments arising in numerical linear algebra (Tikhonov-regularized least squares, ridge regression) and in statistics. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-algebra new-contributor LLM-generated
label:t-algebra$
109/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/InverseLimit.lean 2 2 ['github-actions'] nobody
7-12036
7 days ago
unknown
0-0
0 seconds
39734 allenhaozhu
author:allenhaozhu
feat(Analysis/CStarAlgebra/CStarMatrix): operator-monotone rpow/log/sqrt specializations Adds three discoverability lemmas for operator-monotonicity on `CStarMatrix n n A`, specializing the existing C\*-algebra-level results from `CFC.monotone_rpow` / `CFC.log_monotoneOn` / `CFC.monotone_sqrt`: ``` CStarMatrix.monotone_rpow {p : ℝ} (hp : p ∈ Set.Icc 0 1) : Monotone (fun M : CStarMatrix n n A => M ^ p) CStarMatrix.log_monotoneOn : MonotoneOn (CFC.log : CStarMatrix n n A → CStarMatrix n n A) {M | IsStrictlyPositive M} CStarMatrix.monotone_sqrt : Monotone (CFC.sqrt : CStarMatrix n n A → CStarMatrix n n A) ``` In the course of implementing these specializations, three shortcut instances are also registered to bypass a typeclass-diamond issue. `CStarMatrix n n A` derives `CStarAlgebra` from the underlying `CStarAlgebra A`, but the typeclass search for `ContinuousFunctionalCalculus ℝ (CStarMatrix n n A) IsSelfAdjoint` does not find the path through the `Matrix` diamond automatically. Explicit shortcut instances enable ergonomic use of `CFC.rpow`, `CFC.log`, etc.: ``` instance instContinuousFunctionalCalculusRealIsSelfAdjoint instance instNonUnitalContinuousFunctionalCalculusRealIsSelfAdjoint instance instNonnegSpectrumClassReal ``` **Reviewer note:** I am NOT attached to this PR — if reviewers prefer that downstream users call `CFC.monotone_rpow` directly and accept the typeclass-search cost, please close. The PR is offered as a convenience on the assumption that matrix-shaped users may search the matrix namespace first and benefit from the diamond shortcut. The shortcut instances may also belong in a separate PR if reviewers prefer. Extracted from LTFP-Lean (mechanical formalization of Bach's *Learning Theory from First Principles*), where matrix-side ergonomics matter for downstream proofs. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Opus 4.7 model. - **Use.** I specified the three target specialization lemmas. The assistant placed them in the right file, discovered the typeclass-diamond issue while implementing (adding 3 shortcut instances to resolve it), drafted the proofs, and verified the build under `lake build Mathlib.Analysis.CStarAlgebra.CStarMatrix.OperatorMonotone`. I reviewed the final code. - **Vouching.** I have read the declarations and can defend the proofs without further AI assistance. I welcome reviewer feedback on: - whether the three specialization lemmas justify their own file or should be merged into `CStarMatrix.lean` - whether the typeclass-diamond shortcut instances belong in this PR or a separate one - whether the convenience-layer is justified at all vs. having downstream users call `CFC.*` directly t-analysis new-contributor LLM-generated 101/0 Mathlib.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix/OperatorMonotone.lean 2 2 ['github-actions'] nobody
7-12006
7 days ago
unknown
0-0
0 seconds
39733 allenhaozhu
author:allenhaozhu
feat(LinearAlgebra/Matrix): nonsingular inverse commutes with any monoid hom of matrix rings Adds `Matrix.map_nonsing_inv`: for any `MonoidHomClass` morphism `f : Matrix n n R →* Matrix n n S` between matrix rings over commutative rings, and any `A : Matrix n n R` with `IsUnit A.det`, ``` (f A)⁻¹ = f A⁻¹ ``` The proof is short: `Matrix.inv_eq_right_inv` plus the fact that `f` preserves `*` and `1`: ```lean theorem map_nonsing_inv (f : F) {A : Matrix n n R} (hA : IsUnit A.det) : (f A)⁻¹ = f A⁻¹ := by apply Matrix.inv_eq_right_inv rw [← map_mul, Matrix.mul_nonsing_inv A hA, map_one] ``` Since `RingHom`, `RingEquiv`, `AlgHom`, `AlgEquiv`, and `StarAlgEquiv` between matrix rings all provide `MonoidHomClass` instances, the lemma applies uniformly to all of them — in particular to `Unitary.conjStarAlgAut`-style conjugations by a unitary matrix, which is the original motivating use case. This came up in a downstream project (mechanical formalization of Bach's *Learning Theory from First Principles*), where it underpins a spectral-identity proof: `(U * X * star U)⁻¹ = U * X⁻¹ * star U` for unitary `U` and invertible `X`. Rather than special-case the unitary-conjugation version, I generalized to any `MonoidHomClass` since the proof works mechanically. ### Why not just `map_inv`? The generic `map_inv` discharges `⁻¹` through a `MonoidHom` between groups, but `Matrix n n R` is not a group under multiplication — `⁻¹` here is `Matrix.nonsing_inv` (adjugate / det), which is only a two-sided inverse on the submonoid of nonsingular matrices. So `map_inv` doesn't apply directly; we need the `IsUnit A.det` hypothesis and a custom proof routed through `Matrix.inv_eq_right_inv`. ### Tests - `lake build Mathlib.LinearAlgebra.Matrix.NonsingularInverse` — green - `lake build Mathlib.Analysis.Matrix.Spectrum Mathlib.LinearAlgebra.Matrix.GeneralLinearGroup.Defs` — green (downstream smoke check, no regressions) - Verified usability against both `RingEquiv` and `StarAlgEquiv` instances via local smoke tests ### Notes on AI assistance Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic), Claude Opus 4.7 model. - **Use.** I specified the target statement (originally `ℝ`-specific to a unitary conjugation) and the scope of generalization. The assistant drafted the more general `MonoidHomClass` version, chose the file home, verified the proof builds under `lake build`, and tested downstream files for regressions. I reviewed the proof, naming, and file placement. - **Vouching.** I have read the declaration and can defend the proof without further AI assistance. Happy to take reviewer feedback on naming (`map_nonsing_inv` vs alternatives), namespace placement, or whether the typeclass bound should be relaxed further (e.g. to `MulHomClass` if we can avoid `map_one` — though `map_mul` + `mul_nonsing_inv = 1` + applying `f` to `1` seems to genuinely require `OneHomClass` too). t-algebra new-contributor LLM-generated
label:t-algebra$
17/0 Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean 1 2 ['github-actions'] nobody
7-11989
7 days ago
unknown
0-0
0 seconds
39744 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(NumberTheory/Height/NumberField): Northcott property This PR finally adds a proof of the *Northcott property* for heights on number fields: ```lean theorem NumberField.finite_setOf_mulHeight₁_le (B : ℝ) : {x : K | mulHeight₁ x ≤ B}.Finite ``` --- - [ ] depends on: #39127 (The branch was split off the one for the PR this depends on.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory blocked-by-other-PR 291/2 Mathlib.lean,Mathlib/Algebra/Order/Hom/Lattice.lean,Mathlib/NumberTheory/Height/NumberField.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
7-2453
7 days ago
7-2454
7 days ago
0-1362
22 minutes
39718 RaggedR
author:RaggedR
feat(Archive): dual Langer graph and GH(2,2) non-self-duality This PR introduces the dual Langer graph, the line-collinearity graph of the split Cayley hexagon GH(2,2), and establishes the algebraic infrastructure for proving that it is not isomorphic to the Langer graph (the point-collinearity graph). Both graphs share the intersection array {6, 4, 4; 1, 1, 3} but are distinguished by the connectivity of their distance-3 subgraphs. The key mathematical contribution is deriving the G₂(2) line-action from the point-action (already in Archive.LangerGraph) via the triangle-line bijection. Each line of GH(2,2) corresponds to a unique triangle in the Langer graph, and the point-action sends triangles to triangles, inducing an action on lines. The induced line-action preserves the share-a-vertex relation, which is proved algebraically using Finset.image_inter (injective maps commute with intersection) and Finset.image_nonempty (images preserve non-emptiness). The equivariance of each generator is a 63-case native_decide verification, after which the word-level preservation follows by structural induction with no further computation. Two sorries remain. The bridge theorem connecting dual Langer adjacency to the share-vertex relation is a native_decide that needs tuning for the kernel recursion limit. The non-isomorphism theorem, which uses d₃-subgraph connectivity as a distinguishing invariant transported to all vertices via the line-action, depends on this bridge. These will be closed in a follow-up once the computational proofs are optimized. This PR depends on Archive.LangerGraph. t-combinatorics new-contributor 7203/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthGraph.lean,Archive/ClayworthSurface.lean,Archive/DualLangerGraph.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/LangerGraph.lean,Archive/Meinhold1344.lean,Archive/Meinhold2016.lean,Archive/Meinhold504.lean,Archive/Meinhold576.lean,Archive/MeinholdGraphs.lean,Archive/PrimitiveGraphs.lean,Archive/TriangleGroupSurface.lean,Archive/VoltageGraphs.lean,Archive/ZhouGraph.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 25 3 ['github-actions', 'mathlib-bors'] nobody
7-1603
7 days ago
7-45172
7 days ago
0-21857
6 hours
39698 RaggedR
author:RaggedR
feat(Archive): Meinhold family — five Sabidussi coset graphs of G₂(2) Five coset graphs of the exceptional Chevalley group G₂(2), each arising as Sab(G₂(2), K, D) for intermediate subgroups C₃ ≤ K ≤ G₂(2). The Clayworth graph (4032 vertices, cubic, genus 505) is the base case K = C₃. Meinhold-72 has 72 vertices, is 7-regular with girth 4, via K = PSL(3,2). Meinhold-504 has 504 vertices, is 24-regular with girth 4, via S₄. Meinhold-576 has 576 vertices, is 7-regular with girth 6, via C₇:C₃. Meinhold-1344 has 1344 vertices, is 9-regular with girth 6, via C₃×C₃. Meinhold-2016 has 2016 vertices, is 6-regular with girth 8, via C₆. Each graph has a Sabidussi isomorphism proving arc-transitivity, is connected, and has a shortest cycle witness establishing the girth. ![Meinhold-72](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/meinhold-72.jpeg) The Langer graph (63 vertices, 6-regular) is proved not to be a quotient of Clayworth: the three G₂(2)-invariant 63-block systems have quotient degrees 24, 32, 32, none of which equals 6. The Clayworth graph itself is proved to be a Sabidussi coset graph Sab(G₂(2), C₃, D) with two generators of orders 7 and 6 preserving adjacency, and BFS witness words establishing transitivity. The current approach is admittedly brute-force — the Clayworth graph is defined via a flat adjacency array and the quotient maps are verified by native_decide on concrete vertex data. A more algebraic treatment, deriving the Meinhold graphs directly from the coset lattice of G₂(2) without storing explicit adjacency data, would be cleaner and is planned as a follow-up. These graphs arise from my honours thesis on symmetric graph quotients (arXiv:1306.4798). The Meinhold family is named after Nick Meinhold, co-founder of Imagineering Melbourne. Depends on #39654 (CellularSurface instances, Clayworth graph). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics LLM-generated new-contributor 6884/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthGraph.lean,Archive/ClayworthSurface.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/LangerGraph.lean,Archive/Meinhold1344.lean,Archive/Meinhold2016.lean,Archive/Meinhold504.lean,Archive/Meinhold576.lean,Archive/MeinholdGraphs.lean,Archive/PrimitiveGraphs.lean,Archive/TriangleGroupSurface.lean,Archive/VoltageGraphs.lean,Archive/ZhouGraph.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 24 4 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1602
7 days ago
7-47423
7 days ago
0-33004
9 hours
39695 RaggedR
author:RaggedR
feat(Archive): Zhou-3 arc-transitivity and Lorimer quotient to Zhou-6 The Zhou-3 graph (Foster census F182A, 182 vertices, cubic) has an imprimitive block system of 91 blocks of size 2. This PR proves the block system is invariant under the full PSL(2,13) action via closure induction on the generators, with a pigeonhole argument for the inverse case. The setwise stabilizer of the block containing vertex 0 is D₁₂ (dihedral of order 12), which contains the point stabilizer S₃ at index 2. With the block structure established, Lorimer's quotient theorem (from #39551) is instantiated for the first time on a concrete graph: the quotient of Sab(PSL(2,13), S₃, D) by D₁₂ is isomorphic to Sab(PSL(2,13), D₁₂, D₁₂·D·D₁₂). The two hypotheses — H ≤ K and D ∩ K = ∅ — are verified, the first using the closure block invariance theorem and the second by observing that any element of K maps vertex 0 into {0, 137}, but neither is a neighbor of 0. Arc-transitivity of Zhou-3 is proved via Lorimer's forward theorem: the connection set is a single double coset S₃·a·S₃ where a is an explicit involution (a word of length 9 in the generators) that swaps vertex 0 with its neighbor 3. ![Zhou-3 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou3-F182A.jpg) ![Zhou-6 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou6-91v.jpg) This depends on the Sabidussi/Lorimer chain (#39530, #39548, #39550, #39551) and on #39654 for the Zhou-3 Sabidussi representation and SabidussiWitness infrastructure. t-combinatorics new-contributor LLM-generated 8575/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthSabidussi.lean,Archive/ClayworthSurface.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/VoltageGraphs.lean,Archive/ZhouGraph.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 16 3 ['github-actions', 'mathlib-bors'] nobody
7-1601
7 days ago
7-75662
7 days ago
0-2819
46 minutes
39654 RaggedR
author:RaggedR
feat(Archive): CellularSurface instances (genus 1, 2, 3, 505) This PR provides concrete CellularSurface instances for the four CSS surface codes: Heawood (genus 1), Bolza (genus 2), Klein quartic (genus 3), and Clayworth (genus 505). Each surface embeds a cubic arc-transitive graph arising from a Sabidussi coset construction, and the chain complex d1, d2 satisfies the boundary condition d1 · d2 = 0 that gives the CSS orthogonality. Together with #39653, which proves that k = 2g for any surface tiling, these instances yield formally verified CSS codes with parameters [[21, 2]], [[24, 4]], [[84, 6]], and [[6048, 1010]] respectively. The Heawood and Bolza surfaces are small enough that all axioms are verified by decide. Both include bridge theorems proving the CellularSurface graph matches the corresponding voltage graph on K₂ from VoltageGraphs.lean. The Klein quartic embeds the Klein graph (56 vertices) from the triangle group Δ(2,3,7) acting on PSL(2,7), with a Sabidussi proof. The Clayworth surface is the interesting case: 4032 vertices, 6048 edges, 1008 dodecagonal faces, genus 505. Rather than storing tens of thousands of array entries, the construction works algebraically from the regular representation of G₂(2) on 12096 darts, using a general TriangleGroupSurface module that derives a CellularSurface from any finite quotient of Δ(2,3,r). The key identity is that T = RS implies the far endpoint of each dart has the same vertex as its R-successor, because S preserves vertex cosets. There are five sorrys. Four are dual graph regularity theorems (Heawood 6-regular, Bolza 8-regular, Klein 7-regular, Clayworth 12-regular), all of which should be closable by native_decide. The fifth is the Clayworth Sabidussi isomorphism, where the individual native_decide checks all pass but the kernel struggles to assemble the SabidussiWitness structure for 4032 vertices. These are left for a follow-up. ![Klein graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/klein-F056A.jpg) ![Zhou-3 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou3-F182A.jpg) ![Zhou-6 graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou6-91v.jpg) Depends on #39653 (CellularSurface, k = 2g). Cross-references #39649 (Langer/G₂(2) ecosystem), #39651 (voltage graphs). t-combinatorics new-contributor LLM-generated 2390/0 Archive.lean,Archive/BolzaSurface.lean,Archive/ClayworthSurface.lean,Archive/HeawoodSurface.lean,Archive/KleinSurface.lean,Archive/TriangleGroupSurface.lean,Archive/VoltageGraphs.lean,Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/SabidussiWitness.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 15 9 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1600
7 days ago
7-66796
7 days ago
0-57608
16 hours
39653 RaggedR
author:RaggedR
feat(Combinatorics): cellular surfaces, CSS quantum codes, and k = 2g This formalises CSS quantum error-correcting codes from surface tilings, following Breuckmann & Terhal (arXiv:1506.04029). CellularSurface encodes the combinatorial data of a 2-cell embedding of a graph on a closed surface: vertices, edges with endpoints, and faces whose boundaries are closed directed trails. The boundary operators ∂₁ (vertex-edge incidence) and ∂₂ (edge-face boundary) are matrices over F₂. The theorem `d1_mul_d2_eq_zero` proves ∂₁ ∘ ∂₂ = 0 (the chain complex condition) from the closed walk axiom: each vertex in a face boundary is visited an even number of times, so the sum vanishes in characteristic 2. The theorem `d1_rank_eq` proves rank(∂₁) = V − 1 for connected graphs — the kernel of ∂₁ᵀ is span{1} because elements of the kernel assign equal values to adjacent vertices, and connectivity propagates this to all vertices. The theorem `d2_rank_eq` proves rank(∂₂) = F − 1 for connected dual graphs with the two-sides condition (each edge borders exactly 2 faces). The main result `css_k_eq_2g` gives the number of logical qubits k = 2g. This is pure arithmetic: k = E − rank(∂₁) − rank(∂₂) = E − (V−1) − (F−1) = E − V − F + 2 = 2g by Euler's formula. No `native_decide` — all proofs are structural. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1236/0 Mathlib.lean,Mathlib/Combinatorics/CellularSurface.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 7 7 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1598
7 days ago
7-1600
7 days ago
1-75937
1 day
39651 RaggedR
author:RaggedR
feat(Archive): voltage graphs on K₂, Heawood and Möbius-Kantor graphs This defines `voltageGraphK2`, a cubic covering construction on K₂ with cyclic voltage group `ZMod m`. Vertices are `Fin 2 × ZMod m`, with edges `(0, g) ~ (1, g + vⱼ)` for three voltages. Two instances are provided. The Heawood graph (F014A) is `voltageGraphK2 7 0 4 6`, the Levi graph of the Fano plane PG(2,2): 14 vertices, cubic, girth 6, equal to Sab(G₄₂, C₃) where G₄₂ = Z₇ ⋊ Z₆. The Möbius-Kantor graph (F016A) is `voltageGraphK2 8 0 1 3`, the generalised Petersen graph GP(8,3): 16 vertices, cubic, girth 6, equal to Sab(GL(2,3), C₃). Both quotient to K₂ under the fibre projection `Prod.fst`, recovering the base graph. ![Heawood graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/heawood-F014A.jpg) ![Möbius-Kantor graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/mobius-kantor-F016A.jpg) The voltage graph construction and named graph instances follow Langer, arXiv:1306.4798, and Gross & Tucker, *Topological Graph Theory*. Depends on #39551 (quotient graphs and Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1113/0 Archive.lean,Archive/VoltageGraphs.lean,Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 8 6 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1597
7 days ago
7-1599
7 days ago
1-50237
1 day
39650 RaggedR
author:RaggedR
feat(Archive): dodecahedron, Petersen graph, 3-cube, and antipodal quotients This defines the dodecahedron graph (Fin 20, 3-regular, 30 edges), the Petersen graph (Fin 10, as the antipodal quotient of the dodecahedron), and the 3-cube Q₃ (Fin 8, 3-regular, 12 edges) with its antipodal quotient proved equal to K₄. The Petersen graph is defined as `dodecahedronGraph.quotientGraph dodecAntipodalMap`, using the quotient graph infrastructure from #39551. The antipodal involution on the dodecahedron identifies each vertex with the vertex at distance 5 (diametrically opposite). The 3-cube's antipodal involution (bitwise complement) quotients to K₄ = ⊤. ![Dodecahedron → Petersen quotient](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/dodecahedron-quotient-petersen.jpeg) ![Cube → K₄ quotient](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/cube-quotient-k4.jpeg) The graph definitions and quotient constructions follow Langer, arXiv:1306.4798. Depends on #39551 (quotient graphs and Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1097/0 Archive.lean,Archive/NamedGraphs.lean,Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 8 8 ['RaggedR', 'github-actions', 'mathlib-bors', 'vihdzp'] nobody
7-1596
7 days ago
7-1598
7 days ago
1-81310
1 day
39649 RaggedR
author:RaggedR
feat(Archive): Langer graph, Tutte 12-cage, and structural equality via G₂(2) This adds three constructions from the theory of generalized polygons over finite fields to Archive/, and proves they give the same graph using the Sabidussi representation theorem from #39548 and #39550. The Langer graph (63 vertices, 6-regular) is the collinearity graph of the split Cayley hexagon GH(2,2). It has three independent definitions: algebraically via the Zorn product on Q(6,2) (`langerSimpleGraph`), geometrically as the distance-2 graph of the Tutte 12-cage restricted to points (`tutte12Distance2Graph`), and group-theoretically as the coset graph Sab(G₂(2), H₁₉₂, D) where H₁₉₂ is the point stabiliser of order 192 (`langerCosetGraph`). The main result `langer_iso_tutte12_distance2` proves the algebraic and geometric definitions are isomorphic by composing two Sabidussi isos through a common coset graph. Both graphs are G₂(2)-invariant and arc-transitive, so `sabidussiIso` maps each to Sab(G₂(2), Stab(0), D). Since they have the same 6 neighbors at vertex 0, their connection sets are equal (`dist2_connectionSet_eq`), so both map to the same coset graph. The proof is `langerSabidussiIso.trans dist2SabidussiIso.symm`. ![Langer graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/langer-63v.jpg) ![Tutte 12-cage](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/tutte-12cage.jpg) Also included: the Tutte 12-cage (126 vertices, semisymmetric because GH(2,2) has no polarity over F₂), and self-orthogonality of the Q(6,2) parity-check matrix. Generator data was produced by `compute_g2_generators.py` in the source repo at RaggedR/symmetric-graphs. Depends on #39548 (coset graphs), #39550 (Sabidussi representation), #39551 (quotient graphs). The `sabidussiIso`, `connectionSet`, and `GraphAction` from those PRs are load-bearing in the equivalence proof. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 1576/0 Archive.lean,Archive/LangerGraph.lean,Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 8 8 ['RaggedR', 'github-actions', 'mathlib-bors', 'wwylele'] nobody
7-1595
7 days ago
7-1596
7 days ago
1-57766
1 day
39636 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): ascending Pochhammer is of binomial type This adds two concrete examples to the delta operator framework from #39465, illustrating the change of basis between the two classical families of binomial-type sequences beyond the monomials. The first file proves that the ascending Pochhammer (rising factorial) sequence is of binomial type. The backward difference operator ∇f(x) = f(x) − f(x−1) is defined, shown to be a delta operator, and the ascending Pochhammer sequence is verified as its basic sequence via a telescoping argument. The final theorem `ascPochhammer_isBinomialType` is a one-line application of Rota's classification from #39465, complementing the existing `descPochhammer_isBasicSequence_forwardDiff` for falling factorials and the forward difference. The second file computes the Jabotinsky matrix entries of the geometric delta series y/(1−y), giving the unnormalized Lah numbers C(n−1, k−1) as the change-of-basis coefficients between rising and falling factorials. The proof factors the power (y/(1−y))ᵏ = Xᵏ · (1−X)⁻ᵏ and applies Mathlib's existing `mk_one_pow_eq_mk_choose_add` for the negative binomial series. --- - [ ] depends on: #39465 --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor blocked-by-other-PR LLM-generated 1596/0 Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/AscPochhammer.lean,Mathlib/RingTheory/HopfAlgebra/BinomialType.lean,Mathlib/RingTheory/HopfAlgebra/DeltaOperator.lean,Mathlib/RingTheory/HopfAlgebra/Lah.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean 6 9 ['RaggedR', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'themathqueen'] nobody
7-1593
7 days ago
9-32759
9 days ago
0-211
3 minutes
39551 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): Lorimer's theorem and quotient graphs This completes the algebraic theory of symmetric graphs by proving Lorimer's theorem (both directions) and the Lorimer quotient theorem, building on the Sabidussi representation theorem from #39550. Lorimer's theorem characterizes symmetric (arc-transitive) graphs in terms of coset graphs. The forward direction shows that Sab(G, H, HaH) is arc-transitive whenever a is an involution not in H. The proof establishes local transitivity at the identity coset by exploiting the double coset decomposition of neighbors, then transports it to all vertices by conjugation. The reverse direction shows that every arc-transitive graph's connection set is a single double coset GᵥaGᵥ, where a is the element swapping an arc (v, w). This a satisfies a ∉ Gᵥ and a² ∈ Gᵥ. The quotient theorem shows that the quotient of Sab(G, H, D) by an overgroup K ≥ H (with D ∩ K = ∅) is isomorphic to Sab(G, K, KDK) where KDK is the expanded connection set. The isomorphism is witnessed by Equiv.refl — the quotient graph and the coset graph with expanded connection set are the same graph up to the identity map on G ⧸ K. Together with #39530, #39548, and #39550, this gives a complete formalization of Chapters 1–2 of arXiv:1306.4798. Depends on #39550. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 755/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/QuotientGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean,Mathlib/Combinatorics/SimpleGraph/Symmetric.lean 6 5 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1592
7 days ago
7-1594
7 days ago
4-51374
4 days
39550 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): Sabidussi representation theorem This proves Sabidussi's representation theorem: if a group G acts transitively on the vertices of a graph Γ while preserving adjacency, then Γ is isomorphic to the coset graph `Sab(G, Gᵥ, D)` where `Gᵥ` is the stabilizer of a basepoint and `D = {g ∈ G : Γ.Adj v (g • v)}` is the connection set. For arc-transitive (symmetric) graphs, the connection set D is a single double coset HaH, giving the classical Sabidussi coset graph Sab(G, H, HaH). For merely vertex-transitive graphs, D may be a union of several double cosets. The connection set D is shown to satisfy the IsConnectionSet axioms for the stabilizer subgroup: it is stable under left and right multiplication by stabilizer elements (since the stabilizer fixes v and the action preserves adjacency), closed under inversion (since the graph is undirected), and disjoint from the stabilizer (since the graph has no loops). The orbit-stabilizer equivalence V ≃ G ⧸ Gᵥ is then shown to preserve adjacency in both directions, completing the isomorphism. The definitions and proofs are from my honours thesis (*Symmetric Graphs and their Quotients*, arXiv:1306.4798). Depends on #39548. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 423/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean,Mathlib/Combinatorics/SimpleGraph/Representation.lean 4 5 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1591
7 days ago
7-1593
7 days ago
4-52121
4 days
39548 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): coset graphs (Sabidussi construction) This adds coset graphs (Sabidussi's construction) to Mathlib, building on the graph action infrastructure from #39530. Given a group `G`, a subgroup `H`, and a connection set `D` (a union of `(H,H)`-double cosets, closed under inversion, disjoint from `H`), the coset graph `Sab(G, H, D)` is the simple graph on `G ⧸ H` where `xH` is adjacent to `yH` whenever `x⁻¹y ∈ D`. The well-definedness proof — that adjacency is independent of coset representatives — uses the double coset stability of `D`. This is the core algebraic content of the construction. The file then shows that left multiplication by `G` preserves adjacency (`graphAction` instance) and that coset graphs are vertex-transitive. When `H ≤ K`, the natural projection `G ⧸ H → G ⧸ K` is a graph homomorphism for coset graphs sharing the same connection set `D`. The proof of `proj_adj` is trivial — adjacency is `x⁻¹y ∈ D` in both graphs, independent of the subgroup. This is the Sabidussi analogue of quotient by a block system: the orbits of `K` on `G ⧸ H` form blocks of size `[K : H]`, and the quotient graph is `Sab(G, K, D)`. For example, the Zhou graph (F182A, Sab(PSL(2,13), S₃), 182 vertices, cubic) projects to the Zhou-6 graph (Sab(PSL(2,13), D₁₂), 91 vertices, 6-regular) via S₃ ≤ D₁₂, and the dodecahedron (Sab(A₅, C₃)) projects to the Petersen graph (Sab(A₅, D₆)) via C₃ ≤ D₆. Sabidussi's construction generalizes Cayley graphs (which are the special case `H = ⊥`). Together with the representation theorem (a future PR), it gives a complete classification: every vertex-transitive graph is isomorphic to a coset graph. The definitions and proofs are from my honours thesis (*Symmetric Graphs and their Quotients*, arXiv:1306.4798). Depends on #39530. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 304/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean,Mathlib/Combinatorics/SimpleGraph/CosetGraph.lean 3 5 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1590
7 days ago
7-1591
7 days ago
4-52985
4 days
39498 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): umbral operators via generating functions ## Umbral operators via generating functions This PR completes the formalization of the finite operator calculus on `R[X]` over a ℚ-algebra. The entire umbral calculus — every theorem, every lemma, zero sorry's — is now machine-checked, from the coalgebra axioms (PR #39410) through Rota's classification (PR #39465) to the umbral operator and its duality theory. Given a delta operator `Q` on `R[X]`, the **delta series** `f(y) = Σ (Q(X^k)).eval 0 / k! · y^k` is a formal power series with zero constant term and unit linear coefficient. Its compositional inverse `g` (obtained via Mathlib's `substInvOfIsUnit`) encodes the **basic sequence**: the polynomial `p_n` has coefficients `(p_n).coeff k = descFact(n, n-k) · [y^n](g^k)`. The **umbral operator** `U_Q` is the linear extension of `X^n ↦ p_n`. The key result is the **lowering property** `Q(p_{n+1}) = (n+1) • p_n`. The proof uses the natural duality of the finite operator calculus — the derivative pairing `⟨h, p⟩ = Σ_k coeff_k(h) · k! · p.coeff k` between `R⟦X⟧` and `R[X]`. Under this pairing, Q's adjoint is multiplication by f (proved via the convolution formula for power series coefficients), orthogonality gives `⟨f^k, p_n⟩ = n! · δ_{kn}` (from the Jabotinsky matrix identity), and non-degeneracy closes it (upper-triangular with unit diagonal, by descending induction). Three lines of mathematics, backed by a clean chain of lemmas. Once lowering is established, `umbralPoly_isBasicSequence` follows immediately, and `IsBasicSequence.isBinomialType` (from #39465) gives the coalgebra endomorphism property — completing the circle back to the Hopf algebra structure. References: Langer, *Macdonald Polynomials and Symmetric Functions* (arXiv:0907.3950), §1.2.2; Roman, *The Umbral Calculus*, Academic Press 1984, Ch. 2. Depends on #39410, #39465. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor LLM-generated 2141/0 Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/BinomialType.lean,Mathlib/RingTheory/HopfAlgebra/DeltaOperator.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean,Mathlib/RingTheory/HopfAlgebra/UmbralOperator.lean 5 6 ['RaggedR', 'github-actions', 'mathlib-bors'] nobody
7-1587
7 days ago
7-1589
7 days ago
1-5628
1 day
39465 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): delta operators and Rota's classification This formalizes the fundamental theorem of the umbral calculus: that the basic sequence of any delta operator is a sequence of binomial type. A delta operator on R[X] is a shift-equivariant linear operator which is essentially a formal power series in the variable d/dx. Rota's classification theorem states that the images of monomials x^n under delta operators are sequences of binomial type. This PR defines `IsBinomialType`, `IsShiftEquivariant`, `IsDeltaOperator`, `forwardDiff`, and `IsBasicSequence`. It proves that monomials and falling factorials are of binomial type, that the derivative and forward difference are delta operators, and that basic sequences are of binomial type (Rota's classification). The mathematical content is from the first half of my masters thesis (arXiv:0907.3950). See also Rota, Kahaner, and Odlyzko, *Finite Operator Calculus* (JMAA 42, 1973) and Roman, *The Umbral Calculus* (Academic Press, 1984). Depends on #39410. --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor LLM-generated 1386/0 Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/BinomialType.lean,Mathlib/RingTheory/HopfAlgebra/DeltaOperator.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean 4 8 ['RaggedR', 'github-actions', 'mathlib-bors', 'wwylele'] nobody
7-1586
7 days ago
7-1588
7 days ago
0-78931
21 hours
39530 RaggedR
author:RaggedR
feat(Combinatorics/SimpleGraph): group actions on simple graphs This adds the first connection between Mathlib's MulAction and SimpleGraph libraries. The GraphAction class asserts that a group action on the vertex type preserves the adjacency relation, and builds on it to define vertex-transitivity and arc-transitivity for graphs. The GraphAction typeclass gives adj_smul_iff (the biconditional for group actions) and toIso (each group element induces a graph automorphism). The IsVertexTransitive class combines GraphAction with IsPretransitive, and IsArcTransitive requires transitivity on ordered adjacent pairs (arcs). The main theorem is the standard characterization: a graph is arc-transitive if and only if it is vertex-transitive and locally transitive (the stabilizer of each vertex acts transitively on its neighbors). The forward direction is proved directly by composing a vertex-transporting element with a neighbor-transporting stabilizer element. The reverse direction shows that an arc-transitive graph with no isolated vertices is vertex-transitive. These definitions are the algebraic graph theory prerequisites for formalizing coset graphs (Sabidussi's construction) and the characterization of symmetric graphs via double cosets and involutions (Lorimer's theorem). --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-combinatorics new-contributor LLM-generated 130/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Action.lean 2 7 ['RaggedR', 'b-mehta', 'github-actions', 'mathlib-bors'] nobody
7-1574
7 days ago
7-1574
7 days ago
11-56386
11 days
29855 eric-wieser
author:eric-wieser
chore(Data/Finset/Sort): lemmas about `0 : Fin _` and `Fin.last _` We already had these for `⟨0, ⋯⟩` and `⟨k - 1, ⋯⟩`. Moves: - `Finset.orderEmbOfFin_zero` -> `Finset.orderEmbOfFin_mk_zero` - `Finset.orderEmbOfFin_last` -> `Finset.orderEmbOfFin_mk_last` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-order delegated easy merge-conflict 17/7 Mathlib/Combinatorics/Enumerative/Composition.lean,Mathlib/Data/Finset/Sort.lean 2 5 ['eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] nobody
6-85707
6 days ago
247-3033
247 days ago
3-79002
3 days
31796 dobronx1325
author:dobronx1325
feat(Data/Real/EReal): add mul_lt_mul_of_pos_left theorem This PR adds the theorem `EReal.mul_lt_mul_of_pos_left`, which states that for a positive real number `a` and extended reals `b < c`, left multiplication by `a` preserves the strict order: `(a : EReal) * b < (a : EReal) * c`. The theorem complements existing order-preserving properties for addition in `EReal` and extends the algebraic structure for multiplication. The proof uses basic properties of extended reals and order relations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor merge-conflict 23/0 Mathlib/Data/EReal/Operations.lean 1 5 ['JovanGerb', 'LLaurance', 'dobronx1325', 'github-actions', 'mathlib-merge-conflicts'] nobody
6-85583
6 days ago
185-82811
185 days ago
6-25774
6 days
31949 ADedecker
author:ADedecker
chore: prefer `Pi.single i 1 j` over `fun j => if i = j then 1 else 0` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
23/21 Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/LinearAlgebra/Matrix/Adjugate.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/Topology/Algebra/Module/Basic.lean 5 6 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody
6-85582
6 days ago
188-46106
188 days ago
0-21800
6 hours
38194 ryanncode
author:ryanncode
feat(LinearAlgebra/BilinearForm): add indefinite metrics Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form. Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass. Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
47/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean 2 5 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'ryanncode'] nobody
6-80174
6 days ago
6-81919
6 days ago
22-51650
22 days
39412 mbkybky
author:mbkybky
feat(RingTheory/Flat): a finite flat `R`-module `M` is locally free if `rankAtStalk M` is constant Let `M` be a finite flat `R`-module, `p` be a prime ideal of `R`. We show that if `rankAtStalk M` is constant, then there exists `a ∉ p` such that the `M` is free after localization away from `a`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 136/2 Mathlib.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/RingTheory/Flat/LocallyFree.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/Support.lean 8 4 ['github-actions', 'robin-carlier'] nobody
6-77947
6 days ago
11-68339
11 days ago
14-73285
14 days
39420 mbkybky
author:mbkybky
feat(RingTheory/LocalProperties): `Module.Invertible` is a local property Let `M` be a finite `R`-module. We show that `M` is invertible if `Mₘ` is invertible for any maximal ideal `m` of `R`. - [x] depends on: #39109 - [ ] depends on: #39412 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 238/2 Mathlib.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/RingTheory/Flat/LocallyFree.lean,Mathlib/RingTheory/LocalProperties/Invertible.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/Support.lean 9 2 ['github-actions', 'mathlib-dependent-issues'] nobody
6-76837
6 days ago
14-66694
14 days ago
0-773
12 minutes
38698 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory/Regular): freeness of `QuotSMulTop` For finitely generated module `M` over Noetherian local ring `(R, m)`, if `x ∈ m` is `M`-regular, `M/xM` is free over `R/(x)` iff `M` is free over `R`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 95/0 Mathlib.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean 3 12 ['Thmoas-Guan', 'chrisflav', 'github-actions'] chrisflav
assignee:chrisflav
6-72851
6 days ago
9-16907
9 days ago
30-79384
30 days
35043 winstonyin
author:winstonyin
refactor(Analysis/ODE): restate existence and uniqueness using integral curve API * Create `Mathlib/Analysis/ODE/ExistUnique.lean` to collect existence and uniqueness results for ODEs stated in terms of the integral curve API (`IsIntegralCurve`, `IsIntegralCurveOn`, `IsIntegralCurveAt`). * Move and restate the Picard-Lindelöf existence theorems from `PicardLindelof.lean` and the $C^1$ vector field results using `IsIntegralCurveOn`/`IsIntegralCurveAt` instead of raw `HasDerivWithinAt`/`HasDerivAt`. * Move and restate the Grönwall-based uniqueness theorems from `Gronwall.lean` using `IsIntegralCurveOn` with half-open intervals (`Ico`/`Ioc`) instead of `HasDerivWithinAt … (Ici t)`/`HasDerivWithinAt … (Iic t)`. * Rename uniqueness theorems to use dot notation on the integral curve types (e.g. `ODE_solution_unique_of_mem_Icc_right` becomes `IsIntegralCurveOn.eqOn_Icc_right`). * Add `IsIntegralCurveOn.eqOn_inter`: if two integral curves on preconnected sets `I` and `J` agree at a point in both sets, they agree on `I ∩ J`. * Add deprecation aliases for all renamed lemmas. - [ ] depends on: #29186 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 421/308 Mathlib.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/Analysis/ODE/Gronwall.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,docs/1000.yaml,docs/undergrad.yaml 7 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll', 'winstonyin'] sgouezel
assignee:sgouezel
6-65792
6 days ago
6-65792
6 days ago
43-39495
43 days
35291 mcdoll
author:mcdoll
feat(Fourier): improved version of Riemann-Lebesgue --- The Riemann-Lebesgue lemma is merely a side note of the fact that we need to relate the extension of the Schwartz Fourier transform to L1 to the original one. RL on Schwartz is trivial by embedding into the correct space. - [ ] depends on: #35953 - [ ] depends on: #35954 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import merge-conflict 96/29 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Fourier/L1Space.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-65790
6 days ago
105-3553
105 days ago
0-1
1 second
35834 homeowmorphism
author:homeowmorphism
feat(Mathlib/GroupTheory/PresentedGroup): every group has a presentation We show that every group has a presentation defined by taking the free group with all of the group elements as the generators, and defining the relations as the kernel of the induced subjective homomorphism from that free group to the group itself. Use of AI: This has been vibe-coded with GPT-Codex-5.3, was updated through review, and was double-checked by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-group-theory large-import awaiting-author LLM-generated merge-conflict 29/1 Mathlib/GroupTheory/PresentedGroup.lean 1 16 ['copilot-pull-request-reviewer', 'euprunin', 'github-actions', 'homeowmorphism', 'mathlib-bors', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] tb65536
assignee:tb65536
6-65666
6 days ago
85-50199
85 days ago
4-30999
4 days
36428 linesthatinterlace
author:linesthatinterlace
feat(Logic/Equiv/Fin): Streamline equiv definitions using mkDivMod This PR uses Fin.mkDivMod to streamline the related equivalence and introduces Nat.mkDivMod to a similar end. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic WIP merge-conflict 56/61 Mathlib/Analysis/SpecialFunctions/Complex/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Series.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Logic/Equiv/Fin/Basic.lean,Mathlib/Order/Partition/Equipartition.lean 5 5 ['JovanGerb', 'github-actions', 'linesthatinterlace', 'mathlib-merge-conflicts'] nobody
6-65662
6 days ago
71-71885
71 days ago
0-11097
3 hours
36774 euprunin
author:euprunin
chore: replace long terminal `rw […]`:s (≥4 lemmas) with bare `simp`:s 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): * `Finset.lcm_union`: unchanged 🎉 * `Finset.gcd_union`: unchanged 🎉 * `Polynomial.derivative_eval₂_C`: unchanged 🎉 * `Polynomial.expand_pow`: unchanged 🎉 * `Cardinal.mk_real`: unchanged 🎉 * `Real.log_zpow`: unchanged 🎉 * `Matroid.eRank_le_encard_add_eRk_compl`: unchanged 🎉 * `DFinsupp.single_tsub`: unchanged 🎉 * `EReal.inv_neg`: unchanged 🎉 * `Finsupp.toMultiset_map`: unchanged 🎉 * `Finsupp.single_tsub`: unchanged 🎉 * `Multiset.countP_map`: unchanged 🎉 * `Nat.ascFactorial_eq_factorial_mul_choose'`: unchanged 🎉 * `Real.sign_intCast`: unchanged 🎉 * `Real.volume_eball`: unchanged 🎉 * `Real.volume_closedEBall`: unchanged 🎉 * `LFunction_ne_zero_of_not_quadratic_or_ne_one`: 295 ms before, 152 ms after 🎉 * `hasSum_one_div_nat_pow_mul_cos`: unchanged 🎉 * `inv_eq_of_aeval_divX_ne_zero`: unchanged 🎉 * `AlgebraicIndependent.aeval_comp_mvPolynomialOptionEquivPolynomialAdjoin`: unchanged 🎉 * `Ordinal.deriv_mul_eq_opow_omega0_mul`: 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/) merge-conflict 22/24 Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Combinatorics/Matroid/Rank/ENat.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Real/Sign.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean,Mathlib/NumberTheory/ZetaValues.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean 19 3 ['artie2000', 'euprunin', 'github-actions', 'mathlib-merge-conflicts'] nobody
6-65538
6 days ago
6-65539
6 days ago
67-395
67 days
39212 emlis42
author:emlis42
feat(Algebra/ContinuedFractions): add `partNums!` and `partDens!` This PR adds `partNums!` and `partDens!`, which provide infinite stream representations for the sequences of partial numerators and denominators of a generalized continued fraction. t-algebra new-contributor
label:t-algebra$
8/0 Mathlib/Algebra/ContinuedFractions/Basic.lean 1 4 ['emlis42', 'github-actions', 'grunweg'] nobody
6-64714
6 days ago
18-66474
18 days ago
18-66436
18 days
37817 artie2000
author:artie2000
refactor(RingTheory/Ideal): standardise `RingHom` and `AlgHom` lifting API * Change `AlgHom.liftOfSurjective` to use the same set-up as `RingHom.liftOfSurjective` * Add lemmas until both operations have the same API * Make `RingHom.liftOfRightInverse_comp_apply` a `simp` lemma * Rename `AlgHom.liftOfSurjective_apply` to match `RingHom.liftOfSurjective_apply_comp` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 125/32 Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/LocalRing/ResidueField/Polynomial.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-64215
6 days ago
47-49148
47 days ago
0-1401
23 minutes
37964 mortarsanjaya
author:mortarsanjaya
feat(Algebra/Order/Floor): weaken assumptions on theorems about `FloorRing` This PR weakens as much assumptions as possible on theorems about `FloorSemiring` and `FloorRing`. Mainly, `IsOrderedRing` and `IsStrictOrderedRing` are weakened to just `IsOrderedAddMonoid` or removed completely from the assumptions on the theorems. Most theorems can be generalized as is or only requires a minor modification of replacing lemmas about casting naturals/integers preserving order (the likes of `Nat.cast_le`, `Int.cast_lt`, etc.) with the corresponding version for `FloorRing`. Some other lemmas require modification in the proofs, but these changes shorten the proofs. The new proof of the theorem `Int.mul_cast_floor_div_cancel_of_pos` requires an extra import. The assumption `IsOrderedAddMonoid` is required on lemmas that involve comparison + addition, and `IsOrderedRing` is required only on lemmas that involve comparison + multiplication of two non-integer elements. --- - [ ] depends on: #37714 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor blocked-by-other-PR merge-conflict
label:t-algebra$
349/266 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/Data/Int/Log.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean 9 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-64214
6 days ago
47-41381
47 days ago
0-3854
1 hour
38018 matthewjasper
author:matthewjasper
feat(Algebra): expand Subalgebra.restrictScalars API Add an instance for the original algebra structure, the implied scalar tower instances, and the algebra equivalence with the original subalgebra. Use this to remove some `set_option backward.isDefEq.respectTransparency`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 53/14 Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean 4 6 ['eric-wieser', 'github-actions', 'leanprover-radar', 'mariainesdff', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
6-64212
6 days ago
6-64212
6 days ago
39-73389
39 days
38205 jcommelin
author:jcommelin
chore: reduce technical debt in FreimanHom This PR reduces technical debt related to the `CommRing` instance on `Fin (n + 1)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import awaiting-author merge-conflict 65/27 Mathlib/Combinatorics/Additive/FreimanHom.lean 1 11 ['Vierkantor', 'YaelDillies', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] nobody
6-64080
6 days ago
14-85451
14 days ago
22-7183
22 days
38390 mortarsanjaya
author:mortarsanjaya
feat(Data/Nat/Cast/Order/Basic): introduce new class `IsMonotoneNatCast` The class says that `Nat.cast` is monotone in an `AddMonoidWithOne`. Basically, we use this class when we only care about comparing the elements of a monoid that comes from the `Nat`s (so we do not have to care about the compatibility between the additive structure of the monoid and its order structure). --- Other than that, I'm also reorganizing some section naming, and I change the proof of the `Nontrivial` instance at the bottom to using `NeZero.nontrivial`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor merge-conflict 28/18 Mathlib/Data/Nat/Cast/Order/Basic.lean 1 8 ['github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'mortarsanjaya', 'vihdzp'] nobody
6-64076
6 days ago
29-46752
29 days ago
7-85443
7 days
38397 staroperator
author:staroperator
feat(ModelTheory): add `DefinablePred` for `fun_prop` automation This PR adds `DefinablePred`. It is the same as `Definable`, except the latter applies on `Set (α → M)` and the former applies on `(α → M) → Prop`. There main reason to add this is that I want to automate the definability proof of predicates, and that `fun_prop` works on functions (that include predicates) but not on sets. For example, with appropriate `fun_prop` lemmas added, one can automate definability result like this: ```lean4 theorem IsLinearSet.definable [Finite α] (hs : IsLinearSet s) : A.Definable presburger s := by ... -- ⊢ A.DefinablePred presburger fun x ↦ -- ∃ y, (∃ a, ∀ (x : α), y x = ∑ x_1, a x_1 * ↑x_1 x) ∧ ∀ (x_1 : α), v x_1 + y x_1 = x x_1 fun_prop ``` This PR also removes certain `fun_prop` tags that would or should not be used in automation. --- Note: one may argue that we don't need a new definition if we use `aesop` instead of `fun_prop`. However, in that case, we still need to write lemmas for `{x | p x}` targets (e.g. for `{x | p x ∧ q x}`), which have almost no difference with lemmas on `p` or `fun x => p x ∧ q x` directly. - [ ] depends on: #38393 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic blocked-by-other-PR merge-conflict 500/261 Mathlib/ModelTheory/Algebra/Classes.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Algebra/Ring/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Definability.lean,Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/Order.lean 7 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-64075
6 days ago
37-31674
37 days ago
0-403
6 minutes
38702 jcommelin
author:jcommelin
chore(Data/Real): encapsulate real numbers This PR: * hides the definition of the real numbers * preserves defeqs when casting `Nat`, `Int`, `Rat`, into the reals * preserves the defeq `x - y = x + (-y)` for `x y : Real` * removes a bunch of technical debt * adjusts imports in the library, where files relied on getting access to Cauchy sequences transitively via importing the reals. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated merge-conflict 235/256 Archive/Imo/Imo2013Q5.lean,Counterexamples/SeminormLatticeNotDistrib.lean,Mathlib.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Real/Cauchy.lean,Mathlib/Data/Real/Sign.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/Topology/Algebra/Ring/Real.lean,Mathlib/Topology/Instances/Real/Lemmas.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/UniformSpace/CompareReals.lean,Mathlib/Topology/UniformSpace/Real.lean,MathlibTest/Complex.lean,MathlibTest/Quaternion.lean,MathlibTest/Real.lean,MathlibTest/peel.lean 26 32 ['JovanGerb', 'Kha', 'YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'riccardobrasca', 'sgouezel', 'wkrozowski'] nobody
6-63950
6 days ago
30-83926
30 days ago
0-2637
43 minutes
38882 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/AEMeasurableOrder` - replaces the manual `μ t = 0` to `ae` conversion with `measure_eq_zero_iff_ae_notMem` - rewrites the two density arguments in `aemeasurable_of_exist_almost_disjoint_supersets` using `s_dense.exists_between` and `mem_iUnion₂` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability merge-conflict 7/18 Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean 1 3 ['github-actions', 'mathlib-merge-conflicts', 'yuanyi-350'] kex-y
assignee:kex-y
6-63820
6 days ago
6-63821
6 days ago
20-13865
20 days
38977 eric-wieser
author:eric-wieser
feat: DFinsupp.mapDomain The API for `DFinsupp.mapDomain` is copied from `Finsupp.mapDomain`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 271/0 Mathlib.lean,Mathlib/Data/DFinsupp/Basic.lean,Mathlib/Data/DFinsupp/BigOperators.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-63812
6 days ago
unknown
0-0
0 seconds
38990 Vierkantor
author:Vierkantor
chore(Algebra/DirectSum): workaround for `backward.inferInstanceAs` This PR works around a `backward.inferInstanceAs` compatibility flag introduced by identifying `DirectSum` with `DFinsupp` in our definitions. We introduce a new dsimp lemma `funLike_eq` that transfers the `FunLike` instances, and now we can use `DirectSum`'s `FunLike` instance, instead of the custom `CoeFun` instance. I unsqueezed a few `simp`s, which all ran pretty much instant on my machine so it shouldn't cause much slowdown. Also we fix two porting notes. 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 `DirectSum` and `DFinsupp`, which would mean a substantial rewrite of this corner of Mathlib. We can't make `DirectSum` an `@[implicit_reducible]`, because we need different multiplication on it than `DFinsupp` has. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra tech debt t-ring-theory awaiting-author merge-conflict
label:t-algebra$
36/38 Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean 9 4 ['JovanGerb', 'Vierkantor', 'github-actions', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
6-63810
6 days ago
15-75050
15 days ago
8-19465
8 days
39041 themathqueen
author:themathqueen
refactor(Analysis/InnerProductSpace/Projection): redefine `orthogonalProjectionOnto` via `projectionOntoL` Now that we have `IsTopCompl` and `projectionOntoL`, we can define `orthogonalProjectionOnto` directly this way instead of needing an implementation definition. --- - [ ] depends on: #38970 Zulip thread: [#mathlib4 > refactoring `Submodule.orthogonalProjection`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/refactoring.20.60Submodule.2EorthogonalProjection.60/with/593516136) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-analysis merge-conflict 339/288 Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/MeanErgodic.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/ProdL2.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Projection/Reflection.lean,Mathlib/Analysis/InnerProductSpace/Projection/Submodule.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL2.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/Topology/MetricSpace/HausdorffDimension.lean,docs/overview.yaml,docs/undergrad.yaml 22 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-63806
6 days ago
22-66936
22 days ago
0-1
1 second
38970 themathqueen
author:themathqueen
chore(Analysis/InnerProductSpace/Projection): rename `orthogonalProjection` to `orthogonalProjectionOnto` To match the current (continuous) linear projection to a submodule along its complement `Submodule.projection(Onto)(L)`, we change `Submodule.orthogonalProjection` to `Submodule.orthogonalProjectionOnto` (and later will change `Submodule.starProjection` to `Submodule.orthogonalProjection`). --- Zulip thread: [#**mathlib4>Two variants of linear projections**](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Two.20variants.20of.20linear.20projections/with/591234152) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 267/183 Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/MeanErgodic.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/ProdL2.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Projection/Reflection.lean,Mathlib/Analysis/InnerProductSpace/Projection/Submodule.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL2.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/Topology/MetricSpace/HausdorffDimension.lean,docs/overview.yaml,docs/undergrad.yaml 20 17 ['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] mcdoll
assignee:mcdoll
6-63438
6 days ago
6-63474
6 days ago
24-24595
24 days
39297 mcdoll
author:mcdoll
stuff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 45/46 Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/MeasureTheory/Function/L1Space/AEEqFun.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/Topology/Constructions/SumProd.lean 7 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-62438
6 days ago
unknown
0-0
0 seconds
39311 felixpernegger
author:felixpernegger
refactor: redefine `eLpNorm` at `p = 0` For Zulip discussion see https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/eLpNorm.20junk.20value/with/576356442. In partuclar this change is suggestion 2 in [#mathlib4 > eLpNorm junk value @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/eLpNorm.20junk.20value/near/576340531) This redefined [MeasureTheory.eLpNorm](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Function/LpSeminorm/Defs.html#MeasureTheory.eLpNorm) at `p = 0`. Previously it was always `0` but now it is the measure of the support of the function (technical detail: In order to avoid having to add additional arguments to `eLpNorm`, we define it as the measure of the support of the norm of the function, but this is almost always the same) The motivation for this comes from the counting measure, in particular this then unifies with https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Lp/lpSpace.html#Mem%E2%84%93p. In any case, it is "closer" to the actual mathematical definition Unfortunately, since `eLpNorm` is widely used, the diff is very large and a lot of theorems break (i.e. now require `p != 0`). Oftentimes `p != 0` is still not required (sometimes with nontrivial arguments), I tried to avoid adding extra hypothesis whenever I could but I almost certainly missed some. There now may also be places where we dont need `p != 0` as a hypothesis anymore (i.e. for `[Memℓp](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Lp/lpSpace.html#Mem%E2%84%93p)`), but this is not included in this PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 915/576 Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Fourier/LpSpace.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Lp/SmoothApprox.lean,Mathlib/Data/ENNReal/Holder.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Holder.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Indicator.lean,Mathlib/MeasureTheory/Function/LpSeminorm/LpNorm.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Monotonicity.lean,Mathlib/MeasureTheory/Function/LpSeminorm/SMul.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Trim.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/Distributions/Gaussian/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Fernique.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/IdentDistrib.lean,Mathlib/Probability/Kernel/Disintegration/CDFToKernel.lean,Mathlib/Probability/Kernel/Disintegration/Density.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/Probability/Moments/IntegrableExpMul.lean,Mathlib/Probability/Moments/SubGaussian.lean,Mathlib/Probability/Process/Filtration.lean,MathlibTest/congr.lean 45 27 ['felixpernegger', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] nobody
6-62436
6 days ago
6-62437
6 days ago
1-52732
1 day
39645 RemyDegenne
author:RemyDegenne
chore: generalize upcrossing lemmas TODO: move the new instance to a better place --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-measure-probability merge-conflict 276/236 Mathlib/Probability/Martingale/Upcrossing.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-62427
6 days ago
9-12245
9 days ago
0-1
1 second
39696 jsm28
author:jsm28
refactor(LinearAlgebra/Orientation,LinearAlgebra/AffineSpace/FiniteDimensional): instances for arbitrary orientations Based on suggestions by @kim-em on Zulip https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/PRs.20towards.20IMO.20geometry.202024.20P4/near/596946072 add convenience scoped instances for choosing an arbitrary orientation of a module, and for the `finrank` of the span of the vertices of a simplex. Note: I don't understand why the latter scoped instance is only found automatically in one of the two places using it; in `Sphere/Power.lean` it's necessary to use `Affine.Simplex.fact_finrank_direction_affineSpan_eq` rather than relying on typeclass inference, but in `Angle/Sphere.lean` typeclass inference suffices. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-euclidean-geometry
label:t-algebra$
26/23 Archive/Imo/Imo2019Q2.lean,Mathlib/Geometry/Euclidean/Angle/Sphere.lean,Mathlib/Geometry/Euclidean/Sphere/Power.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/Orientation.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-58366
6 days ago
6-58399
6 days ago
7-77718
7 days
37766 chrisflav
author:chrisflav
feat(AlgebraicGeometry): restriction of quasi-coherent sheaf is quasi-coherent --- - [ ] depends on: #37773 - [ ] depends on: #37775 - [ ] depends on: #38181 - [ ] depends on: #39592 - [ ] depends on: #39594 - [ ] depends on: #39595 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebraic-geometry large-import merge-conflict 568/1 Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/CategoryTheory/Discrete/Basic.lean,Mathlib/CategoryTheory/Limits/Preorder.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Basic.lean,Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Hypercover/One.lean 11 7 ['Brian-Nugent', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-55931
6 days ago
52-63763
52 days ago
0-2
2 seconds
39576 plp127
author:plp127
chore(Topology): generalize `Topology.IsEmbedding.perfectlyNormalSpace` Generalize theorem `Topology.IsEmbedding.perfectlyNormalSpace` to inducing maps. Generalize some other theorem along the way. Rename `isGδ_induced` to `IsGδ.preimage`, to match `IsOpen.preimage` and `IsClosed.preimage`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 29/27 Mathlib/Topology/Baire/LocallyCompactRegular.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/Separation/GDelta.lean,Mathlib/Topology/Separation/PerfectlyNormal.lean,Mathlib/Topology/Separation/Regular.lean 5 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-55641
6 days ago
6-55676
6 days ago
10-74009
10 days
37716 slavanaprienko
author:slavanaprienko
feat(LinearAlgebra/Matrix/Determinant): Desnanot-Jacobi identity This PR adds the Desnanot-Jacobi identity (also known as the Lewis Carroll identity or Dodgson condensation): for any (n+2)×(n+2) matrix M over a commutative ring, $$\det(M) \cdot \det(M_{1,n}^{1,n}) = \det(M_1^1) \cdot \det(M_n^n) - \det(M_1^n) \cdot \det(M_n^1)$$ The proof follows Bressoud's *Proofs and Confirmations* (Cambridge University Press, 1999): multiply M by an auxiliary matrix built from columns of the adjugate, then compare determinants. This yields the identity premultiplied by det(M). To cancel, we pass to a universal polynomial ring (an integral domain with nonzero determinant), then specialize back to arbitrary commutative rings. It seems there's some interest in adding this: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Determinantal.20identity.20and.20the.20Cauchy.20matrix.20determinant/with/582946873 --- t-algebra new-contributor
label:t-algebra$
217/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Determinant/DesnanotJacobi.lean 2 13 ['SnirBroshi', 'github-actions', 'grunweg', 'kim-em', 'slavanaprienko'] nobody
6-45223
6 days ago
18-55180
18 days ago
20-6972
20 days
36299 grunweg
author:grunweg
feat: metric connections This file defines what it means for a connection on a Riemannian vector bundle `(V, g)` to be *compatible* with the metric `g`. Namely, the differentiated metric tensor `∇ g` (defined by `(X, σ, τ) ↦ X g(σ, τ) - g(∇_X σ, τ) - g(σ, ∇_X τ)`) should vanish on all differentiable vector fields `X` and differentiable sections `σ`, `τ`. From the path towards the Levi-Civita connection and Riemannian geometry. Co-authored-by: Heather Macbeth [25316162+hrmacbeth@users.noreply.github.com](mailto:25316162+hrmacbeth@users.noreply.github.com) Co-authored-by: Patrick Massot [patrickmassot@free.fr](mailto:patrickmassot@free.fr) --- - [x] depends on: #36279 - [x] depends on: #34263 - [x] depends on: #39485 - [x] depends on: #39554 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry awaiting-author 210/3 Mathlib.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Metric.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean 3 24 ['github-actions', 'grunweg', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'or4nge19', 'sgouezel'] nobody
6-43323
6 days ago
84-47249
84 days ago
0-10
10 seconds
39372 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ModularForms/EisensteinSeries/MDifferentiable` - rewrites `eisensteinSeriesSIF_mdifferentiable` to use `UpperHalfPlane.mdifferentiable_iff` directly and conclude from local uniform convergence of the Eisenstein series Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated 1/6 Mathlib/NumberTheory/ModularForms/EisensteinSeries/MDifferentiable.lean 1 4 ['github-actions', 'mathlib-merge-conflicts', 'yuanyi-350'] nobody
6-39047
6 days ago
6-39085
6 days ago
15-47252
15 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
6-36184
6 days ago
28-48411
28 days ago
61-11053
61 days
39763 NoahW314
author:NoahW314
feat(Algebra/GroupWithZero/Divisibility): add `mul_dvd_left_iff_isUnit` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
9/0 Mathlib/Algebra/GroupWithZero/Divisibility.lean 1 1 ['github-actions'] nobody
6-27390
6 days ago
6-27470
6 days ago
6-27432
6 days
38331 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory/AdicCompletion): AdicCompletion of Noetherian ring is Noetherian For `I` an ideal of `R`, if `R/I` is Noetherian and `I` is finitely generated, the the completion of `R` wrt `I` is Noetherian. --- - [ ] depends on: #37975 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import blocked-by-other-PR 449/7 Mathlib/RingTheory/AdicCompletion/LocalRing.lean,Mathlib/RingTheory/AdicCompletion/Noetherian.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
6-18128
6 days ago
39-1014
39 days ago
0-496
8 minutes
39075 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/CommRingCat): colimit of local ring via local hom In this PR, we deal with filtered colimit of local ring via local homomorphisms, proving it is again local, with maximal ideal equal to the union of images of maximal ideals. Co-authored-by: Wang Jingting --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
209/0 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean 2 1 ['github-actions'] nobody
6-13329
6 days ago
6-13396
6 days ago
21-82658
21 days
39077 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): flat extension of local ring This PR mainly formalize the theorem [[Stacks 03C3](https://stacks.math.columbia.edu/tag/03C3)] for flat extension of local ring. --- - [ ] depends on: #39075 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR WIP 846/0 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean,Mathlib/RingTheory/Flat/Extension.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
6-10973
6 days ago
21-82057
21 days ago
0-685
11 minutes
39289 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Cohen structure theorem In this PR, we prove the existence of coefficient ring by the following two cases: 1: for residue field with char zero, there is a section of the residue field 2: for positive char, there exists a Cohen ring Both can be applied to the last statement to obtain Cohen structure theorem. (In the version of [Stacks 0323](https://stacks.math.columbia.edu/tag/0323)) Co-authored-by: @BryceT233 --- - [ ] depends on: #28683 - [ ] depends on: #38331 - [ ] depends on: #39077 - [ ] depends on: #37838 - [ ] depends on: #37953 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import blocked-by-other-PR 2519/22 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean,Mathlib/RingTheory/AdicCompletion/LocalRing.lean,Mathlib/RingTheory/AdicCompletion/Noetherian.lean,Mathlib/RingTheory/CohenStructureTheorem.lean,Mathlib/RingTheory/Flat/Extension.lean,Mathlib/RingTheory/Smooth/Field.lean 10 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-10965
6 days ago
17-8016
17 days ago
0-417
6 minutes
35561 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): power series over regular local ring In this PR, we proved that power series over regular local ring is again regular local ring. Same for finite multivariable power series. --- - [ ] depends on: #28682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory 63/0 Mathlib.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean 2 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-10948
6 days ago
99-15444
99 days ago
0-5
5 seconds
35560 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Corollaries of Cohen Structure Theorem Corollaries of Cohen structure theorem, saying that complete local ring can be represented as quotient of regular local ring. --- - [ ] depends on: #28683 - [ ] depends on: #35561 - [ ] depends on: #39289 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import 3018/22 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean,Mathlib/RingTheory/AdicCompletion/LocalRing.lean,Mathlib/RingTheory/AdicCompletion/Noetherian.lean,Mathlib/RingTheory/CohenStructureTheorem.lean,Mathlib/RingTheory/Flat/Extension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean,Mathlib/RingTheory/Smooth/Field.lean 15 11 ['BryceT233', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-10881
6 days ago
99-15667
99 days ago
0-8
8 seconds
39765 vlad902
author:vlad902
doc(RingTheory): fix local ring doc comment The predicate for local rings was updated to the current definition on non-commutative semirings back in mathlib3, but the outdated comment stating that local rings are commutative rings with a unique maximal ideal has not been updated since. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 4/4 Mathlib/RingTheory/LocalRing/Defs.lean 1 1 ['github-actions'] nobody
6-10581
6 days ago
6-10663
6 days ago
6-10625
6 days
34913 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Definition of complete intersection local ring feat(RingTheory): Definition of Complete intersection ring In this PR we give the definition of complete intersection local ring by `epsilon_1(R)+ dim(R)` equal to span rank of its maximal ideal. We also proved for quotient of regular local ring, it is CI iff the ideal being quotient out is generated by regular sequence. --- - [ ] depends on: #26245 - [ ] depends on: #29533 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import 6806/46 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Basic.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basis.lean,Mathlib/RingTheory/AdicCompletion/LocalRing.lean,Mathlib/RingTheory/AdicCompletion/Noetherian.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Catenary.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/CohenStructureTheorem.lean,Mathlib/RingTheory/CompleteIntersection/Basic.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Flat/Extension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/KoszulComplex/Cocomplex.lean,Mathlib/RingTheory/KoszulComplex/Complex.lean,Mathlib/RingTheory/KoszulComplex/Homotopy.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean,Mathlib/RingTheory/Smooth/Field.lean,docs/references.bib 34 8 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-8761
6 days ago
112-78215
112 days ago
0-12
12 seconds
38634 Maldooor
author:Maldooor
feat(MeasureTheory): `restrict_absolutelyContinuous_restrict` Adding three lemmas about absolute continuity of restrictions of measures to subsets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author 19/0 Mathlib/MeasureTheory/Measure/Restrict.lean 1 5 ['EtienneC30', 'Maldooor', 'github-actions'] EtienneC30
assignee:EtienneC30
6-4236
6 days ago
6-4236
6 days ago
23-31730
23 days
39037 JovanGerb
author:JovanGerb
chore: improve some instances These instances were found to cause slow type class searches. This is needed to avoid timeouts in the instance diamonds linter. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 2/2 Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Limits/Shapes/ConcreteCategory.lean 2 6 ['JovanGerb', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-bors'] nobody
5-85929
5 days ago
5-85931
5 days ago
0-31385
8 hours
29151 yuanyi-350
author:yuanyi-350
feat: Corollary of Hahn–Banach theorem In this PR, I have proved [Rudin, *Functional Analysis* (Theorem 3.7)][rudin1991] which is a step in proving the Closed Range Theorem. Also, I have added tags for the corresponding theorems in Rudin to mathlib. 3.7 Theorem. Suppose B is a convex, balanced, closed set in a locally convex space $X, x_0 \in X$, but $x_0 \notin B$. Then there exists $\Lambda \in X^*$ such that $|\Lambda x| \leq 1$ for all $x \in B$, but $\Lambda x_0>1$ proof. Since $B$ is closed and convex, we can apply (b) of Theorem 3.4, with $A=\{ x_0 \}$ , to obtain $\Lambda_1 \in X^*$ such that $\Lambda_1 x_0=r e^{i \theta}$ lies outside the closure $K$ of $\Lambda_1(B)$. Since $B$ is balanced, so is $K$. Hence there exists $s, 0 List.Vector.* - ... Deletions: - Nat.bit1_add_bit1 - ... Any other comments you want to keep out of the PR commit should go below the `---`, and placed outside this HTML comment, or else they will be invisible to reviewers. If this PR depends on other PRs, please list them below this comment, using the following format: - [ ] depends on: #xyz [optional extra text] --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author new-contributor t-analysis 69/2 Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/RCLike/Lemmas.lean,Mathlib/Topology/Order/OrderClosed.lean 3 17 ['faenuccio', 'fpvandoorn', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mcdoll', 'themathqueen', 'yuanyi-350'] faenuccio
assignee:faenuccio
5-82810
5 days ago
251-4795
251 days ago
20-69824
20 days
29777 yuanyi-350
author:yuanyi-350
feat(Functional Analysis): closed Range Theorem - [ ] depends on: #29151 [Corollary of Hahn-Banach theorem] - [ ] depends on: #29776 [refactor ContinuousLinearMap.isOpenMap by separating it into sublemmas] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR new-contributor awaiting-author t-analysis 236/25 Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Operator/Banach.lean,Mathlib/Analysis/Normed/Operator/ClosedRange.lean,Mathlib/Analysis/RCLike/Lemmas.lean,Mathlib/Topology/Order/OrderClosed.lean 5 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] faenuccio
assignee:faenuccio
5-82736
5 days ago
253-73520
253 days ago
0-634
10 minutes
29776 yuanyi-350
author:yuanyi-350
chore: refactor `ContinuousLinearMap.isOpenMap` by separating it into sublemmas The open mapping theorem in mathlib proves A ⇒ C by first proving A ⇒ B and then B ⇒ C in one theorem. In my PR, I separated it into two theorems: A ⇒ B and B ⇒ C. And now B ⇒ C is more general, with weaker assumptions than A ⇒ C. The [open mapping theorem](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Operator/Banach.html#ContinuousLinearMap.isOpenMap) in mathlib need `f` to be surjective. However, this can be weakened to the condition `h : ∃ (n : ℕ) (x : _), x ∈ interior (closure (f '' ball 0 n))` . I need this stronger formulation to prove the closed range theorem c.f. *Rudin Functional Analysis Thm 4.13* [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/refactor.20.60ContinuousLinearMap.2EisOpenMap.60) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis 53/33 Mathlib/Analysis/Normed/Operator/Banach.lean 1 17 ['faenuccio', 'github-actions', 'kckennylau', 'leanprover-bot', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'themathqueen', 'yuanyi-350'] faenuccio
assignee:faenuccio
5-82696
5 days ago
251-35788
251 days ago
2-45741
2 days
37652 yuanyi-350
author:yuanyi-350
feat(ProbabilityTheory/MeasureTheorey): Add Coupling lemma ## Summary This PR formalizes a standard coupling bound on countable measurable spaces. More precisely, for a probability measure `μ` and measurable maps `Y Z : Ω → S` with `S` countable, it proves the `L¹` bound `∑' k : S, |(μ.map Y).real ({k} : Set S) - (μ.map Z).real ({k} : Set S)| ≤ 2 * μ.real {ω | Y ω ≠ Z ω}`. ## Main changes - add `tsum_restrict_preimage_singleton_eq` and `tsum_restrict_preimage_singleton_eq'` in `MeasureTheory/Measure/Restrict.lean`; - add `tsum_measureReal_restrict_preimage_singleton_eq`, `coupling_term_bound`, and `coupling_lemma` in `MeasureTheory/Measure/Real.lean`; - include some local cleanup in `MeasureTheory/Measure/Real.lean`, mainly simplifying `toReal`-related arguments and notation. ## References - Wikipedia: https://en.wikipedia.org/wiki/Coupling_(probability) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author 108/37 Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/MeasureTheory/Measure/Restrict.lean 2 4 ['EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib-merge-conflicts'] kex-y
assignee:kex-y
5-80863
5 days ago
53-8724
53 days ago
2-15319
2 days
37642 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph): tidy various files --- Concept inspired by @Ruben-VandeVelde :) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 73/62 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/IncMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean 9 9 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] nobody
5-79499
5 days ago
5-79534
5 days ago
53-80155
53 days
39267 MichaelStollBayreuth
author:MichaelStollBayreuth
perf: increase some instance priorities --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra merge-conflict
label:t-algebra$
43/19 Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Data/Nat/Choose/Vandermonde.lean,Mathlib/FieldTheory/IsAlgClosed/Spectrum.lean,Mathlib/FieldTheory/SeparableClosure.lean,Mathlib/RingTheory/Extension/Cotangent/BaseChange.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/Topology/Algebra/Polynomial.lean 14 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
5-77579
5 days ago
17-57033
17 days ago
0-1
1 second
39783 SnirBroshi
author:SnirBroshi
feat(Order/Interval/Finset): `Set.ncard` lemmas for `LocallyFiniteOrder` Followup to #39414 which untagged `Fintype.card_I??` as `@[simp]`. Adds `Cardinal.mk`/`Set.encard`/`Set.ncard` lemmas for the 8 interval sets `Set.I??` (= 24 lemmas), that convert them to `Finset.card` over the corresponding `Finset.I??` from a `LocallyFiniteOrder` instance. --- `simp`? I think it's a bit strange since the `LocallyFiniteOrder` instance could have crazy definitions for the finset intervals which aren't "simpler", though the instances we currently have are simple. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 115/0 Mathlib.lean,Mathlib/Order/Interval/Finset/Card.lean 2 1 ['github-actions'] nobody
5-68520
5 days ago
5-68588
5 days ago
5-68849
5 days
36501 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/GradedAlgebra/Homogeneous/RingQuot): graded structure on the quotient of a graded ring by a homogeneous ideal Define the graded structure on the quotient of a graded ring by a homogeneous ideal Co-authored with: @mariainesdff (Possible TODO: - Maybe define the graded structure on the quotient of a graded module by a homogeneous submodule. - There is also an issue of working with ring congruences rather than with ideals. ) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
504/20 Mathlib.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/Span.lean 10 133 ['AntoineChambert-Loir', 'chrisflav', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'robin-carlier'] eric-wieser and robin-carlier
assignee:eric-wieser assignee:robin-carlier
5-65153
5 days ago
5-65230
5 days ago
53-56207
53 days
39545 Hagb
author:Hagb
feat(Order/OrderIsoNat): some lemmas about `((· < ·) : ℕ → ℕ → Prop) ↪r r` This PR contains several lemmas about relation embedding from `<` in `Nat`, well order, and (in)finiteness. - `RelEmbedding.infinite_iff_nonempty_relEmbedding_of_isWellOrder`: a type with a well order relation is infinite iff there is such a relation embedding. - `RelEmbedding.finite_iff_empty_relEmbedding_of_isWellOrder`: a finite variant of `infinite_iff_nonempty_relEmbedding_of_isWellOrder` - `IsWellOrder.finite_of_isWellOrder_of_isWellOrder_swap`: a type with a linear order relation well founded on both directions is finite. - `instFiniteOfWellFoundedLTOfWellFoundedGT`: an instance variant of `IsWellOrder.finite_of_isWellOrder_of_isWellOrder_swap` on `WellFounded{LT,GT}`. - `RelEmbedding.infinite_iff_nonempty_relEmbedding_lt_or_nonempty_relEmbedding_gt`: a type with a linear order relation is infinite iff there are both relation embedding between `<` in `Nat` and this relation, and between `>` in `Nat` and this relation. - `RelEmbedding.finite_iff_isEmpty_relEmbedding_lt_and_isEmpty_relEmbedding_gt`: a finite variant of `infinite_iff_nonempty_relEmbedding_lt_or_nonempty_relEmbedding_gt`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
Edit: remove the description on the original motivation since `WellQuasiOrdered` instead of theorems in this PR can be used for that goal. `RelEmbedding.finite_iff_empty_relEmbedding_of_isWellOrder` might be used for proof of ```lean example {α β γ} [LinearOrder α] [LinearOrder β] [WellFoundedLT α] [WellFoundedLT β] [LinearOrder γ] {f : α × β ≃ γ} (mono : Monotone f) : WellFoundedLT γ := sorry ``` The latter will be used for ```lean example {α β γ} [Finite α] [LinearOrder β] [WellFoundedLT β] [LinearOrder γ] {f : (α → β) ≃ γ} (mono : Monotone f) : WellFoundedLT γ := sorry ``` And the finial goal is the well-foundedness of monomial order when the index type `σ` is finite (under the definition in #39214).
t-order 58/0 Mathlib/Order/OrderIsoNat.lean 1 15 ['Hagb', 'SnirBroshi', 'github-actions', 'leanprover-radar', 'vihdzp'] nobody
5-63435
5 days ago
10-63468
10 days ago
11-12470
11 days
37752 JovanGerb
author:JovanGerb
chore(Order/CompleteLattice/Lemmas): use `to_dual` Use `to_dual` for lemmas about `CompleteLattice`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 33/56 Mathlib/Order/CompleteLattice/Lemmas.lean,Mathlib/Tactic/Translate/ToDual.lean 2 6 ['JovanGerb', 'YaelDillies', 'github-actions', 'vihdzp'] nobody
5-63228
5 days ago
5-63295
5 days ago
52-59874
52 days
39146 anovickis
author:anovickis
feat(Analysis/CStarAlgebra/Matrix): CompactSpace instances for unitaryGroup and specialUnitaryGroup Adds `CompactSpace` instances (and supporting `IsClosed` / `IsCompact` lemmas) for the matrix unitary and special unitary groups. The compactness follows from Heine-Borel applied to the entrywise sup norm: every unitary matrix has all entries bounded by `1` (via the existing `entry_norm_bound_of_unitary` lemma), and `Matrix n n 𝕜` is finite-dimensional, so `closed + bounded ⇒ compact`. ### New declarations - `isClosed_unitaryGroup`, `isCompact_unitaryGroup` - `instance Matrix.unitaryGroup.instCompactSpace` - `isClosed_specialUnitaryGroup`, `isCompact_specialUnitaryGroup` - `instance Matrix.specialUnitaryGroup.instCompactSpace` All placed inside the existing `EntrywiseSupNorm` section in `Mathlib/Analysis/CStarAlgebra/Matrix.lean`, so the `Matrix.Norms.Elementwise` scope used for the bound is already in scope. ### Motivation These instances enable downstream constructions of compact matrix Lie groups such as flag manifolds (e.g. SU(3)/T = F₂), where the quotient inherits compactness for free via `Quotient.compactSpace`. They also fill an obvious gap in the matrix-group API: `unitary R` is known to be closed, but compactness for `Matrix.unitaryGroup` was not previously available as an instance. Claude Code / Anthropic was used for generating the code, Verification was done with lake build, each lemma reviewed. Proofs came out of F2 mass gap lean library - so compile verified t-analysis new-contributor awaiting-author 52/0 Mathlib/Analysis/CStarAlgebra/Matrix.lean 1 12 ['anovickis', 'github-actions', 'j-loreaux', 'wwylele'] nobody
5-60751
5 days ago
19-52759
19 days ago
0-7559
2 hours
36845 grunweg
author:grunweg
feat: the Levi-Civita connection on a manifold --- - [ ] depends on: #36299 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry blocked-by-other-PR 568/3 Mathlib.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/LeviCivita.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Metric.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
5-49499
5 days ago
72-6411
72 days ago
0-512
8 minutes
39791 zixiaowang17
author:zixiaowang17
feat(Probability/HypothesisTesting): add Neyman-Pearson lemma This PR adds `Probability/HypothesisTesting/NeymanPearson.lean`, formalizing the classical Neyman-Pearson lemma with reference Ingster, Y. and Suslina, I.A., 2012. Nonparametric goodness-of-fit testing under Gaussian models (Vol. 169). Springer Science & Business Media. -/ The main definitions are: * `ProbabilityTheory.NeymanPearson.npLikelihoodRatio` * `ProbabilityTheory.NeymanPearson.npTest` * `ProbabilityTheory.NeymanPearson.npSumError` The main theorem is: * `ProbabilityTheory.NeymanPearson.neyman_pearson` We state the theorem in the weighted form `∫ T dP + t * ∫ (1 - T) dQ`, over measurable tests T : Ω → ℝ with values in [0, 1], using P + Q as the canonical dominating measure; rather than starting with the constrained formulation that fixes the Type I error and minimizes the Type II error. The reasons are two fold. First, it can be thought as the Lagrangian form of the classical constrained Neyman-Pearson problem. Second, this weighted form is often arises in applications, such as, in minimax lower-bound arguments for functional estimation, where one typically reduces estimation lower bounds to testing inequalities involving weighted sums of error probabilities. Worflow with AI: we first manually wrote a blueprint in latex with every definition and lemma we need [NL_Blueprint_NP_Lemma.pdf](https://github.com/user-attachments/files/28199645/NL_Blueprint_NP_Lemma.pdf). then we checked the Mathlib API with claude code, chatgpt and LeanSearch, We manually wrote the outline, in the outline version we deleted the discussion on gamma in the blueprint - since we have used the version of the NP lemma that uses the likelihood ratio to construct the test, rather than writing in terms of comparisons of Radon-Nikodym derivatives with a common dominating measure, and hence have used gamma to arbitrarily define likelihood-ratio sets of measure zero under the null hypothesis. This choice is motivated by the downstream derivation of errors of NP tests. since we are unfamiliar with mathlib naming style, we used claude code skill for proof golfing and some syntax correction, eg whether should use unfold or simp only []; Co-authored-by: Rajarshi Mukherjee --- t-measure-probability new-contributor LLM-generated 179/0 Mathlib.lean,Mathlib/Probability/Decision/HypothesisTesting/NeymanPearson.lean 2 3 ['github-actions', 'grunweg'] nobody
5-49431
5 days ago
5-51975
5 days ago
0-289
4 minutes
34171 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Hasse): Define the Eulerian path of a path graph --- Such statements are left for a future PR, since they add imports so we probably want to split them into a separate file: ```lean theorem IsEulerian.ofPathGraph : ofPathGraph n |>.IsEulerian := by sorry theorem IsHamiltonian.ofPathGraph : ofPathGraph n |>.IsHamiltonian := by sorry ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics awaiting-author 42/1 Mathlib/Combinatorics/SimpleGraph/Hasse.lean 1 14 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp', 'vlad902'] YaelDillies
assignee:YaelDillies
5-41686
5 days ago
65-75217
65 days ago
63-66062
63 days
36099 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Sum): `edgeSet` equivalence --- - [ ] depends on: #34909 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR 30/0 Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Data/Sym/Sym2.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
5-41631
5 days ago
87-25681
87 days ago
0-1891
31 minutes
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
5-37692
5 days ago
26-37829
26 days ago
86-46533
86 days
39436 dtumad
author:dtumad
chore: Add `seqLeft` and `seqRight` unfolding to monad_norm simp set This PR adds `seqLeft_eq_bind` and `seqRight_eq_bind` to `monad_norm`, so that `<*` and `*>` get unfolded in the same way as `<*>` already does when using the `simp` set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor 1/1 Mathlib/Tactic/Attr/Core.lean 1 2 ['github-actions'] dwrensha
assignee:dwrensha
5-37233
5 days ago
14-50436
14 days ago
14-50398
14 days
30109 scholzhannah
author:scholzhannah
feat: the subcomplexes of a (relative classical) CW complex form a completely distributive lattice In this PR we prove that the space of subcomplexes `Subcomplex C` of a (relative classical) CW complex `C` is a `CompletelyDistribLattice`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 304/1 Mathlib/Topology/CWComplex/Classical/Subcomplex.lean 1 26 ['ADedecker', 'github-actions', 'j-loreaux', 'scholzhannah'] alreadydone
assignee:alreadydone
5-36079
5 days ago
35-82457
35 days ago
42-65111
42 days
33640 JovanGerb
author:JovanGerb
feat: tool for finding duplicate declarations This PR defines a tool for finding duplicate declarations automatically. This can be used to help fix this technical debt. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 201/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DuplicateDecls.lean,MathlibTest/Tactic/DuplicateDecls.lean,MathlibTest/Tactic/DuplicateDeclsAux.lean 5 1 ['github-actions'] dwrensha
assignee:dwrensha
5-36078
5 days ago
5-83528
5 days ago
5-83573
5 days
35610 IvanRenison
author:IvanRenison
feat(Data/Fin): add several lemmas about subtraction of `Fin.{castLT, castAdd, castSucc, castPred}` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 66/0 Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/SuccPred.lean 2 13 ['IvanRenison', 'chrisflav', 'github-actions', 'robin-carlier', 'wwylele'] Vierkantor
assignee:Vierkantor
5-36077
5 days ago
28-47722
28 days ago
93-81192
93 days
38142 SnirBroshi
author:SnirBroshi
feat(Order/SuccPred/CompleteLinearOrder): generalize `csSup_mem_of_not_isSuccLimit` Given `s.Nonempty` and `BddAbove s` we can conclude `sSup s ∈ s` using either: - `csSup_mem_of_not_isSuccPrelimit`, given `ConditionallyCompleteLinearOrder` and `¬IsSuccPrelimit (sSup s)` - `csSup_mem_of_not_isSuccLimit`, given `ConditionallyCompleteLinearOrderBot` and `¬IsSuccLimit (sSup s)` We generalize both to a theorem that requires `ConditionallyCompleteLinearOrder` and `¬IsSuccLimit (sSup s)`. This creates 8 theorems that require `¬IsSuccPrelimit` but are now easily proved with the `¬IsSuccLimit` theorems, we replace `csSup_mem_of_not_isSuccPrelimit`/`exists_eq_ciSup_of_not_isSuccPrelimit` with their primed `ConditionallyCompleteLinearOrderBot` theorems, and deprecates the other 6. Tags a random `to_dual` (in `ConditionallyCompleteLattice/Basic.lean`) to let us `to_dual`ize the new lemmas. --- ~~Should we also deprecate the 8 theorems that require `¬IsSuccPrelimit` and now use `mt`?~~ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 55/42 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/SetTheory/Cardinal/Order.lean 3 9 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] bryangingechen
assignee:bryangingechen
5-36073
5 days ago
28-31299
28 days ago
43-29667
43 days
38214 emlis42
author:emlis42
feat(Algebra/ContinuedFractions): add Euler's continued fraction This PR formalizes Euler’s continued fractions by providing `Euler` which construct one by giving head term and coefficients with some basic property. We also introduce a transformation `GenContFract.toEuler` that maps a generalized continued fraction `g : GenContFract K` to an equivalent Euler-form continued fraction. new-contributor t-algebra
label:t-algebra$
262/0 Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Euler.lean 2 15 ['github-actions', 'mathlib-bors', 'wwylele'] alreadydone
assignee:alreadydone
5-36072
5 days ago
36-64207
36 days ago
36-67921
36 days
39256 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): add monotonicity lemma for LanguageOn In Symbolic dynamics. Proof that the language of a set of configurations is monotone with respect to inclusion of configuration sets: X ⊆ Y → LanguageOn X U ⊆ LanguageOn Y U The proof is a direct unfolding of definitions: a pattern in the language of X comes from restricting some configuration x ∈ X, and inclusion X ⊆ Y allows the same witness to be used for Y. Related to issue #39252 t-dynamics new-contributor 9/1 Mathlib/Dynamics/SymbolicDynamics/Basic.lean 1 3 ['github-actions'] ADedecker
assignee:ADedecker
5-36071
5 days ago
17-75321
17 days ago
17-75283
17 days
39799 NoahW314
author:NoahW314
chore(RingTheory/Ideal/Operations): deprecate duplicate theorem `Ideal.span_mul_span'` `Ideal.span_mul_span'` is identical to `Ideal.span_mul_span`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) At one point, `Ideal.span_mul_span` and `Ideal.span_mul_span'` were distinct, but `Ideal.span_mul_span` was changed in #22151 to be identical to `Ideal.span_mul_span'`. t-ring-theory 6/7 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Operations.lean,scripts/nolints_prime_decls.txt 4 1 ['github-actions'] nobody
5-35194
5 days ago
5-35463
5 days ago
5-35425
5 days
39634 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Matrix/Nondegenerate): more API and generalize to non-domains - Syntactically generalize the bilinear form identities to non-square matrices - Prove iff and transpose theorems for `SeparatingLeft`/`SeparatingRight`/`Nondegenerate` - Prove `M *ᵥ v = 0 → v = 0` and `v ᵥ* M = 0 → v = 0` given `Nondegenerate` (extracted from the existing `eq_zero_of_*_eq_zero`) - Generalize `M.det ≠ 0 → M.Nondegenerate` to `M.det ∈ R⁰ → M.Nondegenerate` (over any `CommRing`) - Add `M *ᵥ v = 0 → v = 0` and `v ᵥ* M = 0 → v = 0` theorems given `M.det ∈ R⁰` - Allow `NonUnitalNonAssocSemiring`s in the `def`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
130/44 Mathlib/Data/Matrix/Mul.lean,Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/LinearAlgebra/Matrix/ToLinearEquiv.lean 3 9 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
5-30426
5 days ago
5-30277
5 days ago
9-42456
9 days
39410 RaggedR
author:RaggedR
feat(RingTheory/HopfAlgebra): Hopf algebra structure on polynomials (𝔾ₐ) This is the beginning of a formalization of the first half of my masters thesis (https://arxiv.org/abs/0907.3950). In particular we look at the ring of polynomials in a single variable with the usual multiplication and coproduct given by: Δ(X) = X ⊗ 1 + 1 ⊗ X. The counit is evaluation at zero, and the antipode is S(x) = -x. The mathematics itself comes from my masters thesis (and is well known). This is a first step towards an implementation of the umbral calculus of Gian-Carlo Rota and then its generalization to Symmetric Functions (which I believe is original). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- LLM tools were used to assist with Lean formalization. The mathematical content is the author's own work. t-ring-theory new-contributor LLM-generated awaiting-author 256/9 Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/HopfAlgebra/Polynomial.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/IncludeLeftSubRight.lean 5 20 ['RaggedR', 'github-actions', 'mathlib-bors', 'themathqueen', 'wwylele'] nobody
5-29803
5 days ago
8-59668
8 days ago
6-19410
6 days
39774 Hagb
author:Hagb
feat(Order/WellFounded): `WellFounded` on subtype iff the relation restricted on the subtype is `WellFounded` Equivalence between `WellFounded` on a subtype and `WellFounded` on the underlying type with the relation restricted on the subtype. --- (It was a lemma for #39781, which has been closed since there would be a better proof.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 13/0 Mathlib/Order/WellFounded.lean 1 3 ['Hagb', 'SnirBroshi', 'github-actions'] nobody
5-21685
5 days ago
5-63357
5 days ago
5-63319
5 days
39788 Hagb
author:Hagb
feat(Data/Finsupp/MonomialOrder): monomial order is well-founded if the index type is finite Given `m : MonomialOrder σ` and `Finite σ`, `m.syn` is well-founded under the definition in #39214 (which removes the requirement of well-foundedness from `MonomialOrder`). --- - [ ] depends on: #39787 - [ ] depends on: #39214 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 42/13 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Order/WellQuasiOrder.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] nobody
5-20397
5 days ago
5-51757
5 days ago
0-1704
28 minutes
39214 Hagb
author:Hagb
refactor(Data/Finsupp/MonomialOrder): remove `.wf` (well foundedness) field from `MonomialOrder` Many properties still hold without the well-foundedness. Although Gröbner basis theory requires the monomial order to be well founded for the termination of the division algorithm (formalized in `MonomialOrder.div`), many properties that don't relay on the division or remainder still hold without the well-foundedness. Even the division algorithm can terminate in some cases where the monomial order isn't well founded. For example, if the divisors set is finite, then the algorithm can terminate w.r.t. `MonomialOrder.lex (σ := Nat)` even though it isn't well founded. Such cases cannot be directly stated if the formalization of monomial order requires well-foundedness. Deletions: - MonomialOrder.wf --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 21/13 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean 4 5 ['Hagb', 'github-actions', 'vihdzp'] nobody
5-20272
5 days ago
18-64805
18 days ago
18-64767
18 days
39524 FordUniver
author:FordUniver
feat(MeasureTheory/Integral/CurveIntegral): integrability and FTC along a line segment Specialises curve integration to the line segment between two points: smoothness of the segment as a `C¹` curve, sufficient conditions for a continuous one-form to be integrable along a segment, and a fundamental-theorem-of-calculus identity for the segment integral of a Fréchet derivative. Adds a new `Segment` section to `AffineMap.lean` that includes some previously existing results. --- Used by a [planned descent-lemma PR for Lipschitz-smooth functions](https://github.com/FordUniver/mathlib4/blob/5ebc6dae88deb11410d21c0a2628f53c092bb536/Mathlib/Analysis/Calculus/LipschitzSmooth/FDeriv.lean#L133), which needs an FTC along an affine line to integrate a directional derivative over a segment. Three points to highlight: 1. I thought about renaming `curveIntegrable_segment` to `curveIntegrable_segment_iff` for consistency with the file's other `_iff`-suffixed biconditionals, but the new `_const` takes a different name slot, so the rename would be an unnecessary public API break. 2. `Path.segment_contDiffOn` is really a fact about `Path.segment` rather than about curve integration, so it would more naturally live in `Convex/PathConnected.lean`. Unfortunately that target is blocked by a build cycle (`Calculus.AddTorsor.AffineMap` already transitively imports `Convex.PathConnected` via `Convex.Topology`/`Convex.StdSimplex`), so it sits with its consumer here. 3. The new `Continuous{,On}.curveIntegrable_segment` lemmas are the obvious `@[fun_prop]` candidates, but `CurveIntegrable` isn't a registered `fun_prop` concept yet; that registration is a small design call (identity/constant/composition choices, plus tagging the file's pre-existing producers) worth its own focused review and is deferred to a follow-up. `Path.segment_contDiffOn` carries the tag since `ContDiffOn` is already registered. - [ ] depends on: #39206 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/feat/lineMap-contDiff...feat/curveIntegral-segment-FTC) t-measure-probability blocked-by-other-PR 108/19 Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Poincare.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
5-13729
5 days ago
12-7103
12 days ago
0-2904
48 minutes
38334 8e7
author:8e7
feat(Combinatorics/SimpleGraph/TreeDecomp): define tree decompositions Add definition for tree decompositions on simple graphs. Define the tree width of a simple graph and prove basic statements and conversions. ```lean structure TreeDecomp (G : SimpleGraph V) where /-- The type of bags in the tree. -/ W : Type /-- The set of vertices in each bag. -/ 𝓧 : W → Finset V /-- The graph adjacency relation of bags. -/ T : SimpleGraph W /-- T must be a tree. -/ isTree : IsTree T /-- All vertices in G must appear in some bag. -/ vertexCover : ∀ v : V, ∃ w : W, v ∈ 𝓧 w /-- For any edge (u, v) in G, there is a bag containing both u and v. -/ edgeCover ⦃u v : V⦄ : G.Adj u v → ∃ w : W, u ∈ 𝓧 w ∧ v ∈ 𝓧 w /-- For any vertex v in G, the set of bags that contain v is preconnected. -/ connectedBags : ∀ v : V, (T.induce ({w | v ∈ 𝓧 w})).Preconnected ``` AI Usage: Some proofs are written with the help of Claude Code, and everything has been manually reviewed. --- - [ ] depends on: #38027 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor blocked-by-other-PR t-combinatorics LLM-generated 467/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Star.lean,Mathlib/Combinatorics/SimpleGraph/TreeDecomp.lean 3 6 ['8e7', 'github-actions', 'mathlib-dependent-issues'] nobody
5-11824
5 days ago
38-82298
38 days ago
0-356
5 minutes
38190 AntoineChambert-Loir
author:AntoineChambert-Loir
refactor(Topology/Sion): use a dense and continuous completion to generalize the statements Use the existence of a dense and continuous completion to simplify the final part of the proof of Sion's theorem. As a matter of fact, only an early lemma needs to be modified and the rest holds in weaker assumptions, leading to a serious simplification. Since the PR proving Sion is very recent and unused, we didn't add deprecation lemmas. --- - [ ] depends on: #37939 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 252/120 Mathlib.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Order/Completion.lean,Mathlib/Topology/Order/Completion.lean,Mathlib/Topology/Sion.lean 5 9 ['AntoineChambert-Loir', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
5-11654
5 days ago
42-44692
42 days ago
0-39
39 seconds
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
5-9613
5 days ago
5-23033
5 days ago
5-22995
5 days
39623 justus-springer
author:justus-springer
feat(Algebra/MvPolynomial/Basic): `coeff_C_of_ne_zero` and `coeff_add_single_C` These lemmas are multivariate analogs to `Polynomial.coeff_C_of_ne_zero`, `Polynomial.coeff_C_succ` and `PowerSeries.coeff_C_of_ne_zero` and `PowerSeries.coeff_succ_C`. They are useful for defining partial derivatives for multivariate power series, see PR #39626. - [x] depends on: #39632 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 16/0 Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean 2 7 ['Hagb', 'github-actions', 'justus-springer', 'mathlib-dependent-issues', 'wwylele'] nobody
5-9085
5 days ago
5-10749
5 days ago
9-61010
9 days
39806 Hagb
author:Hagb
chore(Order/WellFoundedSet): simplify `Set.wellFoundedOn_{iff,range}` Simplify their proofs with other existing theorems. Following the suggestion by @SnirBroshi in the review of #39774. --- - [ ] depends on: #39774 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR easy 17/20 Mathlib/Order/WellFounded.lean,Mathlib/Order/WellFoundedSet.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
5-6653
5 days ago
5-22343
5 days ago
0-2497
41 minutes
39701 thothrde
author:thothrde
feat(Condensed/Solid): prove profiniteSolidification is iso at finite types (partial) Proves partial results toward the open TODO in `Mathlib/Condensed/Solid.lean`: > TODO (hard): prove that `((profiniteSolid ℤ).obj S).IsSolid` for `S : Profinite`. ## New lemmas ### `CondensedMod.profiniteSolidCounit_isIso` The counit `(profiniteSolidCounit R).app T` is an isomorphism for every `T : FintypeCat`. **Proof:** `IsPointwiseRightKanExtension.isIso_hom` (using that `FintypeCat.toProfinite` is fully faithful) gives `IsIso (profiniteSolidCounit R)` as a natural transformation, and then `inferInstance` extracts the component-wise isomorphism. ### `CondensedMod.profiniteSolidification_comp_counit` The solidification composed with the counit equals the identity at `FintypeCat` objects: ``` (profiniteSolidification R).app (FintypeCat.toProfinite.obj T) ≫ (profiniteSolidCounit R).app T = 𝟙 _ ``` **Proof:** Direct from `liftOfIsRightKanExtension_fac_app`, since `profiniteSolidification` is defined as a `liftOfIsRightKanExtension`. ### `CondensedMod.profiniteSolidification_isIso_at_fintype` The solidification map is an isomorphism at every `FintypeCat.toProfinite.obj T`. **Proof:** Since solidification ≫ counit = id and counit is an isomorphism, `isIso_of_comp_hom_eq_id` gives that solidification = inv(counit), hence is also an isomorphism. ### `CondensedMod.profiniteSolid_isSolid_at_fintype` **Partial result:** `((profiniteSolid R).obj S).IsSolid` holds when the test object is `FintypeCat.toProfinite.obj T`. **Proof:** `profiniteSolidification_isIso_at_fintype` makes the solidification map an isomorphism in `CondensedMod R`; functoriality of `yoneda` then gives the isomorphism on hom-sets. ### `CondensedMod.profiniteSolid_obj_isSolid` (with `sorry`) States the full result. The remaining step requires showing that: 1. Every `X : Profinite` is a cofiltered limit of finite discrete quotients (`X.asLimit` from `Mathlib.Topology.Category.Profinite.AsLimit`, now imported). 2. The solid module condition is preserved under such limits. Point (2) follows from the adjunction `solidification ⊣ inclusionOfSolidModules`, which implies the inclusion preserves limits (being a right adjoint). **This adjunction has not yet been formalized in Mathlib**, and constitutes the remaining hard step. ## Open question The `sorry` in `profiniteSolid_obj_isSolid` can be removed once the following is formalized: ```lean lemma isSolid_of_isLimit {J : Type*} [SmallCategory J] {F : J ⥤ CondensedMod R} (c : Cone F) (hc : IsLimit c) (h : ∀ j, (F.obj j).IsSolid) : c.pt.IsSolid ``` This requires the adjunction between the solidification functor and the inclusion of solid modules into condensed modules. ## Changes - Added `import Mathlib.Topology.Category.Profinite.AsLimit` (needed for `X.asLimit`) - Added 4 new lemmas + 1 theorem (with sorry) to `Mathlib/Condensed/Solid.lean` - Replaced the old TODO comments with structured documentation ## Notes This PR is a work in progress. The four new lemmas are fully proved (no sorry). The main theorem `profiniteSolid_obj_isSolid` contains one sorry with a detailed proof sketch in its docstring. The leanprover-community CI will show one sorry warning, which is intentional and documented. t-condensed new-contributor 652/8 MathProject/P0_SolLeftCancel_Axiom.lean,MathProject/P1_Solid.lean,MathProject/P2_finFree_Solid.lean,MathProject/P4_Solid_Progress.lean,MathProject/PR_README.md,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Condensed/Solid.lean 7 2 ['github-actions'] nobody
5-6506
5 days ago
unknown
0-0
0 seconds
35287 arnoudvanderleer
author:arnoudvanderleer
feat(AlgebraicTopology/SimplicialSet): define isomorphisms in simplicial sets, and the coherent isomorphism simplicial set show that any edge in a simplicial set, that is the image of the forward edge of the coherent isomorphism under a simplicial set morphism, is an isomorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor infinity-cosmos 362/3 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/CoherentIso.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveCodiscrete.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/CodiscreteCategory.lean 6 124 ['arnoudvanderleer', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
5-5450
5 days ago
5-5450
5 days ago
36-6344
36 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
4-85940
4 days ago
5-84691
5 days ago
5-84653
5 days
29965 RemyDegenne
author:RemyDegenne
feat(probability): define subtraction of kernels This PR defines subtraction of kernels and uses it to prove `MeasurableSet {a | κ a = η a}` for two finite kernels `κ, η`. From the LeanBandits project. --- - [x] depends on: #35018 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-measure-probability large-import 165/2 Mathlib.lean,Mathlib/MeasureTheory/Measure/SubFinite.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Kernel/RadonNikodym.lean,Mathlib/Probability/Kernel/Sub.lean 5 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
4-83308
4 days ago
247-9103
247 days ago
0-1
1 second
38669 dannyply
author:dannyply
feat(Topology/Algebra/PontryaginDual): prove compact monoids have discrete duals Proves that the Pontryagin dual of a compact monoid is discrete. As a consequence, it also adds the corresponding finite-type instances for compact discrete monoids. This upstreams a result first added downstream in [`YaelDillies/APAP`](https://github.com/YaelDillies/APAP), where this fact was needed to close a `sorry`. The proof separates the trivial character from all the others using the right half of the circle and adds a few reusable `Circle` helper lemmas near the existing related API. The original APAP proof was AI-assisted and then reviewed/rewritten during downstream review. For this PR, I used Codex to help adapt the APAP proof to mathlib and to refactor the supporting lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 130/16 Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Topology/Algebra/PontryaginDual.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 3 30 ['dannyply', 'github-actions', 'j-loreaux', 'tb65536'] j-loreaux
assignee:j-loreaux
4-82205
4 days ago
4-82205
4 days ago
5-70846
5 days
39820 samuelchassot
author:samuelchassot
Add proof of the existence of an Eulerian walk if all vertices have even degree or if exactly vertices have odd degree As per the TODO open in `Trails.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 671/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Eulerian.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean 3 8 ['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions'] nobody
4-81047
4 days ago
4-82278
4 days ago
4-82240
4 days
32583 MJ141592
author:MJ141592
refactor(SimpleGraph): change bridges not to require the edge to be present Remove the requirement for edges to exist in definition of isBridge, and then change the related lemmas to adjust for this, by renaming, fixing the statements and fixing the proofs, including in Acyclic. Closes #31690. --- - [x] depends on: #36802 - [x] depends on: #36804 t-combinatorics new-contributor 95/93 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 5 48 ['MJ141592', 'Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
4-78746
4 days ago
4-78779
4 days ago
54-34919
54 days
39818 Ljon4ik4
author:Ljon4ik4
feat: Transferring Lie Algebra structures along Equivalences This pr adds the functionality to transfer Lie brackets along equivalences (additive, linear and plain ones). I followed the scheme of the existing `TransferInstance.lean` file. For one of the proofs, I also needed `linearEquiv_apply `, which seemed missing so I added it. AI use disclaimer: I used claude to search for lemmas/ understand error messages / proofreading and feedback, but wrote the whole code myself. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
124/0 Mathlib.lean,Mathlib/Algebra/Lie/TransferInstance.lean,Mathlib/Algebra/Module/TransferInstance.lean 3 2 ['github-actions'] nobody
4-78200
4 days ago
4-78275
4 days ago
4-80482
4 days
35349 RemyDegenne
author:RemyDegenne
feat: data processing inequality for the Kullback-Leibler divergence --- - [x] depends on: #34841 - [x] depends on: #35089 - [x] depends on: #27953 - [ ] depends on: #39819 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-measure-probability blocked-by-other-PR 241/24 Mathlib.lean,Mathlib/InformationTheory/KullbackLeibler/DataProcessing.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/Measure/Decomposition/IntegralRNDeriv.lean 4 8 ['RemyDegenne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot'] nobody
4-77752
4 days ago
103-76392
103 days ago
0-1
1 second
37984 loefflerd
author:loefflerd
feat: abstract theory of measures General foundations of non-archimedean measure theory (intended for applications to Iwasawa algebras) --- - [x] depends on: #38701 t-topology 306/0 Mathlib.lean,Mathlib/NumberTheory/Padics/Measure/Basic.lean,Mathlib/NumberTheory/Padics/Measure/Topology.lean 3 11 ['github-actions', 'j-loreaux', 'loefflerd', 'mathlib-dependent-issues'] PatrickMassot
assignee:PatrickMassot
4-77333
4 days ago
4-77333
4 days ago
19-78114
19 days
39736 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/MonomialOrder): add `leadingTerm` lemmas Add lemmas for `leadingTerm` to match those for `leadingCoeff`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 87/0 Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 1 5 ['Hagb', 'NoahW314', 'github-actions'] nobody
4-76232
4 days ago
7-30406
7 days ago
7-30368
7 days
39692 YaelDillies
author:YaelDillies
chore(Algebra/Order/BigOperators): follow the `₀` naming convention We have long agreed that `MonoidWithZero` lemmas corresponding to `Monoid` lemmas should be suffixed with `₀`, while currently it is the `Monoid` lemmas that are primed. Also deprecate two primed lemmas that only differed from the unprimed versions in a minor way. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
283/219 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/InfiniteProd.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Measure/HasOuterApproxClosedProd.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 35 4 ['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
4-75773
4 days ago
4-75808
4 days ago
6-18460
6 days
39829 or4nge19
author:or4nge19
feat(LinearAlgebra): basis flag lemmas and genEigenspace map Part 1/3 of #39139. Introduces basis flag lemmas and intertwining `genEigenspace` map, using directly available constructors, ie introducing none (so improving on #39139) Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) [learningstud@gmail.com](mailto:learningstud@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
76/2 Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean 2 1 ['github-actions'] nobody
4-74039
4 days ago
4-74097
4 days ago
4-74086
4 days
39815 sharky564
author:sharky564
feat(Analysis/Normed/Module/Complemented): add `IsCompl.isTopCompl_of_isClosed` and `isTopCompl_iff_isCompl_isClosed_isClosed` Adds two theorems: - `IsCompl.isTopCompl_of_isClosed`: In a Banach space, two closed submodules that are algebraic complements are topological - `isTopCompl_iff_isCompl_isClosed_isClosed`: `p` and `q` are topological complements if and only if `p` and `q` are algebraic complements and `p` and `q` are both closed. --- This PR addresses the final point of #38416, and finally close it. However, this is no longer much of a refactor as it is more just adding these theorems in. t-analysis 14/1 Mathlib/Analysis/Normed/Module/Complemented.lean 1 3 ['github-actions', 'themathqueen'] nobody
4-73673
4 days ago
5-175
5 days ago
5-137
5 days
39834 or4nge19
author:or4nge19
feat(LinearAlgebra): triangularizability via flags and block-triangular matrices Part 2/3 of #39139. In finite dimension, shows that `⨆ μ, f.maxGenEigenspace μ = ⊤` is equivalent to: - existence of a `Basis` whose `flag` lies in `f.invtSubmodule`; - existence of an invariant `Flag`; - `Matrix.BlockTriangular id` for `LinearMap.toMatrix b b f` in some basis. Over an algebraically closed field, deduces the above from `IsAlgClosed.splits` on the charpoly. Compared to #39139 we do not introduce new global `IsTriangularizable` (or similar) predicates. This also fills the previous TODO and replaces/shorten the proof of `iSup_maxGenEigenspace_eq_top` by a charpoly-splitting argument. - [ ] depends on: #39829 [Part 1/3 of #39139. ] Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) [learningstud@gmail.com](mailto:learningstud@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import blocked-by-other-PR
label:t-algebra$
399/77 Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean 3 2 ['github-actions', 'mathlib-dependent-issues'] nobody
4-69685
4 days ago
4-69686
4 days ago
0-1607
26 minutes
39139 or4nge19
author:or4nge19
feat(LinearAlgebra): Schur triangulation Adds Schur triangulation API for algebraically closed `RCLike`, proved by triangularizing an endomorphism, aiming at a more mathlib idiomatic approach than the original one in #20730 as it now (better) specializes the existing triangularization API and generalizes supporting lemmas in more natural places. A prerequisite for porting `Matrix.det_exp` proof from physlib. It also proves half of existing TODO in Eigenspace.Triangularizable. It may need a split into 2 PRs and coordination with #37006 . See [this](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Contribute.20Schur.20decomposition/with/532385359) and [this](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/.28Matrix.20and.20NormedSpace.2Eexp.29.20.7C.20det.20.28exp.20A.29.20.3D.20exp.20.28trace.20A.29/with/581264603) zulip discussions. Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import awaiting-author 687/75 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/Triangularizable.lean,Mathlib/LinearAlgebra/Basis/Fin.lean,Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Basic.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean 10 5 ['dagurtomas', 'github-actions', 'or4nge19', 'wwylele'] nobody
4-69449
4 days ago
15-65315
15 days ago
4-23931
4 days
39830 kbuzzard
author:kbuzzard
perf: make FiniteAdeleRing implicit_reducible We have a ton of API for `RestrictedProduct` and I want to use it all on `FiniteAdeleRing`. We either duplicate all of it, or we make `FiniteAdeleRing` an abbrev, or we do something like tagging it `@[implicit_reducible]`. This PR makes it an `abbrev`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory 1/1 Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean 1 10 ['b-mehta', 'github-actions', 'kbuzzard', 'leanprover-radar'] nobody
4-69088
4 days ago
4-73813
4 days ago
0-214
3 minutes
39745 joneugster
author:joneugster
feat: install gh inside the devcontainer * Install `gh` automatically in the dev container, try to login on startup. * Mount local `.gitconfig` in the container. This allows access to the globally configured git user name and such. The motivation behind this PR is to provide a simple way of sandboxing PRs during review. In particular, keeping the .olean files, which originate from an untrusted fork, contained. During review, `gh pr checkout` is defacto a required tool. Other tools like [bubble](https://github.com/kim-em/bubble#bubble) aim to address the same use case. However, vscode devcontainer are more mature and the setup is done with few lines of code, easy to understand. --- ### LLM usage The line ```text source=${localEnv:HOME}/.gitconfig,target=/home/vscode/.gitconfig,type=bind,consistency=cached ``` has been suggested by querying an LLM. It looks like this is what literature online seems to be using: * https://github.com/microsoft/vscode/issues/265651 * https://marcandreuf.com/blog/2024-07-12-gitdevcont/ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 14/1 .devcontainer/devcontainer.json,.gitignore 2 1 ['github-actions'] bryangingechen
assignee:bryangingechen
4-68563
4 days ago
4-68800
4 days ago
6-84612
6 days
33864 Timeroot
author:Timeroot
feat(Computability/Primrec): Proving several Nat arithmetic functions are primrec Prove that gcd, lcm, coprimality, divisiblity, primality, factorial, descending factorial, powers, and various logarithms are all primitive recursive. Co-authored-by: Aristotle Harmonic <[aristotle-harmonic@harmonic.fun](mailto:aristotle-harmonic@harmonic.fun)> large-import t-computability 195/4 Mathlib.lean,Mathlib/Computability/Primrec.lean,Mathlib/Computability/Primrec/List.lean,Mathlib/Computability/Primrec/Nat.lean,Mathlib/Data/Nat/Log.lean 5 7 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
4-67983
4 days ago
4-66004
4 days ago
47-23348
47 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 55/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
4-67092
4 days ago
4-67092
4 days ago
87-15657
87 days
37002 fbarroero
author:fbarroero
WIP WIP --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory WIP 109/0 Mathlib/RingTheory/Localization/Integral.lean 1 2 ['github-actions'] nobody
4-67012
4 days ago
68-53394
68 days ago
0-881
14 minutes
39837 or4nge19
author:or4nge19
feat(LinearAlgebra): unitary block-triangular Schur triangulation Part 3/3 of (and improves on) #39139. - `InnerProductSpace.Triangularizable`: Gram–Schmidt preserves `Basis.flag`; orthonormal triangularizing basis; block-upper-triangular matrix in an orthonormal `finrank`-indexed basis. - `Matrix.SchurTriangulation`: `exists_unitaryGroup_blockTriangular` - [ ] depends on: #39834 [Part 2/3 of https://github.com/leanprover-community/mathlib4/pull/39139. ] - [ ] depends on: #39829 [Part 1/3 of https://github.com/leanprover-community/mathlib4/pull/39139. ] Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) [learningstud@gmail.com](mailto:learningstud@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 577/76 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Triangularizable.lean,Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
4-66783
4 days ago
4-66784
4 days ago
0-2882
48 minutes
38488 b-mehta
author:b-mehta
feat(Data/Finset/Card): iterating a function's image on a finite set stabilises ...and does so in a bounded number of steps (which is why this is Finset-specific). In a later PR, I'll add this for endofunctions on a fintype, as well as add a Set.Finite version. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 35/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Image.lean 2 17 ['SnirBroshi', 'b-mehta', 'github-actions'] joneugster
assignee:joneugster
4-66179
4 days ago
4-66263
4 days ago
35-41618
35 days
27579 RemyDegenne
author:RemyDegenne
feat: risk of an estimator, DeGroot statistical information, total variation distance This is an overview PR and will be cut into several pieces. It contains definitions and properties of: - the risk and Bayes risk of an estimator, in general and then specialized to binary hypothesis testing - the DeGroot statistical information between two measures, as well as a generalization for a kernel on more than two outcomes - the total variation distance between measures, defined as a special case of the DeGroot statistical information Co-authored-by: Lorenzo Luccioli @LorenzoLuccioli From the TestingLowerBounds project --- - [x] depends on: #27583 - [x] depends on: #27584 - [x] depends on: #27585 - [x] depends on: #27586 - [x] depends on: #27587 - [x] depends on: #27591 - [x] depends on: #28081 - [x] depends on: #28082 - [x] depends on: #28117 - [x] depends on: #28341 - [x] depends on: #29137 - [x] depends on: #29143 - [ ] depends on: #39810 - [ ] depends on: #39812 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import t-measure-probability blocked-by-other-PR 1565/1 Mathlib.lean,Mathlib/InformationTheory/TotalVariation/Basic.lean,Mathlib/Probability/Decision/AuxLemmas.lean,Mathlib/Probability/Decision/BayesEstimator.lean,Mathlib/Probability/Decision/Binary.lean,Mathlib/Probability/Decision/BoolMeasure.lean,Mathlib/Probability/Decision/DeGrootInfo.lean,Mathlib/Probability/Decision/Risk/Basic.lean,Mathlib/Probability/Decision/Risk/Countable.lean,Mathlib/Probability/Decision/RiskIncrease.lean 10 7 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-59192
4 days ago
306-10192
306 days ago
0-1
1 second
38245 RemyDegenne
author:RemyDegenne
feat: CountableSupClosed Define the property for a set of being closed by countable supremum (resp. infimum). The new file is adapted from the `SupClosed` file, which describes sets closed by binary supremum. Also use `to_dual` on `SupClosed`. `CountableInfClosed` will be used in measure theory, for developments related to compact systems used for Kolmogorov's extension theorem and Choquet's capacitability theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order brownian 381/66 Mathlib.lean,Mathlib/Order/CountableSupClosed.lean,Mathlib/Order/SupClosed.lean 3 16 ['RemyDegenne', 'b-mehta', 'github-actions', 'vihdzp'] nobody
4-58415
4 days ago
4-74988
4 days ago
41-991
41 days
37179 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add lemmas about left and right elements of `SimpleGraph.sum` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 19/0 Mathlib/Combinatorics/SimpleGraph/Sum.lean 1 5 ['WilliamCoram', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
4-58173
4 days ago
4-58208
4 days ago
64-54384
64 days
39757 gasparattila
author:gasparattila
chore(Algebra/Star): clean up `simp` lemmas about bundled `star` equivalences This PR adds `.symm` lemmas for these equivalences, allowing `simp` to reduce applications of their inverses to applications of `star`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 67/21 Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Module.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Topology/Algebra/Module/Star.lean 4 2 ['github-actions', 'themathqueen'] nobody
4-56325
4 days ago
6-56418
6 days ago
6-56380
6 days
36605 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Add lemmas about interaction of hull, span and negation Prove lemmas about the interaction of hull, span and negation. Main additions: * `PointedCone.toSubmodule` that produces a submodule with the same support given that `-C = C`. Also the corresponding `CanLift` * `PointedCone.hull_neg_pair_eq_span_singleton` proving `hull R {-x, x} = R ∙ x` (simp lemma) * `PointedCone.span_eq_hull_neg_sup_hull` proving `span R s = hull R (-s) ⊔ hull R s` * `PointedCone.mem_span` proving `x ∈ span R C ↔ ∃ p, n ∈ C, x = p - n` Considerations: there are several ways to express that a convex cone is a submodule: * `-C = C` * `-C ≤ C` or `C ≤ -C` * `C = span R C` * `C = C.lineal` The consensus was that the the first option is the most direct way to express this property, which then allows to lift to a submodule. Co-authored by: Olivia Röhrig, Kilian Rueß, Artie Khovanov --- - [x] depends on: #37464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 68/0 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 53 ['artie2000', 'github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-54591
4 days ago
4-54594
4 days ago
21-54958
21 days
31898 ntapiam
author:ntapiam
feat(LinearAlgebra/TensorAlgebra): implement HopfAlgebra for TensorAlgebra implementation of the natural Hopf algebra structure on the TensorAlgebra new-contributor t-ring-theory awaiting-author merge-conflict 253/0 Mathlib.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/RingTheory/Bialgebra/FreeAlgebra.lean,Mathlib/RingTheory/Bialgebra/TensorAlgebra.lean,Mathlib/RingTheory/HopfAlgebra/TensorAlgebra.lean 6 66 ['YaelDillies', 'github-actions', 'hawkrobe', 'kckennylau', 'mathlib-merge-conflicts', 'ntapiam'] nobody
4-53209
4 days ago
188-38969
188 days ago
0-34649
9 hours
37939 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Order/Completion): embed a linear order into a dense and complete linear order The aim of the PR is to prove the following theorem that will be used as an input to [Sion.DMCompletion.exists_isSaddlePointOn](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sion.html#Sion.DMCompletion.exists_isSaddlePointOn) : *If `β` is any linear order, then there exists a complete and dense linear order `γ` together with a continuous embedding `ι : β ↪o γ` (for the order topologies on `β` and `γ`).* Meanwhile, the PR also records various instances about dense orders and lemmas regarding the Dedekind MacNeille completion and lexicographic orders. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 211/4 Mathlib.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Order/Completion.lean,Mathlib/Topology/Order/Completion.lean,Mathlib/Topology/Sion.lean 5 69 ['ADedecker', 'AntoineChambert-Loir', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] vihdzp
assignee:vihdzp
4-50297
4 days ago
4-73123
4 days ago
39-83922
39 days
39747 vihdzp
author:vihdzp
feat: intervals `Ici`/`Ioi` are cofinal/closed under directed suprema --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 67/11 Mathlib/Order/Cofinal.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Order/ScottTopology.lean 5 16 ['YaelDillies', 'b-mehta', 'github-actions', 'vihdzp'] nobody
4-49864
4 days ago
5-72690
5 days ago
6-50622
6 days
39850 Ljon4ik4
author:Ljon4ik4
feat: Lie-Rinehart subalgebras introduced This PR introduces subalgebras of Lie-Rinehart algebras. It defines the corresponding structures, introduces some basic api and shows that a Lie-Rinehart subalgebra is again a Lie-Rinehart algebra. Most of the code was copied and adapted from `Mathlib/Algebra/Lie/Subalgebra.lean`, however I am not aware of a way to reuse the results from there without copy/pasting them. I also noticed a problem with the namespace of a few simp lemmas in `LieRinehartAlgebra/Defs.lean` and corrected it. There are a few design decisions that I am not sure about: * There is one structure, which only needs `[Module A L]` and `[LieRing L]` to be defined. Then additional properties are added along the file whenever needed. It is a little strange to have a `LieRinehartSubalgebra` of something which is not a `LieRinehartalgebra`, but I don't know what a better solution would be * The structure only uses `A, L` and not `R`, so `R` has to be explicitly passed to the functions later in the file. AI use disclaimer: I used claude to search for lemmas/ understand error messages / proofreading and feedback, but did not use it for generating the code. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
267/2 Mathlib.lean,Mathlib/Algebra/LieRinehartAlgebra/Defs.lean,Mathlib/Algebra/LieRinehartAlgebra/Subalgebra.lean 3 1 ['github-actions'] nobody
4-49306
4 days ago
4-49373
4 days ago
4-50232
4 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
4-48014
4 days ago
4-48623
4 days ago
4-66384
4 days
39849 hawkrobe
author:hawkrobe
feat(RingTheory): Every connected graded bialgebra is a Hopf algebra --- see [#PR reviews > #31898 implement HopfAlgebra for TensorAlgebra @ 💬](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2331898.20implement.20HopfAlgebra.20for.20TensorAlgebra/near/597455260). - [ ] depends on: #39785 - [ ] depends on: #39841 I used Claude Code to plan and audit. t-ring-theory new-contributor blocked-by-other-PR 732/23 Mathlib.lean,Mathlib/RingTheory/Bialgebra/Graded.lean,Mathlib/RingTheory/Bialgebra/Primitive.lean,Mathlib/RingTheory/Coalgebra/Graded.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/Graded.lean,Mathlib/RingTheory/HopfAlgebra/Primitive.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean 8 3 ['github-actions', 'mathlib-dependent-issues'] nobody
4-45588
4 days ago
4-52911
4 days ago
0-680
11 minutes
39856 b-mehta
author:b-mehta
feat(Data/Set/Restrict): extend is injective on the range These lemmas are placed here since that puts them close to the other `extend` lemmas, but they can't be in Logic/Function/Basic since InjOn and Set.range aren't defined there yet --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 15/0 Mathlib/Data/Set/Restrict.lean 1 1 ['github-actions'] nobody
4-40662
4 days ago
4-40737
4 days ago
4-40699
4 days
39561 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Operations): a graph is the supremum of edge graphs - `G = ⨆ e ∈ G.edgeSet, fromEdgeSet {e}` - `G = sSup { edge u v | (u : V) (v : V) (_ : G.Adj u v) }` and `edgeSet` & `fromEdgeSet` preserve sup & inf. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 51/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean 2 2 ['b-mehta', 'github-actions'] nobody
4-40280
4 days ago
11-23068
11 days ago
11-23030
11 days
39505 dannyhe652
author:dannyhe652
feat(SimpleGraph): add Vizing's theorem for edge coloring Hi! I'm a high school student interested in formulization of mathematics in Lean. Recently, I have worked on a project to formulize Vizing Theorem with Daniel Raggi from Cambridge University with AI assistance. In particular, we first drafted an outline for the proof, and built the proof using Claude Opus 4.5 and 4.6. The proof is optimized using Aristotle and finally reviewed by ourselves. We rewrote some parts of the code and some comments. The code now builds cleanly and we wish this code to be reviewed by Lean Community. I am aware that there are previous attempts, some being successful, on formulizing Vizing Theorem, including this one by Arohee https://github.com/aroheebhoja/vizing. However, I believe that no PR have been made. Our proof is not based on his proof, but it could be helpful for the community to review that project as well. I sincerely thank everyone who has time to verify and review our code. A summary of the project is as follows. Please contact me if there are any questions or problems. ## Summary This PR completes the proof of **Vizing's theorem** for edge coloring in simple graphs, proving that the chromatic index of any graph is either Δ (the maximum degree) or Δ + 1. ## Changes ### New files - **`Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean`** — Core definitions - `edgeColoring`: Type for line graph colorings - `edgeColorable`: Graph is edge-colorable with n colors - `chromaticIndex`: Chromatic index as ℕ - **`Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean`** — Kempe Chain - Coloring observables: `incidentEdges`, `incidentColors`, `missingColors` - Kempe subgraph structure with bounded degree - `swapKempe`: Recolor edges in a connected component via color-swapping - **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean`** — Vizing Fan Rotation - `IsFan`: Vizing fan structure with special color properties - Fan maximality and dichotomy on terminal vertices - `rotate_termA`: Extend coloring when a free color exists at both endpoints - `vizingAdjacencyLemma`: Main adjacency lemma for both cases - **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean`** — Main theorems - `edge_eq_of_color_eq`: Proper edge colorings assign different colors to distinct edges sharing a vertex - `maxDegree_le_chromaticIndex`: χ'(G) ≥ Δ(G) - `chromaticIndex_bot`: Empty graph has chromatic index 0 - `vizingUpperBound_aux`: Inductive proof of upper bound on number of edge - `vizingTheorem`: χ'(G) ∈ {Δ(G), Δ(G) + 1} ### Modified files - `Mathlib.lean` — Added imports for the four new coloring modules ## Technical Approach **Lower bound** (χ'(G) ≥ Δ): - Edges incident to a max-degree vertex form a clique in the line graph - Clique number lower-bounds chromatic number **Upper bound** (χ'(G) ≤ Δ + 1): - Induction on the number of edges - Base case: empty graph colored with 0 colors - Inductive step: - If a free color exists at both endpoints of an edge, then extend directly - Otherwise: - Build a maximal fan from one endpoint - Apply dichotomy: either extend via Term-A (free color at both endpoints) or Term-B (Kempe swap) - Term-B uses a three-vertex connectivity argument to derive a contradiction, forcing the fan to extend ## Key Lemmas - `incidentEdges`, `incidentColors`, `missingColors`: Coloring observables at vertices - `kempeSubgraph`: Restricted subgraph of edges with two specific colors - `swapKempe`: Recolor via Kempe chain swapping - `IsFan.singleton`: Trivial fan always valid - `IsFan.length_le_card`: Fan length is bounded by vertex count - `IsFan.dichotomy`: Maximal fan satisfies Term-A or Term-B - `IsFan.rotate_termA`: Term-A case extends the coloring inductively - `vizingAdjacencyLemma`: Handles both cases for extending one edge - `vizingUpperBound_aux`: Framework for full inductive proof - `edge_eq_of_color_eq`: Distinctness of edges with same color ## Testing All four modules compile with no `sorry` nor errors or warnings. ## References * V. G. Vizing, *On an estimate of the chromatic class of a p-graph*, Diskret. Analiz. 3 (1964), 25–30. ## Co-authors Co-authored-by: Daniel Raggi Co-authored-by: Aristotle (Harmonic) Co-authored-by: Claude Opus 4.5 & 4.6 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 1915/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean 5 3 ['github-actions'] nobody
4-40192
4 days ago
12-41953
12 days ago
12-43294
12 days
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 64/37 Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Topology/Order/SuccPred.lean 2 2 ['github-actions', 'mathlib-bors'] nobody
4-37920
4 days ago
5-31437
5 days ago
5-51558
5 days
26975 Whysoserioushah
author:Whysoserioushah
feat: a norm_num extension for complex numbers co-authored-by : @thefundamentaltheor3m, @hrmacbeth --- * depends on: #39628 * depends on: #39620 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 444/14 Mathlib.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/NormNumI.lean,Mathlib/Tactic/NormNum/OfScientific.lean,Mathlib/Tactic/NormNum/Result.lean,MathlibTest/norm_numI.lean 10 76 ['JovanGerb', 'Vierkantor', 'Whysoserioushah', 'dupuisf', 'eric-wieser', 'github-actions', 'grunweg', 'hrmacbeth', 'mathlib4-merge-conflict-bot'] eric-wieser
assignee:eric-wieser
4-36521
4 days ago
9-58395
9 days ago
112-30556
112 days
33313 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Coloring/Edge): create a basic edge-coloring API Module name decided on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500). --- Future work (which I'm working on): - Relating degrees to edge-colorability (`G.maxDegree ≤ G.chromaticIndex`, `G.EdgeColorable 1 ↔ G.maxDegree ≤ 1`, `G.chromaticIndex = 1 ↔ G.maxDegree = 1`, `G.EdgeColorable 2 ↔ G.maxDegree ≤ 2`, `G.chromaticIndex = 2 ↔ G.maxDegree = 2`) - [Vizing's theorem](https://en.wikipedia.org/wiki/Vizing%27s_theorem) (`G.chromaticIndex ≤ G.maxDegree + 1`) - `chromaticIndex ⊤ = (if Even #V then #V - 1 else #V)` - `[Infinite α] → chromaticIndex ⊤ = ⊤` - [x] depends on: #33292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 300/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Edge.lean 2 28 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'ooovi'] b-mehta
assignee:b-mehta
4-36363
4 days ago
29-66615
29 days ago
67-21511
67 days
39178 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Measure/PreVariation` - refactors `Mathlib/MeasureTheory/Measure/PreVariation` by simplifying `sum_le'` and `sum_le_preVariationFun_of_subset` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 6/20 Mathlib/MeasureTheory/Measure/PreVariation.lean 1 2 ['github-actions', 'yuanyi-350'] sgouezel
assignee:sgouezel
4-36361
4 days ago
19-11563
19 days ago
19-11525
19 days
39282 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): add union morphism lemma for LanguageOn In symbolic dynamics. This PR proves that taking the language over a finite shape commutes with unions of configuration sets: $LanguageOn (X \cup Y) U = LanguageOn X U \cup LanguageOn Y U$ The proof is a direct unfolding of definitions: a pattern in the language of $X \cup Y$ comes from restricting a configuration $x ∈ X \cup Y$, and splitting on whether $x \in X$ or $x \in Y$ yields the corresponding inclusion in either $LanguageOn X U$ or $LanguageOn Y U$. The converse direction rebuilds a witness in $X \cup Y$ from either side of the union. Related to issue #39252 t-dynamics new-contributor 15/1 Mathlib/Dynamics/SymbolicDynamics/Basic.lean 1 2 ['github-actions'] sgouezel
assignee:sgouezel
4-36360
4 days ago
17-13976
17 days ago
17-13938
17 days
39782 robin-carlier
author:robin-carlier
feat(Tactic): `nonempty` attribute This PR adds a `nonempty` attribute. When tagging a definition of type `α` with `[nonempty]`, an instance of type `Nonempty α` is automatically generated and registered using the definition. Such an attribute is useful in the following scenario: certain structures are not classes (e.g., to avoid data-carrying classes potentially creating diamonds), but mere existence of terms of such structures allows to derive instances about the parameters of the structure. Using `[nonempty]` lets one auto-generate the instances derived instance (provided they correctly follow from `[Nonempty _]`). Such is the case for the `CategoryTheory.Functor.FullyFaithful` structure, which allows to derive the `Prop`-classes `CategoryTheory.Functor.Full` and `CategoryTheory.Functor.Faithful`. Currently in mathlib, most definitions of type `CategoryTheory.Functor.FullyFaithful` are immediately followed by the corresponding `Full` and `Faithful` instances, adding "boilerplate" and increasing the surface for potential mistakes (like forgetting one or both of the instances.) The attribute uses a variation of `addRelatedDecl` called `addRelatedInstance`, which handles automatic name generation and registration of instances from a given declaration and a "constructor" of type `Expr → List Name → MetaM (Expr × List Name)`. --- I believe abstracting `addRelatedInst` might have other possible usages: for instance, given an adjunction `adj: L ⊣ R`, it would be nice to have an attribute that one can tag on such adjunctions that automatically registers `L.IsLeftAdjoint` and `R.IsRightAdjoint`. The `nonempty` attribute here can’t really do this because `R` can’t be inferred from a goal of type `L.IsLeftAdjoint`, but the situation is quite similar, and `addRelatedInst` could also help writing this kind of attribute. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 320/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NonemptyAttr.lean,Mathlib/Util/AddRelatedDecl.lean,MathlibTest/NonemptyAttr.lean 5 1 ['github-actions'] dwrensha
assignee:dwrensha
4-36356
4 days ago
4-54200
4 days ago
4-54162
4 days
39809 zcyemi
author:zcyemi
feat(LinearAlgebra/AffineSpace/Menelaus): add Menelaus' theorem Add Menelaus' theorem for both `AffineSpace` and `NormedAddTorsor`. The `AffineSpace` version includes both the forward and converse directions, while the `NormedAddTorsor` version currently includes the forward direction. For the converse direction in the `NormedAddTorsor` setting, I am still considering the most convenient formalization for future use. One possible approach is to use `sbtw` / `¬ sbtw` to distinguish the different positional cases for points on the edges of a triangle, but this seems too complicated under permutations of the triangle vertices. t-euclidean-geometry 218/0 Mathlib.lean,Mathlib/Analysis/Normed/Affine/Menelaus.lean,Mathlib/LinearAlgebra/AffineSpace/Menelaus.lean,docs/1000.yaml 4 1 ['github-actions'] jsm28
assignee:jsm28
4-36354
4 days ago
5-14558
5 days ago
5-15197
5 days
29010 grunweg
author:grunweg
chore: more tests for field_simp features and edge cases --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 135/0 MathlibTest/FieldSimp.lean 1 3 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
4-32414
4 days ago
255-54842
255 days ago
0-71078
19 hours
39063 khwilson
author:khwilson
feat(Topology/Algebra/Module/LocallyConvex): a very nice basis of locally convex spaces In proving facts about locally convex spaces, you often work with a basis of the neighborhoods of 0 that are open, symmetric, convex, antitone, and have the property that `V (n + 1) + V (n + 1) ⊆ V n` and `closure (V (n + 1)) ⊆ V n`. These lemmas construct such a basis. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 137/30 Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Topology/Algebra/Group/Pointwise.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean 3 10 ['github-actions', 'j-loreaux', 'khwilson'] j-loreaux
assignee:j-loreaux
4-31765
4 days ago
4-31834
4 days ago
15-84548
15 days
16074 Rida-Hamadani
author:Rida-Hamadani
feat: combinatorial maps and planar graphs We define combinatorial maps, then we define planar graph using combinatorial maps. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics 243/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Planar.lean,Mathlib/Data/CombinatorialMap.lean 3 30 ['MrBrain295', 'Parcly-Taxel', 'Rida-Hamadani', 'github-actions', 'lambda-fairy', 'leanprover-community-bot-assistant'] kmill
assignee:kmill
4-30671
4 days ago
329-27104
329 days ago
72-50365
72 days
39722 kg583
author:kg583
feat(Combinatorics): Link `Nat.Partition` to `YoungDiagram` --- AI disclosure: Claude was used to source some proof sketches. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor large-import 120/4 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/Conjugate.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean 4 36 ['NoahW314', 'github-actions', 'kg583', 'wwylele'] nobody
4-29673
4 days ago
6-56882
6 days ago
7-54419
7 days
29558 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): definition of global dimension In this PR, we define projective dimension and global dimension using `CategoryTheory.HasProjectiveDimensionLT` --- - [ ] depends on: #32058 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 244/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/RingTheory/GlobalDimension.lean 3 18 ['Thmoas-Guan', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
4-28674
4 days ago
152-9043
152 days ago
27-39406
27 days
31999 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): global dimension equals the supremum over localizations Global dimension of ring is equal to supremum of global dimension over localizations at all prime/maximal ideal. --- - [x] depends on: #32000 - [x] depends on: #31998 - [ ] depends on: #29558 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory 326/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/RingTheory/GlobalDimension.lean 3 18 ['Thmoas-Guan', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-28665
4 days ago
186-7343
186 days ago
1-68813
1 day
35344 grunweg
author:grunweg
feat: lint upon uses of the mono tactic suggesting to use `gcongr` instead. In general, `mono` is unmaintained, was only partially ported --- and gcongr at this point is more featureful, actively developed and has a nicer user interface. The topic was also discussed [on zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Porting.20note.3A.20Fixing.20up.20.60mono.60/with/445125798). --- TODO: update the linter wording, fix its implementation and wait until tests pass Rebased and migrated version of #25700. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-linter RFC merge-conflict 4/0 MathlibTest/DeprecatedSyntaxLinter.lean,MathlibTest/Monotonicity.lean 2 3 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
4-27367
4 days ago
103-82748
103 days ago
0-13
13 seconds
35345 grunweg
author:grunweg
feat(Linter.openClassical): also lint for Classical declarations as …a local or scoped instance. Rebased and migrated version of #23763. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter merge-conflict 131/31 Mathlib/RingTheory/Perfection.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Topology/MetricSpace/GromovHausdorffRealized.lean,MathlibTest/LintStyle.lean 4 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
4-27366
4 days ago
101-6354
101 days ago
0-8005
2 hours
37562 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add several lemmas about when `Walk.bypass` and `Walk.cycleBypass` do nothing Co-authored-by: Vlad Tsyrklevich --- - [ ] depends on: #37577 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR merge-conflict 160/79 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 4 9 ['IvanRenison', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vlad902'] nobody
4-27236
4 days ago
26-47609
26 days ago
0-1043
17 minutes
37578 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Girth): add lemma `Walk.IsCircuit.egirth_le_length` --- - [x] depends on: #37574 - [ ] depends on: #37577 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR merge-conflict 123/79 Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-27235
4 days ago
26-46692
26 days ago
0-2051
34 minutes
37579 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Girth): add lemmas about the length of a walk being equal to the girth --- - [x] depends on: #37561 - [ ] depends on: #37577 - [x] depends on: #37574 - [ ] depends on: #37562 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics merge-conflict 188/79 Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-27234
4 days ago
57-45919
57 days ago
0-678
11 minutes
37907 grunweg
author:grunweg
feat(by_contra,contrapose): warn if the push_neg step does nothing --- - [x] depends on: #31597 - [x] depends on: #37899 - [x] depends on: #37937 - [x] depends on: #37999 - [x] depends on: #38008 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-CI t-meta merge-conflict 42/6 Mathlib/NumberTheory/ArithmeticFunction/LFunction.lean,Mathlib/Tactic/ByContra.lean,Mathlib/Tactic/Contrapose.lean,MathlibTest/Contrapose.lean,MathlibTest/byContra.lean 5 5 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-27231
4 days ago
49-49727
49 days ago
0-2
2 seconds
37956 artie2000
author:artie2000
feat(Algebra/Polynomial): lemmas about polynomial degree * Add various small lemmas about polynomial degree --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
28/5 Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,MathlibTest/hintAll.lean 5 8 ['artie2000', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] kim-em
assignee:kim-em
4-27230
4 days ago
4-27231
4 days ago
43-39219
43 days
38507 grunweg
author:grunweg
fix(Linter/PrivateModule): only suggest @[expose] if the module has any definitions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author merge-conflict 9/5 Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/Tactic/Linter/PrivateModule.lean,MathlibTest/PrivateModuleLinter/reservedName2.lean 3 10 ['JovanGerb', 'github-actions', 'grunweg', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
4-27222
4 days ago
15-80697
15 days ago
1-80663
1 day
39340 vihdzp
author:vihdzp
feat: redefine `Ordinal.deriv` in terms of `Order.enum` --- - [ ] depends on: #39136 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 558/38 Mathlib.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Univ.lean 9 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-27216
4 days ago
unknown
0-0
0 seconds
39395 marcelolynch
author:marcelolynch
chore(Tactic/Linter): reword PrivateLinter suggestion This matches the granular-by-default philosophy of the new module system and produces files without superfluous `@[expose] public`, which we also want to flag as undesirable: we steer to making every @[expose] is per-decl and intentional, rather than section-wide Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230 t-linter merge-conflict 11/8 Mathlib/Tactic/Linter/PrivateModule.lean,MathlibTest/PrivateModuleLinter/hasOnlyPrivate.lean,MathlibTest/PrivateModuleLinter/notation3.lean,MathlibTest/PrivateModuleLinter/reservedName2.lean 4 4 ['github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
4-27215
4 days ago
4-27216
4 days ago
11-19868
11 days
39725 vihdzp
author:vihdzp
feat: stationary sets in countable cofinality orders In an order of countable cofinality, club sets must contain all large enough elements, so stationary sets are those that don't. --- - [ ] depends on: #39724 - [ ] depends on: #39727 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import file-removed t-set-theory merge-conflict 266/33 Mathlib.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/DirSupClosed/Basic.lean,Mathlib/Order/DirSupClosed/Finite.lean,Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/Topology/Order/ScottTopology.lean 11 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-27206
4 days ago
7-45652
7 days ago
0-1089
18 minutes
39732 vihdzp
author:vihdzp
feat: the club filter --- - [ ] depends on: #39727 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory large-import blocked-by-other-PR merge-conflict 344/22 Mathlib.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality/Filter.lean 5 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-27205
4 days ago
5-62539
5 days ago
1-60275
1 day
26212 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): the Rees theorem for depth In this PR we proved the Rees theorem for depth. Co-authored-by: Hu Yongle --- - [x] depends on: #37355 - [x] depends on: #38613 - [x] depends on: #38466 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 218/26 Mathlib.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 4 61 ['Thmoas-Guan', 'alreadydone', 'chrisflav', 'dagurtomas', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
4-24382
4 days ago
4-86090
4 days ago
99-80268
99 days
26214 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): definition of depth In this PR, we defined the depth of two modules as the minimal order of nonvanishing `Ext` and the `I-depth` for ideal `I` and some basic properties. Including the equivalence of the two in the condition of rees theorem. --- - [ ] depends on: #26212 - [x] depends on: #32966 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
628/26 Mathlib.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 5 10 ['Thmoas-Guan', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-24365
4 days ago
343-81828
343 days ago
0-152
2 minutes
39608 EtienneC30
author:EtienneC30
doc(Probability/HasLaw): mention `MeasurePreserving` in the docstring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-measure-probability awaiting-author 15/1 Mathlib/Probability/HasLaw.lean 1 5 ['EtienneC30', 'github-actions', 'jvanwinden'] nobody
4-22048
4 days ago
4-22048
4 days ago
5-74195
5 days
39847 vihdzp
author:vihdzp
chore: redefine `Ordinal.preOmega` using `Order.enum` The plan is to deprecate `Ordinal.enumOrd` in favor of `Order.enum`. --- - [ ] depends on: #39136 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-set-theory 104/28 Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
4-19609
4 days ago
4-57417
4 days ago
0-1595
26 minutes
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
4-19446
4 days ago
4-21206
4 days ago
5-38240
5 days
38619 mariainesdff
author:mariainesdff
feat(Algebra/SkewPolynomial/Basic): add API We add API for SkewPolynomial, including monomial, coeff, C and X. Co-authored by: @xgenereux. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated
label:t-algebra$
319/26 Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/SkewPolynomial/Basic.lean 2 64 ['faenuccio', 'github-actions', 'mariainesdff', 'mathlib-bors'] faenuccio
assignee:faenuccio
4-16630
4 days ago
9-59233
9 days ago
17-46601
17 days
38275 TTony2019
author:TTony2019
feat: Add `AffineEquiv.image_intrinsicInterior` ## Summary This PR generalizes the existing lemma `AffineIsometry.image_intrinsicInterior` to the setting of affine equivalences, yielding the corresponding result `AffineEquiv.image_intrinsicInterior`. Since affine equivalences are more general than affine isometries, the proof requires an additional finite-dimensionality assumption. The key extra input is that in finite-dimensional spaces, an affine equivalence induces a homeomorphism via `AffineEquiv.toHomeomorphOfFiniteDimensional`, so the assumptions are adjusted accordingly. Apart from these extra assumptions, the argument is essentially the same as for `AffineIsometry.image_intrinsicInterior`. ## Collaboration This PR was developed together with @imathwy. t-analysis new-contributor 283/41 Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/LinearAlgebra/AffineSpace/Restrict.lean,Mathlib/Topology/Algebra/AffineSubspace.lean,Mathlib/Topology/Homeomorph/Defs.lean 5 29 ['TTony2019', 'github-actions', 'imathwy', 'j-loreaux', 'themathqueen'] j-loreaux
assignee:j-loreaux
4-11099
4 days ago
4-11099
4 days ago
21-1744
21 days
39832 kbuzzard
author:kbuzzard
perf: make Module.compHom a fast_instance I have no real idea what will happen here. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra
label:t-algebra$
1/1 Mathlib/Algebra/Module/RingHom.lean 1 8 ['eric-wieser', 'github-actions', 'kbuzzard', 'leanprover-radar'] nobody
4-8519
4 days ago
4-73877
4 days ago
0-2
2 seconds
39491 Yu-Misaka
author:Yu-Misaka
feat(Mathlib/LinearAlgebra/RootSystem/CartanMatrix): a Cartan matrix of a reduced crystallographic root system cannot have eigenvalue 4 This proves the TODO that a Cartan matrix of a reduced crystallographic root system cannot have eigenvalue 4. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra codex LLM-generated
label:t-algebra$
125/8 Mathlib/Data/Matrix/Mul.lean,Mathlib/LinearAlgebra/RootSystem/CartanMatrix.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Basis.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Semisimple.lean 4 6 ['Yu-Misaka', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-bors', 'ocfnash'] ocfnash
assignee:ocfnash
4-8183
4 days ago
4-8272
4 days ago
4-8244
4 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 awaiting-author 33/11 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 29 ['IvanRenison', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
4-7616
4 days ago
4-7616
4 days ago
50-34303
50 days
37697 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Clique): add theorems about cliques and induced graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 22/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 11 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions'] nobody
4-7601
4 days ago
4-58197
4 days ago
48-59516
48 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
4-6114
4 days ago
8-1825
8 days ago
8-1787
8 days
26216 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): depth of QuotSMulTop In this PR, we proved for a local ring `R` and a finitely generated `R` module `M N`, `IsSMulRegular M x` and `x ∈ Module.annihilator R N`, then `depth(N, M/xM) + 1 = depth(N, M)`, and its corollary for quotient regular seqence. --- - [ ] depends on: #26214 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
893/26 Mathlib.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 5 10 ['Thmoas-Guan', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-2804
4 days ago
343-83774
343 days ago
0-49
49 seconds
26217 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): Ischebeck theorem This PR mainly proved the Ischbecke theorem, stating that `depth(N,M)` is greater or equal to `depth(M) - dim(N)` for finitely generated module `N, M` over local ring. --- - [ ] depends on: #26214 - [x] depends on: #32081 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
836/26 Mathlib.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 6 12 ['Thmoas-Guan', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-2793
4 days ago
343-83652
343 days ago
0-51
51 seconds
26218 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): definition of cohen macaulay In this PR, we added the definition of CM module, CM local ring (extending local ring), and CM ring. We also proved Theorem 30, Chater 6, _Commutative Algebra_, Matsumura. --- - [x] depends on: #26219 - [ ] depends on: #26217 - [ ] depends on: #26216 - [ ] depends on: #28582 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
1660/26 Mathlib.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 7 20 ['Thmoas-Guan', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-2778
4 days ago
343-83496
343 days ago
0-52
52 seconds
28599 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): polynomial over CM ring is CM polynomial over Cohen Macaulay ring is Cohen Macaulay --- - [ ] depends on: #26218 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 1833/26 Mathlib.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Polynomial.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 8 18 ['Thmoas-Guan', 'erdOne', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] mariainesdff
assignee:mariainesdff
4-2764
4 days ago
100-31579
100 days ago
3-48641
3 days
26245 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): cohen macaulay local ring is catenary We prove Cohen Macaulay local ring is catenary. Following Theorem 31, Chater 6, _Commutative Algebra_, Matsumura --- - [ ] depends on: #26218 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
2049/26 Mathlib.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Catenary.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 9 19 ['leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-2748
4 days ago
343-11308
343 days ago
0-18
18 seconds
26957 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): unmixed thm of Cohen-Macaulay ring In this PR we proved for a (comm)ring `R`, `R` is Cohen-Macaulay ring iff the unmixed theorem holds (for every ideal `I` of height `r` generated by `r` elements, all associated primes of `R/I` have height `r` ) --- - [ ] depends on: #26245 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
2228/26 Mathlib.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Catenary.lean,Mathlib/RingTheory/CohenMacaulay/Unmixed.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 10 17 ['leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-2734
4 days ago
324-5103
324 days ago
0-229
3 minutes
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
label:t-algebra$
65/0 Mathlib.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean 2 47 ['Thmoas-Guan', 'chrisflav', 'erdOne', 'plp127', 'vihdzp'] chrisflav
assignee:chrisflav
4-2652
4 days ago
4-68099
4 days ago
7-7328
7 days
37934 Thmoas-Guan
author:Thmoas-Guan
feat(FieldTheory): definition of transcendental separable field extension In this PR, we introduce the concept of separably generated field extension and transcendental separable field extension. Further properties will be in #37838 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
102/0 Mathlib.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean 2 14 ['Thmoas-Guan', 'robin-carlier'] robin-carlier
assignee:robin-carlier
4-2481
4 days ago
19-75107
19 days ago
28-6846
28 days
37838 Thmoas-Guan
author:Thmoas-Guan
feat(FieldTheory): basic theories about transcendental separable extension The formalization of [Stacks 030W] via [Stacks 030U]. --- - [ ] depends on: #37934 - [x] depends on: #39138 - [ ] depends on: #39740 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
623/15 Mathlib.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean 4 4 ['mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-2463
4 days ago
48-73664
48 days ago
0-1271
21 minutes
39141 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory/GeometricallyReduced): geometrically reduced is reduced for base change to arbitrary field In this PR, we proved that geometrically reduced algebra is reduced after base change to arbitrary field. --- - [ ] depends on: #37838 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 725/15 Mathlib.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean 4 3 ['mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-1019
4 days ago
19-74525
19 days ago
0-986
16 minutes
37953 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory/Smooth): transcendental separable extension is formally smooth In this PR, we proved that transcendental separable extension is formally smooth via reduction to fg cases. --- - [ ] depends on: #37934 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 243/0 Mathlib.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean,Mathlib/RingTheory/Smooth/Field.lean 3 2 ['mathlib-dependent-issues'] nobody
4-794
4 days ago
47-76455
47 days ago
0-84
1 minute
28683 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): regular local ring is domain In this PR, we proved for a regular local ring `R`, 1 : for a finite set `S` in the maximal Ideal of `R`, it can be extended to a regular system of parameters iff they are linear independent in the cotangent space iff `R/span S` is regular local ring of dimesion `dim R - |S|` 2 : is domain 3 : regular system of parameter form regular sequence. --- - [x] depends on: #28682 - [x] depends on: #37627 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 323/0 Mathlib.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean 5 58 ['Raph-DG', 'Thmoas-Guan', 'WenrongZou', 'erdOne', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mbkybky'] nobody
4-588
4 days ago
7-8540
7 days ago
8-70607
8 days
29533 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): maximal Cohen Macaulay module In this PR, we defined the concept of maximal Cohen Macaulay module, and proved that finitely generated maximal Cohen Macaulay module over regular local ring is free. --- - [ ] depends on: #28683 - [ ] depends on: #26218 - [ ] depends on: #38698 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra large-import
label:t-algebra$
2204/26 Mathlib.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,docs/references.bib 14 16 ['mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-569
4 days ago
261-34616
261 days ago
0-88
1 minute
29557 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): finite projective dimension of regular In this PR, we proved every finitely generated module over regular local ring has finite projective dimension. With this and Auslander Buchsbaum theorem, we can obtain the global dimension of regular local ring is equal to its krull dimension. --- - [ ] depends on: #29533 - [ ] depends on: #26215 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra large-import
label:t-algebra$
2646/26 Mathlib.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/GlobalDimension.lean,docs/references.bib 16 17 ['mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
4-544
4 days ago
260-75996
260 days ago
0-1929
32 minutes
39600 plp127
author:plp127
chore(Topology/Compactness/CountablyCompact): generalize theorem Generalize theorem `Topology.IsEmbedding.isSeqCompact_iff` to `Topology.IsInducing.isSeqCompact_iff` by replacing `IsEmbedding` by `IsInducing`. Also fix capitalization error. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 10/4 Mathlib/Topology/Compactness/CountablyCompact.lean 1 5 ['grunweg', 'plp127', 'themathqueen'] nobody
3-86274
3 days ago
6-48360
6 days ago
9-24881
9 days
38908 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): API lemmas for level-1 graded ring Adds API lemmas extracted from #38813 to keep that PR reviewable: `DirectSum.of_eq_of_eq`, `DirectSum.of_eq_sub_add_smul`, `ModularForm.cast_apply`, `ModularForm.mul_ne_zero`, `ModularForm.sub_smul_isCuspForm`. LLM-generated 41/0 Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/CuspFormSubmodule.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 5 3 ['CBirkbeck', 'mathlib-merge-conflicts'] nobody
3-85768
3 days ago
unknown
0-0
0 seconds
39258 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): E₄, E₆ surjectively map onto level-1 graded ring Defines the evaluation homomorphism `evalE₄E₆ : ℂ[X₀, X₁] →ₐ[ℂ] ⨁ k, ModularForm 𝒮ℒ k` (`X₀ ↦ E₄`, `X₁ ↦ E₆`) and proves it is surjective: every level-1 modular form is a polynomial in `E₄` and `E₆`. First half of #38813. ## Main results - `ModularForm.evalE₄E₆`. - `ModularForm.evalE₄E₆_surjective`. - [ ] depends on: #38908 This PR was done with the help of Claude Code. blocked-by-other-PR 319/0 Mathlib.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/CuspFormSubmodule.lean,Mathlib/NumberTheory/ModularForms/GradedRing.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 8 2 ['mathlib-dependent-issues'] nobody
3-85755
3 days ago
unknown
0-0
0 seconds
26215 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): Auslander–Buchsbaum theorem This PR mainly proved the Auslander-Buchsbaum theorem stating for a noetherian local ring `R` and a finitely generated `R` module `M` , `proj.dim(M) + depth(M) = depth(R)`. Co-authored-by: Yongle Hu --- - [ ] depends on: #26214 - [x] depends on: #32316 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
1007/26 Mathlib.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 6 12 ['Thmoas-Guan', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
3-79540
3 days ago
343-81829
343 days ago
0-88
1 minute
38950 smmercuri
author:smmercuri
chore(Algebra): `coe_algHom` -> `coe_toAlgHom` --- There are also instances of `coe_ringHom`, `coe_linearMap` etc which I can fix in follow-up PRs [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 78/64 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Charpoly/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/Cyclotomic/Gal.lean,Mathlib/RingTheory/Algebraic/MvPolynomial.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/DividedPowerAlgebra/Init.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/GradedAlgebra/AlgHom.lean,Mathlib/RingTheory/GradedAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Factorization.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/TensorProduct/Maps.lean 33 6 ['github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
3-78572
3 days ago
3-78613
3 days ago
19-72332
19 days
38964 smmercuri
author:smmercuri
chore(Algebra): consolidate variables and sections for `AlgHom`/`AlgEquiv` This is a preparatory PR for the refactor of `AlgHom` to be semilinear (see #38376). This PR does not add or remove any results and only moves things around to reduce the diff for the future refactor. Namely, we do the following: - Re-order variables in `AlgHom` and `AlgEquiv` so that `CommSemiring R` directly follows `R`. This is needed in the semialgebra definition. - Move `comp` and `trans` API later in respective files so that the extra variables needed for those lemmas can be sectioned better. - Similarly move some `congr` results in `Equiv.lean` to their own sections. - Align variable names in `Equiv.lean` to match `Hom.lean` --- - [ ] depends on: #38950 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 493/429 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Notation.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Charpoly/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/Cyclotomic/Gal.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Algebraic/MvPolynomial.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/DividedPowerAlgebra/Init.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/GradedAlgebra/AlgHom.lean,Mathlib/RingTheory/GradedAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Factorization.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/TensorProduct/Maps.lean,MathlibTest/GalNotation.lean 40 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-78522
3 days ago
24-67129
24 days ago
0-8935
2 hours
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 63 ['Raph-DG', 'chrisflav', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joelriou
assignee:joelriou
3-77895
3 days ago
3-78041
3 days ago
46-36999
46 days
39663 Raph-DG
author:Raph-DG
feat(Topology): A spectral map between quasi-separated, prespectral sober spaces has compact fibers In this PR, we develop some API around the constructible topology, culminating in the fact that a spectral map between quasi-separated, prespectral sober spaces has compact fibers. To see why this might be of interest, note that the analogous theorem in algebraic geometry (that a quasiseparated map between schemes has quasicompact fibers) does not require any global separatedness assumptions, and the proof of this is very algebraic. So we have the somewhat mysterious situation that it seems as though there are nontrvial topological restrictions on the kinds of spectral maps which can be the underlying maps of morphisms of schemes. This PR was originally part of #26304, a PR on pushforwards of algebraic cycles. This is where the notion of compactness of fibers becomes relevant, as this guarantees each coefficient of the pushforward of a cycle is computed by a finite sum. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author 116/0 Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Constructible.lean,Mathlib/Topology/Maps/Proper/Basic.lean,Mathlib/Topology/Spectral/ConstructibleTopology.lean 4 2 ['chrisflav', 'github-actions'] nobody
3-77562
3 days ago
3-77562
3 days ago
4-68998
4 days
35733 mkaratarakis
author:mkaratarakis
feat: Algebraic setup and matrix coefficients for Gelfond-Schneider theorem This PR introduces the foundational algebraic setup and coefficient bounds required for the proof of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), which establishes that for algebraic numbers $\alpha \neq 0, 1$ and irrational algebraic $\beta$, the number $\alpha^\beta$ is transcendental. Following the contradiction argument presented in Loo-Keng Hua's "Introduction to Number Theory" (Chapter 17.9, 490 -493) Gelfond's Proof), this file constructs the common number field $K$ and sets up the scaled algebraic integers for the auxiliary linear system. This system will later be solved via Siegel's lemma (Lemma 8.2, 490, Hua). This PR is essentially the first half of page 490 in the book. The proof proceeds by assuming $\gamma = \alpha^\beta$ is algebraic, meaning $\alpha$, $\beta$, and $\gamma$ all lie in an algebraic field $K$ of degree $h$. 1. Bundles the common number field $K$, the complex embeddings, and the algebraic preimages $\alpha', \beta', \gamma'$, alongside the core hypotheses of the theorem. 2. Defines the field degree $h = [K : \mathbb{Q}]$, and bounds $m = 2h + 2$ and $n = q^2 / (2m)$ to control the dimensions of the linear system. 3. Defines $c_1$, a natural number chosen so that $c_1 \alpha$, $c_1 \beta$, and $c_1 \gamma$ are algebraic integers in $K$. We prove numerous bounding and integrality lemmas (`isIntegral_c₁α`, `isInt_β_bound`, etc.). 4. Formalizes the core algebraic coefficients $(a+b\beta)^k \alpha^{al} \gamma^{bl}$ which appear in the evaluation of the derivatives of the auxiliary function $R(x)$. 5. By scaling the system by $c_1^{n-1+2mq}$, we successfully restrict the entries of our linear system matrix `A` entirely to the ring of integers $\mathcal{O}_K$, preparing it for the application of Siegel's lemma. 6. House Bounds (`c₂`) : Establishes the foundational base integer $c_2$ to bound the absolute values of the conjugates (houses) of our coefficients. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor awaiting-author 1002/48 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/RingTheory/Algebraic/NatDenominator.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Basic.lean,scripts/open_gelfond_schneider_prs.sh 6 26 ['MichaelStollBayreuth', 'github-actions', 'mathlib-merge-conflicts', 'mkaratarakis', 'tb65536'] tb65536
assignee:tb65536
3-76098
3 days ago
4-84043
4 days ago
47-24448
47 days
39539 yuanyi-350
author:yuanyi-350
feat(NumberTheory): prove Mertens' first theorem For any natural number $n \geq 2$, the absolute value of the difference between the sum over all primes $p \leq n$ of $\frac{\log p}{p}$ and $\log n$ is at most 2. WIP 489/0 Mathlib.lean,Mathlib/NumberTheory/Mertens.lean 2 3 ['github-actions', 'vihdzp'] nobody
3-74823
3 days ago
11-65691
11 days ago
0-296
4 minutes
39870 YaelDillies
author:YaelDillies
feat(Data): interleaving lists Define interleaving of lists, both as an operation and as a relation. This will be used to define interleaving polynomials, which in turn are a central concept in the line of work that earned June Huh his 2022 Fields medal. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 119/0 Mathlib.lean,Mathlib/Data/List/Interleave.lean 2 1 ['github-actions'] nobody
3-74436
3 days ago
3-74502
3 days ago
3-74898
3 days
36763 alok
author:alok
refactor(Order/Filter/Germ): partial sections for Filter.Product ## Summary - Refactor `Filter.Product` from total functions to partial sections (`Product.Section`) with filter-large domains - Adapt the model-theoretic `Prestructure` and Łoś's theorem proofs to partial sections - Add `Germ ↔ Product` bridge equivalence for constant families ## Motivation The current `Filter.Product` is a quotient of total functions `(a : α) → ε a` by eventual equality. This requires all fibers to be inhabited, which is not the mathematically correct construction. The ultraproduct should only require a section defined on a filter-large set. The new `Product.Section` structure carries: - A domain `dom : Set α` with `dom ∈ l` - A dependent section `val : (a : dom) → ε a` Two sections are equivalent if they agree on some filter-large common domain. This matches the standard mathematical construction and enables proper ultraproducts where some fibers may be empty. ## Changes ### `Mathlib/Order/Filter/Germ/Basic.lean` - New `Product.Section` structure (partial section with filter-large domain) - `productSetoid` redefined over `Product.Section` - `Product.ofTotal` embeds total sections; `eq_iff_ofTotal` characterizes equality ### `Mathlib/ModelTheory/Ultraproducts.lean` - `sectionStructure`: first-order structure on partial sections (funMap restricts to domain intersection, RelMap checks on common domain) - `setoidPrestructure` adapted with full proofs of `fun_equiv` and `rel_equiv` - `funMap_cast`, `boundedFormula_realize_cast` (rel case), `all` quantifier case all reproved for partial sections - Łoś's theorem statement unchanged; `sentence_realize` still has the same API ### `Mathlib/Order/Filter/Germ/Product.lean` (new) - `Germ.toProduct` / `Product.toGerm`: round-trip between germs and constant-family products - `Germ.prodEquiv`: equivalence for inhabited constant families (backward compat) ## Test plan - [x] `lake build` passes (7607/7607 modules) - [x] All linter warnings resolved - [x] `Mathlib.ModelTheory.Satisfiability` (uses `Filter.Product` + `sentence_realize`) still compiles - [x] `Mathlib.Analysis.Real.Hyperreal` still compiles --- Context: [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Nonstandard.20Analysis/near/513178715) — Violeta Hernández asked for fixing the ultraproduct definition as the first step after #33650 deprecated the old hyperreal machinery. 🤖 Generated with [Claude Code](https://claude.com/claude-code) new-contributor merge-conflict 278/49 Mathlib.lean,Mathlib/ModelTheory/Ultraproducts.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/Filter/Germ/Product.lean 4 6 ['alok', 'github-actions', 'mathlib-merge-conflicts', 'plp127'] nobody
3-74245
3 days ago
unknown
0-0
0 seconds
36814 YaelDillies
author:YaelDillies
refactor(Combinatorics/SimpleGraph): no proof obligation in `rotate` If the walk doesn't go through the new vertex, return `nil` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 41/32 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean 7 9 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
3-73189
3 days ago
3-73266
3 days ago
66-24943
66 days
39864 8e7
author:8e7
feat(Combinatorics/SimpleGraph/Acyclic): helly property on subtrees This PR adds several lemmas regarding connected subsets of vertices in trees (subtrees). The main result is the Helly property for subtrees: For a finite set of subtrees, if any pair of subtrees intersect, then there is a common vertex in all subtrees. This lemma is part of an effort to formalize tree decompositions (see #38334), and will be used in a future PR to prove `G.cliqueNum - 1 <= G.treeWidth`. AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 114/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean 2 2 ['github-actions'] nobody
3-72567
3 days ago
4-7680
4 days ago
4-7756
4 days
39874 mkaratarakis
author:mkaratarakis
feat(GelfondSchneider): add MainAlg Siegel matrix setup Add `GelfondSchneider.MainAlg`, setting up the scaled Siegel matrix and house-norm bounds used in the Gelfond–Schneider proof. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39872 - [ ] depends on: #39873 - [ ] depends on: #39875 Supersedes #35733. blocked-by-other-PR 837/48 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/RingTheory/Algebraic/NatDenominator.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Basic.lean 5 3 ['github-actions', 'mathlib-dependent-issues'] nobody
3-72300
3 days ago
3-75748
3 days ago
0-304
5 minutes
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 110/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 62 ['Rida-Hamadani', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] nobody
3-72111
3 days ago
3-72184
3 days ago
35-21585
35 days
39853 martinwintermath
author:martinwintermath
feat(Data/SetLike): add more `IsConcrete` type classes Add * `IsConcreteEmpty` * `HasConcreteUniv` * `IsConcreteSingleton` * `IsConcreteInsert` * `IsConcreteCompl` Zulip: [#mathlib4 > More `IsConcrete` classes for `SetLike`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/More.20.60IsConcrete.60.20classes.20for.20.60SetLike.60/with/597697174) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 173/0 Mathlib/Data/SetLike/Basic.lean 1 8 ['github-actions', 'martinwintermath', 'vihdzp'] nobody
3-71487
3 days ago
unknown
0-0
0 seconds
34805 DavidLedvinka
author:DavidLedvinka
feat(Tactic): generalize ofScientific NormNum extension to `DivisionSemiring` Co-authored-by: @hrmacbeth t-meta maintainer-merge 70/16 Mathlib/Algebra/Field/Rat.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/OfScientific.lean,MathlibTest/Tactic/NormNum/Basic.lean 4 31 ['DavidLedvinka', 'JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'thorimur'] eric-wieser
assignee:eric-wieser
3-66198
3 days ago
4-35337
4 days ago
90-9201
90 days
39746 vihdzp
author:vihdzp
feat: Dieudonné measure on a well-order Given a well-order of uncountable cofinality, we can define a measurable space, consisting of sets which either contain or entirely omit a club set. On this space, the indicator function of stationary sets is a measure, known as the Dieudonné measure. It is a zero-one measure, which is nevertheless not a Dirac measure; it in fact has empty support. --- - [ ] depends on: #39727 - [ ] depends on: #39747 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-measure-probability blocked-by-other-PR 451/34 Mathlib.lean,Mathlib/MeasureTheory/Constructions/Dieudonne.lean,Mathlib/MeasureTheory/OuterMeasure/Defs.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/Topology/Order/ScottTopology.lean 9 2 ['github-actions', 'mathlib-dependent-issues'] nobody
3-60470
3 days ago
6-81581
6 days ago
0-1258
20 minutes
39709 justus-springer
author:justus-springer
feat(RingTheory/): `MvPolynomial` is standard smooth Add the trivial submersive presentation for `MvPolynomial` and show that `MvPolynomial` is standard smooth over its base ring. This will be used to show that affine space is smooth in #39710. - [x] depends on: #39708 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 47/0 Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-60051
3 days ago
3-60059
3 days ago
3-62910
3 days
39110 SnirBroshi
author:SnirBroshi
chore(Data/Set): reduce defeq abuse of `Set α = α → Prop` These are among the first places that would fail if `Set α` wasn't defeq to `α → Prop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 35/20 Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Order/BooleanAlgebra/Set.lean 5 24 ['SnirBroshi', 'Vierkantor', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'themathqueen', 'urkud', 'vihdzp'] urkud
assignee:urkud
3-58480
3 days ago
14-6323
14 days ago
20-7685
20 days
29534 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): global dimension of regular local ring In this PR, we proved the global dimension of regular local ring is equal to its krull dimension via Auslander Buchsbaum theorem. --- - [ ] depends on: #29557 - [ ] depends on: #26215 - [ ] depends on: #29558 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra large-import
label:t-algebra$
2921/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/GlobalDimension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/GlobalDimension.lean,docs/references.bib 18 22 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
3-58166
3 days ago
261-32373
261 days ago
0-2082
34 minutes
29699 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/RingTheory): global dimension of regular ring In this PR, we proved that the global (homological dimension) of regular ring is equal to its krull dimension. --- - [ ] depends on: #28684 - [ ] depends on: #31999 - [ ] depends on: #29534 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra large-import
label:t-algebra$
3032/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/GlobalDimension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/GlobalDimension.lean,docs/references.bib 18 24 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
3-58165
3 days ago
256-20486
256 days ago
0-632
10 minutes
29796 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): regular of finite global dimension In this PR, we proved the other half of Auslander-Buchsbaum-Serre criterion, which states that a local ring is regular if it has finite global dimension, with results in #29557, we can obtain the full theorem. More APIs would be developed based on the two. --- - [ ] depends on: #26215 - [ ] depends on: #26217 - [ ] depends on: #29558 - [ ] depends on: #28683 - [ ] depends on: #38698 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory large-import 2318/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/GlobalDimension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/AuslanderBuchsbaumSerre.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,docs/references.bib 16 20 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
3-57917
3 days ago
253-25698
253 days ago
0-80
1 minute
29802 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/RingTheory): Auslander–Buchsbaum–Serre criterion and its corollaries In this PR, we proved that: 1: The full version of Auslander–Buchsbaum–Serre criterion 2: Localization of regular local ring is regular 3: Global dimension finite implies regular (doesn't need local) 4: Regular ring only need to be verified at maximal ideals. --- - [ ] depends on: #29534 - [ ] depends on: #29699 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory large-import 3557/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/GlobalDimension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/AuslanderBuchsbaumSerre.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/GlobalDimension.lean,Mathlib/RingTheory/RegularLocalRing/Localization.lean,docs/references.bib 20 25 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
3-57916
3 days ago
253-11129
253 days ago
0-458
7 minutes
38968 eric-wieser
author:eric-wieser
fix: improve defeqs of comp actions The (deliberately) non-reducible `SMul.comp.smul` definition caused us to end with these failing unification examples at instance reducibility: ```lean example : (Module.compHom ℕ (RingHom.id ℕ)).toSMul = SMul.comp ℕ (RingHom.id ℕ) := by with_reducible_and_instances rfl example : (Module.compHom ℕ (RingHom.id ℕ)).toMulAction = MulAction.compHom ℕ (MonoidHom.id ℕ) := by with_reducible_and_instances rfl ``` There are two issues this fixes: * the `compHom` constructors are inconsistent on whether they use `SMul.comp.smul` or reimplement its contents * we need `SMul.comp.smul` to be instance-reducible, so that when invoked with the identity function it is instance-defeq to the original action. As a bonus, allowing these to unify means we can have a single `SMul.comp_smul_def` lemma that works for all of the `compHom` definitions. We could also consider changing `compHom` to take a `HomClass` in order to remove the casts entirely, which would remove the need to add these `SMul.comp` terms. This PR leaves that for possible future work, noting that in the past we have moved away from writing `def`s taking `HomClass`es. Co-authored-by: Junye Ji --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Refined from #38777 t-algebra delegated
label:t-algebra$
46/26 Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/End.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Complex/UpperHalfPlane/ProperAction.lean,Mathlib/Topology/Algebra/Group/OpenMapping.lean 9 8 ['JJYYY-JJY', 'Vierkantor', 'eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-bors'] nobody
3-50606
3 days ago
14-84060
14 days ago
8-53809
8 days
26395 winstonyin
author:winstonyin
feat: $C^1$ vector fields on compact manifolds define global flows This PR continues the work from #22254. Original PR: https://github.com/leanprover-community/mathlib4/pull/22254 Any $C^1$ vector field on a compact boundaryless manifold `M` defines a unique global flow `ℝ → M → M`. - [ ] depends on: #26394 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry blocked-by-other-PR merge-conflict 212/52 Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/Compact.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Order/Filter/Prod.lean 4 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'winstonyin'] nobody
3-46096
3 days ago
339-20938
339 days ago
0-52
52 seconds
39863 thomaskwaring
author:thomaskwaring
feat(Topology/Sets/Opens): Heyting-algebra operations on open sets Add expressions for the Heyting-algebra operations on the frame of opens subsets of a topological space. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 22/0 Mathlib/Topology/Sets/Opens.lean 1 9 ['eric-wieser', 'github-actions', 'thomaskwaring'] nobody
3-44622
3 days ago
4-3839
4 days ago
4-11352
4 days
39855 b-mehta
author:b-mehta
feat(InfiniteSum): zero function has product zero Prove that in a comm monoid with zero, the product of the zero function is zero. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 13/0 Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 1 3 ['b-mehta', 'github-actions', 'plp127'] nobody
3-44400
3 days ago
3-44446
3 days ago
4-11248
4 days
35812 khwilson
author:khwilson
feat(MeasureTheory/Group/GeometryOfNumbers): successive minima and existence of a directional basis Define the successive minima of a discrete subgroup of a real vector space with respect to a convex set. These invariants show up throughout the geometry of numbers and are the focus of Minkowski's Second Theorem (whose statement is left here with a `proof_wanted`). Note: The key lemma is that the "gauge set" of the convex set is closed. I took the approach of showing that it is sequentially closed. There's an alternative approach via showing it's the union of a finite number of closed sets. I personally thought this approach was more intuitive, but the union approach may result in a slightly shorter proof. Co-authored-by: Yaël Dillies --- - [x] depends on #37738 - [x] depends on #37740 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability awaiting-author 344/32 Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Body.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/MeasureTheory/Group/GeometryOfNumbers.lean 5 55 ['Vierkantor', 'YaelDillies', 'github-actions', 'joneugster', 'khwilson', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
3-43449
3 days ago
4-8055
4 days ago
36-85063
36 days
36529 idontgetoutmuch
author:idontgetoutmuch
Connection 1 form scribbles Some thoughts on connection 1-forms - not meant to be ever merged but here for convenience of discussion new-contributor t-differential-geometry merge-conflict 496/52 Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/Algebra/FundamentalVectorField.lean,Mathlib/Geometry/Manifold/IntegralCurve/Compact.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Order/Filter/Prod.lean 5 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
3-42168
3 days ago
unknown
0-0
0 seconds
37528 kim-em
author:kim-em
feat: @[simps] warns when generating defeq abusing lemmas t-meta merge-conflict 202/16 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/DirectSum/AddChar.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Equiv/TypeTags.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/Weights/Linear.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/Cokernel.lean,Mathlib/Algebra/Module/Presentation/DirectSum.lean,Mathlib/Algebra/Module/Presentation/Tautological.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/Module/Submodule/RestrictScalars.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Opposite.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/Subring/MulOpposite.lean,Mathlib/Algebra/TrivSqZeroExt/Basic.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Combinatorics/Quiver/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Data/Bundle.lean,Mathlib/Data/Matrix/DualNumber.lean,Mathlib/Data/Multiset/Fintype.lean,Mathlib/Data/Real/ENatENNReal.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/Multilinear/DFinsupp.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Fin/Basic.lean,Mathlib/Logic/Function/FromTypes.lean,Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/Encoding.lean,Mathlib/ModelTheory/LanguageMap.lean,Mathlib/Order/CompleteSublattice.lean,Mathlib/Order/Hom/Bounded.lean,Mathlib/Order/Hom/BoundedLattice.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Order/Hom/Lattice.lean,Mathlib/Order/Sublattice.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Extension/Cotangent/Basic.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/PointwiseConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean,Mathlib/Topology/FiberBundle/Constructions.lean,MathlibTest/Simps.lean 75 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
3-42042
3 days ago
unknown
0-0
0 seconds
38989 grunweg
author:grunweg
chore: remove `(d)simp only []` Either remove them (when they were unnecessary), or replace by something more low-level. --- I'm happy to make them `simp only` instead, if that is preferred. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 10/17 Counterexamples/AharoniKorman.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RE.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Computability/TuringMachine/StackTuringMachine.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/ModelTheory/Encoding.lean 11 5 ['b-mehta', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
3-40346
3 days ago
3-40347
3 days ago
20-56482
20 days
38601 khwilson
author:khwilson
feat(Topology/Semicontinuity/Hemicontinuity): characterizations of hemicontintuous notions In the previous PR we introduced two new notions attached to correspondences: having open lower sections and having an open graph. This commit introduces several useful characterizations of these notions and uses them to prove several constructions around hemicontinuous maps --- - [ ] depends on: #38600 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR 413/10 Mathlib/Topology/Semicontinuity/Defs.lean,Mathlib/Topology/Semicontinuity/Hemicontinuity.lean 2 4 ['eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues'] nobody
3-39434
3 days ago
32-30241
32 days ago
0-1005
16 minutes
38600 khwilson
author:khwilson
feat(Topology/Semicontinuity): additional definitions for correspondences On the way to proving Michael's selection theorem, several extra notions related to hemicontinuity are introduced. Specifically, the notion of a correspondence having lower sections and it having an open graph. The first construction is what is used in the proof of Michael's theorem to generate approximations to the target selection. The second is used in the iterative step to generate new lower hemicontinuous maps. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 139/0 Mathlib/Topology/Semicontinuity/Defs.lean 1 8 ['eric-wieser', 'github-actions', 'j-loreaux', 'khwilson'] j-loreaux
assignee:j-loreaux
3-38886
3 days ago
4-32096
4 days ago
11-6943
11 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'] nobody
3-37688
3 days ago
23-65752
23 days ago
23-65714
23 days
37062 tannerduve
author:tannerduve
feat(Computability): Turing join and semilattice structure on Turing degrees ## Summary - Add `Partrec.kronecker` (equality test) and `Partrec.join` (disjoint union by parity) in `Partrec.lean` - Prove `Nat.RecursiveIn` is closed under computable conditionals (`cond_const`, `cond`) - Show each component reduces to the join (`left_le_join`, `right_le_join`) and the join is the least upper bound (`join_le`) - Establish `SemilatticeSup` instance on `TuringDegree` t-computability new-contributor large-import 311/15 Mathlib/Computability/Partrec.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/TuringDegree.lean 3 7 ['Komyyy', 'github-actions', 'mathlib-merge-conflicts', 'tannerduve'] Komyyy
assignee:Komyyy
3-37515
3 days ago
46-72593
46 days ago
47-48449
47 days
39895 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Module/MStructure` - refactors `Normed/Module/MStructure` by replacing a norm-zero argument with `nlinarith` and shortening the proof of `QP_eq_QPQ` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 6/10 Mathlib/Analysis/Normed/Module/MStructure.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-37365
3 days ago
3-38618
3 days ago
3-38580
3 days
39897 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Ring/Basic` - refactors `Normed/Ring/Basic` by removing redundant nonempty-case splits from `Real.iSup_fun_mul_eq_iSup_mul_iSup_of_nonneg` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 0/4 Mathlib/Analysis/Normed/Ring/Basic.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-37363
3 days ago
3-38614
3 days ago
3-38576
3 days
39894 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Lp/WithLp` - refactors `Normed/Lp/WithLp` by deriving scalar tower and scalar commutation instances from `WithLp.equiv` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 4/8 Mathlib/Analysis/Normed/Lp/WithLp.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-37113
3 days ago
3-38620
3 days ago
3-38582
3 days
39896 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Operator/ContinuousLinearMap` - refactors `Normed/Operator/ContinuousLinearMap` by reusing `mkContinuous` in bounded linear continuity proofs and shortening `homothety_inverse` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 5/16 Mathlib/Analysis/Normed/Operator/ContinuousLinearMap.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-37038
3 days ago
3-38616
3 days ago
3-38578
3 days
39898 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Unbundled/AlgebraNorm` - refactors `Normed/Unbundled/AlgebraNorm` by using structure inheritance in `MulRingNorm.toRingNorm` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 1/5 Mathlib/Analysis/Normed/Unbundled/AlgebraNorm.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-36799
3 days ago
3-38612
3 days ago
3-38574
3 days
39899 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Normed/Unbundled/FiniteExtension` - refactors `Normed/Unbundled/FiniteExtension` by proving `Basis.norm_smul` via `Finset.mul₀_sup'` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 4/15 Mathlib/Analysis/Normed/Unbundled/FiniteExtension.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-36659
3 days ago
3-38610
3 days ago
3-38572
3 days
39900 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral` - refactors `Gaussian/GaussianIntegral` by proving `integral_gaussian_complex_Ioi` using `integral_comp_neg_Ioi` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 13/20 Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
3-36556
3 days ago
3-38608
3 days ago
3-38570
3 days
39801 astrainfinita
author:astrainfinita
refactor: unbundle algebra from normed groups and normed rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 5743/5574 Archive/Hairer.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2019Q2.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/Pi.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Module/ZLattice/Summable.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/WithLp.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Completion.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/GelfandNaimarkSegal.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Maps.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/BumpFunction/SmoothApprox.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Comp.lean,Mathlib/Analysis/Calculus/ContDiff/Convolution.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/Deriv.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/Polynomial.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/RestrictScalars.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/ContDiffHolder/Pointwise.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/CompMul.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean 872 11 ['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
3-36287
3 days ago
unknown
0-0
0 seconds
39825 adomani
author:adomani
ci(decls-diff): scaffold a post-build, Lean-aware PR-summary refresh ## Reference Adds the scaffolding for a `workflow_run`-triggered job that refreshes the existing `### PR summary` comment's `#### Declarations diff` section with a Lean-aware diff, replacing the regex-based pre-build content once the Build completes successfully. Net additions (six files; ~1040 lines): | File | Purpose | | --- | --- | | `.github/workflows/build_template.yml` (modified, +25 / −5) | Adds a dump step after `lake exe graph` that emits `decls.txt` + `imports.json` from the just-loaded env; bundles them into the existing `import-graph` artifact with a 90/7-day retention split (master / non-master). | | `.github/workflows/decls-diff.yml` (new) | Post-build workflow (`workflow_run` + `workflow_dispatch`). Downloads the PR-build's artifact and the merge-base's master artifact; computes the Lean-aware diff; PATCHes the PR-summary comment. | | `.github/actions/decls-diff/action.yml` (new) | Composite action consuming the two `decls.txt` files; emits a Markdown override snippet + raw `+/-NAME` diff. No env loading. | | `.github/actions/decls-diff/updateDeclsDiffSection.py` (new) | Python comment patcher (\`MODE=success\` surgically replaces the section; \`MODE=warning\` appends a "merge master and retry" \`
\` block on cache-missing). Idempotent. | | `scripts/dumpReasonableDecls.lean` (new) | Single Lean script: dumps a sorted list of "reasonable" declarations (matches the filter Lean's auto-completion and most Mathlib linters use) and a JSON of transitive-import counts (using \`Lean.Environment.importGraph\` + \`NameMap.transitiveClosure\` from the \`importGraph\` package). Both outputs in one \`withImportModules\` env load. | | `scripts/declsDiff.sh` (new) | Thin driver that takes two pre-computed `decls.txt` files and emits the Markdown override snippet. Used by the composite action above. | ## Explanation The existing pre-build `PR_summary.yml` workflow uses a regex pass over `git diff` (`scripts/declarations_diff.sh`) and a Python directory-walker (`scripts/count-trans-deps.py` in mathlib-ci) to produce the `#### Declarations diff` and `#### Import changes for modified files` sections of the PR summary comment. Both have known accuracy gaps: - **Declarations diff (regex):** can't see `to_additive`/`to_dual`/`to_op` autogenerated declarations (their names don't appear in `git diff`), and miscounts anything renamed across files. The Lean-aware version reads `env.constants` from the compiled environment, so it captures every declaration that actually exists in the env. - **Transitive-imports counter (regex):** the current `^(public )?import\s+(?P.*)` pattern captures everything after `import ` as the module name, including trailing `-- shake: keep` annotations and similar comments. Any file with such a comment has its transitive count silently truncated. Empirically, this affects ~all 8086 Mathlib modules — median undercount is +92, worst case +1204 transitive imports vs. the Lean-aware value. The post-build workflow consumes artifacts that Build *already* produces (this PR just extends the `import-graph` artifact to also include the two new files), so the only added cost on Build is one extra `lake env lean --run` invocation — ~3-5 min on hot page cache. The post-build workflow itself does no env loading: two artifact downloads + a file-level diff + a comment PATCH, ~30 seconds end to end. ## How to test This PR targets a `ci-dev/*` branch. To trigger: 1. Navigate to . 2. Run workflow on \`ci-dev/lean-aware-decls-diff\`. 3. Watch the Build job; verify the new \"dump declarations and transitive-import counts for PR summary\" step succeeds and adds \`decls.txt\` / \`imports.json\` to the \`import-graph\` artifact. 4. Once Build is green, manually trigger the \`Declarations diff (post-build)\` workflow via its own \`workflow_dispatch\` button, passing the \`run_id\` of the just-completed Build. The workflow_run trigger doesn't auto-fire from a non-default branch's workflow file, so the dispatch button is the testing escape hatch — once this lands on master, the workflow_run side starts firing automatically. 5. The expected result on a real PR is a PATCH to the \`### PR summary\` comment that swaps the regex-based \`#### Declarations diff\` section for the Lean-aware version (stamped with \`> ✅ **Lean-aware diff** …\`). The first few CI-dev runs will exercise just the Build-side extension. Once the artifact shape is confirmed, the post-build workflow can be exercised by pointing its \`workflow_dispatch\` at a recent Build run. ## Follow-ups (not in this PR) - **mathlib-ci PR**: extract the inline body-builder from `PR_summary.yml` into `scripts/pr_summary/build_summary_body.sh` and add four override env vars (`DECLS_DIFF_OVERRIDE_FILE`, `DECLS_DIFF_TRAILER_FILE`, `BASE_JSON`, `HEAD_JSON`). Behaviour-preserving on its own. Once it lands, this workflow can stop using the surgical patcher and instead call `build_summary_body.sh` to regenerate the *full* PR summary body — which makes the `#### Import changes for modified files` section Lean-aware too (it just consumes the `imports.json` files). - **Comment-format alignment**: keep the existing `* N added declarations` bullet wording and conditional `
` wrapping (already matched here). - **Optional optimisation**: instead of recomputing prep inputs in `decls-diff.yml`, have `PR_summary.yml` upload them as a sibling artifact and have this workflow consume it. Saves ~30 s.
CI merge-conflict 1121/5 .github/actions/decls-diff/action.yml,.github/actions/decls-diff/updateDeclsDiffSection.py,.github/workflows/build_template.yml,.github/workflows/ci_dev.yml,.github/workflows/decls-diff.yml,scripts/README.md,scripts/declsDiff.sh,scripts/dumpReasonableDecls.lean 8 8 ['adomani', 'github-actions', 'mathlib-merge-conflicts'] nobody
3-36285
3 days ago
unknown
0-0
0 seconds
38582 dennj
author:dennj
feat(LinearAlgebra/Matrix): add Hadamard matrices Introduce `Matrix.IsHadamard` over a general `Ring R`, with the basic theory: - `IsHadamard` and `IsComplexHadamard` predicates (Definitions 2.3.1 and 2.7.1 of de Launey–Flannery, *Algebraic Design Theory*). - `IsHadamard.det_sq`: the Hadamard determinant identity `(det A)² = n^n`. - `IsHadamard.det_ne_zero`: over an integral domain of characteristic zero. - `IsHadamard.transpose`: `Aᵀ` is Hadamard whenever `A` is (Theorem 2.3.6), proved over `[CommRing R] [IsDomain R] [CharZero R]` via the adjugate. - `IsHadamard.card_eq_sq_of_const_row_sum`: a Hadamard matrix with constant row sum `s` has order `s²` (slightly stronger than Theorem 2.3.7: the constant-column-sum hypothesis is implied by orthogonality). - `IsHadamard.kronecker`: the Sylvester (Kronecker product) construction. - `IsHadamard.four_dvd_card`: order of a Hadamard matrix of order > 2 is divisible by 4. `Matrix.mul_eq_smul_one_symm`: if `M * N = c • 1` and `det M ≠ 0` over an integral domain, then `N * M = c • 1`. Used here for the transpose proof, but generally useful, analogous to how `mul_eq_one_comm` works over stably finite rings, but covers the integral-domain case (e.g. `ℤ`, `ℤ[X]`) where matrix inverses don't exist. ## References Adds the de Launey–Flannery bibliography entry, cited from the new file. Human-made PR with LLM used for proof golfing and documentation t-algebra new-contributor
label:t-algebra$
270/0 Mathlib.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Star/Unitary.lean,Mathlib/LinearAlgebra/Matrix/HadamardMatrix.lean,docs/references.bib 6 56 ['JJYYY-JJY', 'dennj', 'eric-wieser', 'github-actions', 'themathqueen', 'wwylele'] themathqueen
assignee:themathqueen
3-36063
3 days ago
17-48115
17 days ago
32-67117
32 days
38881 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic` - shortens `stronglyMeasurable_in_set` by inlining the restricted approximation sequence and folding the `hg_eq` / `hg_zero` helper lemmas into the two `by_cases` branches Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 7/13 Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean 1 2 ['github-actions', 'yuanyi-350'] RemyDegenne
assignee:RemyDegenne
3-36060
3 days ago
26-77905
26 days ago
26-77867
26 days
39391 emlis42
author:emlis42
feat(MeasureTheory/Integral): add integral_congr_uIoo This PR adds some congruence lemmas for interval integrals under `NoAtoms μ` and golfs some lemmas. | Lemma | Heartbeats | Proof Elaboration Time | ---- | ---- | ---- `LocallyIntegrable.ae_hasDerivAt_integral` | 7684 → 5235 (−2449, 31%) | 603ms → 445ms (−157ms, 26%) `MonotoneOn.exists_tendsto_deriv_liminf_lintegral_enorm_le` | 31019 → 8388 (−22631, 73%) | 2475ms → 631ms (−1843ms, 74%) `MonotoneOn.intervalIntegral_deriv_mem_uIcc` | 22680 → 5983 (−16697, 73%) | 1713ms → 537ms (−1175ms, 68%) `AbsolutelyContinuousOnInterval.integral_deriv_mul_eq_sub` | 1475 → 845 (−630, 42%) | 92ms → 41ms (−50ms, 55%) `fourierCoeff_liftIco_eq` | 1040 → 703 (−337, 32%) | 55ms → 41ms (−13ms, 24%) `taylor_integral_remainder_aux` | 26585 → 18827 (−7758, 29%) | 2095ms → 1575ms (−520ms, 24%) Profiled on top of commit `9e407aa1ef1be515a1bd0e1c1fc081d5b855f25e` using `set_option trace.profiler true in` and ``` set_option Elab.async false in #count_heartbeats in ``` t-measure-probability new-contributor 52/35 Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/AbsolutelyContinuousFun.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/DerivIntegrable.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/LebesgueDifferentiationThm.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] kex-y
assignee:kex-y
3-36059
3 days ago
4-71695
4 days ago
13-64080
13 days
39843 wwylele
author:wwylele
feat(Analysis/Meromorphic): non-zero meromorphic function has multiplicative inverse This is the core lemma to say that the equivalent classes of meromorphic functions have will-defined inverse AI usage disclosure: Aristotle was used to draft the initial proof, and it was manually restructured. --- - [ ] depends on: #39904 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis blocked-by-other-PR 69/22 Mathlib/Analysis/Meromorphic/Order.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
3-35984
3 days ago
3-35984
3 days ago
1-30684
1 day
39826 wwylele
author:wwylele
feat(Analysis): field of meromorphic functions AI usage disclosure: used Aristotle to verify the correctness of a few lemma, but the proof have been rewritten --- Things I have learned while experimenting with this - The current definition `MeromorphicOn f U` directly wraps `MeromorphicAt`, which checks the punctured neighborhood of each point, even if that neighborhood is outside `U`. This is different from `AnalyticOn`, which strictly checks within `U`. - As a consequence, the behavior of `MeromorphicOn` on isolated points is interesting. Consider "U = union of a few isolated points". Meromorphic functions with the same value on the isolated point can have different orders, because they can have different punctured neighborhood that's outside of U. Similarly, the normal form toMeromorphicNFAt are also different because it is computed based on the punctured neighborhood as well. - This makes the documented equivalence relation `=ᶠ[codiscreteWithin U]` questionable. All functions with such "U = isolated points" are equivalent, but they emit different normal forms and orders, making them ill-defined / non-unique / non-canonical on the equivalent class. - But perhaps this doesn't matter because in practice we only consider `IsOpen U`, which excludes such isolated points. In these cases, the equivalence relation is well-behaved and canonical normal form / order / etc for equivalent classes are restored. We just need to add "the point we are checking must be an accumulation point" hypothesis whenever we use the normal form - If we actually care about isolated points, I can see two ways to fix it - change the definition MeromorphicOn to only care about neighborhoods within U. Not sure if this will lead to other problems - change the equivalence relation to `∀x ∈ U, f =ᶠ[𝓝[≠] x] g`. This makes the equivalent classes more fine-grained, but might make it more cumbersome to use - [ ] depends on: #39828 - [ ] depends on: #39831 - [ ] depends on: #39833 - [ ] depends on: #39843 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology blocked-by-other-PR 801/22 Mathlib.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Field.lean,Mathlib/Analysis/Meromorphic/NormalForm.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Topology/Connected/TotallyDisconnected.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
3-27578
3 days ago
unknown
0-0
0 seconds
39779 Hagb
author:Hagb
feat(Order/WellFoundedSet): a set is finite if both a linear order and its opposite order are well founded on it It is a corollary of #39545 on `WellFoundedOn`. --- It was a lemmas for #39781, which has been closed since there would be a better proof. - [ ] depends on: #39545 - [ ] depends on: #39774 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order blocked-by-other-PR 78/0 Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WellFoundedSet.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-26372
3 days ago
unknown
0-0
0 seconds
37082 astrainfinita
author:astrainfinita
chore(Order/CompleteLatticeIntervals): use different default values for `sSup` and `sInf` In a subsequent PR, some assumptions will be added to `ordConnectedSubsetConditionallyCompleteLinearOrderOfBotTop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 34/25 Mathlib/Order/CompleteLatticeIntervals.lean 1 6 ['YaelDillies', 'astrainfinita', 'bryangingechen', 'github-actions'] bryangingechen
assignee:bryangingechen
3-14885
3 days ago
36-8218
36 days ago
4-44808
4 days
39910 justus-springer
author:justus-springer
feat(AlgebraicGeometry/Morphisms/UniversallyInjective): equivalent criteria for universally injective morphisms We prove [stacks 01S4](https://stacks.math.columbia.edu/tag/01S4), which gives two new equivalent criteria for being universally injective. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry large-import 99/6 Mathlib/AlgebraicGeometry/Morphisms/UniversallyInjective.lean,Mathlib/AlgebraicGeometry/ResidueField.lean 2 2 ['github-actions', 'justus-springer'] nobody
3-10402
3 days ago
3-10480
3 days ago
3-10442
3 days
31222 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): `Hom` commute with flat base change In this PR, we proved `Hom_S (M \tensor S, N \tensor S)` is base change of `Hom_R (M, N)` with respect to `LinearMap.baseChangeHom`. Co-authored-by: Wang Jingting --- - [x] depends on: #31218 - [x] depends on: #31219 - [x] depends on: #31696 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
49/0 Mathlib/Algebra/Module/FinitePresentation.lean 1 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
3-5557
3 days ago
29-46250
29 days ago
29-46478
29 days
33369 Thmoas-Guan
author:Thmoas-Guan
feat(Homology): `Ext` commute with flat base change In this PR, using the linear map `Ext(M,N) => Ext(F(M), F(N))` when `F` is exact functor, we prove that `Ext` commute with flat base change if the ring is noetherian and two modules are finitely generated, stated using `IsBaseChange`. --- - [x] depends on: #31046 - [ ] depends on: #31222 - [x] depends on: #32316 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-topology 432/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean,Mathlib/Algebra/Module/FinitePresentation.lean 3 6 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
3-5517
3 days ago
151-84171
151 days ago
0-1554
25 minutes
39039 Vierkantor
author:Vierkantor
feat(Tactic): convert now discharges side goals at reducible transparency This PR changes the `postCongr!` discharge step of the `convert` tactic to operate at reducible transparency by default, just like the `preCongr!` step. This should make the behaviour more predictable since it does not unfold quite as much. `convert_to` and `ac_change` get a similar modification, since they are macros on top of `convert`. To get back the old behaviour and work at default transparency, write `convert!`. To make Mathlib not break due to this change, we replace all occurrences of `convert` with `convert!` in the next commit. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Mathlib.20code.20quality.3A.20simpa/with/594729278 --- - [x] depends on: #39715 - [x] depends on: #39721 - [ ] depends on: upcoming PRs that break this change into smaller chunks [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author merge-conflict WIP 3393/2704 Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Spectrum/Pi.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/Descent.lean,Mathlib/Algebra/Category/ModuleCat/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/Algebra/Category/ModuleCat/Subobject.lean,Mathlib/Algebra/Category/Ring/Instances.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/GCDMonoid/IntegrallyClosed.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Action/Equidecomp.lean,Mathlib/Algebra/Group/ForwardDiff.lean,Mathlib/Algebra/Group/Pointwise/Set/Finite.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Saturation.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/CommSq.lean,Mathlib/Algebra/Homology/DifferentialObject.lean,Mathlib/Algebra/Homology/SpectralObject/EpiMono.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/Algebra/Jordan/Basic.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/Basis.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Lie/Weights/Cartan.lean,Mathlib/Algebra/Lie/Weights/IsSimple.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/Algebra/Module/LocalizedModule/Int.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/Algebra/Module/SpanRankOperations.lean,Mathlib/Algebra/Module/Submodule/Union.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Comap.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Antidiag/Finsupp.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/List.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Group/Int/Sum.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Algebra/Order/Monoid/LocallyFiniteOrder.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Algebra/Order/Ring/Abs.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Order/Sub/Unbundled/Basic.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/CancelLeads.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean 1287 27 ['JovanGerb', 'Vierkantor', 'github-actions', 'grunweg', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
3-4647
3 days ago
16-1655
16 days ago
0-7832
2 hours
39185 ooovi
author:ooovi
feat(Geometry/Convex/Cone/Pointed): faces of pointed cones - Define PointedCone.IsFaceOf, for a pointed cone being a face of another pointed cone. - Prove some basic properties, that faces are extreme sets of their cone, and how they behave under intersection, map and product operations. Co-authored-by: Martin Winter --- split off of #33664 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 289/0 Mathlib.lean,Mathlib/Geometry/Convex/Cone/Face/Basic.lean 2 4 ['YaelDillies', 'github-actions', 'martinwintermath', 'mathlib-bors'] YaelDillies
assignee:YaelDillies
3-2698
3 days ago
3-2698
3 days ago
3-5319
3 days
39067 mbkybky
author:mbkybky
feat(Algebra/Module): define modules admitting finite free resolutions We say that an `R`-module `M` has a finite free resolution if there exists an exact sequence `0 ⟶ Eₙ ⟶ ⋯ ⟶ E₀ ⟶ M ⟶ 0` such that `Eᵢ` are finite free `R`-modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
186/0 Mathlib.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/FiniteFreeResolution/Basic.lean 3 1 ['github-actions'] nobody
3-2001
3 days ago
18-70377
18 days ago
22-6932
22 days
35078 grunweg
author:grunweg
feat: immersed points Define immersed points of a (differentiable) map between manifolds, and prove that immersed points compose. Future PRs show that `x` is an immersed point of `f` if and only if `f` is an immersion at `x`: thus, proving the composition of immersed points (which follows immediately from the chain rule) implies the composition of immersions (which is not obvious from their definition. From the path towards immersions, embeddings and submanifolds. --- - [x] depends on: #35057 - [x] depends on: #35284 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry awaiting-author 199/1 Mathlib.lean,Mathlib/Analysis/Normed/Module/ContinuousInverse.lean,Mathlib/Geometry/Manifold/ImmersedPoint.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-1347
3 days ago
108-86005
108 days ago
0-6
6 seconds
28796 grunweg
author:grunweg
feat: immersions are smooth The conventional textbook definition demands that an immersion be smooth. When asking for the immersion to have local slice charts (as we do), this implies smoothness automatically. --- - [x] depends on: #28701 - [x] depends on: #28793 - [x] depends on: #30356 - [x] depends on: #28853 (for simplicity) - [x] depends on: #36816 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry awaiting-author 94/11 Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean 4 57 ['chrisflav', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'sgouezel'] PatrickMassot
assignee:PatrickMassot
2-85323
2 days ago
134-64127
134 days ago
0-1863
31 minutes
39510 mbkybky
author:mbkybky
WIP: any regular local ring is a UFD Show that any regular local ring is a unique factorization domain. - [ ] depends on: #29802 - [ ] depends on: #36739 - [ ] depends on: #39067 - [ ] depends on: #39420 --- Prepared with Codex [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory blocked-by-other-PR 4731/30 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/FiniteFreeResolution/Basic.lean,Mathlib/Algebra/Module/FiniteFreeResolution/Exact.lean,Mathlib/Algebra/Module/FiniteFreeResolution/HasProjectiveDimensionLE.lean,Mathlib/Algebra/Module/FiniteFreeResolution/Localization.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/Algebra/Module/StablyFree/HasFiniteFreeResolution.lean,Mathlib/LinearAlgebra/Dimension/FreeAndStrongRankCondition.lean,Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Flat/LocallyFree.lean,Mathlib/RingTheory/GlobalDimension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/UFD.lean,Mathlib/RingTheory/LocalProperties/Invertible.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Away/Lemmas.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/AuslanderBuchsbaumSerre.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/GlobalDimension.lean,Mathlib/RingTheory/RegularLocalRing/Localization.lean,Mathlib/RingTheory/RegularLocalRing/UFD.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/Support.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Localization.lean,docs/references.bib 41 4 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-84699
2 days ago
12-80081
12 days ago
0-21
21 seconds
37723 xgenereux
author:xgenereux
feat(Adjoin/Polynomial/Transcendental): Adjoining transcendental elements This PR establishes some basic properties about `A[y]` when `y` is transcendental over `A`. These are mostly just carried over from `A[X]`. - Move `algEquivOfTranscendental` in the newly created file `Mathlib.RingTheory.Adjoin.Polynomial.Transcendental` - Add `Algebra.adjoin.evalOfTranscendental`. This is technically very similar to `Algebra.adjoin.liftSingleton` but the definition is much simpler. It is also currently more general in the sense that it doesn't require `A` to be a field. - Some basic instances from `Polynomial`. Note that these are actually theorems because of the hypothesis `(h : Transcendental R s)` everywhere. I've also added a `Fact` version to allow the possibility of instances. Last note : I initially considered adding some results in `RingTheory.Polynomial.Quotient` where I golfed the file a tiny bit. I removed the unused results but kept the golf. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- - [ ] depends on: #36439 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 135/65 Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean,Mathlib/RingTheory/Adjoin/Polynomial/Transcendental.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean 8 5 ['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
2-82808
2 days ago
53-31913
53 days ago
0-1922
32 minutes
39369 pd4st8hb95-hub
author:pd4st8hb95-hub
feat: add basic fuzzy set definitions This PR adds a minimal `FuzzySet` API in `Mathlib/Order/FuzzySet`. A fuzzy set is represented as an abbreviation: `FuzzySet α L := α → L` The file provides basic definitions and lemmas: - `degree` - `support` - `core` - `weakCut` - `strongCut` - membership simp lemmas - extensionality - basic monotonicity lemmas for weak and strong cuts This PR intentionally does not add complement, union/intersection-specific API, normal or convex fuzzy sets, fuzzy relations, or advanced fuzzy set theory. Validation: - `lake build Mathlib.Order.FuzzySet` - `#lint only docBlame docBlameThm` Feedback on whether `Mathlib/Order/FuzzySet.lean` is the right location for this minimal API would be appreciated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 169/0 Mathlib.lean,Mathlib/Order/FuzzySet.lean 2 6 ['github-actions', 'grunweg', 'pd4st8hb95-hub', 'wwylele'] nobody
2-80220
2 days ago
13-77821
13 days ago
13-78143
13 days
39574 FordUniver
author:FordUniver
feat(Analysis/Calculus/LipschitzSmooth): add `LipschitzSmoothWith` and `CocoerciveWith` Introduces `LipschitzSmoothWith K f` on a normed real vector space and `CocoerciveWith K f` on a Hilbert space. `LipschitzSmoothWith` is opaque with characterisations in four derivative-flavoured forms (directional, Fréchet, 1D, gradient) under appropriate differentiability hypotheses, plus descent-inequality extractors and variance bounds; `CocoerciveWith` is an `abbrev` with the elementary direction `K`-cocoercive ⟹ `K`-Lipschitz gradient. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- The `lineDeriv` form is the internal canonical form because it does not presuppose Fréchet differentiability; the `@[expose]` annotation is deliberately omitted so that downstream code reaches the predicate through the named iff/extractor API rather than direct destruction, treating the choice as an implementation detail. The `K / 2` convention is chosen so that the descent lemma is constant-preserving: a function with `K`-Lipschitz Fréchet derivative is exactly `K`-smooth in this sense. This PR is intentionally minimal and contains only the definition and some basic `rw` and `apply` lemmas. I have some follow up PRs planned (not fully polished yet) that establish the usual implications plus pre-requisites: 1. **Descent lemma.** Derives `LipschitzSmoothWith K f` from `LipschitzWith K (fderiv ℝ f)` (and its 1D / gradient variants) under `Differentiable ℝ f`, via segment-level FTC. [diff](https://github.com/FordUniver/mathlib4/compare/diffbase/lipschitzSmooth-descent...feat/lipschitzSmooth-descent) 2. **First-order convex inequalities.** Adds `ConvexOn.add_{lineDeriv,fderiv,gradient,deriv}_le` (and strict variants + concave duals) — the tangent-line-lower-bound characterisations of `ConvexOn`. [diff](https://github.com/FordUniver/mathlib4/compare/diffbase/convex-first-order-inequalities...feat/convex-first-order-inequalities) 3. **Baillon-Haddad theorem and convex equivalences.** Under `ConvexOn ℝ Set.univ f` + `Differentiable ℝ f`, `LipschitzSmoothWith K f → CocoerciveWith K f`, closing the four-way equivalence with `LipschitzWith K (fderiv ℝ f)` and `LipschitzWith K (∇ f)`. [diff](https://github.com/FordUniver/mathlib4/compare/diffbase/lipschitzSmooth-convex...feat/lipschitzSmooth-convex) 4. **Continuity and the `K = 0` boundary case.** A continuity statement `LipschitzSmoothWith K f → Continuous f` (non-trivial in the general non-differentiable case), and the characterisation `LipschitzSmoothWith 0 f ↔ ConcaveOn ℝ Set.univ f` under differentiability. 5. **Algebraic preservation lemmas.** `LipschitzSmoothWith` closed under `+` (with `K₁ + K₂`), `c •` for `c ≥ 0` (with `c · K`), composition with affine maps (with `‖A.linear‖² · K`). [diff](https://github.com/FordUniver/mathlib4/compare/feat/lipschitzSmooth-basic...feat/lipschitzSmooth-algebra) Beyond those, larger-picture generalisations remain open: a set-restricted version `LipschitzSmoothOnWith K f s` (with `s` a convex subset, parallel to the standard pattern for `ConvexOn`, `LipschitzOn`, etc.), and possibly broadening the base field / target away from `ℝ` (e.g. complex Hilbert spaces; vector-valued targets would require a different right-hand side and likely a separate predicate). The only unmerged upstream dependency is #39203, needed for the gradient-form characterisations. The base definition and the directional / Fréchet / 1D characterisations are independent of any unmerged work. - [ ] depends on: #39203 - [x] depends on: #14502 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/refactor/gradient-ungate-inner-lemmas...feat/lipschitzSmooth-basic) t-analysis blocked-by-other-PR 344/10 Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Calculus/LipschitzSmooth/Basic.lean,Mathlib/Analysis/Calculus/LipschitzSmooth/Deriv.lean,Mathlib/Analysis/Calculus/LipschitzSmooth/FDeriv.lean,Mathlib/Analysis/Calculus/LipschitzSmooth/Gradient.lean 6 4 ['FordUniver', 'Komyyy', 'github-actions', 'mathlib-dependent-issues'] nobody
2-76131
2 days ago
10-78198
10 days ago
0-5994
1 hour
38745 FordUniver
author:FordUniver
refactor(Combinatorics/SimpleGraph/Copy): rename copy counts, align variable names, clean up docstring Renames `labelledCopyCount` to `copyCount` and reassigns the previous `copyCount` to `unlabeledCopyCount`. Unifies graph-variable letters to the standard `G`uest / `H`ost convention. Restructures and cleans up the module docstring. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Step 2/5 of the `Copy` / `InducedCopy` refactor-feat stack.** Originally motivated by [a adiscussion](https://github.com/leanprover-community/mathlib4/pull/38631#discussion_r3163732684) in #38631 by @SnirBroshi that the British spelling of `labelled` is deprecated; see also discussion on Zulip ([#general > SimpleGraph.Copy is labeled but copyCount is not](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/SimpleGraph.2ECopy.20is.20labeled.20but.20copyCount.20is.20not)). The addition of the new `UnlabeledCopy` type was separated into #39307 as a requirement to keep the diff somewhat readable. On top of the Zulip discussion I also unified the argument naming to always follow the `G`uest / `H`ost convention. This highlighted a discrepancy where we write `Copy G H` but `copyCount H G`. I left this untouched since small-first-big-later seems to be the type and big-first-small-later the ops norm in mathlib. I am happy to align them if someone has a strong opinion either way. I also adjusted a ton of docstrings since the rename was already touching them, so it seemed sensible to use this opportunity for cleanup. Open to suggestions for what should be done differently. I also considered replacing `Bot`/`Top` with `EmptyGraph`/`CompleteGraph` in args and statement names (@SnirBroshi that was the now-closed #39303 ) because I thought that was established with #23838 but it seems [controversial](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/completeGraph.20vs.20.E2.8A.A4), so I have reverted it. | notion | before | after | |---|---|---| | labelled copy / injective hom / monomorphism | `Copy A B` | `Copy G H` | | count of labelled copies | `G.labelledCopyCount H` | `H.copyCount G` | | count of unlabelled copies | `G.copyCount H` | `H.unlabeledCopyCount G` | | killing operation | `G.killCopies H` | `H.killCopies G` | | graph variables | mixed `A B C` / `α β γ` and `G H I` / `V W X` | uniform `G H I` / `V W X` (+ `G'`/`H'` on `V'`/`W'`) | - [x] depends on: #39307 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/feat/copy-sub-abbrev...chore/copy-spelling) t-combinatorics new-contributor blocked-by-other-PR 234/241 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 22 ['FordUniver', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mitchell-horner'] nobody
2-75856
2 days ago
16-74101
16 days ago
11-52734
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
2-75851
2 days ago
5-15815
5 days ago
15-24916
15 days
38631 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph/InducedCopy): add `UnlabeledEmbedding`, `unlabeledEmbeddingCount` and `embeddingCount` Extracts the induced-containment material from `SimpleGraph/Copy.lean` into a new `SimpleGraph/InducedCopy.lean` and adds the induced analogues of `UnlabeledCopy`/`copyCount`/`unlabeledCopyCount`: a type `UnlabeledEmbedding G H` for induced subgraphs of `H` isomorphic to `G`, a count `H.embeddingCount G := Nat.card (G ↪g H)` for induced labeled copies (i.e. graph embeddings), and a count `H.unlabeledEmbeddingCount G := Nat.card (G.UnlabeledEmbedding H)` for induced unlabelled copies, each with the parallel `_of_isEmpty` / `_eq_zero` / `_pos` / `_le_*` / `_eq_nat_card` API. `IsIndContained`, the `⊴` notation, `IndFree`, and all related lemmas move from `Copy.lean` to the new file. `Embedding.range_toSubgraph` characterises induced subgraphs as the range of `Embedding.toSubgraph : (G ↪g H) → H.Subgraph` and bridges `embeddingCount` to `unlabeledEmbeddingCount`. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Final step 5/5 of the `Copy` / `InducedCopy` refactor stack.** The new file mirrors `Copy.lean`'s organisation (containment → counting → killing sections) for the induced row; the killing-induced-copies machinery is left as a TODO. Naming follows the convention established in #38745: types are guest-first (`UnlabeledEmbedding G H`, `IsIndContained G H`), operations host-first (`H.embeddingCount G`, `H.unlabeledEmbeddingCount G`). The induced labelled type is `Embedding`, i.e., `G ↪g H`, directly. Two bookkeeping changes in `Copy.lean`: `Copy.isContained` / `Embedding.isContained` / `Iso.isContained`/`'` and `isContained_iff_exists_le_comap`, which lived in the now-deleted "Induced containment" section but are non-induced, move up into the `IsContained` section. `LineGraph.lean`'s `Copy` import switches to `InducedCopy` since it uses `IsIndContained`. The cross-module proofs `embeddingCount_le_copyCount` and `unlabeledEmbeddingCount_le_unlabeledCopyCount` bridge through the public `copyCount_eq_nat_card`/`unlabeledCopyCount_eq_nat_card` lemmas introduced in #38931 (the counts themselves remain unexposed per @plp127's review). `Embedding.ofIsInduced` (used by `Embedding.range_toSubgraph`) comes from the independent prerequisite #39288. | | labeled | unlabeled | |---|---|---| | ordinary | `Copy` / `copyCount` | `UnlabeledCopy` / `unlabeledCopyCount` | | induced | `Embedding` / `embeddingCount` | `UnlabeledEmbedding` / `unlabeledEmbeddingCount` | This branch sits on top of an octopus-merge diffbase (`FordUniver:diffbase/ind-copy-count`) of `chore/copy-nat-card` and `feat/subgraph-ofIsInduced`, so the link below shows only the changes intrinsic to this PR. - [ ] depends on: #38931 - [ ] depends on: #39288 Diff for the changes *just* in this PR over its predecessors: [link](https://github.com/FordUniver/mathlib4/compare/diffbase/ind-copy-count...feat/ind-copy-count). t-combinatorics new-contributor blocked-by-other-PR large-import 635/344 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/InducedCopy.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 5 42 ['FordUniver', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127'] nobody
2-75843
2 days ago
29-16763
29 days ago
2-46521
2 days
39877 kim-em
author:kim-em
feat(ci): cross-reference tag review via post-build dump + workflow_run shim This PR adds the cross-reference tag review pipeline on the mathlib4 side. Three new steps in `post_steps` of [build_template.yml](.github/workflows/build_template.yml) run `scripts/dump_crossref_tags.lean`, upload its TSV unconditionally as a plain `crossref-tags-baseline` artifact (30-day retention), and on PR builds also emit a privileged `crossref-tags-bridge` via [`privilege-escalation-bridge`](https://github.com/leanprover-community/privilege-escalation-bridge). A new [crossref_review.yml](.github/workflows/crossref_review.yml) workflow_run listener consumes the bridge, caches and pre-builds `crossref-render` from a pinned [external-tags](https://github.com/leanprover-community/external-tags) ref, and invokes the orchestrator in [mathlib-ci #44](https://github.com/leanprover-community/mathlib-ci/pull/44). Trust model: the privileged job runs only code from `mathlib-ci@` (which in turn only runs `external-tags@`). The TSV is parsed as untrusted data; user-controllable fields are escaped before going into the bot comment. - [ ] depends on: #39876 🤖 Prepared with [Claude Code](https://claude.com/claude-code) CI blocked-by-other-PR 265/0 .github/workflows/build_template.yml,.github/workflows/crossref_review.yml,scripts/README.md,scripts/dump_crossref_tags.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
2-75787
2 days ago
3-74556
3 days ago
0-111
1 minute
39288 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph/Subgraph): add `Embedding.ofIsInduced` and `IsInduced.map` Three additions to the `SimpleGraph.Subgraph` API for induced subgraphs. `Embedding.ofIsInduced` is the canonical embedding of an induced subgraph into its ambient graph, paired with `toHom_ofIsInduced` and `ofIsInduced_apply` lemmas. This is the embedding counterpart of `Subgraph.hom`, which only produces a homomorphism because non-induced subgraphs do not reflect adjacency. `Subgraph.IsInduced.map` then records that the image of an induced subgraph under a graph embedding is induced, strengthened to `IsInduced.map_iff` for the iso case. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Orthogonal pre-requisite of the `Copy` / `InducedCopy` refactor-feat stack.** Extracted as a prerequisite from #38631 that is otherwise independent of the wider `Copy` / `InducedCopy` refactor-feat stack. t-combinatorics 27/4 Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 2 16 ['FordUniver', 'SnirBroshi', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
2-75315
2 days ago
5-15431
5 days ago
16-51309
16 days
38909 CBirkbeck
author:CBirkbeck
feat(RingTheory/MvPolynomial/WeightedHomogeneous): sub, eq_zero_of_no_monomials, eq_monomial_of_unique_weight Adds three weighted-homogeneous API lemmas extracted from #38813 to keep that PR reviewable: `IsWeightedHomogeneous.sub`, `eq_zero_of_no_monomials`, `eq_monomial_of_unique_weight`. LLM-generated 24/0 Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 1 1 ['github-actions'] nobody
2-75192
2 days ago
unknown
0-0
0 seconds
39691 Raph-DG
author:Raph-DG
feat(Topology): An open cover of a preconnected set has no isolated components In this PR we show that a family of open sets whose union is preconnected has the property that for any two (nonempty) sets U and V in the cover there is a sequence of sets in the cover U = U_0, U_1,..., U_n = V such that U_i \cap U_{i+1} is nonempty for all i. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 20/0 Mathlib/Topology/Connected/Basic.lean 1 5 ['Raph-DG', 'github-actions', 'plp127'] nobody
2-74714
2 days ago
6-84991
6 days ago
8-5164
8 days
39690 b-mehta
author:b-mehta
feat(Analysis/Complex/Exponential): add new bounds on exponential We add new upper bounds on Real.exp in terms of 2x/(2+x), and use these to move some bounds on log higher in mathlib. We also add a lemma for the common bound (1+1/n)^n <= e, though this is a special-case of `one_sub_div_pow_le_exp_neg` (immediately before), but is added for convenience and discoverability, as this is a "well-known" bound. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 36/11 Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/ExponentialBounds.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean 4 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
2-73616
2 days ago
2-73655
2 days ago
6-43523
6 days
39935 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph/Finite): LocallyFiniteOrder Adds an order-theoretic `LocallyFiniteOrder (SimpleGraph V)` instance (closed intervals are finite), distinct from the existing graph-theoretic `LocallyFinite` (vertex degrees) already in this file. The instance takes `DecidableLE` as an explicit hypothesis rather than routing through `Classical`, because per-graph `DecidableRel G.Adj` is value-dependent and cannot be a free global instance. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- Came up while writing a Möbius inversion between copy counts and induced copy counts ([WIP](https://github.com/FordUniver/mathlib4/pull/36/changes)) that sums over the closed interval `Finset.Icc G ⊤` of supergraphs. Decidability of the order plus local-finiteness of the lattice felt like a clean standalone piece to land first, before the rest of the Möbius file. Less sure about what the conventions for declaring type class instances are in mathlib, let me know if this is not of the expected shape or should not be included at all. t-combinatorics 20/0 Mathlib/Combinatorics/SimpleGraph/Finite.lean 1 1 ['github-actions'] nobody
2-70731
2 days ago
2-72076
2 days ago
2-72038
2 days
39907 Hagb
author:Hagb
feat(Order/InititalSeg): `PrincipalSeg` is trichotomous for well orders For any two well orders, one is a principal segment of the other, or they are isomorphic. Suggested by @vihdzp in the review of #39545 https://github.com/leanprover-community/mathlib4/pull/39545#discussion_r3262466782. It may slightly simplify the proof of `infinite_iff_nonempty_relEmbedding_of_isWellOrder`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 7/0 Mathlib/Order/InitialSeg.lean 1 1 ['github-actions', 'vihdzp'] nobody
2-68743
2 days ago
3-24653
3 days ago
3-24615
3 days
39936 z-tech
author:z-tech
Corradi's intersection lemma Adds Corrádi's intersection lemma (1969): if `A₁, …, Aₘ ⊆ A` each have size `a` and pairwise intersections of size at most `b`, then `m · (a² − b·|A|) ≤ |A| · (a − b)`. The proof is the standard double-counting plus Cauchy–Schwarz on the cover-count function `x ↦ #{i | x ∈ Aᵢ}`. Reference: Jukna, *Extremal Combinatorics* (Springer, 2011), Lemma 5.5. Both an integer form (`corradi_card_le`) and a real-valued form (`corradi_card_le_real`) are provided; the latter avoids `Nat`-subtraction caveats and matches the form used in the classical Johnson bound on list-decoding radius in MDS codes. Co-authored-by: Ziyi Guan Co-authored-by: Ignacio Manzur --- **AI disclosure.** Portions of this file (Lean source and docstrings) were drafted with Claude (Anthropic). The authors have reviewed the proofs, verified they compile against current Mathlib master, and take responsibility for the mathematical content. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics LLM-generated 157/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/Corradi.lean 2 2 ['github-actions'] nobody
2-68294
2 days ago
unknown
0-0
0 seconds
39905 plp127
author:plp127
chore(Order/CompleteBooleanAlgebra): dualize `symmDiff` theorems Dualize some `symmDiff` theorems, and also generalize them from `CompleteBooleanAlgebra` to `Order.Coframe`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 76/39 Mathlib/Order/CompleteBooleanAlgebra.lean 1 3 ['github-actions', 'plp127', 'vihdzp'] nobody
2-67690
2 days ago
3-36654
3 days ago
3-36616
3 days
39939 8e7
author:8e7
feat(Combinatorics/SimpleGraph/TreeDecomp): clique lemma for tree decompositions This PR proves the treewidth of a complete graph is `#V - 1` for finite V, and consequently, `G.cliqueNum - 1 <= G.treeWidth`. This PR follows #38334, and is a direct application of #39864. AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully. --- - [ ] depends on: #38334 - [ ] depends on: #39864 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated blocked-by-other-PR 673/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Star.lean,Mathlib/Combinatorics/SimpleGraph/TreeDecomp.lean 5 4 ['8e7', 'github-actions', 'mathlib-dependent-issues'] nobody
2-65176
2 days ago
2-65177
2 days ago
0-3952
1 hour
37073 kim-em
author:kim-em
feat: add wrap_instance% using core's wrapInstance This PR adds a new `wrap_instance%` term elaborator that delegates to Lean core's `wrapInstance` (from https://github.com/leanprover/lean4/pull/12897), and replaces ~53 `fast_instance%` call sites where the replacement is safe. `wrap_instance%` is a thin wrapper (~15 lines) around `Lean.Meta.wrapInstance`. Like `fast_instance%`, it reduces instances to constructor applications and reuses canonical sub-instances. Unlike `fast_instance%`, it works at `instances` transparency and delegates all normalization logic to core. The replaced sites cover: - Equiv/type-alias transfers (WithAbs, WithConv, WithVal, WithLp, TransferInstance) - Surjective constructors (Con, RingCon quotients, module congruences) - DFunLike leaf instances (MultilinearMap, ContinuousMultilinearMap, AlternatingMap, Intertwining) - Quotient instances (LinearAlgebra/Quotient/Defs) - inferInstanceAs% sites (StandardPart, Presentation/Core) - Miscellaneous (InfiniteAdeleRing, ZMod) This PR *doesn't* attempt to replace all `fast_instance%`; it gets more complicated! 🤖 Prepared with Claude Code 88/59 Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/Algebra/WithConv.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/Tactic/FastInstance.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 16 8 ['JovanGerb', 'github-actions', 'kim-em', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-60051
2 days ago
2-60088
2 days ago
32-49788
32 days
37071 ericluap
author:ericluap
feat: Dedekind completion of rationals is isomorphic to EReal t-order new-contributor 128/4 Mathlib.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/DedekindCut.lean,Mathlib/Order/Completion.lean 4 59 ['ericluap', 'github-actions', 'plp127', 'vihdzp', 'wwylele'] vihdzp
assignee:vihdzp
2-58363
2 days ago
18-69521
18 days ago
41-64671
41 days
35219 kim-em
author:kim-em
feat(GroupTheory/Artin): define Artin groups and their universal property This PR defines Artin groups (also called Artin-Tits groups) as presented groups associated to Coxeter matrices, and establishes their universal property. - `CoxeterMatrix.ArtinGroup`: the Artin group associated to a Coxeter matrix - `CoxeterMatrix.artinGenerator`: the generators of the Artin group - `CoxeterMatrix.IsArtinLiftable`: the braid relation condition for liftability - `CoxeterMatrix.artinLift`: the universal property of Artin groups - `CoxeterMatrix.artinToCoxeter`: the canonical surjection to the Coxeter group - `CoxeterMatrix.artinToCoxeter_surjective`: surjectivity - [ ] depends on: #35218 🤖 Prepared with Claude Code blocked-by-other-PR t-group-theory LLM-generated 429/2 Mathlib.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/Artin/Basic.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/GroupTheory/Coxeter/Perm.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/PresentedGroup.lean 10 6 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-58203
2 days ago
106-40188
106 days ago
0-624
10 minutes
35218 kim-em
author:kim-em
feat(GroupTheory/Coxeter/Perm): type A Coxeter group maps to symmetric group This PR constructs the canonical surjective homomorphism from the type A Coxeter group to the symmetric group, sending simple reflections to adjacent transpositions. - `swapFun`: maps generator `i` to `swap i.castSucc i.succ` - `swapFun_isLiftable`: adjacent transpositions satisfy the Coxeter relations - `CoxeterMatrix.typeAₙToPermHom`: the homomorphism from `(Aₙ n).Group` to `Perm (Fin (n + 1))` - `CoxeterMatrix.typeAₙToPermHom_surjective`: surjectivity - [ ] depends on: #35217 🤖 Prepared with Claude Code blocked-by-other-PR t-group-theory LLM-generated 214/2 Mathlib.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/GroupTheory/Coxeter/Perm.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/PresentedGroup.lean 9 8 ['eric-wieser', 'github-actions', 'joneugster', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-58201
2 days ago
106-40186
106 days ago
0-677
11 minutes
32941 kim-em
author:kim-em
feat(GroupTheory/Artin): add braid groups as Artin groups of type A This PR defines braid groups as Artin groups of type A. - `BraidGroup n`: the braid group B_n on n strands - `BraidGroup.σ`: the standard Artin generators - `BraidGroup.toPermHom`: the canonical surjection B_n → S_n - `BraidGroup.braidGroupTwoEquivInt`: B_2 ≃* ℤ - [ ] depends on: #35219 🤖 Prepared with Claude Code t-group-theory blocked-by-other-PR LLM-generated 590/2 Mathlib.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/Artin/Basic.lean,Mathlib/GroupTheory/Artin/Braid.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/GroupTheory/Coxeter/Perm.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/PresentedGroup.lean 11 27 ['eric-wieser', 'github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier', 'tb65536', 'themathqueen'] tb65536
assignee:tb65536
2-58194
2 days ago
107-5620
107 days ago
13-11162
13 days
39000 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): Sturm bound for finite-index subgroups Sturm bound for arithmetic subgroups commensurable with `SL(2, ℤ)`: a modular form whose q-expansion at the cusp `∞` has order strictly greater than `k · [𝒮ℒ : 𝒢] / 12` is identically zero. Lifted from the level-one case (#38993) via the modular norm map. Final piece of a 5-PR split. ## Main results - `ModularForm.sturm_bound_finiteIndex`: order-based Sturm bound for arithmetic subgroups. - `ModularForm.sturm_bound_finiteIndex_SL2Z`: specialisation to finite-index subgroups of `SL(2, ℤ)`. - A `Module.Finite ℂ (ModularForm 𝒢 k)` instance. - [ ] depends on: #38993 - [ ] depends on: #39083 - [ ] depends on: #39086 - [ ] depends on: #39087 - [ ] depends on: #39088 This PR was done with the help of Claude Code. t-number-theory blocked-by-other-PR LLM-generated 778/1 Mathlib.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/NumberTheory/ModularForms/Identities.lean,Mathlib/NumberTheory/ModularForms/NormTrace.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/NumberTheory/ModularForms/SturmBound.lean 11 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-57754
2 days ago
unknown
0-0
0 seconds
39083 CBirkbeck
author:CBirkbeck
feat(Mathlib): preparations for finite-index Sturm bound Stand-alone helpers extracted from #39000 (finite-index Sturm bound). First of a 5-PR split. ## Main additions - `Mathlib/Analysis/Analytic/Order.lean`: `analyticOrderAt_prod`, `analyticOrderAt_comp_pow_zero`. - `Mathlib/Analysis/Complex/Periodic.lean`: `Periodic.qParam_sub`. - `Mathlib/NumberTheory/ModularForms/QExpansion.lean`: `qExpansion_order_eq_analyticOrderAt_cuspFunction`, `qExpansion_order_le_qExpansion_nat_mul_order`. - `Mathlib/NumberTheory/ModularForms/NormTrace.lean`: `quotientFunc_mdiff`, `quotientFunc_isBoundedAtImInfty`. This PR was done with the help of Claude Code. LLM-generated 115/1 Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/ModularForms/NormTrace.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 7 4 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
2-57651
2 days ago
21-75083
21 days ago
0-1178
19 minutes
39086 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): Galois product machinery Adds the `galoisProd N f τ = ∏ j < N, f (j/N +ᵥ τ)` construction with analytic / order properties in `NormTrace.lean`. Used in the finite-index Sturm bound (#39000). ## Main results - `galoisProd_periodic_one`, `galoisProd_mdiff`, `galoisProd_isBoundedAtImInfty`. - `cuspFunction_one_galoisProd_pow_eq`: pulled back through `qParam`, `galoisProd` is `(cuspFunction f)^N`. - `qExpansion_one_galoisProd_order_eq_qExpansion_self_order`. - [ ] depends on: #39083 This PR was done with the help of Claude Code. blocked-by-other-PR LLM-generated 304/1 Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/ModularForms/NormTrace.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 7 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-57610
2 days ago
unknown
0-0
0 seconds
39088 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): norm map decomposition for Sturm bound Decomposes the modular norm map `ModularForm.norm 𝒮ℒ f` as `galoisProd N f` times a rest factor analytic at the cusp, and shows the resulting q-expansion order at width 1 is at least the order of `f` at its natural cusp width. Used in the finite-index Sturm bound (#39000). ## Main additions - `prod_quotientFunc_filter_image_one_vadd`: regrouping of the norm-map product. - `analyticAt_cuspFunction_one_norm_rest`: the rest factor is analytic at `0`. - [ ] depends on: #39086 - [ ] depends on: #39087 This PR was done with the help of Claude Code. blocked-by-other-PR LLM-generated 651/1 Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/NumberTheory/ModularForms/Identities.lean,Mathlib/NumberTheory/ModularForms/NormTrace.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 9 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-57504
2 days ago
unknown
0-0
0 seconds
39087 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): integer cusp width and T-power slash action Adds the integer cusp width invariant and the `T^j` slash-action computation. Used in the finite-index Sturm bound (#39000). ## Main additions - `Subgroup.integerCuspWidth 𝒢`: the smallest positive integer in `𝒢.strictPeriods`. - Helpers: `integerCuspWidth_pos`, `integerCuspWidth_mem_strictPeriods`, `T_zpow_integerCuspWidth_mem`, `quotient_T_pow_injective_integerCuspWidth`, `integerCuspWidth_eq_nat_mul_strictWidthInfty`. - `slash_T_zpow_apply_general`: `(g ∣[k] T^j) τ = g (j +ᵥ τ)`. This PR was done with the help of Claude Code. LLM-generated 444/1 Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/NumberTheory/ModularForms/Identities.lean,Mathlib/NumberTheory/ModularForms/NormTrace.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 9 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
2-57450
2 days ago
unknown
0-0
0 seconds
39724 vihdzp
author:vihdzp
feat: finite sets are closed under directed suprema As are chains of length ≤ ω. --- We don't prove `Set.Finite.dirSupClosed` via `DirectedOn.finite_le`, in order to save a few imports. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-order 239/31 Mathlib.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/DirSupClosed/Basic.lean,Mathlib/Order/DirSupClosed/Finite.lean,Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/Topology/Order/ScottTopology.lean 9 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
2-57301
2 days ago
2-57338
2 days ago
5-77285
5 days
36706 kim-em
author:kim-em
feat(Tactic/FastInstance): warn when a synthesized sub-instance has leaky binder types This PR adds a warning to `fast_instance%` and `inferInstanceAs%` when they encounter a synthesized sub-instance that has leaky data-field binder types. When `fast_instance%` recursively normalizes a class instance, it uses `trySynthInstance` to find canonical sub-instances. If a found sub-instance is not canonical at instances transparency (i.e., its internal lambda binder types reference an unexpanded type alias instead of the target carrier), the tool now emits a warning: ``` fast_instance%: 'leakySub' (for SubClass MyNat) has leaky data-field binder types, which may cause `isDefEq` failures at instances transparency (e.g. in `grind`). Consider redefining it with `fast_instance%` or `inferInstanceAs%`. To suppress: `set_option Elab.fast_instance.warnLeakySubInstances false` ``` The leakiness check uses `withDisabledInstance` to temporarily evict the sub-instance from the discrimination tree (preventing trivial self-match via `trySynthInstance`), then compares against the canonical form at instances transparency. A `warnLeaky` parameter propagates through recursive calls to prevent nested warnings. The warning is suppressed via `set_option Elab.fast_instance.warnLeakySubInstances false`. - [ ] depends on: #36701 🤖 Prepared with Claude Code t-meta blocked-by-other-PR LLM-generated 410/20 Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/DefEqAbuse.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/CheckInstance.lean,MathlibTest/DefEqAbuse.lean,MathlibTest/InferInstanceAsPercent.lean 10 9 ['Vierkantor', 'eric-wieser', 'github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
2-57122
2 days ago
75-30429
75 days ago
0-1003
16 minutes
35217 kim-em
author:kim-em
feat: auxiliary lemmas for Artin and braid groups This PR adds small lemmas to existing files, in preparation for the Artin groups and braid groups PRs. - `Commute.mul_pow_eq_one`: for commuting elements with `a ^ m = 1` and `b ^ m = 1` - `Equiv.Perm.swap_conjugate`: braid relation for adjacent transpositions - `Equiv.Perm.swap_mul_swap_comm_of_disjoint`: disjoint transpositions commute - `@[grind =]` attributes on `Perm.mul_apply`, `Perm.one_apply`; new `Perm.pow_add_one_apply` - `Subgroup.normalClosure_singleton_one` - `FreeGroup.ofList` and associated lemmas - `FreeGroup.freeGroupUnitMulEquivInt` - `PresentedGroup.instUniqueOfIsEmpty` - `CoxeterMatrix.Aₙ_adjacent`, `CoxeterMatrix.Aₙ_far` 🤖 Prepared with Claude Code t-group-theory LLM-generated 98/2 Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/PresentedGroup.lean 7 17 ['eric-wieser', 'github-actions', 'kim-em', 'mathlib-merge-conflicts', 'themathqueen'] thorimur
assignee:thorimur
2-57093
2 days ago
2-57005
2 days ago
23-50198
23 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 13/0 Mathlib/Data/Finset/Image.lean,Mathlib/Data/Set/Image.lean 2 5 ['b-mehta', 'github-actions', 'j-loreaux', 'themathqueen'] nobody
2-54795
2 days ago
4-63063
4 days ago
5-69162
5 days
39759 plp127
author:plp127
chore(FieldTheory/KrullTopology): move lemmas to earlier file We move some lemmas unrelated to the Krull topology out of the `KrullTopology` file. They are placed in the earlier file `FieldTheory/IsGalois/Basic` instead. --- In #23693 it is said that > The proof of it uses some results in this file, so it can't be put into earlier files. This is no longer true, so we want move it out of the `KrullTopology` file because the theorems have nothing to do with the Krull topology. I found that they can go in `FieldTheory/IsGalois/Basic` without modifying the proofs. They cannot go any earlier because the statement of the theorems contains `IsGalois`, which is defined in this file. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
59/68 Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/KrullTopology.lean 2 5 ['acmepjz', 'github-actions', 'grunweg', 'plp127', 'vihdzp'] nobody
2-54735
2 days ago
6-51584
6 days ago
6-51546
6 days
39871 daiduo2
author:daiduo2
feat(Analysis/ODE): Uniform Gronwall inequality ## Summary Adds the integral-form **Uniform Gronwall inequality**, a variant of Gronwall's inequality essential in PDE theory. Unlike the standard Gronwall bound which depends on an initial value, the uniform version provides a bound on `y(t)` that depends only on the **time-averages** of `g`, `h`, and `y` over sliding windows of length `r`. ## Mathematical Statement Let `y, g, h : ℝ → ℝ` satisfy `y'(t) ≤ g(t) * y(t) + h(t)` on `[0, T)`. If for some `r > 0`: - `∫_t^{t+r} g(s) ds ≤ a₁` - `∫_t^{t+r} h(s) ds ≤ a₂` - `∫_t^{t+r} y(s) ds ≤ a₃` for all `t ∈ [0, T-r]`, then `y(t) ≤ (a₃/r + a₂) * exp(a₁)` for all `t ∈ [r, T]`. ## Changes - **New file**: `Mathlib/Analysis/ODE/UniformGronwall.lean` (~590 lines) - `uniformGronwallBound` — the explicit bound - `uniformGronwallBound_of_a₂0_a₃0`, `uniformGronwallBound_nonneg` — simp lemmas - `le_uniformGronwallBound_of_deriv_le` — main theorem - **Updated**: `Mathlib.lean` — added import ## Design Decisions - Real-valued functions `ℝ → ℝ` (generalization to normed spaces left for future work) - Right derivatives (`HasDerivWithinAt` with `Ici`), matching `Gronwall.lean` style - Assumes non-negativity (`g, h, y ≥ 0`), standard in PDE applications ## References - R. Temam, *Infinite-Dimensional Dynamical Systems in Mechanics and Physics*, Appendix A t-analysis new-contributor awaiting-author LLM-generated 601/0 Mathlib.lean,Mathlib/Analysis/ODE/UniformGronwall.lean 2 4 ['daiduo2', 'github-actions', 'grunweg'] nobody
2-53570
2 days ago
3-64478
3 days ago
0-13098
3 hours
39865 eliasjudin
author:eliasjudin
feat(Algebra): add eval API parity lemmas Adds two eval API parity lemmas from #23044: `MvPolynomial.hom_eval₂`, parallel to `Polynomial.hom_eval₂`, and `Polynomial.eval₂RingHom_comp_C`, parallel to `MvPolynomial.eval₂Hom_comp_C`. This addresses the eval portion of #23044; the degree-name discussion there is left for separate work. t-algebra new-contributor
label:t-algebra$
10/0 Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean 2 2 ['github-actions'] nobody
2-53433
2 days ago
4-10740
4 days ago
4-10702
4 days
37870 Jun2M
author:Jun2M
feat(Combinatorics/Graph): `Simple` typeclass for `Graph` This PR introduces two type classes on `Graph`: `Loopless` and `Simple`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 92/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Simple.lean 2 8 ['Jun2M', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
2-53172
2 days ago
29-34602
29 days ago
48-68997
48 days
39811 TheGoedeDoel
author:TheGoedeDoel
feat(CategoryTheory): functors of submonoids We add a definition of a functor of submonoids: For a functor `M : C ⥤ MonCat`, a submonoid functor consists of a submonoid of `M.obj U` for every `U`, compatible with the restriction maps `M.map i`. We provide the complete lattice structure on `SubmonoidFunctor M` and a map and comap operation. In a follow-up PR, we will use this to define the localisation of a presheaf of modules along a submonoid functor of the sheaf of rings. See also https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Subfunctors.20with.20algebraic.20structure/with/587726088 for a discussion of alternative designs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor maintainer-merge 183/2 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/CategoryTheory/Subfunctor/SubmonoidFunctor.lean 3 110 ['TheGoedeDoel', 'chrisflav', 'github-actions', 'joelriou', 'quantumsnow'] chrisflav
assignee:chrisflav
2-51162
2 days ago
3-61837
3 days ago
3-78779
3 days
39802 vihdzp
author:vihdzp
feat: more theorems on `toBoolRing` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
23/0 Mathlib/Algebra/Ring/BooleanRing.lean 1 3 ['github-actions', 'plp127'] nobody
2-50037
2 days ago
2-50172
2 days ago
4-4684
4 days
38813 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): E₄ and E₆ generate the graded ring of level-1 modular forms freely `E₄` and `E₆` are algebraically independent and generate the graded ring `⨁ k, ModularForm 𝒮ℒ k` of level-1 modular forms freely as a `ℂ`-algebra. Combines surjectivity from #39258 with the injectivity argument added here. ## Main results - `ModularForm.evalE₄E₆_injective`: `E₄` and `E₆` are algebraically independent. - `ModularForm.modularFormsEquivMvPolynomial`: `ℂ[X₀, X₁] ≃ₐ[ℂ] ⨁ k, ModularForm 𝒮ℒ k`. - `ModularForm.E₄E₆_generate`. - [ ] depends on: #39258 - [ ] depends on: #38909 This PR was done with the help of Claude Code. t-number-theory blocked-by-other-PR LLM-generated 790/0 Mathlib.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/CuspFormSubmodule.lean,Mathlib/NumberTheory/ModularForms/GradedRing.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 10 9 ['CBirkbeck', 'github-actions', 'mathlib-dependent-issues'] nobody
2-49628
2 days ago
unknown
0-0
0 seconds
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
2-49077
2 days ago
5-73023
5 days ago
7-43941
7 days
37685 vihdzp
author:vihdzp
feat: Fodor's lemma We define stationary sets and prove Fodor's lemma, following the proof at Wikipedia. --- - [ ] depends on: #39727 I'm surprised that this has a [Wikipedia article](https://en.wikipedia.org/wiki/Fodor%27s_lemma) but isn't listed in 1000.yaml. Is it just because the name has "lemma" instead of "theorem"? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-order blocked-by-other-PR large-import 221/25 Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Club.lean,Mathlib/SetTheory/Ordinal/Basic.lean 3 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'staroperator', 'vihdzp'] nobody
2-48355
2 days ago
54-25935
54 days ago
0-1337
22 minutes
39943 SnirBroshi
author:SnirBroshi
feat(TacticAnalysis): merge `refine` + `exact` ☕ A tactic-analysis linter that suggests merging adjacent `refine` + `exact`. The initial draft was written during a meeting of [The Meta Café](https://leanprover.zulipchat.com/#narrow/channel/579629-Event-announcements/topic/The.20Meta.20Caf.C3.A9/with/585965343) ☕ on 2026-05-27. Co-authored-by: Thomas R. Murrills <68410468+thorimur@users.noreply.github.com> TODO: list everyone that helps --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 77/1 Mathlib/Lean/ContextInfo.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 3 5 ['SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-bors', 'vihdzp'] nobody
2-46457
2 days ago
2-60710
2 days ago
0-20
20 seconds
37968 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf 100 files This PR is an experimental project. In this PR, we use an Agent to automatically scan and attempt to simplify proofs. We hope to eventually effectively golf 100 files and avoid reinventing the wheel in mathlib. We have chosen `Mathlib/Analysis` as the testing ground. If this experiment is very successful and accepted by the mathlib community, we would be honored to open source it. The relevant projects includes - [ ] #38104, which golfs `Mathlib/MeasureTheory`. - [ ] #38144, which golfs `Mathlib/NumberTheory`. This PR serves as an index. For the actual code review, please refer to the individual PRs linked below. Each of those PRs modifies only a single file to facilitate the review process. - [ ] depends on: #37555 - [ ] depends on: #37731 - [ ] depends on: #37737 - [ ] depends on: #37754 - [ ] depends on: #37785 - [ ] depends on: #37788 - [ ] depends on: #37821 - [ ] depends on: #37876 - [ ] depends on: #37981 - [ ] depends on: #37987 - [ ] depends on: #37989 - [ ] depends on: #37991 - [ ] depends on: #38006 - [ ] depends on: #38010 - [ ] depends on: #38272 - [ ] depends on: #38273 - [ ] depends on: #38274 - [ ] depends on: #38352 - [ ] depends on: #38404 - [ ] depends on: #38435 - [ ] depends on: #38436 - [ ] depends on: #38437 - [ ] depends on: #38493 - [ ] depends on: #38513 - [ ] depends on: #38638 - [ ] depends on: #38646 - [ ] depends on: #39171 - [ ] depends on: #39182 - [ ] depends on: #39183 - [ ] depends on: #39184 - [ ] depends on: #39187 - [ ] depends on: #39188 - [ ] depends on: #39893 - [ ] depends on: #39894 - [ ] depends on: #39895 - [ ] depends on: #39896 - [ ] depends on: #39897 - [ ] depends on: #39898 - [ ] depends on: #39899 - [ ] depends on: #39900 - [ ] depends on: #39901 - [ ] depends on: #39902 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex WIP t-analysis LLM-generated large-import blocked-by-other-PR 320/699 Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/AperiodicOrder/Delone/Basic.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Isometry.lean,Mathlib/Analysis/Complex/OperatorNorm.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Basic.lean,Mathlib/Analysis/ConstantSpeed.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/BetweenList.lean,Mathlib/Analysis/Convex/Body.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/Normed/Lp/SmoothApprox.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Module/ContinuousInverse.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/Normed/Module/MultipliableUniformlyOn.lean,Mathlib/Analysis/Normed/Module/RieszLemma.lean,Mathlib/Analysis/Normed/Operator/Bilinear.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,Mathlib/Analysis/Normed/Operator/ContinuousLinearMap.lean,Mathlib/Analysis/Normed/Operator/Extend.lean,Mathlib/Analysis/Normed/Operator/NNNorm.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/Lemmas.lean,Mathlib/Analysis/Normed/Unbundled/AlgebraNorm.lean,Mathlib/Analysis/Normed/Unbundled/FiniteExtension.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromBounded.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/IntegralRepresentation.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/PoissonSummation.lean,Mathlib/Analysis/SpecialFunctions/Log/ENNRealLog.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/Analysis/SpecialFunctions/Log/RpowTendsto.lean,Mathlib/Analysis/SpecialFunctions/MulExpNegMulSqIntegral.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean 64 27 ['CoolRmal', 'Parcly-Taxel', 'euprunin', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen', 'yuanyi-350'] nobody
2-43524
2 days ago
47-36611
47 days ago
0-26
26 seconds
38104 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf 100 files This PR is an experimental project. In this PR, we use an Agent to automatically scan and attempt to simplify proofs. We hope to eventually effectively golf 100 files and avoid reinventing the wheel in mathlib. We have chosen `Mathlib/MeasureTheory` as the testing ground. If this experiment is very successful and accepted by the mathlib community, we would be honored to open source it. The relevant projects includes - [ ] #37968, which golfs `Mathlib/Analysis`. - [ ] #38144 , which golfs `Mathlib/NumberTheory`. **This PR serves as an index. For the actual code review, please refer to the individual PRs linked below. Each of those PRs modifies only a single file to facilitate the review process.** - [ ] depends on: #38350 - [ ] depends on: #38353 - [ ] depends on: #38455 - [ ] depends on: #38456 - [ ] depends on: #38492 - [ ] depends on: #38636 - [ ] depends on: #38639 - [ ] depends on: #38640 - [ ] depends on: #38872 - [ ] depends on: #38873 - [ ] depends on: #38874 - [ ] depends on: #38875 - [ ] depends on: #38876 - [ ] depends on: #38877 - [ ] depends on: #38878 - [ ] depends on: #38879 - [ ] depends on: #38880 - [ ] depends on: #38881 - [ ] depends on: #38882 - [ ] depends on: #38883 - [ ] depends on: #38884 - [ ] depends on: #38885 - [ ] depends on: #38886 - [ ] depends on: #39172 - [ ] depends on: #39173 - [ ] depends on: #39174 - [ ] depends on: #39175 - [ ] depends on: #39176 - [ ] depends on: #39177 - [ ] depends on: #39178 - [ ] depends on: #39179 - [ ] depends on: #39180 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability codex LLM-generated blocked-by-other-PR 104/239 Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean,Mathlib/MeasureTheory/Function/AEMeasurableSequence.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Integral/Asymptotics.lean,Mathlib/MeasureTheory/Integral/CircleTransform.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean 13 11 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'yuanyi-350'] kex-y
assignee:kex-y
2-43461
2 days ago
26-81315
26 days ago
4-44505
4 days
39842 b-mehta
author:b-mehta
feat(Data/Finset/SDiff): add disjoint_injOn_union_left and superset_injOn_sdiff Two lemmas describing injectivity properties of finset operations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data easy delegated 8/0 Mathlib/Data/Finset/SDiff.lean 1 4 ['b-mehta', 'github-actions', 'mathlib-bors', 'riccardobrasca'] nobody
2-40141
2 days ago
3-65516
3 days ago
1-2622
1 day
39613 sharky564
author:sharky564
feat(LinearAlgebra/Projection): add quotientEquivOfIsCompl_comp_mkQ and quotientEquivOfIsTopCompl_comp_mkQ Adds the lemmas `Submodule.quotientEquivOfIsCompl_comp_mkQ` and `quotientEquivOfIsTopCompl_comp_mkQ` - the composition of `quotientEquivOfIsCompl`/`quotientEquivOfIsTopCompl` with `mkQ` agrees with the linear projection onto `q` along `p`. Additionally the proof of `IsCompl.isTopCompl_iff_continuous_quotientEquivOfIsCompl` is simplified. --- This lemma was flagged as missing in the API in the review of #39260 by @themathqueen. Upon review of the lemma, I found it could be further simplified. t-algebra t-topology
label:t-algebra$
11/4 Mathlib/LinearAlgebra/Projection.lean,Mathlib/Topology/Algebra/Module/Complement.lean 2 9 ['ADedecker', 'github-actions', 'sharky564', 'themathqueen'] nobody
2-40073
2 days ago
6-31686
6 days ago
9-37395
9 days
38231 NoneMore
author:NoneMore
feat(ModelTheory/Definablity): add syntax-to-definability bridge lemmas Add bridge lemmas from syntax to definability and refactor downstream proofs to use them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 88/56 Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/ElementarySubstructures.lean 2 1 ['github-actions'] nobody
2-37692
2 days ago
41-22376
41 days ago
41-22338
41 days
38815 dagurtomas
author:dagurtomas
feat(Tactic/CategoryTheory): extend `@[to_app]` to natural transformations This extends the `@[to_app]` attribute so it also generates componentwise lemmas from equalities of natural transformations between functors, while preserving the existing bicategory behavior. It also ensures generated component lemmas remain usable by dsimp when they are definitionally true. t-category-theory LLM-generated t-meta 148/22 Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Util/AddRelatedDecl.lean,MathlibTest/CategoryTheory/ToApp.lean 3 1 ['github-actions'] nobody
2-37688
2 days ago
28-63191
28 days ago
28-63207
28 days
39495 hawkrobe
author:hawkrobe
feat(Data/Multiset/Antidiagonal): two structural lemmas Adds `map_swap_antidiagonal` and `antidiagonal_add`. --- Fills out the API parallel to `Multiset.Nat.map_swap_antidiagonal` and `Finset.map_swap_antidiagonal`. (And adds `@[congr]` to `bind_congr`.) Used downstream for shuffle-coproduct constructions. (#7486, I found this old [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/antidiagonals.20having.20multiplicity.20.237595/near/238573473)) I used Claude Code to audit and polish. t-data new-contributor 20/0 Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Bind.lean 2 6 ['github-actions', 'hawkrobe', 'j-loreaux'] nobody
2-37238
2 days ago
9-81675
9 days ago
12-62629
12 days
35241 ooovi
author:ooovi
chore(LinearAlgebra/AffineSpace): Redefine AffineSpace Definition of `AffineSpace` following that of `ConvexSpace`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
106/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Basic.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
2-36946
2 days ago
unknown
0-0
0 seconds
32282 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle/Incenter): unoriented angle bisection Add lemmas giving unoriented angles involving the incenter and excenters of a triangle as expressions involving dividing angles of the triangle by 2, deduced from oriented bisection lemmas. --- - [ ] depends on: #30981 - [ ] depends on: #30982 - [ ] depends on: #31205 - [ ] depends on: #32019 - [ ] depends on: #32021 - [ ] depends on: #32259 - [ ] depends on: #32260 - [ ] depends on: #32270 - [ ] depends on: #32273 - [ ] depends on: #32278 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 98/0 Mathlib/Geometry/Euclidean/Angle/Incenter.lean 1 8 ['github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'wwylele'] eric-wieser
assignee:eric-wieser
2-36550
2 days ago
63-61644
63 days ago
63-62342
63 days
35868 Raph-DG
author:Raph-DG
feat(Topology): add variant of the sheaf condition which assumes non triviality of the cover In this PR we add in a variant of the sheaf condition which assumes the cover present in the sheaf condition is nontrivial in the sense that the indexing type is nonempty and the values of the presheaf on each element of the cover are nonempty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 54/0 Mathlib/Topology/Sheaves/SheafCondition/UniqueGluing.lean 1 5 ['Raph-DG', 'chrisflav', 'github-actions'] alreadydone
assignee:alreadydone
2-36548
2 days ago
29-10266
29 days ago
34-74094
34 days
37714 mortarsanjaya
author:mortarsanjaya
feat(Algebra/Order/Floor/Defs): `Nat.cast` is strictly monotone in `FloorSemiring` and `FloorRing` As title says, and without the `IsOrderedRing` assumption. Other than that, I removed the `IsOrderedRing` assumption from pretty much all the lemmas in `Algebra/Order/Floor/Defs` that could possibly have this assumption removed, and reduced some `IsStrictOrderedRing` assumptions to `IsOrderedRing` + `Nontrivial`. Due to strict monotonicity, we can also provide `CharZero` instance on `FloorSemiring` and `FloorRing`. Thus we can remove the `NeZero` and `Nontrivial` instances on them. The changes on `/Ring` and `/Semiring` are trivial changes due to some lemmas not requiring an `IsOrderedRing` instance anymore. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
96/39 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean 5 24 ['dagurtomas', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mortarsanjaya'] riccardobrasca
assignee:riccardobrasca
2-36542
2 days ago
28-83462
28 days ago
52-82914
52 days
38049 WilliamCoram
author:WilliamCoram
feat: lemmas towards showing gaussNorm on MvPowerSeries is an absolute value We prove lemmas: ``gaussNorm_mul_le`` and ``gaussNorm_le_mul`` which will allow us to show it is an absolute value on Mv restricted power series. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 144/1 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 1 4 ['WilliamCoram', 'github-actions'] riccardobrasca
assignee:riccardobrasca
2-36540
2 days ago
45-66331
45 days ago
45-66293
45 days
38432 SnirBroshi
author:SnirBroshi
feat(Logic/Relation): `Map r f g ≤ s ↔ r ≤ s.bicompl f g` and the dual `s ≤ Relation.Map r f g ↔ s.bicompl f g ≤ r` which requires `f` and `g` to be bijective. Adds `Galois{Connection/Insertion/Coinsertion}` for the dual. The theorems are specialized to `onFun` instead of `bicompl` for when `f = g`. The `≤` theorems are spelled using `Subrelation` since `≤` is not yet available in this file, and `∀` for the `bicompl` theorems since `Subrelation` only supports homogeneous relations. A `GaloisConnection` for the iff in the title requires `f`/`g` to be bijective, but then we can get an `OrderIso` which is stronger (see #38499). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 119/28 Mathlib/Logic/Relation.lean,Mathlib/Order/GaloisConnection/Basic.lean 2 3 ['SnirBroshi', 'github-actions', 'plp127'] fpvandoorn
assignee:fpvandoorn
2-36538
2 days ago
35-23803
35 days ago
36-45187
36 days
38875 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Covering/Besicovitch` - shortens the proof of `r_t0` in `exists_closedBall_covering_tsum_measure_le` by turning the contradiction argument into a direct lambda - replaces the manual `simp only` proof with `mem_iUnion₂` and a final `simp [r, this]` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 3/8 Mathlib/MeasureTheory/Covering/Besicovitch.lean 1 2 ['github-actions', 'yuanyi-350'] kex-y
assignee:kex-y
2-36537
2 days ago
26-80297
26 days ago
26-80259
26 days
38883 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/AEMeasurableSequence` - rewrites `iSup` by filtering directly along `aeSeq_eq_fun_ae hf hp`, instead of proving a subset statement about `aeSeqSet` and then using `measure_mono_null` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 2/6 Mathlib/MeasureTheory/Function/AEMeasurableSequence.lean 1 2 ['github-actions', 'yuanyi-350'] RemyDegenne
assignee:RemyDegenne
2-36535
2 days ago
26-77467
26 days ago
26-77429
26 days
39294 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): prove LanguageOn monotonicity under intersection In symbolic dynamics. This PR proves that taking the language over a finite shape is monotone with respect to intersections of configuration sets: ```math \mathrm{LanguageOn}(X \cap Y)\, U \subseteq \mathrm{LanguageOn}\, X\, U \cap \mathrm{LanguageOn}\, Y\, U ``` The proof is a direct unfolding of definitions: a pattern in the language of `X ∩ Y` comes from restricting a configuration `x ∈ X ∩ Y`. Since such an `x` belongs simultaneously to `X` and `Y`, the same restriction witness gives membership both in `LanguageOn X U` and in `LanguageOn Y U`, yielding membership in their intersection. Related to issue #39252 t-dynamics new-contributor 9/1 Mathlib/Dynamics/SymbolicDynamics/Basic.lean 1 2 ['github-actions'] ADedecker
assignee:ADedecker
2-36534
2 days ago
17-5180
17 days ago
17-5142
17 days
39411 JovanGerb
author:JovanGerb
feat(Push): allow pushing `∀` through `∃` This PR adds `Classical.skolem` to the `push` set. This allows pusing a forall through an exists, which can sometimes be convenient. This PR also removes `forall_self_imp` from the `push` set. I'm not sure why I added it in the first place - I think it is out of scope. This PR also fixes a subtle bug in `push` which causes `push` to not be idempotent. Namely that the default value of `post` returns `.done` instead of `.continue`, causing the tactic to stop earlier than it should/ --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 9/3 Mathlib/Tactic/Push.lean,MathlibTest/Tactic/Push/Basic.lean 2 3 ['github-actions', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
2-36533
2 days ago
7-84663
7 days ago
0-6372
1 hour
39473 faenuccio
author:faenuccio
feat(Topology.Homeomorph.Lemmas): add lemmas about `coe` and `IsHomeomorph` Add lemmas `IsHomeomorph.coe_equiv` and `IsHomeomorph.coe_inv` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 7/1 Mathlib/Topology/Homeomorph/Lemmas.lean 1 2 ['ADedecker', 'github-actions'] alreadydone
assignee:alreadydone
2-36531
2 days ago
13-57974
13 days ago
13-57936
13 days
39903 akiezun
author:akiezun
feat(NumberTheory): add almost prime numbers Adds Nat.IsAlmostPrime k n for natural numbers with exactly k prime factors counted with multiplicity, plus Nat.IsAtMostAlmostPrime and Nat.IsSemiprime. The definitions reuse the existing arithmetic function Ω, and the initial API proves the basic zero/one cases, prime examples, and closure under multiplication. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-number-theory 87/0 Mathlib.lean,Mathlib/NumberTheory/AlmostPrime.lean 2 5 ['SnirBroshi', 'akiezun', 'github-actions', 'vihdzp'] loefflerd
assignee:loefflerd
2-36527
2 days ago
3-38599
3 days ago
3-38561
3 days
39950 SnirBroshi
author:SnirBroshi
feat(GroupTheory/Nilpotent): a nontrivial nilpotent group has a nontrivial center and a few `upperCentralSeries`/`lowerCentralSeries` API lemmas. --- I kinda thought this would have a more elementary proof, but that's what I found. This is the proof without `grind`: ```lean theorem Group.IsNilpotent.center_ne_bot [Nontrivial G] [IsNilpotent G] : center G ≠ ⊥ := by rw [← upperCentralSeries_zero, ← upperCentralSeries_one] intro h rw [upperCentralSeries.eq_top one_ne_zero h, upperCentralSeries_zero] at h exact top_ne_bot h ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 39/2 Mathlib/GroupTheory/Nilpotent.lean 1 6 ['SnirBroshi', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
2-35833
2 days ago
2-52772
2 days ago
2-52734
2 days
39953 plp127
author:plp127
feat(RingTheory/Valuation): embedding of valuation groups We show that if `vR` and `vA` are valuations satisfying `vR.HasExtension vA`, then there is an induced embedding of the valuation groups compatible with the valuations and with the extension. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 39/1 Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/RingTheory/Valuation/Extension.lean 2 2 ['github-actions', 'plp127'] nobody
2-34906
2 days ago
2-35152
2 days ago
2-35160
2 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 44/0 Mathlib/GroupTheory/Commutator/Basic.lean 1 5 ['SnirBroshi', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
2-34768
2 days ago
3-39512
3 days ago
3-39474
3 days
38588 thorimur
author:thorimur
perf: use declaration range internals in unused instances in type linters --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import merge-conflict 57/41 Mathlib/Order/Basic.lean,Mathlib/Tactic/Linter/UnusedInstancesInType.lean,MathlibTest/UnusedInstancesInType/Decidable.lean 3 4 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'thorimur'] nobody
2-33771
2 days ago
unknown
0-0
0 seconds
38622 mariainesdff
author:mariainesdff
feat(RingTheory/PowerSeries/ExponentialModule): add exponential module Let `R` be a commutative ring. The exponential module of `R` is the set of all power series `f : R⟦X⟧` that are of exponential type : `f (X + Y) = f X * f Y` where `X` and `Y` are two indeterminates. It is an abelian group under multiplication, and an `R`-module under rescaling. Co-authored by: @AntoineChambert-Loir --- - [ ] depends on: #38615 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 425/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finsupp/Fin.lean,Mathlib/Data/Nat/Choose/Sum.lean,Mathlib/RingTheory/PowerSeries/ExponentialModule.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 5 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
2-33770
2 days ago
2-33771
2 days ago
28-45867
28 days
39155 mathlib-nolints
author:mathlib-nolints
chore: lake shake --add-public --keep-implied --keep-prefix --fix I am happy to shake some imports for you! **398 files changed** · +441 imports added · -368 imports removed --- [workflow run for this PR](https://github.com/leanprover-community/mathlib4/actions/runs/26372005521) [explain.txt](https://github.com/leanprover-community/mathlib4/actions/runs/26372005521/artifacts/7188182767) large-import merge-conflict 441/368 Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Submonoid/Saturation.lean,Mathlib/Algebra/Group/Submonoid/Support.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/MapBijective.lean,Mathlib/Algebra/Homology/HomologicalComplexAbelian.lean,Mathlib/Algebra/Homology/ModelCategory/Injective.lean,Mathlib/Algebra/Homology/ModelCategory/Lifting.lean,Mathlib/Algebra/Lie/CartanCriterion.lean,Mathlib/Algebra/LinearRecurrence.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/Algebra/Module/Submodule/Invariant.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MvPolynomial/Cardinal.lean,Mathlib/Algebra/MvPolynomial/Division.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/NonAssoc/PreLie/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/Archimedean/Submonoid.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Field/Pointwise.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Order/SuccPred.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Regular/Defs.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/Finite.lean,Mathlib/AlgebraicGeometry/Morphisms/FlatRank.lean,Mathlib/AlgebraicGeometry/Morphisms/SchemeTheoreticallyDominant.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyClosed.lean,Mathlib/AlgebraicGeometry/Morphisms/WeaklyEtale.lean,Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicGeometry/RationalMap.lean,Mathlib/AlgebraicGeometry/Sites/AffineEtale.lean,Mathlib/AlgebraicTopology/SimplicialCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/CStarAlgebra/Projection.lean,Mathlib/Analysis/Calculus/DerivativeTest.lean,Mathlib/Analysis/Calculus/FDeriv/Affine.lean,Mathlib/Analysis/Calculus/FDeriv/OfCompLeft.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/FDeriv.lean,Mathlib/Analysis/Calculus/LogDeriv.lean,Mathlib/Analysis/Complex/CanonicalDecomposition.lean,Mathlib/Analysis/Complex/Harmonic/Liouville.lean,Mathlib/Analysis/Complex/Harmonic/Poisson.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/RiemannMapping.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Manifold.lean,Mathlib/Analysis/ConstantSpeed.lean,Mathlib/Analysis/Convex/Approximation.lean,Mathlib/Analysis/Convex/FunctionTopology.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/Normed/Module/Complemented.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/RCLike/ContinuousMap.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/PoissonSummation.lean,Mathlib/Analysis/SpecialFunctions/Integrals/LogTrigonometric.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/ChebyshevGauss.lean,Mathlib/Analysis/SpecificLimits/RCLike.lean,Mathlib/CategoryTheory/Abelian/Preradical/Colon.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Widesubcategory.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Jointly.lean,Mathlib/CategoryTheory/Limits/Constructions/WidePullbackOfTerminal.lean 398 31 ['JovanGerb', 'MichaelStollBayreuth', 'bryangingechen', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-33518
2 days ago
5-50645
5 days ago
5-74717
5 days
39676 joneugster
author:joneugster
chore: move test files and recapitalise filennames Continuation of #39674. Renames all test files to use UpperCamelCase. Moves a few files to a folder according to the location of the tested file. --- While fixing capitalisation on all filenames, this PR makes no effort to sort all test files into according folders. This will be happening in follow-ups. - [x] depends on: #39681 - [x] depends on: #39682 - [ ] depends on: #39683 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed merge-conflict 22/22 MathlibTest/AesopCat.lean,MathlibTest/Algebra/Algebra/Rat.lean,MathlibTest/Algebra/Polynomial.lean,MathlibTest/Algebra/Quaternion.lean,MathlibTest/Data/DFinsupp/DFinsuppMultiLinear.lean,MathlibTest/Data/DFinsupp/Notation.lean,MathlibTest/Data/Fin/VecNotation.lean,MathlibTest/Data/FunLike.lean,MathlibTest/Data/Real.lean,MathlibTest/Data/ZMod.lean,MathlibTest/DeriveCountable.lean,MathlibTest/DeriveCountableModule.lean,MathlibTest/DeriveEncodable.lean,MathlibTest/ENatToNat.lean,MathlibTest/EvalElab.lean,MathlibTest/FailIfNoProgress.lean,MathlibTest/FastInstance.lean,MathlibTest/FinsetBuilder.lean,MathlibTest/FinsetRepr.lean,MathlibTest/FinsuppNotation.lean,MathlibTest/FormatTable.lean,MathlibTest/ImportAll.lean,MathlibTest/InstanceDiamonds.lean,MathlibTest/InstanceDiamonds/Analysis/Normed/Field/WithAbs.lean,MathlibTest/InstanceDiamonds/Data/Complex/Module.lean,MathlibTest/InstanceDiamonds/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,MathlibTest/InstanceDiamonds/FieldTheory/SplittingField/Construction.lean,MathlibTest/InstanceDiamonds/Normed.lean,MathlibTest/JacobiSymbol.lean,MathlibTest/Lean/Tactic/Grind/AC.lean,MathlibTest/Lean/Tactic/Grind/CC.lean,MathlibTest/Lean/Tactic/Grind/Field.lean,MathlibTest/Lean/Tactic/Grind/FieldInstance.lean,MathlibTest/Lean/Tactic/Grind/Grobner.lean,MathlibTest/Lean/Tactic/Grind/Linarith.lean,MathlibTest/Lean/Tactic/Grind/Lint.lean,MathlibTest/Lean/Tactic/Grind/NatCastInstance.lean,MathlibTest/Lean/Tactic/Grind/OrderedRing.lean,MathlibTest/Lean/Tactic/Grind/PairwiseDisjoint.lean,MathlibTest/Lean/Tactic/Grind/Panic.lean,MathlibTest/Lean/Tactic/Grind/Ring.lean,MathlibTest/Lean/Tactic/Grind/Set.lean,MathlibTest/Lean/Tactic/Grind/Trig.lean,MathlibTest/Lean/Tactic/Rewrites.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModule.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleAllTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleMetaTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleNew.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModulePublicMetaTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModulePublicTest.lean,MathlibTest/Linter/DeprecatedModule/DeprecatedModuleTest.lean,MathlibTest/Linter/DeprecatedSyntaxLinter.lean,MathlibTest/Linter/DocPrime.lean,MathlibTest/Linter/DocString.lean,MathlibTest/Linter/EmptyLine.lean,MathlibTest/Linter/FlexibleLinter.lean,MathlibTest/Linter/ForbiddenModuleNames.lean,MathlibTest/Linter/HaveLetLinter.lean,MathlibTest/Linter/ImportHeavyFlexibleLinter.lean,MathlibTest/Linter/Lint.lean,MathlibTest/Linter/ModuleCasing.lean,MathlibTest/Linter/OldObtain.lean,MathlibTest/Linter/PrivateModuleLinter/HasOnlyPrivate.lean,MathlibTest/Linter/PrivateModuleLinter/HasPublic.lean,MathlibTest/Linter/PrivateModuleLinter/ImportOnly.lean,MathlibTest/Linter/PrivateModuleLinter/Initialize.lean,MathlibTest/Linter/PrivateModuleLinter/NonModule.lean,MathlibTest/Linter/PrivateModuleLinter/Notation3.lean,MathlibTest/Linter/PrivateModuleLinter/ReservedName1.lean,MathlibTest/Linter/PrivateModuleLinter/ReservedName2.lean,MathlibTest/Linter/Style/LintStyle.lean,MathlibTest/Linter/Style/LongFile.lean,MathlibTest/Linter/UnusedTactic/AesopUnusedTactic.lean,MathlibTest/Linter/UnusedTactic/UnusedTactic.lean,MathlibTest/Linter/ValidatePRTitle.lean,MathlibTest/Linter/VersoHeader.lean,MathlibTest/Linter/Whitespace.lean,MathlibTest/NormCast.lean,MathlibTest/RegisterTryTactic.lean,MathlibTest/RightActions.lean,MathlibTest/SetLike.lean,MathlibTest/SimpConfluence.lean,MathlibTest/SlimCheck.lean,MathlibTest/SlowInstances.lean,MathlibTest/SlowSimp.lean,MathlibTest/Tactic/ApplyCongr.lean,MathlibTest/Tactic/ApplyFun.lean,MathlibTest/Tactic/ApplyRules.lean,MathlibTest/Tactic/ApplyWith.lean,MathlibTest/Tactic/Bound/Attribute.lean,MathlibTest/Tactic/Bound/Bound.lean,MathlibTest/Tactic/ByContra.lean,MathlibTest/Tactic/CancelDenoms.lean,MathlibTest/Tactic/Cases.lean,MathlibTest/Tactic/CasesM.lean,MathlibTest/Tactic/Change.lean,MathlibTest/Tactic/Check.lean,MathlibTest/Tactic/Choose/Choose.lean,MathlibTest/Tactic/Choose/Reduction.lean,MathlibTest/Tactic/Clean.lean 192 5 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-28632
2 days ago
2-28633
2 days ago
1-38699
1 day
36507 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): various equivalences for `MvPowerSeries` This PR adds a number of equivalences related to power series rings and is patterned after `Mathlib/Algebra/MvPolynomial/Equiv.lean`. To be specific, it adds: * `MvPowerSeries.isEmptyEquiv` : The isomorphism between multivariable power series in no variables and the ground ring. * `MvPowerSeries.uniqueEquiv` : The isomorphism between multivariable power series in a single variable and power series over the ground ring. * `MvPowerSeries.mapEquiv`, `MvPowerSeries.mapAlgEquiv` : The isomorhism between multivariable power series induced by an isomorphism between the coefficient rings. * `MvPowerSeries.sumAlgEquiv` : The isomorphism between multivariable power series in a sum of two types, and multivariable power series in one of the types, with coefficients in multivariable power series in the other type. * `MvPowerSeries.commAlgEquiv` : The isomorphism between multivariable power series in variables `σ` of multivariable power series in variables `τ` and multivariable power series in variables `τ` of multivariable power series in variables `σ`. * `MvPowerSeries.optionEquivLeft` : The isomorphism between multivariable power series in `Option σ` and power series with coefficients in `MvPowerSeries σ R`. * `MvPowerSeries.optionEquivRight` : The isomorphism between multivariable power series in `Option σ` and multivariable power series in `σ` with coefficients in `PowerSeries R` * `MvPowerSeries.finSuccEquiv` : The isomorphism between multivariable power series in `Fin (n + 1)` and power series over multivariable power series in `Fin n`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #35329 - [x] depends on: #36506 t-ring-theory 596/4 Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean 2 27 ['AntoineChambert-Loir', 'BryceT233', 'Thmoas-Guan', 'WenrongZou', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] mattrobball
assignee:mattrobball
2-26190
2 days ago
2-26245
2 days ago
52-65682
52 days
38200 Parcly-Taxel
author:Parcly-Taxel
feat: Turán numbers and their strict monotonicity `strictMonoOn_turanNumber` was initially proved by @Aristotle-Harmonic, then hand-polished. Co-authored-by: Aristotle (Harmonic) t-combinatorics 45/21 Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean 1 5 ['Parcly-Taxel', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] nobody
2-24613
2 days ago
2-24652
2 days ago
40-53708
40 days
38086 dagurtomas
author:dagurtomas
feat(CategoryTheory): composition of profunctors --- - [x] depends on: #38085 - [x] depends on: #38382 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 365/0 Mathlib.lean,Mathlib/CategoryTheory/Profunctor/Comp.lean,Mathlib/Logic/Relation.lean 3 16 ['adamtopaz', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'robin-carlier'] robin-carlier
assignee:robin-carlier
2-19891
2 days ago
2-19635
2 days ago
15-46333
15 days
37700 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Maps): induce an iso Similar to `induceHom` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 31/0 Mathlib/Combinatorics/SimpleGraph/Maps.lean 1 12 ['YaelDillies', 'github-actions', 'vlad902'] YaelDillies
assignee:YaelDillies
2-19462
2 days ago
4-49812
4 days ago
53-69676
53 days
39133 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/ModuleCat): exactness of restrictScalars for general universe level Currently exactness of `ModuleCat.restrictScalars` is synth via being adjoint functor, however this needs the universe level to be some `max u v` where `u` is the universe level of the ring. Here we provide exactness of restrictScalars for general universe level using it preserves short exact sequence. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
46/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean 2 1 ['github-actions'] nobody
2-19108
2 days ago
20-25105
20 days ago
20-25067
20 days
31768 Thmoas-Guan
author:Thmoas-Guan
feat(Homology): `Ext` under restrict scalars by `RingEquiv` In this PR, we proved that `Ext` commute with ulift functor in `ModuleCat`. Further more, we provided compatibility with (semi-)linear equiv of general universe. --- - [ ] depends on: #39133 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory blocked-by-other-PR
label:t-algebra$
142/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean 4 31 ['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
2-19098
2 days ago
20-24524
20 days ago
21-43952
21 days
31851 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/Homology): Injective dimension in linear equiv In this PR, we proved that injective dimension is preserved under (semi-) linear equiv for general universe level. --- - [ ] depends on: #31768 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
336/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean 6 9 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-19072
2 days ago
190-69869
190 days ago
0-8108
2 hours
31884 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): definition of Gorenstein local ring In this PR, we gave basic definition of Gorenstein local ring and Gorestein ring and prove that they are stable under ring equiv. --- - [ ] depends on: #31851 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory 409/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean,Mathlib/RingTheory/Gorenstein/Defs.lean 7 11 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-19030
2 days ago
190-407
190 days ago
0-2574
42 minutes
32035 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): localization of Gorenstein local ring In this PR, we proved that localization of Gorenstein local ring at prime is again Gorenstein. --- - [ ] depends on: #31884 - [ ] depends on: #32033 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory 513/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean,Mathlib/RingTheory/Gorenstein/Defs.lean,Mathlib/RingTheory/Gorenstein/Localization.lean 8 13 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-19005
2 days ago
187-11203
187 days ago
0-862
14 minutes
39537 robin-carlier
author:robin-carlier
feat(CategoryTheory/Bicategory/Span): bicategories of spans In this PR, we extend the constructions from #39536 to a bicategory structure on `Spans C Wₗ Wᵣ`, which is a type alias for `C`, where the 1-morphisms are spans in `C` with left leg satisfying `Wₗ` and the right leg satisfies `Wᵣ`. From [SymmMonCoherence](https://github.com/robin-carlier/SymmMonCoherence) --- - [ ] depends on: #39536 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory merge-conflict 614/0 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Span/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/Limits.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-18901
2 days ago
11-66066
11 days ago
0-905
15 minutes
32098 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): injective dimension of quotSMulTop In this PR, we proved for finitely generated module `M` over noetherian ring `R`, if `x` in maximal ideal being both `R`-regular and `M`-regular, `injdim_R (M/xM) + 1 = injdim_{R/(x)} (M)`. --- - [ ] depends on: #32058 - [ ] depends on: #39133 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory 623/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/RingTheory/Regular/InjectiveDimension.lean 4 8 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-18888
2 days ago
185-77800
185 days ago
0-2059
34 minutes
33377 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): polynomial over Gorenstein ring is Gorenstein In this PR, we prove that polynomial over Gorenstein ring is Gorenstein. --- - [ ] depends on: #33369 - [ ] depends on: #31884 - [ ] depends on: #32098 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-ring-theory 1493/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/Gorenstein/Defs.lean,Mathlib/RingTheory/Gorenstein/Polynomial.lean,Mathlib/RingTheory/Regular/InjectiveDimension.lean 11 11 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-18868
2 days ago
151-78163
151 days ago
0-107
1 minute
33379 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Gorenstein local ring is Cohen Macaulay In this PR, we give the definition of Gorenstein local ring and proved it is Cohen--Macaulay. --- - [ ] depends on: #31884 - [ ] depends on: #26218 - [ ] depends on: #32098 - [x] depends on: #31644 - [ ] depends on: #33369 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-ring-theory 3649/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Gorenstein/CohenMacaulay.lean,Mathlib/RingTheory/Gorenstein/Defs.lean,Mathlib/RingTheory/Regular/InjectiveDimension.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 17 15 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-18841
2 days ago
151-77251
151 days ago
0-264
4 minutes
36527 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Gorenstein of exists a vanishing ext A `n`-dimensional Noetherian local ring `R` is Gorenstein if there is an `i > n`, `Ext^i(k, R) = 0`. --- - [ ] depends on: #33379 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-ring-theory 3830/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Gorenstein/CohenMacaulay.lean,Mathlib/RingTheory/Gorenstein/Defs.lean,Mathlib/RingTheory/Regular/InjectiveDimension.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 17 11 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-18830
2 days ago
78-81686
78 days ago
0-2167
36 minutes
33380 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Gorenstein local ring is Cohen--Macaulay local ring of type one In this PR, we formalized Theorem 18.1 of _Commutaive Ring Theory_ Matsumura. This gives a full characterization of `Ext(k, R)` for Gorenstein local ring and implies that it is equivalent to Cohen--Macaulay local ring of type 1. --- - [ ] depends on: #26245 - [ ] depends on: #33379 - [ ] depends on: #36527 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR t-ring-theory 4762/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean,Mathlib/Algebra/Category/ModuleCat/InjectiveDimension.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Catenary.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Gorenstein/CohenMacaulay.lean,Mathlib/RingTheory/Gorenstein/Defs.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Regular/InjectiveDimension.lean,Mathlib/RingTheory/Regular/LinearMap.lean,docs/references.bib 19 15 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-18813
2 days ago
151-77028
151 days ago
0-126
2 minutes
37374 NoneMore
author:NoneMore
feat(Topology/DerivedSet): add relative derived set lemmas Add `relDerivedSet`, `relDerivedSet_subset`, and `IsClosed.relDerivedSet_eq`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 17/0 Mathlib/Topology/DerivedSet.lean 1 7 ['NoneMore', 'github-actions', 'plp127', 'vihdzp'] fpvandoorn
assignee:fpvandoorn
2-17248
2 days ago
2-17316
2 days ago
59-68383
59 days
38583 kim-em
author:kim-em
feat(LinearAlgebra/Matrix/GeneralLinearGroup): polynomial functions on matrices over an infinite field are determined by their values on GL This PR adds `MvPolynomial.eq_of_eval_eq_on_gl`: two polynomials in `MvPolynomial (m × m) k` over an infinite field `k` are equal whenever their evaluations agree at every invertible matrix. The proof multiplies by the generic determinant `det (Matrix.mvPolynomialX m m k)` so that `MvPolynomial.funext` applies (covering both invertible and non-invertible specializations of the variables), then divides by it (it is nonzero by `Matrix.det_mvPolynomialX_ne_zero`) using that the polynomial ring is an integral domain. The lemma is useful when reasoning about polynomial representations of `GL n k`, where natural identities are easiest to check on `GL n k` itself but the final statement lives at the level of polynomials. The lemma is placed in a new file `Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/MvPolynomial.lean` because the existing `Mathlib/LinearAlgebra/Matrix/MvPolynomial.lean` is upstream of `Adjugate`, which is itself upstream of `GeneralLinearGroup.Defs` — so we cannot import `GeneralLinearGroup.Defs` from `Matrix.MvPolynomial` without creating a cycle. 🤖 Prepared with Claude Code t-algebra maintainer-merge
label:t-algebra$
60/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/MvPolynomial.lean,Mathlib/LinearAlgebra/Matrix/MvPolynomial.lean 3 10 ['SnirBroshi', 'dagurtomas', 'github-actions', 'kim-em', 'wwylele'] dagurtomas
assignee:dagurtomas
2-17108
2 days ago
2-54571
2 days ago
18-39595
18 days
38596 JJYYY-JJY
author:JJYYY-JJY
Add basic row-equivalence and echelon-form API for matrices This PR adds the first foundational slice of `Mathlib.LinearAlgebra.Matrix.Echelon`, a theorem-oriented API for elementary row operations, row-equivalence, and echelon-form predicates for matrices. The main additions are: * elementary row-scaling matrices and their `GL` versions; * `Matrix.RowEquivalent` for the left action of `GL m R` on rectangular matrices; * row-zero, pivot, echelon, and reduced-echelon predicates; * semantic representative predicates `Matrix.IsEchelonFormOf` and `Matrix.IsReducedEchelonFormOf`. This intentionally stops before row-space characterizations, existence and uniqueness of reduced echelon representatives, and the noncomputable canonical representative `Matrix.rref`; those are planned for later PRs. Co-authored-by: Joseph Qian Co-authored-by: Veer Shukla Co-authored-by: Dhruv Bhatia Co-authored-by: Zheng Wu <1036819072@qq.com> --- This update trims the original full row-reduction API in response to reviewer feedback that the PR was too large. It keeps only the foundation needed by later row-reduction and `rref` PRs. t-algebra new-contributor
label:t-algebra$
312/6 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Echelon.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean 3 10 ['JJYYY-JJY', 'SnirBroshi', 'copilot-pull-request-reviewer', 'dagurtomas', 'github-actions', 'wwylele'] nobody
2-16711
2 days ago
16-42637
16 days ago
24-18022
24 days
39841 hawkrobe
author:hawkrobe
feat(RingTheory/HopfAlgebra): Construction on primitive elements Adds `HopfAlgebra.ofPrimitives` which builds a Hopf algebra structure on a bialgebra generated by primitive elements, given a candidate anti-algebra hom that sends each generator to its negation. --- The commutative case with `.ofAlgHom` gets this for free via `ext` but the non-commutative case needs extra work. * [ ] depends on: #39785 t-ring-theory new-contributor 314/20 Mathlib.lean,Mathlib/RingTheory/Bialgebra/Primitive.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/Generators.lean,Mathlib/RingTheory/HopfAlgebra/Primitive.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean 6 2 ['github-actions'] nobody
2-13846
2 days ago
2-62204
2 days ago
4-59582
4 days
39579 hawkrobe
author:hawkrobe
feat(RingTheory): Bialgebra / Hopf algebra structure on SymmetricAlgebra Adds Hopf algebra structure on SymmetricAlgebra. --- - [x] depends on: #39483 - [ ] depends on: #39785 - [ ] depends on: #39841 - [ ] depends on: #31898 - [ ] depends on: #39790 t-ring-theory new-contributor blocked-by-other-PR 732/42 Mathlib.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/RingTheory/Bialgebra/Primitive.lean,Mathlib/RingTheory/Bialgebra/Quotient.lean,Mathlib/RingTheory/Bialgebra/SymmetricAlgebra.lean,Mathlib/RingTheory/Bialgebra/TensorAlgebra.lean,Mathlib/RingTheory/Coalgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/Generators.lean,Mathlib/RingTheory/HopfAlgebra/Primitive.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/SymmetricAlgebra.lean,Mathlib/RingTheory/HopfAlgebra/TensorAlgebra.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean 14 12 ['YaelDillies', 'github-actions', 'hawkrobe', 'mathlib-dependent-issues'] YaelDillies
assignee:YaelDillies
2-13585
2 days ago
5-56691
5 days ago
1-18386
1 day
38786 martinwintermath
author:martinwintermath
feat(Data/SetLike): add `IsConcreteNeg` Add file `SetLike/Pointwise.lean` with main definition `class IsConcreteNeg` which expresses that a given `Neg` on a `SetLike` objects is compatible with the injection into sets. This is in analogy to `SetLike.IsConcreteLE`. I can think of at least the following object that have or should have a `Neg` instance: - `AddSubmonoid` - `Submodule` - cone variants such as `PointedCone`, `ProperCone`, `ConvexCone`, `PolyhedralCone` (in development) - `AffineSubspace` - convex set variant such as `ConvexSet`, `Polytope`, `Polyhedron` (in development) For demonstration - we rework negation on `Submodule` to make use of `IsConcreteNeg` - we provide `Neg` in `AffineSubspace` The same file should also provide a concrete pointwise scalar multiplication. This will be a future PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 185/20 Mathlib.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Data/SetLike/Pointwise.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Pointwise.lean,Mathlib/LinearAlgebra/Span/Basic.lean 6 5 ['github-actions', 'j-loreaux', 'martinwintermath', 'mathlib-bors', 'mathlib-merge-conflicts'] TwoFX
assignee:TwoFX
2-13128
2 days ago
2-33769
2 days ago
22-1388
22 days
39573 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph/Automorphism): `Aut`, `autCount`, and orbit-stabiliser for copies and embeddings Introduces the type `Aut G := G ≃g G` of graph automorphisms and the corresponding count `autCount G`, then uses the orbit-stabiliser principle on both `Copy G H` and `Embedding G H` to prove `H.copyCount G = H.unlabeledCopyCount G * G.autCount` and `H.embeddingCount G = H.unlabeledEmbeddingCount G * G.autCount`. In both, the labeled copies decompose as a disjoint union of fibers indexed by the corresponding unlabelled copies, with each fiber a torsor under `Aut G`. The fiber-action machinery and the sigma decompositions are the substantive content; the two multiplicative identities are the corollaries. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- The main achievement is to allow the user to freely convert between `{copy,embedding}Count` and `unlabeled{copy,embedding}Count` through `autCount`. Sits on top of the `Copy` / `InducedCopy` refactor-feat stack (final step #38631), plus a small prerequisite (#39571) extracting the standalone `Quot.mk` / `Quot.out`-style toolage between labeled and unlabeled copies. - [ ] depends on: #39571 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/feat/copy-toUnlabeled-out...feat/simplegraph-aut) t-combinatorics large-import blocked-by-other-PR 936/326 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Automorphism.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/InducedCopy.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 6 5 ['FordUniver', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-12238
2 days ago
10-83775
10 days ago
0-1039
17 minutes
39571 FordUniver
author:FordUniver
feat(Combinatorics/SimpleGraph): canonical projection and representative between labeled and unlabeled copies Introduces canonical projection and noncomputable representative functions between labeled and unlabeled copies (and their embedding analogues) in `SimpleGraph`, in the spirit of `Quot.mk` / `Quot.out`. The pair gives a name to a construction that previously appeared as inlined anonymous-constructor and destructuring patterns; two pre-existing proofs in `Copy.lean` and `InducedCopy.lean` are tightened by routing through the new functions instead. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- Split out from a downstream PR introducing `SimpleGraph.Aut` and the orbit-stabiliser identities for copies and embeddings, where the projection and representative primitives recur in fiber decompositions and product equivalences. Sits on top of the `Copy` / `InducedCopy` [stack](https://github.com/leanprover-community/mathlib4/pull/38631) and inherits the "large-import" tag from it. - [ ] depends on: #38631 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/feat/ind-copy-count...feat/copy-toUnlabeled-out) t-combinatorics large-import blocked-by-other-PR 644/326 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/InducedCopy.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 5 4 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-12221
2 days ago
10-85397
10 days ago
0-589
9 minutes
39908 SnirBroshi
author:SnirBroshi
chore(Order): infer `toDecidable*` in `*LinearOrder`s when possible Surround the `toDecidableEq`/`toDecidableLE`/`toDecidableLT` fields in `LinearOrder`/`CompleteLinearOrder`/`ConditionallyCompleteLinearOrder` with square brackets to let TC-search try to infer it. --- I also tried prepending `by first | infer_instance | exact` to the existing defaults of `toDecidableEq`/`toDecidableLT` but it broke instances. It looks like a tactic block can't reference other fields unlike a default term. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order awaiting-author 176/226 Mathlib/Algebra/BigOperators/Ring/Nat.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Char.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Int/Order/Basic.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Num/ZNum.lean,Mathlib/Data/PSigma/Order.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Sigma/Order.lean,Mathlib/Data/Sign/Defs.lean,Mathlib/Data/String/Basic.lean,Mathlib/Data/Sum/Order.lean,Mathlib/GroupTheory/DivisibleHull.lean,Mathlib/GroupTheory/MonoidLocalization/Order.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/ModelTheory/Order.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Comparable.lean,Mathlib/Order/Compare.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/Completion.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Extension/Linear.lean,Mathlib/Order/Extension/Well.lean,Mathlib/Order/Interval/Lex.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/OrderDual.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/Quotient.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/RingTheory/HahnSeries/Lex.lean,Mathlib/RingTheory/RegularLocalRing/Defs.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean 52 14 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
2-11063
2 days ago
3-20709
3 days ago
0-2746
45 minutes
36911 jjdishere
author:jjdishere
fix(RingTheory/Valuation): change `ValueGroup` from taking HomClass to Hom This PR refactors `MonoidWithZeroHom.valueMonoid`, `MonoidWithZeroHom.valueGroup`, `MonoidWithZeroHom.ValueGroup₀`, and `MonoidWithZeroHom.ValueGroup₀.embedding` to take a concrete `MonoidWithZeroHom` as input instead of a `MonoidWithZeroHomClass` instance, following rules described in [#mathlib4 > Mathlib's morphism hierarchy @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Mathlib.27s.20morphism.20hierarchy/near/554383157) As a result, we are able to remove several `erw` and many `set_option backward.isDefEq.respectTransparency false in`. The trade-off (foreseen by the same zulip thread) is that we now need to write an explicit coercion to `MonoidWithZeroHom` in `ValueGroup₀ (Valued.v (R := R) : R →*₀ Γ₀)`. Additionally, this PR fixes an instance on `NNReal`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #36532 - [ ] depends on: #36777 t-ring-theory tech debt blocked-by-other-PR merge-conflict 559/483 Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/Padics/Complex.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean,Mathlib/RingTheory/Valuation/DiscreteValuativeRel.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean 24 6 ['github-actions', 'jjdishere', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
2-10434
2 days ago
70-59537
70 days ago
0-60
1 minute
36167 WenrongZou
author:WenrongZou
feat(RingTheory/FormalGroup): construction of additive inverse of formal group construction of additive inverse --- - [x] depends on: #35912 - [ ] depends on: #38052 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory blocked-by-other-PR 514/15 Mathlib.lean,Mathlib/RingTheory/FormalGroup/AddInv.lean,Mathlib/RingTheory/FormalGroup/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Trunc.lean 8 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-9359
2 days ago
45-8707
45 days ago
4-15504
4 days
38052 WenrongZou
author:WenrongZou
feat(FormalGroup): `F(X,0)=X` and `F(0,X)=X` In this PR, I prove that given a formal group law `F`, then `F(X,0) = X` and `F(0,X) = X`. And modify the definition of `FormalGroup.Point` to be a subtype. And prove that this subtype is a `AddZeroClass`. Eventually we will prove that this is a `AddGroup`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 253/33 Mathlib/RingTheory/FormalGroup/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 5 19 ['WenrongZou', 'eric-wieser', 'github-actions', 'mariainesdff', 'mathlib-merge-conflicts'] mattrobball
assignee:mattrobball
2-9324
2 days ago
2-9365
2 days ago
45-20344
45 days
38213 WenrongZou
author:WenrongZou
feat(FormalGroup): APIs for formal group homomorphism This PR introduces some APIs for homomorphism between formal group laws. --- - [ ] depends on: #38052 - [x] depends on: #37618 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import blocked-by-other-PR 344/10 Mathlib/RingTheory/FormalGroup/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 6 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-9001
2 days ago
41-72663
41 days ago
0-1101
18 minutes
37259 EtienneC30
author:EtienneC30
feat: blumenthal's zero-one law for Brownian motion --- - [ ] depends on: #36616 - [ ] depends on: #39728 - [x] depends on: #39754 - [x] depends on: #39749 - [x] depends on: #39750 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability blocked-by-other-PR large-import 665/1 Mathlib.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/MeasurablyGenerated.lean,Mathlib/Probability/BrownianMotion/Basic.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/HasLaw.lean,Mathlib/Probability/Independence/Integration.lean,Mathlib/Probability/Moments/Basic.lean 11 11 ['EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot'] nobody
2-8853
2 days ago
unknown
0-0
0 seconds
39949 thorimur
author:thorimur
chore: respect naming conventions for defs in more meta code This PR removes underscores from various metaprogramming `defs` which were misnamed. Sometimes meta-level tactic API is named to reflect the tactic syntax, and sometimes expressions representing proofs are named with underscores; but both of these are ordinary parts of the API which should respect ordinary naming conventions for defs. Note that this PR also renames a couple of definitions in `Mathlib.Tactic.Linarith.NNRealPreprocesser` and `Mathlib.Tactic.Linarith.Preprocessing` to more closely reflect their type (e.g. using `?` for `Option`, `get` instead of `is` for computing data; also `Proof` instead of `Prf` to avoid the unnecessary abbreviation). These are exempted by the `defsWithUnderscore` linter due to living in `Mathlib.Tactic`. (A change to this is explored in #39890, which removes this heuristic.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 63/36 Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Choose.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/Linarith/NNRealPreprocessor.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Ring/Compare.lean 7 5 ['b-mehta', 'github-actions', 'grunweg', 'thorimur'] dwrensha
assignee:dwrensha
2-6517
2 days ago
2-48772
2 days ago
2-50755
2 days
38228 kim-em
author:kim-em
ci: block merging PRs that increase technical debt unless reviewed This PR adds a merge gate for technical debt increases. When the existing technical debt metrics script reports an increase, the `build` job adds an `increases-technical-debt` label. A `check-technical-debt` job then adds `blocked-by-increases-technical-debt`, which blocks bors. A reviewer can add `allow-increases-technical-debt` to unblock after confirming the increase is acceptable. ### Fail-closed detection The detection greps for the *safe* patterns (`Decrease in tech debt:` / `No changes to technical debt.`) rather than for `Increase`. If `mathlib-ci` changes the script's output wording, the label is added (fail closed) rather than silently skipped (fail open). ### Labels (three-label pattern, same as #38225) | Label | Managed by | Purpose | |---|---|---| | `increases-technical-debt` | `build` job (tech debt script) | Factual: this PR increases debt | | `blocked-by-increases-technical-debt` | `check-technical-debt` job | Operational: blocks bors | | `allow-increases-technical-debt` | Reviewer | Override: reviewer approves the increase | Bors's `block_labels` has no conditional logic, so we need the derived `blocked-by-increases-technical-debt` label to express the conjunction "increases-technical-debt AND NOT allow-increases-technical-debt". False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/increases-technical-debt.20label). 🤖 Prepared with Claude Code ----------- - [x] depends on: leanprover-community/mathlib-ci#28 CI 83/2 .github/workflows/PR_summary.yml,bors.toml 2 9 ['github-actions', 'grunweg', 'jcommelin', 'joneugster', 'kim-em', 'mathlib-dependent-issues'] Vierkantor and jcommelin
assignee:Vierkantor assignee:jcommelin
2-5241
2 days ago
2-5241
2 days ago
14-80909
14 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
2-4413
2 days ago
2-4541
2 days ago
2-86392
2 days
36701 kim-em
author:kim-em
feat(DefEqAbuse): detect and report leaky instance binder types This PR adds `#check_instance` and `checkInstance` to `Mathlib/Tactic/FastInstance.lean` to diagnose individual instances for leaky data-field binder types, and integrates this into `#defeq_abuse` so it automatically reports leaky instances. A new `withDisabledInstance` helper temporarily evicts an instance from the discrimination tree (via `Attribute.erase` + `withoutModifyingEnv`), allowing `makeFastInstance` to compute the canonical form without `trySynthInstance` trivially finding the instance being checked. `#defeq_abuse` now checks instances used in the failing goal/command for leakiness and reports them alongside the isDefEq failure diagnostics. **Example: `#check_instance`** ```lean def MyNat := ℕ -- Without fast_instance%, the `add` field has binder type ℕ rather than MyNat. instance leakyAdd : Add MyNat := ⟨Nat.add⟩ #check_instance leakyAdd -- ❌ 'leakyAdd': leaky binder types detected. -- The data field `add` has binder type ℕ where MyNat is expected. -- The `fast_instance%` elaborator may be useful as a repair or band-aid: -- `instance : ... := fast_instance% ` instance fixedAdd : Add MyNat := fast_instance% ⟨Nat.add⟩ #check_instance fixedAdd -- ✅ 'fixedAdd': canonical (re-inferred form agrees at instances transparency) ``` 🤖 Prepared with Claude Code LLM-generated awaiting-author t-meta 305/16 Mathlib/Tactic/DefEqAbuse.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/CheckInstance.lean,MathlibTest/DefEqAbuse.lean 4 55 ['JovanGerb', 'Vierkantor', 'eric-wieser', 'github-actions', 'kim-em', 'mathlib-merge-conflicts', 'ocfnash'] Vierkantor
assignee:Vierkantor
2-4225
2 days ago
67-63092
67 days ago
6-60386
6 days
34891 kim-em
author:kim-em
feat: ConvexSpace constructor from binary convex combinations t-algebra large-import merge-conflict
label:t-algebra$
3345/0 Mathlib/LinearAlgebra/ConvexSpace.lean 1 4 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
2-3757
2 days ago
39-9427
39 days ago
0-459
7 minutes
29012 grunweg
author:grunweg
chore: reduce `Topology` imports in `Data` Move Data.Real.Sqrt to Analysis. --- - [x] depends on: #28966 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict file-removed 25/21 Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Sensitivity.lean,Mathlib.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/Ball/Homeomorph.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Real/Sqrt.lean,Mathlib/Data/Rat/NatSqrt/Real.lean,Mathlib/Data/Real/CompleteField.lean,Mathlib/Data/Real/Irrational.lean,Mathlib/Data/Real/StarOrdered.lean,Mathlib/NumberTheory/Zsqrtd/ToReal.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/NormNum/RealSqrt.lean,MathlibTest/positivity.lean 20 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
2-2869
2 days ago
241-7105
241 days ago
0-11345
3 hours
38594 ScottCarnahan
author:ScottCarnahan
feat(Algebra/Lie): grading on loop algebras In this PR we introduce a decomposition of a tensor product of modules induced by a decomposition of the module on the left side. This is used to produce the canonical "energy" grading on a loop Lie algebra. This will (eventually) give us the "energy" grading on smooth representations of affine algebras. --- Should I make the tensor decomposition more ring-polymorphic? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
144/9 Mathlib/Algebra/Lie/Loop.lean,Mathlib/LinearAlgebra/DirectSum/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Decomposition.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean 4 1 ['github-actions'] ocfnash
assignee:ocfnash
2-2823
2 days ago
2-38306
2 days ago
2-38289
2 days
38843 FordUniver
author:FordUniver
chore(Combinatorics/SimpleGraph/Copy): replace file-wide `@[expose]` with selective exposure Removes the file-wide `@[expose] public section` and restores selective `@[expose]` only on the small constructive `def`s that need cross-module reduction: `Copy.toEmbedding`, `Copy.id`, `Copy.ofLE`, `Copy.topEmbedding` — each has an exported `@[simp]` lemma proved by `rfl` that needs the definition unfolded to typecheck. Replaces `@[simps!]` on `topEmbedding` with an explicit `@[simp] topEmbedding_apply` to avoid a private `_proof_1` term leaking into generated lemma names; adds `toEmbedding_apply` to match the existing `toHom_apply`. Switches `IsIndContained` from `def` to `abbrev` so the structural alias `Nonempty (G ↪g H)` stays transparent, matching `IsContained` and `Free`. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Step 3/5 of the `Copy` / `InducedCopy` refactor-feat stack.** The noncomputable counts `copyCount` and `unlabeledCopyCount` are deliberately *not* exposed (see [@plp127's review](https://github.com/leanprover-community/mathlib4/pull/38631#discussion_r3161902380) on #38631 explaining that unfolding a `classical`-`Fintype.card` body is rarely what you want); the downstream consumers in #38631 bridge via public `*_eq_nat_card` lemmas introduced in #38931 instead. - [ ] depends on: #38745 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/chore/copy-spelling...chore/copy-expose) t-combinatorics new-contributor blocked-by-other-PR 245/247 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 5 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-613
2 days ago
17-5204
17 days ago
0-76500
21 hours
39203 FordUniver
author:FordUniver
refactor(Analysis/Calculus/Gradient): ungate `inner_gradient` lemmas Removes superfluous differentiability hypotheses (plus `UniqueDiffWithinAt` for the `Within` versions) from the four `inner_gradient[Within]_[left|right]` lemmas: `gradient` is defined as `(toDual 𝕜 F).symm (fderiv 𝕜 f x)`, so `⟪∇ f x, y⟫ = fderiv 𝕜 f x y` holds unconditionally since both sides are zero when `f` is not differentiable at `x`. Co-authored-by: Sebastian Pokutta <23001135+pokutta@users.noreply.github.com> --- Genuinely unsure about this one because the only call I currently have in my code itself has the differentiability hypothesis. But including unused (or unnecessary) assumptions seems not intentional? My best guess is that the hypotheses were included by analogy with `HasGradientAt.fderiv_apply`, which genuinely needs them. This PR drops the hypotheses and rewrites the proofs through the isomorphism directly; no existing mathlib callers pass the now-redundant arguments. t-analysis maintainer-merge 17/10 Mathlib/Analysis/Calculus/Gradient/Basic.lean 1 6 ['FordUniver', 'Komyyy', 'github-actions'] urkud
assignee:urkud
2-563
2 days ago
18-75762
18 days ago
18-75724
18 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
2-555
2 days ago
18-75236
18 days ago
18-75362
18 days
38931 FordUniver
author:FordUniver
chore(Combinatorics/SimpleGraph/Copy): replace classical `Fintype.card` with `Nat.card` Replaces definitions of `copyCount` and `unlabeledCopyCount` with `Nat.card` instead of `Fintype.card` as well as several `Fintype` occurrences with `Finite`. The body of `uniqueUnlabeledCopyBot` is restructured to use `Finite.injective_iff_surjective` since the `Fintype.card_congr` route no longer applies under the weakened `[Finite W]` hypothesis. Adds public `copyCount_eq_nat_card` and `unlabeledCopyCount_eq_nat_card` bridge lemmas so downstream files can characterize the counts (e.g. for `Nat.card_le_card_of_injective` bridging in `InducedCopy.lean`) without unfolding. Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com> --- **Step 4/5 of the `Copy` / `InducedCopy` refactor-feat stack.** As suggested in #38631 by @SnirBroshi and @YaelDillies. I went with `Nat` over `ENat` based on Yael's preference (but I think that could easily be changed to `ENat`). Quite a bit of churn was needed as a consequence. - [ ] depends on: #38843 Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/chore/copy-expose...chore/copy-nat-card) new-contributor t-combinatorics large-import blocked-by-other-PR 272/259 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 8 ['FordUniver', 'SnirBroshi', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-494
2 days ago
25-78861
25 days ago
0-2006
33 minutes
38784 justus-springer
author:justus-springer
feat(Algebra/Algebra/RestrictScalars): Generalize `RestrictScalars` Generalize `RestrictScalars` to allow restricting along a ring morphism `f : R →+* S` where `R` is not necessaritly commutative. This is a step towards resolving defeq abuses between `(restrictScalars f).obj M` and `M` for `M : ModuleCat R`, mentioned in the file `ModuleCat/ChangeOfRings.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 350/148 Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Lie/BaseChange.lean,Mathlib/Analysis/Normed/Module/Basic.lean 4 2 ['eric-wieser', 'github-actions'] nobody
1-86066
1 day ago
29-66744
29 days ago
0-7
7 seconds
31892 jsm28
author:jsm28
feat(Geometry/Euclidean/Sphere/PolePolar): poles and polars Define poles and polars for spheres in Euclidean affine spaces, and set up some basic API, including in particular La Hire's theorem (`p₁` lies on the polar of `p₂` if and only if `p₂` lies on the polar of `p₁`). Poles and polars are actually meaningful for any quadric in a projective space over any field, but I think it's reasonable to set up this theory for spheres in the Euclidean context and potentially link it in future to more general projective geometry. --- - [x] depends on: #31891 - [x] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 159/0 Mathlib.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean 2 8 ['Parcly-Taxel', 'github-actions', 'jsm28', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-83501
1 day ago
63-61633
63 days ago
63-62355
63 days
39707 sorrachai
author:sorrachai
chore(Data/Tree/Basic): Rename Tree to BinaryTree Rename `Tree` to `BinaryTree`. This frees up the name `Tree` to cover n-ary trees in future. We only deprecate the `def`s, and move the theorems without deprecation. new-contributor t-data 157/62 Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Tree/Get.lean,Mathlib/Data/Tree/Traversable.lean,Mathlib/Tactic/CancelDenoms/Core.lean,docs/overview.yaml 7 36 ['b-mehta', 'eric-wieser', 'github-actions', 'sorrachai'] nobody
1-82783
1 day ago
5-74015
5 days ago
6-1635
6 days
36739 mbkybky
author:mbkybky
feat(RingTheory): UFD criteria via height `1` prime ideals and localization We prove the following UFD criteria via height `1` prime ideals and localization: 1. Let `R` be a Noetherian domain. Then `R` is a UFD if and only if every height `1` prime ideal is principal. 2. Let `R` be a Noetherian domain, `x ∈ R` be a prime element. If `Rₓ` is a UFD, then `R` is also a UFD. - [x] depends on: #37627 - [x] depends on: #38933 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 208/2 Mathlib.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/UFD.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Away/Lemmas.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Localization.lean 7 28 ['chrisflav', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mbkybky', 'tb65536'] chrisflav
assignee:chrisflav
1-82635
1 day ago
4-18672
4 days ago
67-82000
67 days
39970 chrisflav
author:chrisflav
perf(AlgebraicGeometry): specialize index type in `AffineSpace` to `Type u` The `AffineSpace` file is notoriously slow and making the index type be in the same universe as the base scheme cuts instructions in half. In case it is necessary, we can still `ULift` to obtain the old functionality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 27/28 Mathlib/AlgebraicGeometry/AffineSpace.lean 1 3 ['chrisflav', 'github-actions', 'leanprover-radar'] nobody
1-81669
1 day ago
1-82965
1 day ago
1-82932
1 day
39827 kbuzzard
author:kbuzzard
perf: test radar Add comment to leaf file to see the behaviour reported by radar. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebraic-geometry 1/1 Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean 1 12 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
1-80385
1 day ago
4-74856
4 days ago
0-7
7 seconds
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 awaiting-author 93/0 Mathlib.lean,Mathlib/Probability/Decision/Risk/Countable.lean 2 4 ['EtienneC30', 'github-actions'] EtienneC30
assignee:EtienneC30
1-79468
1 day ago
1-79469
1 day ago
3-12705
3 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 27 ['YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'hawkrobe', 'themathqueen'] nobody
1-77496
1 day ago
2-28052
2 days ago
5-20913
5 days
39975 gasparattila
author:gasparattila
chore: tag `(Continuous)LinearEquiv.prodCongr_symm` with `@[simp]` This is consistent with the other `prodCongr`s. Note that this also changes the type of `PiLp.sumPiLpEquivProdLpPiLp_symm_apply_ofLp`, which is now fully simplified. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 5/5 Mathlib/LinearAlgebra/Prod.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/Topology/Algebra/Module/Equiv.lean 3 1 ['github-actions'] nobody
1-76735
1 day ago
1-77304
1 day ago
1-77266
1 day
39973 tb65536
author:tb65536
chore(Topology/Algebra/Category/ProfiniteGrp/*): to_additivize some declarations This PR to_additivizes some declarations relating to profinite groups. There were a few trickier declarations that I left out of this PR for now. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory t-topology
label:t-algebra$
28/3 Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Limits.lean 3 2 ['github-actions'] nobody
1-76415
1 day ago
1-76415
1 day ago
1-76462
1 day
26923 oliver-butterley
author:oliver-butterley
feat(Dynamics/BirkhoffSum): add the pointwise ergodic theorem (Birkhoff's) The Pointwise Ergodic Theorem, also known as Birkhoff's Ergodic Theorem. Co-authored-by: Lua Viana Reis - [x] depends on: #26074 - [x] depends on: #26807 - [x] depends on: #26810 - [x] depends on: #26840 - [x] depends on: #26842 - [x] depends on: #26848 - [x] depends on: #26851 - [x] depends on: #26852 - [x] depends on: #26853 - [x] depends on: #27008 - [x] depends on: #28901 Zulip: [PR thread](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2326923.20The.20pointwise.20ergodic.20theorem.20.28Birkhoff's.29/with/527835158) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor awaiting-author 398/0 Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Pointwise.lean 2 33 ['D-Thomine', 'github-actions', 'leanprover-community-bot-assistant', 'lua-vr', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'rwst', 'sgouezel', 'urkud'] sgouezel
assignee:sgouezel
1-76318
1 day ago
164-56044
164 days ago
98-50945
98 days
34031 lua-vr
author:lua-vr
feat(Dynamics/BirkhoffSum): add the maximal ergodic theorem Proves the maximal ergodic theorem for a measure-preserving map `f` and an integrable function `g`. The maximal ergodic operator `birkhoffAverageSup f g x` is defined as the supremum of the Birkhoff averages of `g` over all `n`. The PR also shows some results about the auxiliary definition `birkhoffMax f g n`, defined as the maximum of the Birkhoff sums ranging between `0` and `n`. Main results: * `distribution_birkhoffAverageSup_le_integral`: the cumulative distribution function of `birkhoffAverageSup` at `a` is less than or equal to the integral of `g` on the set where `a < birkhoffAverageSup f g x`. * `iSup_distribution_birkhoffAverageSup_le_norm`: the operator `birkhoffAverageSup` satisfies a weak-type inequality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics 329/0 Mathlib.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Dynamics/BirkhoffSum/Integrable.lean,Mathlib/Dynamics/BirkhoffSum/Maximal.lean,Mathlib/Dynamics/BirkhoffSum/Measurable.lean,Mathlib/Order/PartialSups.lean 6 4 ['github-actions', 'lua-vr', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
1-74611
1 day ago
43-8433
43 days ago
42-71171
42 days
39977 tb65536
author:tb65536
feat(RingTheory/RamificationInertia/Ramification): positivity of ramification index This PR proves positivity of the new definition ramification inertia. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
27/1 Mathlib/RingTheory/RamificationInertia/Ramification.lean 1 1 ['github-actions'] nobody
1-74101
1 day ago
1-74101
1 day ago
1-74065
1 day
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
1-70889
1 day ago
5-14537
5 days ago
17-83524
17 days
37183 dagurtomas
author:dagurtomas
feat(Tactic/CategoryTheory): map attribute Adding `@[map]` to a lemma named `H` of shape `∀ .., f = g`, where `f` and `g` are morphisms in some category `C`, creates a new lemma named `H_map` of the form `∀ .. {D} (func : C ⥤ D), F.map f = F.map g` and then applies `simp only [Functor.map_comp, Functor.map_id]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated t-meta t-category-theory 301/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean 5 13 ['adamtopaz', 'dagurtomas', 'github-actions', 'joelriou'] kim-em
assignee:kim-em
1-70032
1 day ago
2-19320
2 days ago
64-69661
64 days
39122 justus-springer
author:justus-springer
feat(AlgebraicGeometry/Birational): Birationality and rationality of schemes This is a first step (of hopefully many) towards some basic birational geometry. This PR adds `Birational/Birational.lean`, which defines predicates `Birational`, `BirationalOver` and `IsRationalOver` for arbitrary schemes and provides basic API (e.g. that they are equivalence relations, and that affine space is rational). Some notes on the choice of definitions: There are multiple ways to define what it means for two schemes to be birational to each other. A common one is: "There exists a rational map with a rational inverse". However, this would require defining composition of rational maps, which is not always defined (In order to compose `f : X ⤏ Y` with `g : Y ⤏ Z`, you need at least `X` preirreducible, `Y` nonempty and `f` dominant). On the other hand, I can define "There exist dense subsets `U : Opens X` and `V : Opens Y` such that `U ≅ V` as schemes" for any two schemes `X` and `Y`, with no conditions. Hence I chose that as a definition. I'm also working on defining composition of rational maps (#39445), and once that's done, there should be a theorem connecting the two definitions. - [x] depends on: #39316 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 302/0 Mathlib.lean,Mathlib/AlgebraicGeometry/Birational/Birational.lean,Mathlib/AlgebraicGeometry/Restrict.lean 3 12 ['chrisflav', 'erdOne', 'github-actions', 'justus-springer', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joelriou
assignee:joelriou
1-68156
1 day ago
1-86160
1 day ago
19-27417
19 days
38848 jcreinhold
author:jcreinhold
feat(AlgebraicTopology/SimplicialSet): exists_isPushout_of_ne_top Every proper subcomplex of a simplicial set extends by attaching a single cell along its boundary, exhibited as a pushout of `∂Δ[n] ↪ Δ[n]`. This is the per-cell input for cell-by-cell filtrations of monomorphisms in `SSet`. Adapted from @joelriou 's [proof](https://github.com/joelriou/topcat-model-category/blob/813338a8c88cfe0096deed7e3ba7daf92d4a1c71/TopCatModelCategory/SSet/Boundary.lean#L187). I also added the supporting lemma `Types.isPullback_of_eq_setPreimage` (set-preimage square is a pullback in `Type u`). AI use: Claude helped locate `subtype_val_mono` and the `backward.isDefEq.respectTransparency` option. t-algebraic-topology new-contributor 120/3 Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/CategoryTheory/Limits/Types/Pullbacks.lean 2 26 ['github-actions', 'jcreinhold', 'joelriou', 'mckoen'] joelriou
assignee:joelriou
1-68109
1 day ago
20-58064
20 days ago
27-26803
27 days
36544 xroblot
author:xroblot
feat(RingTheory/Ideal): restriction maps on decomposition and inertia groups in a Galois tower Adds a new file `Mathlib/RingTheory/Ideal/Galois.lean` with results on the action of `Gal(L/K)` on ideals of a ring `B ⊆ L` for a Galois subextension `F/K` of `L/K`. The main results are the surjectivity and kernel descriptions of the natural maps from the decomposition (resp. inertia) group of `P` in `Gal(L/K)` to the decomposition (resp. inertia) group of `p` in `Gal(F/K)`, induced by restriction. --- - [ ] depends on: #38153 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author WIP 213/0 Mathlib.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/RingTheory/Ideal/Galois.lean 3 18 ['copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'riccardobrasca', 'tb65536', 'xroblot'] riccardobrasca
assignee:riccardobrasca
1-66625
1 day ago
44-6996
44 days ago
34-56618
34 days
37344 vihdzp
author:vihdzp
feat: monotone function `Cardinal → α` is eventually constant --- - [x] depends on: #39797 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-order 89/1 Mathlib.lean,Mathlib/Data/Set/Monotone.lean,Mathlib/Logic/Small/Basic.lean,Mathlib/SetTheory/Cardinal/EventuallyConst.lean 4 5 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'vihdzp', 'wwylele'] nobody
1-65233
1 day ago
1-66670
1 day ago
12-30802
12 days
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). t-ring-theory new-contributor 234/0 Mathlib.lean,Mathlib/RingTheory/Bialgebra/Quotient.lean,Mathlib/RingTheory/Coalgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean 4 9 ['YaelDillies', 'github-actions', 'hawkrobe'] nobody
1-64057
1 day ago
2-28084
2 days ago
4-33186
4 days
39955 plp127
author:plp127
chore: deduplicate `Relation.CutExpand` The file `Mathlib/Data/Multiset/DershowitzManna` has a private definition called `Multiset.OneStep` which is the same as `Relation.CutExpand (· < ·)` and a bunch of private theorems proving `WellFounded.cutExpand`. This PR replaces all this with the existing theorems about `Relation.CutExpand` to reduce duplication. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data large-import 25/78 Mathlib/Data/Multiset/DershowitzManna.lean 1 6 ['github-actions', 'mathlib-bors', 'plp127', 'vihdzp'] nobody
1-62115
1 day ago
2-30451
2 days ago
0-462
7 minutes
39982 riccardobrasca
author:riccardobrasca
feat: add Ideal.IsPrincipal.of_isPrincipal_pow_of_coprime --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 31/0 Mathlib/RingTheory/ClassGroup.lean 1 1 ['github-actions'] nobody
1-61845
1 day ago
1-61741
1 day ago
1-62557
1 day
39890 thorimur
author:thorimur
feat: polish `defsWithUnderscore` linter Modifies the behavior of the `defsWithUnderscore` linter to be a little less ad-hoc, and project-sensitive. - Instead of exempting parsers by namespace, exempts by type. - Exempt library notes by type (thus linting incorrect defs in the LibraryNote namespace). - Exempt deprecated declarations; these are not technical debt (at least, not for this reason). - Exempt `Prop`-typed defs; these may be made by `unif_hint`, for example, and are the resposibility of a different linter in any case. - Exempts `.formatter` and `.parenthesizer` declarations. - Do not exempt on the basis of guillemets; this is an elaborator feature. - Exempts all `_` names, not just `_1` and `_2`. - Exempts decls ending in `_project` when they come from `Project`, using the same mechanism by which `_project` is appended. - Small modifications to the meta code to module-proof the linter, in the eventuality that env_linters have to be modulized. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter merge-conflict 224/272 Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Choose.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/Linarith/NNRealPreprocessor.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/Ring/Compare.lean,MathlibTest/Linter/TextBased.lean,scripts/nolints.json 11 2 ['SnirBroshi', 'github-actions'] nobody
1-61484
1 day ago
unknown
0-0
0 seconds
38778 felixpernegger
author:felixpernegger
feat(Topology/EMetricSpace): instances of weak extended metric spaces Continuation of #38105. In particular, this makes `ENNReal` and `EReal` weak extended metric spaces. After this PR one can probably generalise various results/definition which use `(Pseudo)EMetricSpace` to use `Weak(Pseudo)EMetricSpace` (so that they in particular also hold for `ENNReal` and `EReal`) t-topology awaiting-author 247/0 Mathlib.lean,Mathlib/Topology/EMetricSpace/Weak.lean 2 5 ['SnirBroshi', 'felixpernegger', 'github-actions', 'j-loreaux'] PatrickMassot
assignee:PatrickMassot
1-61409
1 day ago
10-52122
10 days ago
14-70133
14 days
25822 ScottCarnahan
author:ScottCarnahan
WIP: experiments with vertex algebras This is a testbed for various attempts at things. Please don't bother reviewing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #25821.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/25821* WIP large-import 8558/266 Mathlib.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/ChevalleyEilenberg.lean,Mathlib/Algebra/Lie/Cochain.lean,Mathlib/Algebra/Lie/Cocycle.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/Extension/CentralExtension.lean,Mathlib/Algebra/Lie/Graded.lean,Mathlib/Algebra/Lie/Loop.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/Polynomial/Nusmeval.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Algebra/Vertex/Affine.lean,Mathlib/Algebra/Vertex/Basic.lean,Mathlib/Algebra/Vertex/Defs.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Algebra/Vertex/Lattice.lean,Mathlib/Algebra/Vertex/VertexOperator.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/FunLike/Equiv.lean,Mathlib/Data/Prod/RevLex.lean,Mathlib/Data/Set/SMulAntidiagonal.lean,Mathlib/GroupTheory/GroupAction/Equiv.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/RingTheory/DividedPowers/Cauchy.lean,Mathlib/RingTheory/FormalSeries.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/Binomial.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/PowerSeries/Binomial.lean 44 33 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
1-59822
1 day ago
351-62298
351 days ago
0-2
2 seconds
29764 ScottCarnahan
author:ScottCarnahan
feat(Algebra/Vertex): API up to residue products (WIP) This PR contains definitions leading up to the residue product of vertex operators and some basic properties. Parts will be split off as smaller PRs when I have time. --- - [ ] depends on: #25831 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR large-import WIP
label:t-algebra$
1692/19 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Lie/Loop.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/RestrictedValue.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Algebra/Vertex/VertexOperator.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Binomial.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean,Mathlib/RingTheory/Polynomial/Pochhammer.lean 15 6 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
1-59645
1 day ago
253-74483
253 days ago
0-12586
3 hours
39127 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(NumberTheory/Height/NumberField): add lemma on "finite part" of mulHeight This PR adds ```lean lemma absNorm_mul_finprod_finitePlace_eq_one {K ι : Type*} [Field K] [NumberField K] [Finite ι] {x : ι → 𝓞 K} (hx : x ≠ 0) : (Ideal.span <| Set.range x).absNorm * ∏ᶠ v : FinitePlace K, ⨆ i, v (x i) = 1 ``` Because we need it in the proof, we also add a new file Mathlib.Algebra.Order.Hom.Lattice that contains an API lemma that allows reducing the type over which an `iSup` is taken to a subtype. --- - [x] depends on: #39008 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 70/0 Mathlib.lean,Mathlib/Algebra/Order/Hom/Lattice.lean,Mathlib/NumberTheory/Height/NumberField.lean 3 12 ['MichaelStollBayreuth', 'github-actions', 'mathlib-dependent-issues', 'tb65536'] tb65536
assignee:tb65536
1-59107
1 day ago
7-9398
7 days ago
7-10359
7 days
38553 Whysoserioushah
author:Whysoserioushah
feat(RepresentationTheory/Homological): define Tate cohomology co-authored-by : class field theory team --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra CFT awaiting-author
label:t-algebra$
267/1 Mathlib.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/LongExactSequence.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LongExactSequence.lean,Mathlib/RepresentationTheory/Homological/TateCohomology/Basic.lean 4 45 ['Multramate', 'Whysoserioushah', 'dagurtomas', 'faenuccio', 'github-actions', 'kbuzzard', 'riccardobrasca'] dagurtomas, faenuccio, mariainesdff
assignee:dagurtomas assignee:faenuccio assignee:mariainesdff
1-58603
1 day ago
9-27410
9 days ago
22-71351
22 days
33355 0xTerencePrime
author:0xTerencePrime
feat(Combinatorics/SimpleGraph/Connectivity): define vertex connectivity **AI Disclosure**: Developed with LLM assistance (Claude). All mathematical design decisions were made by the author. --- This PR introduces the foundations of vertex connectivity for simple graphs, providing a counterpart to the edge connectivity theory in #32870. ### Main definitions - `SimpleGraph.IsVertexReachable`: two vertices are `k`-vertex-reachable if they remain reachable after removing any set of strictly fewer than `k` vertices, using `G.induce sᶜ`. - `SimpleGraph.IsVertexPreconnected`: a graph is `k`-vertex-preconnected if any two vertices are `k`-vertex-reachable. - `SimpleGraph.IsVertexConnected`: a graph is `k`-vertex-connected if it is `k`-vertex-preconnected and has more than `k` vertices (`k + 1 ≤ ENat.card V`). ### Key lemmas - `k = 0`: 0-connected ↔ nonempty; 0-preconnected always holds - `k = 1`: 1-connected ↔ `Nontrivial V ∧ G.Preconnected` - `anti` / `mono`: antitonic in `k`, monotonic in the graph new-contributor t-combinatorics LLM-generated 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/VertexConnectivity.lean 2 165 ['0xTerencePrime', 'SnirBroshi', 'SproutSeeds', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] b-mehta
assignee:b-mehta
1-57466
1 day ago
4-23134
4 days ago
62-52368
62 days
36878 plp127
author:plp127
chore: override `npow` in compositional monoids If `FooHom` is the type of foo homomorphisms, then `FooHom A A` naturally gets the structure of a monoid by setting one to be the identity homomorphism and setting multiplication to be composition. This PR overrides the `npow` field of this `Monoid` to have `f ^ n` be definitionally equal to `f^[n]`. `FooEquiv A A` also naturally gets a group structure in the same way, this PR overrides the `npow` field to have `f ^ n` be definitionally equal to `f^[n]` and to have `f ^ (n + 1)` be definitionally equal to `f ^ n * f`. This does break one pre-existing definitional equality: when `e : Equiv.Perm α`, `e⁻¹ ^ n = (e ^ n)⁻¹` will no longer be definitional. This PR also sets the `zpow` field of `Group (FooEquiv A A)` instances to `zpowRec (npow := fun n f => f ^ n)`. In the future we may want to change this so that `(f ^ n).toEquiv` is definitionally equal to `f.toEquiv ^ n`. The monoid and group instances to modify are found by searching loogle for `"one_apply"`. The motivation is to make natural number powers commute definitionally with the coercion from `AlgEquiv` to `LinearMap`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 206/62 Mathlib/Algebra/AddConstMap/Equiv.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Ring/Aut.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Star/MonoidHom.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean 17 4 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'plp127'] nobody
1-55602
1 day ago
1-54949
1 day ago
0-3193
53 minutes
33461 loefflerd
author:loefflerd
feat(NumberTheory/Modular): stabilizers for action on upper halfplane --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 229/7 Mathlib.lean,Mathlib/Analysis/Complex/UpperHalfPlane/FixedPoints.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Complex/UpperHalfPlane/ProjLine.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean 8 21 ['github-actions', 'loefflerd', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
1-54893
1 day ago
148-67077
148 days ago
0-1
1 second
39991 Brian-Nugent
author:Brian-Nugent
chore(Topology): refactor TopologicalSpace.Opens.map to use OrderHom.toFunctor --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 27/16 Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Sheaves/Presheaf.lean 4 1 ['github-actions'] nobody
1-54157
1 day ago
1-54187
1 day ago
1-54149
1 day
39807 vihdzp
author:vihdzp
feat: universe-heterogeneous cardinal equality We introduce a predicate `LiftEq a b`, with notation `a =ₗ b`, which states that two cardinals (in different universes) are equal. This serves as a single canonical spelling for `lift.{v} a = lift.{u} b` and similar incantations. Future PRs will introduce the analogous predicates for `<` and `≤`, and a notation typeclass so the notation can be reused for `Ordinal` and `OrderType`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 319/152 Mathlib/Algebra/FreeAlgebra/Cardinality.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/FieldTheory/IsAlgClosed/Classification.lean,Mathlib/LinearAlgebra/Dimension/Basic.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/LinearAlgebra/Dimension/FreeAndStrongRankCondition.lean,Mathlib/LinearAlgebra/Dimension/LinearMap.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/ModelTheory/Basic.lean,Mathlib/ModelTheory/Satisfiability.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/RankAndCardinality.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/LinearDisjoint.lean,Mathlib/RingTheory/Localization/Cardinality.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/SetTheory/Cardinal/ENat.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Cardinal/ToNat.lean,Mathlib/SetTheory/Ordinal/Univ.lean,Mathlib/SetTheory/ZFC/Cardinal.lean 25 2 ['acmepjz', 'github-actions'] nobody
1-52856
1 day ago
4-61486
4 days ago
4-61690
4 days
20459 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: fix names of roots_C_mul_X_{add,sub}_C_of_IsUnit --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra merge-conflict
label:t-algebra$
11/5 Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Roots.lean 2 3 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
1-52389
1 day ago
506-67277
506 days ago
4-64422
4 days
36487 samueloettl
author:samueloettl
feat(Dynamics): Ergodicity characterization --- - [ ] depends on: #35402 - [x] depends on: #35451 This is a work in progress for a characterization of ergodicity via a Birkhoff Average. Coarse Feedback is very encouraged. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor large-import blocked-by-other-PR 421/1 Mathlib/Dynamics/Ergodic/Function.lean,Mathlib/Dynamics/Ergodic/OnAverageIndependent.lean,Mathlib/Topology/MetricSpace/Pseudo/Basic.lean 3 5 ['github-actions', 'lua-vr', 'mathlib-dependent-issues', 'samueloettl'] nobody
1-50405
1 day ago
79-70504
79 days ago
0-163
2 minutes
35548 gasparattila
author:gasparattila
fix(fun_prop): do not unfold semireducible definitions in the presence of projections --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 53/81 Mathlib/Algebra/GroupWithZero/Units/Equiv.lean,Mathlib/Analysis/Normed/Lp/MeasurableSpace.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/MeasureTheory/Group/Arithmetic.lean,Mathlib/MeasureTheory/Group/MeasurableEquiv.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Mor.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Topology/Algebra/AffineSubspace.lean,Mathlib/Topology/Algebra/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/Field.lean,Mathlib/Topology/Algebra/Group/Matrix.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakBilin.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/Path.lean,MathlibTest/FunPropMinimal.lean 22 8 ['DavidLedvinka', 'JovanGerb', 'github-actions', 'j-loreaux', 'lecopivo', 'mathlib-merge-conflicts'] nobody
1-49939
1 day ago
unknown
0-0
0 seconds
25848 joelriou
author:joelriou
feat/refactor: redefinition of homology + derived categories This PR contains a redefinition of homology, theorems about localization of categories, including triangulated categories, a construction of the derived category of an abelian category, derived functors, spectral sequences, etc. (This is made a PR only to facilitate navigation in the code of this branch.) This formalization is outlined in the paper _Formalization of derived categories in Lean/mathlib_ https://hal.science/hal-04546712 The homology of `ShortComplex C` (diagrams of two composable morphisms whose composition is zero) is developed in `Algebra.Homology.ShortComplex`. The files in that folder have been added one by one in separate PRs, and then, the current definition of `homology` has been replaced by this new definition in a refactor PR.
Homology refactor: * #4203 * #4204 * #4388 * #4609 * #4645 * #4787 * #4853 * #5250 * #5674 * #6008 * #6039 * #6089 * #6227 * #6230 * #6231 * #6245 * #6267 * #6279 * #6324 * #6443 * #6586 * #6994 * #7042 * #7047 * #7052 * #7192 * #7193 * #7194 * #7195 * #7197 * #7256 * #7262 * #7280 * #7623 * #7624 * #7806 * #7816 * #7817 * #7821 * #7954 * #7966 * #7993 * #7995 * #7996 * #7997 * #8058 * #8060 * #8069 * #8079 * #8081 * #8084 * #8091 * #8113 * #8114 * #8152 * #8159 * #8174 * #8200 * #8206 * #8208 * #8472 * #8468 * #8475 * #8490 * #8491 * #8507 * #8512 * #8593 * #8595 * #8706 * #8765 * #8766 * #8845 * #9022 * #12649 * #12638
Homological complexes: * #9333 * #9335 * #9331
Localization of categories: * #6233 * #6235 * #6236 * #6867 * #6869 * #6887 * #6882 * #8041 * #8055 * #8069 * #8516 * #8864 * #8865 * #9702 * #9692 * #10606 * #10607 * #11721 * #11728 * #11737 * #12728
Shifts on categories: * #4429 * #6652 * #6653 * #6655 * #7268 * #7270 * #9001 * #11764
Triangulated categories: * #6377 * #6688 * #6815 * #7053 * #7324 * #7327 * #7336 * #7626 * #7641 * #9049 * #9073 * #10527 * #11738 * #11740 * #11759 * #11786 * #11789 * #11805 * #12619
Construction of the derived category: * #6626 * #6701 * #6720 * #6894 * #7048 * #7049 * #7050 * #7201 * #7656 * #8937 * #8966 * #8969 * #8970 * #9054 * #9447 * #8951 * #9483 * #9508 * #9509 * #9592 * #9614 * #9615 * #9032 * #9370 * #9550 * #9686 * #9660 * #11760 * #11782 * #11806
Derived functors: * #10195 * #10270 * #10301 * #10384 * #10413 * #12168 * #12627 * #12631 * #12633 * #12785 * #12788
Refactor of Ext-groups: * #12607
- [x] depends on: #24309 - [ ] depends on: #24275 - [x] depends on: #24191 - [ ] depends on: #23797 - [x] depends on: #22586 - [x] depends on: #22556 - [x] depends on: #22547 - [x] depends on: #22539 - [ ] depends on: #22508 - [x] depends on: #22450 - [ ] depends on: #23915 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #4197.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/4197*
WIP t-category-theory large-import t-topology merge-conflict 28754/249 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Free.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Homology/BicomplexColumns.lean,Mathlib/Algebra/Homology/BicomplexRows.lean,Mathlib/Algebra/Homology/Bifunctor.lean,Mathlib/Algebra/Homology/BifunctorColimits.lean,Mathlib/Algebra/Homology/BifunctorCommShift.lean,Mathlib/Algebra/Homology/BifunctorHomotopy.lean,Mathlib/Algebra/Homology/BifunctorMappingCone.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/BifunctorSingle.lean,Mathlib/Algebra/Homology/BifunctorTriangulated.lean,Mathlib/Algebra/Homology/CategoryWithHomology.lean,Mathlib/Algebra/Homology/CochainComplexMinus.lean,Mathlib/Algebra/Homology/CochainComplexOpposite.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/ConnectShortExact.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/DerivabilityStructureInjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/DerivabilityStructureKInjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/DerivabilityStructureProjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/FullyFaithful.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean,Mathlib/Algebra/Homology/DerivedCategory/KInjective.lean,Mathlib/Algebra/Homology/DerivedCategory/KProjective.lean,Mathlib/Algebra/Homology/DerivedCategory/Minus.lean,Mathlib/Algebra/Homology/DerivedCategory/Monoidal.lean,Mathlib/Algebra/Homology/DerivedCategory/Plus.lean,Mathlib/Algebra/Homology/DerivedCategory/RightDerivedFunctorPlus.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/DerivedCategory/SpectralObject.lean,Mathlib/Algebra/Homology/DerivedCategory/TStructure.lean,Mathlib/Algebra/Homology/Double.lean,Mathlib/Algebra/Homology/DoubleHomology.lean,Mathlib/Algebra/Homology/Embedding/CochainComplex.lean,Mathlib/Algebra/Homology/Embedding/CochainComplexTrunc.lean,Mathlib/Algebra/Homology/Embedding/ComplementaryTrunc.lean,Mathlib/Algebra/Homology/Embedding/ExtendMap.lean,Mathlib/Algebra/Homology/Embedding/HomEquiv.lean,Mathlib/Algebra/Homology/Embedding/StupidFiltration.lean,Mathlib/Algebra/Homology/Embedding/StupidTrunc.lean,Mathlib/Algebra/Homology/Embedding/TruncGE.lean,Mathlib/Algebra/Homology/Embedding/TruncGEHomology.lean,Mathlib/Algebra/Homology/Embedding/TruncLE.lean,Mathlib/Algebra/Homology/Embedding/TruncLEHomology.lean,Mathlib/Algebra/Homology/Factorizations/Basic.lean,Mathlib/Algebra/Homology/Factorizations/CM5a.lean,Mathlib/Algebra/Homology/HomologicalBicomplex.lean,Mathlib/Algebra/Homology/HomologicalComplex.lean,Mathlib/Algebra/Homology/HomologicalComplexFunctorEquiv.lean,Mathlib/Algebra/Homology/HomologicalComplexLimits.lean,Mathlib/Algebra/Homology/Homology.lean,Mathlib/Algebra/Homology/HomologySequence.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/Homotopy.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean,Mathlib/Algebra/Homology/HomotopyCategory/Acyclic.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/Algebra/Homology/HomotopyCategory/Devissage.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Homology/HomotopyCategory/KInjective.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCone.lean,Mathlib/Algebra/Homology/HomotopyCategory/Minus.lean,Mathlib/Algebra/Homology/HomotopyCategory/Monoidal.lean,Mathlib/Algebra/Homology/HomotopyCategory/MonoidalTriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/Plus.lean,Mathlib/Algebra/Homology/HomotopyCategory/PreservesQuasiIso.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/Shift.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/Algebra/Homology/HomotopyCofiber.lean,Mathlib/Algebra/Homology/HomotopyFiber.lean,Mathlib/Algebra/Homology/LeftResolution/Basic.lean,Mathlib/Algebra/Homology/LeftResolution/CochainComplex.lean,Mathlib/Algebra/Homology/LeftResolution/CochainComplexMinus.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/Algebra/Homology/ModelCategory/Injective.lean,Mathlib/Algebra/Homology/ModelCategory/Projective.lean,Mathlib/Algebra/Homology/Monoidal.lean,Mathlib/Algebra/Homology/ObjectProperty.lean,Mathlib/Algebra/Homology/Precylinder.lean,Mathlib/Algebra/Homology/PreservesQuasiIso.lean,Mathlib/Algebra/Homology/QuasiIso.lean,Mathlib/Algebra/Homology/ShortComplex/Basic.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/FiveLemma.lean,Mathlib/Algebra/Homology/ShortComplex/FourLemma.lean,Mathlib/Algebra/Homology/ShortComplex/HomologicalComplex.lean,Mathlib/Algebra/Homology/ShortComplex/Images.lean,Mathlib/Algebra/Homology/ShortComplex/Preadditive.lean,Mathlib/Algebra/Homology/ShortComplex/ShortComplexFive.lean,Mathlib/Algebra/Homology/ShortComplex/ShortComplexFour.lean,Mathlib/Algebra/Homology/ShortComplex/ULift.lean,Mathlib/Algebra/Homology/Single.lean,Mathlib/Algebra/Homology/SpectralObject/Convergence.lean,Mathlib/Algebra/Homology/SpectralObject/HasSpectralSequence.lean 275 12 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
1-46925
1 day ago
350-64162
350 days ago
0-2
2 seconds
39399 Brian-Nugent
author:Brian-Nugent
feat(Algebra/CategoryTheory/ModuleCat): Locally Free Sheaves This PR gives a definition of locally free sheaves in terms of first defining a predicate IsLocallyFree for [SheafOfModules.LocalGeneratorsData](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.html#SheafOfModules.LocalGeneratorsData). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
212/5 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/LocallyFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean 4 12 ['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'robin-carlier'] dagurtomas
assignee:dagurtomas
1-45855
1 day ago
1-45855
1 day ago
7-20769
7 days
28613 espottesmith
author:espottesmith
feat(Combinatorics): define undirected hypergraphs This PR defines undirected hypergraphs: ``` @[ext] structure Hypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The hyperedge set -/ hyperedgeSet : Set (Set α) /-- All hyperedges must be subsets of the vertex set -/ hyperedge_isSubset_vertexSet : ∀ ⦃e⦄, e ∈ hyperedgeSet → e ⊆ vertexSet ``` In addition to the main definition, some additional definitions and related lemmas are provided: - vertex adjacency - hyperedge adjacency - vertex "stars" - special cases (loops, empty hypergraphs, trivial hypergraphs, complete hypergraphs, simple hypergraphs, k-uniform hypergraphs, and d-regular hypergraphs) - (some) hypergraph cardinality - subhypergraphs, induced subhypergraphs, and partial hypergraphs This implementation is certainly bare-bones. I'm submitting this PR at this point, rather than when my developments are more fleshed out, because there has been some interest in others contributing to hypergraph formalization in mathlib. In the near future, goals include: - defining incidence matrices (i.e., conversion from `Hypergraph α` to `Matrix α (Set α) β` - coersion/generalization of graph as 2-uniform hypergraph - conversion of a hypergraph into its associated clique graph/two-section graph - constructing the dual of a hypergraph (note: on first blush, this appears somewhat challenging, given that we define hyperedges as `Set α` rather than some other type `β`) - rank and co-rank - walks, paths, cycles, etc. on hypergraphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 286/0 Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean 2 152 ['SnirBroshi', 'b-mehta', 'espottesmith', 'github-actions', 'jt496', 'lauramonk', 'mathlib4-merge-conflict-bot', 'tb65536'] b-mehta
assignee:b-mehta
1-45503
1 day ago
2-57103
2 days ago
104-45714
104 days
39629 hawkrobe
author:hawkrobe
feat(RingTheory/Coalgebra/Convolution): Algebra on convolution semiring This PR completes the algebraic structure on the convolution object. --- I followed the pattern in [`Matrix/WithConv.lean`](https://github.com/leanprover-community/mathlib4/blob/5e932f97dd25535344f80f9dd8da3aab83df0fe6/Mathlib/LinearAlgebra/Matrix/WithConv.lean#L98) which splits out `IsScalarTower` and `SMulCommClass`. Used in pre-Lie / Oudom–Guin constructions. t-ring-theory new-contributor 24/1 Mathlib/RingTheory/Coalgebra/Convolution.lean 1 2 ['github-actions'] nobody
1-45343
1 day ago
9-57285
9 days ago
9-57247
9 days
32294 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle/Incenter): distance from second intersection with circumcircle Add the following lemma: given a triangle ABC, suppose an angle bisector from A through the incenter or excenter I meets the circumcircle again at X (including the case of an external bisector at A tangent to the circle, in which case X = A). Then XB = XI (= XC, by applying this lemma again). This is a standard configuration: https://en.wikipedia.org/wiki/Incenter%E2%80%93excenter_lemma --- - [ ] depends on: #30981 - [ ] depends on: #30982 - [ ] depends on: #32019 - [ ] depends on: #32021 - [ ] depends on: #32023 - [ ] depends on: #32270 - [ ] depends on: #32290 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 214/0 Mathlib/Geometry/Euclidean/Angle/Incenter.lean 1 5 ['github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'peakpoint'] nobody
1-44891
1 day ago
1-44960
1 day ago
63-62243
63 days
32295 jsm28
author:jsm28
feat(Archive/Imo/Imo2024Q4): IMO 2024 Q4 Add a formalization of IMO 2024 problem 4, so completing the formalizations of all six IMO 2024 problems. --- - [ ] depends on: #30981 - [ ] depends on: #30982 - [ ] depends on: #31057 - [ ] depends on: #31205 - [ ] depends on: #31452 - [ ] depends on: #31495 - [ ] depends on: #31733 - [ ] depends on: #31891 - [ ] depends on: #31892 - [ ] depends on: #31893 - [ ] depends on: #31979 - [ ] depends on: #31981 - [ ] depends on: #32004 - [ ] depends on: #32019 - [ ] depends on: #32021 - [ ] depends on: #32023 - [ ] depends on: #32259 - [ ] depends on: #32260 - [ ] depends on: #32270 - [ ] depends on: #32273 - [ ] depends on: #32278 - [ ] depends on: #32282 - [ ] depends on: #32290 - [ ] depends on: #32294 - [ ] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO blocked-by-other-PR 1220/2 Archive.lean,Archive/Imo/Imo2024Q4.lean,Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Incenter.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean 7 7 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
1-44429
1 day ago
180-40416
180 days ago
0-2910
48 minutes
39115 chrisflav
author:chrisflav
feat(RingTheory): flat is stable under filtered colimits More precisely, we show that `ObjectProperty.ind ModuleCat.flat = ModuleCat.flat`. From Proetale. --- - [ ] depends on: #39114 - [ ] depends on: #39145 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 193/0 Mathlib.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Zero.lean,Mathlib/RingTheory/Flat/Ind.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
1-40653
1 day ago
unknown
0-0
0 seconds
39997 Whysoserioushah
author:Whysoserioushah
feat(LinearAlgebra/Projectivization/Action): More about PSL actions on projective space --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
79/0 Mathlib/LinearAlgebra/Projectivization/Action.lean 1 1 ['github-actions'] nobody
1-39964
1 day ago
1-40043
1 day ago
1-40005
1 day
36963 seewoo5
author:seewoo5
feat(ModularForms): SL2 action and Serre derivative --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Equivariance of Serre derivative under SL2 action. More precisely, $$\partial_k (F|_k \gamma) = (\partial_{k} F)|_{k+2} \gamma$$. From [Sphere Packing Project](https://github.com/thefundamentaltheor3m/Sphere-Packing-Lean). t-number-theory large-import 124/24 Mathlib/Analysis/Complex/UpperHalfPlane/Manifold.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/NumberTheory/ModularForms/Derivative.lean 3 12 ['github-actions', 'loefflerd', 'mathlib-merge-conflicts', 'seewoo5', 'tb65536', 'wwylele'] tb65536
assignee:tb65536
1-39011
1 day ago
1-43036
1 day ago
27-36474
27 days
38840 peabrainiac
author:peabrainiac
feat(Topology): continuous germs of maps Add a predicate `Filter.Germ.Continuous` for continuity of germs between topological spaces, and bundled types `ContinuousGerm x Y` / `PointedContinuousGerm x y` of continuous germs at `x` resp. continuous germs at `x` taking `x` to `y`. --- See also #10977, which tried to introduce smooth germs between manifolds a while ago, though with a focus on pointwise algebraic operations instead of composability. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 171/1 Mathlib.lean,Mathlib/Topology/ContinuousGerm.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/Germ.lean 4 6 ['chrisflav', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'peabrainiac'] nobody
1-37686
1 day ago
11-39321
11 days ago
23-74049
23 days
38886 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/SimpleFuncDenseLp` - rewrites `measure_preimage_lt_top_of_memLp` via `FinMeasSupp.of_lintegral_ne_top` and `FinMeasSupp.map_iff`, instead of expanding `eLpNorm'` and splitting through `ENNReal.mul_lt_top_iff` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 9/21 Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean 1 2 ['github-actions', 'yuanyi-350'] nobody
1-37681
1 day ago
26-76826
26 days ago
26-76788
26 days
39981 MarAndrey77
author:MarAndrey77
feat(Analysis/Convex): prove Shapley-Folkman lemma ## Summary This PR adds a formal proof of the Shapley-Folkman lemma for finite sums of sets in finite-dimensional real vector spaces. The main theorem states that if a point belongs to a finite sum of convex hulls, then it can be represented as a sum where all but at most `finrank ℝ E` terms belong to the original sets. ## Main declarations * `shapley_folkman` * `shapley_folkman_exists_choice` * `ShapleyFolkmanRep.nonsingleton_card_le_finrank_of_minimal` ## Implementation notes The proof uses a minimal-complexity representation and a perturbation argument to bound the number of nonsingleton convex combinations by `Module.finrank ℝ E`. ## AI usage AI assistance was used during this project. In particular, it was used to help identify existing Mathlib theorems that could be useful for the proof, and to analyze Lean error messages while debugging the formalization. ## Checks * `lake exe mk_all` * `lake build Mathlib.Analysis.Convex.ShapleyFolkman` * no `sorry` * no linter warnings awaiting-author t-analysis new-contributor 1350/0 Mathlib.lean,Mathlib/Analysis/Convex/ShapleyFolkman.lean 2 8 ['MarAndrey77', 'github-actions', 'grunweg', 'wwylele'] nobody
1-36967
1 day ago
1-66480
1 day ago
0-123
2 minutes
39999 Whysoserioushah
author:Whysoserioushah
feat(Projectivization/PSL/Stabilizer): Add stabilizer lemmas --- - [ ] depends on: #39997 - [ ] depends on: #39998 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR
label:t-algebra$
365/0 Mathlib.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Projectivization/PSL/Stabilizer.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
1-36513
1 day ago
1-36514
1 day ago
0-1597
26 minutes
36103 SnkXyx
author:SnkXyx
feat(Algebra/MvPolynomial/CharacteristicSet): add Characteristic Set This PR adds some definitions and theorems of Characteristic Set Method (also known as Wu's Method). Definitions: * `MvPolynomial.mainDegree` * `MvPolynomial.initialOf` * `MvPolynomial.reducedTo` * `TriangulatedSet` * `MvPolynomial.pseudo` * `MvPolynomial.setPseudo` * `MvPolynomial.isRemainder` * `MvPolynomial.isSetRemainder` * `AscendingSetTheory` * `TriangulatedSet.isAscendingSet` * `HasBasicSet` * `TriangulatedSet.isCharacteristicSet` * `MvPolynomial.List.characteristicSet` * `MvPolynomial.List.zeroDecomposition` Main Theorems: * `MvPolynomial.initialOf_mul_eq`: $init_i(p \cdot q) = init_i(p) \cdot init_i(q)$ if there is no zero divisors in the coefficient ring. * `TriangulatedSet.instWellFoundedLT`: The set of Triangulated Sets is well-founded under the lexicographic ordering. * `MvPolynomial.pseudo_remainder_isRemainder`: The remainder $r$ of $g$ by $f$ is reduced with respect to $f$ and satisfies $init(f)^s \cdot g = q \cdot f + r$ for some $s \in \mathbb{N}$ and $q \in R[X_{\sigma}]$. * `MvPolynomial.setPseudo_remainder_isSetRemainder`: The remainder $r$ of $g$ by a set $S$ is reduced with respect to $S$ and satisfies $(\prod S_i^{e_i}) \cdot g = \sum q_i \cdot S_i + r$ for some sequences $\{e_i\}$ and $\{q_i\}$. * `MvPolynomial.setPseudo_remainder_eq_zero_of_mem`: The remainder of $p$ by a set $S$ is $0$ if $p \in S$. * `MvPolynomial.List.basicSet_append_lt_of_exists_reducedToSet`: Appending an element which is reduced w.r.t. the basic set of list strictly decreases the order. * `MvPolynomial.List.characteristicSet_isCharacteristicSet`: The computed Characteristic Set $CS$ satisfies the key algebraic property (pseudo-remainder of input polynomials is 0) and the geometric property ( $Zero(PS) \subseteq Zero(CS)$ ). * `MvPolynomial.List.vanishingSet_eq_zeroDecomposition_union`: The zero set of a polynomial system $PS$ can be decomposed into a finite union of "quasi-varieties" defined by triangular sets: $Zero(PS) = \bigcup_{CS \in \mathcal{ZD}} Zero(CS / \text{InitialProd}(CS))$ The PR is upstreamized from [github.com/WuProver/lean_characteristic_set](https://github.com/WuProver/lean_characteristic_set) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #36386 - [x] depends on: #37791 t-algebra new-contributor
label:t-algebra$
3860/0 Mathlib.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/AscendingSet.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/CharacteristicSet.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/Initial.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/MainDegree.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/Order.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/PseudoDivision.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/Reduce.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/StandardAscendingSet.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/TriangularSet.lean,Mathlib/Algebra/MvPolynomial/CharacteristicSet/WeakAscendingSet.lean,docs/references.bib 12 21 ['Hagb', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
1-36112
1 day ago
4-24348
4 days ago
26-78431
26 days
37914 j-loreaux
author:j-loreaux
feat: transfer `star`-related instances across equivalences This also adds `Function.Injective.{InvolutiveStar,...}` and related lemmas. In addition we rename the existing `Equiv.star` to `Equiv.Perm.star` (without a deprecation) so that the name can be used for the declaration which transfers a `Star` instance across an `Equiv`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
95/2 Mathlib.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/TransferInstance.lean 4 15 ['SnirBroshi', 'github-actions', 'themathqueen'] dagurtomas
assignee:dagurtomas
1-36111
1 day ago
36-63777
36 days ago
36-65648
36 days
38009 CBirkbeck
author:CBirkbeck
feat(RingTheory/Valuation): define the valuation spectrum and its topology ## Summary Define the valuation spectrum `Spv A` of a commutative ring and equip it with the topology generated by basic open sets, following Wedhorn's *Adic Spaces*. Also define the pullback (`comap`) of a `ValuativeRel` along a ring homomorphism. This is preparation for later defining adic spaces. Note the code was generated by claude code, but I have cleaned up and pre-reviewed the work. t-ring-theory LLM-generated 362/0 Mathlib.lean,Mathlib/RingTheory/Valuation/ValuationSpectrum.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Comap.lean 3 40 ['CBirkbeck', 'adamtopaz', 'chrisflav', 'dagurtomas', 'faenuccio', 'github-actions', 'jjdishere', 'riccardobrasca'] alreadydone
assignee:alreadydone
1-36110
1 day ago
45-84450
45 days ago
45-84565
45 days
38098 astrainfinita
author:astrainfinita
chore: make `SMul.comp.smul` `implicit_reducible` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
2/1 Mathlib/Algebra/Group/Action/Defs.lean 1 3 ['astrainfinita', 'github-actions', 'leanprover-radar'] kim-em
assignee:kim-em
1-36109
1 day ago
44-27444
44 days ago
44-27406
44 days
38169 tb65536
author:tb65536
chore(GroupTheory/Finiteness): make `Subgroup.FG` a class This PR refactors `Subgroup.FG` to be a class to match `Group.FG`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
37/20 Mathlib/GroupTheory/Commutator/Finite.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/Rank.lean,Mathlib/GroupTheory/Schreier.lean 4 10 ['JovanGerb', 'github-actions', 'mathlib-bors', 'riccardobrasca', 'tb65536'] mattrobball
assignee:mattrobball
1-36108
1 day ago
28-75189
28 days ago
42-63310
42 days
38324 BryceT233
author:BryceT233
chore(RingTheory/AdicCompletion): make `AdicCompletion.map` linear on linear maps This PR upgrades `AdicCompletion.map` to be an R-linear map on the space of linear maps `M →ₗ[R] N`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 38/12 Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
1-36106
1 day ago
36-40072
36 days ago
39-22740
39 days
38380 linesthatinterlace
author:linesthatinterlace
feat(Data/Set): add Set.diag API Introduces `Set.diag (s : Set α) : Set (α × α) = {(a, a) | a ∈ s}` as the set-level companion to `Set.offDiag`, mirroring the existing `Finset.diag` / `Finset.offDiag` pairing. The type-level `Set.diagonal : Type* → Set (α × α)` is retained unchanged; `diag_univ : (univ : Set α).diag = diagonal α` (`@[simp]`) keeps it canonical when the underlying set is `univ`. Parallels to the existing `offDiag` API (`diag_mono`, `diag_nonempty`, `diag_eq_empty`, `diag_empty`, `diag_singleton`, `diag_subset_prod`, `diag_eq_sep_prod`, `diag_inter`, `diag_union`, `diag_insert`) plus bridges `diag_union_offDiag`, `disjoint_diag_offDiag`, `prod_sdiff_diag`, `prod_sdiff_offDiag`. Also `diag_eq_image`, `image_diag` (matching `Finset.image_diag`), `preimage_coe_coe_diag`, and `Finset.coe_diag`. Note `diag_union` and `diag_insert` are unconditional (no `Disjoint` / `a ∉ s` hypothesis). To free the `diag_` prefix for the set sense, the existing lemmas about the diagonal *map* `fun x => (x, x)` are renamed with deprecation aliases: `range_diag` → `range_diagMap`, `diag_preimage_prod` → `diagMap_preimage_prod`, `diag_preimage_prod_self` → `diagMap_preimage_prod_self`. `diag_image` and `preimage_coe_coe_diagonal` are marked `@[deprecated]`. This PR was prepared with the assistance of Claude Opus. t-data LLM-generated 124/15 Mathlib/Data/Finset/Prod.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/Lindelof.lean,Mathlib/Topology/NhdsSet.lean 7 2 ['github-actions', 'linesthatinterlace'] TwoFX
assignee:TwoFX
1-36105
1 day ago
37-54203
37 days ago
37-54165
37 days
38741 eric-wieser
author:eric-wieser
feat: Nat.card lemmas for Sym and Sym2 These are just translations of the `Fintype` counterparts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 109/7 Mathlib.lean,Mathlib/Data/Sym/Card.lean,Mathlib/Data/Sym/NatCard.lean,Mathlib/Data/Sym/Sym2.lean 4 26 ['SnirBroshi', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
1-36104
1 day ago
4-8290
4 days ago
26-1454
26 days
38830 Jun2M
author:Jun2M
feat(Data/List): Nodup and head & getLast lemmas Given a Nodup list: * If a prefix contains the last element, they are equal * If a suffix contains the first element, they are equal * If an infix contains the first element, it is a prefix * If an infix contains the last element, it is a suffix * If the first and the last element are the same, it is a singleton * `countP` is cardinality of the filter of `toFinset`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 29/0 Mathlib/Data/Finset/Card.lean,Mathlib/Data/List/Nodup.lean 2 7 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
1-36103
1 day ago
8-55798
8 days ago
24-40571
24 days
39347 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): refactor of Pattern and shift-invariance of shape languages for subshifts ## Summary This PR refactors Pattern.mulShift in Mathlib/Dynamics/SymbolicDynamics/Basic.lean and uses the cleaner definition to prove shift-invariance of the language of a subshift on a finite shape. ## Changes Pattern.mulShift now returns a Pattern instead of a configuration (more natural). - Old type: Pattern.mulShift : Pattern A G → G → (G → A) - New type: Pattern.mulShift : Pattern A G → G → Pattern A G - The result carries its support (p.support.image (v * ·)) and the default-outside-support proof, so callers don't have to re-derive them. The [IsLeftCancelMul G] hypothesis is moved to the lemmas that actually use it. - The definition Pattern.mulShift itself no longer needs left-cancellation (it only chooses a preimage noncomputably). - The hypothesis is now stated on mulShift_config_apply_mul_left_of_mem and mulOccursInAt_eq_cylinder directly, instead of being a section-level variable. Renames following the type change. - mulShift_apply_mul_left_of_mem → mulShift_config_apply_mul_left_of_mem (because we now write (p.mulShift v).config instead of p.mulShift v). New @[simp] and @[ext] lemmas for Pattern. - Pattern.ext: two patterns are equal iff their supports agree and their configurations agree on the support. - Pattern.mulShift_support: the support of p.mulShift v is p.support.image (v * ·). - Pattern.fromConfig_support: the support of fromConfig x U is U. - Pattern.fromConfig_config_of_mem: on its support, fromConfig x U agrees with x. New lemma Pattern.fromConfig_mulShift. For a left inverse g' * g = 1, shifting the pattern fromConfig x U by g equals fromConfig (mulShift g' x) (U.image (g * ·)). New theorem MulSubshift.languageOn_image_mulShift. For a subshift Y and elements g, g' with g * g' = 1 and g' * g = 1: (fun p => p.mulShift g) '' Y.languageOn U = Y.languageOn (U.image (g * ·)) i.e. the language on the translated shape is exactly the image of the language on U under the pattern-shift map. This gives a bijection between Y.languageOn U and Y.languageOn (U.image (g * ·)), with inverse p ↦ p.mulShift g'. Stated for left-cancellative monoids with an invertible element. Updated docstrings for Pattern.mulShift and the renamed lemma to reflect the bundled-Pattern return type and clarify which results need [IsLeftCancelMul G]. t-dynamics new-contributor 142/48 Mathlib/Dynamics/SymbolicDynamics/Basic.lean 1 3 ['github-actions'] sgouezel
assignee:sgouezel
1-36101
1 day ago
16-31393
16 days ago
16-31355
16 days
39588 jvanwinden
author:jvanwinden
feat(MeasureTheory/Measure/ProbabilityMeasure): add toProbabilityMeasure and basic API Introduces `Measure.toProbabilityMeasure`, which converts a `Measure` into a `ProbabilityMeasure` in the presence of the typeclass assumption `[IsProbabilityMeasure]`. Some basic API is added for the interaction between `toProbabilityMeasure` and the coercion from `ProbabilityMeasure` to `Measure`. The main convenience is that the new method allows for dot notation on `Measure`. This PR arose from the following situation: I needed to prove equality of two `Measure` objects, and I wanted to do this by using uniqueness of limits. But the topology of weak convergence is only defined on `ProbabilityMeasure` and not on `Measure`. With the new lemma `toProbabilityMeasure_inj`, an equality of measures can easily be rewritten into an equality of the corresponding probability measures, after which `tendsto_nhds_unique` can be applied. Aside from this, `toProbabilityMeasure` has the potential to simplify theorem statements about `Measure` objects which use the topology of weak convergence either in the assumptions or the conclusion. For example, now one can simply write `Tendsto μ.toProbabilityMeasure f (nhds μ_lim.toProbabilityMeasure)` when appropriate `[IsProbabilityMeasure]` assumptions are present. This PR is intended as a starting point for a discussion. I only added some basic API, but perhaps more lemmas should be added (which ones?). Also, a similar definition could be made for `FiniteMeasure`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 19/2 Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean 1 1 ['github-actions'] kex-y
assignee:kex-y
1-36100
1 day ago
10-58671
10 days ago
10-58633
10 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
1-36096
1 day ago
2-53738
2 days ago
3-65948
3 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
1-36091
1 day ago
2-11438
2 days ago
2-11400
2 days
39987 vihdzp
author:vihdzp
chore: golf `Ordinal.cof_univ` --- (I think this is my second time golfing this one theorem, sorry!) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 1/4 Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean 1 1 ['github-actions', 'plp127'] nobody
1-33101
1 day ago
1-58267
1 day ago
1-58229
1 day
40001 plp127
author:plp127
experiment: have `LinearMap` extend `DistribMulActionHom` This lets up remove some definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
26/53 Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean 2 1 ['github-actions'] nobody
1-29608
1 day ago
unknown
0-0
0 seconds
36643 Thmoas-Guan
author:Thmoas-Guan
feat(Homology): interaction of projective and injective dimension and SES In this PR, we directly implemented the relation of `projectiveDimension` and `injectiveDimension` in SES. --- - [x] depends on: #36817 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 182/0 Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/CategoryTheory/Abelian/Injective/Dimension.lean,Mathlib/CategoryTheory/Abelian/Projective/Dimension.lean 3 6 ['dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] adamtopaz
assignee:adamtopaz
1-28520
1 day ago
1-29467
1 day ago
46-2371
46 days
37910 wwylele
author:wwylele
feat(Geometry/Euclidean): volume of a simplex This defines the volume of a simplex in Euclidean geometry, and shows that it agrees with measure theory. It also adds the basic set of lemmas (base-and-height formula, reindex, positivity, map, and restrict). Further properties of the volume will be in future PRs. Three new file s are introduced and organized in the following dependency chain: Def.lean -> MeasureSimplex.Lean -> Basic.lean The Def.lean file has the definition only. MeasureSimplex.lean pulls in measure theory. Basic.lean publicly imports Def.lean, and privately imports MeasureSimplex.lean. When a downstream file imports Basic.lean, the measure theory part is not exposed and all properties of the volume is provided. --- - [ ] depends on: #36018 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import 480/1 Mathlib.lean,Mathlib/Geometry/Euclidean/Volume/Basic.lean,Mathlib/Geometry/Euclidean/Volume/Def.lean,Mathlib/Geometry/Euclidean/Volume/MeasureSimplex.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 6 11 ['copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-28121
1 day ago
49-45846
49 days ago
0-473
7 minutes
32058 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): Baer criterion for injective dimension In this PR, we added the cateory version of Baer criterion stating that `M` is injective iff `Ext^1(R/I, M)` vanish for all ideal `I`. By dimension shifting, we also have `M` has injective dimension not exceeding `n` iff `Ext^{n + 1}(R/I, M)` vanish for all ideal `I`. --- - [x] depends on: #36980 - [x] depends on: #39305 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
160/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean 2 79 ['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
1-27860
1 day ago
1-29573
1 day ago
66-68334
66 days
39994 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory): Functors that preserve the terminal object are Final --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 21/1 Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Sites/CoproductSheafCondition.lean 2 1 ['github-actions'] nobody
1-25851
1 day ago
1-25928
1 day ago
1-27960
1 day
38890 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Basic): more `WithTop` instances Adds the following instances: ``` CompleteLattice α → CompleteLattice (WithTop α) CompleteLinearOrder α → CompleteLinearOrder (WithBot α) ConditionallyCompleteLinearOrder α → ConditionallyCompleteLinearOrder (WithTop α) ConditionallyCompleteLinearOrder α → ConditionallyCompleteLinearOrderBot (WithBot α) ``` and some simp lemmas to help. --- These `#synth`s all succeed after this PR:
(code) ```lean variable {α : Type*} [Preorder α] #synth Preorder αᵒᵈ #synth Preorder <| WithTop α #synth Preorder <| WithBot α #synth Preorder <| WithTopBot α #synth Preorder <| WithBotTop α variable {α : Type*} [PartialOrder α] #synth PartialOrder αᵒᵈ #synth PartialOrder <| WithTop α #synth PartialOrder <| WithBot α #synth PartialOrder <| WithTopBot α #synth PartialOrder <| WithBotTop α variable {α : Type*} [LinearOrder α] #synth LinearOrder αᵒᵈ #synth LinearOrder <| WithTop α #synth LinearOrder <| WithBot α #synth LinearOrder <| WithTopBot α #synth LinearOrder <| WithBotTop α variable {α : Type*} [CompleteLattice α] #synth CompleteLattice αᵒᵈ #synth CompleteLattice <| WithTop α -- new #synth CompleteLattice <| WithBot α #synth CompleteLattice <| WithTopBot α #synth CompleteLattice <| WithBotTop α variable {α : Type*} [CompleteLinearOrder α] #synth CompleteLinearOrder αᵒᵈ #synth CompleteLinearOrder <| WithTop α #synth CompleteLinearOrder <| WithBot α -- new #synth CompleteLinearOrder <| WithTopBot α #synth CompleteLinearOrder <| WithBotTop α variable {α : Type*} [ConditionallyCompleteLattice α] #synth ConditionallyCompleteLattice αᵒᵈ #synth ConditionallyCompleteLattice <| WithTop α #synth ConditionallyCompleteLattice <| WithBot α #synth CompleteLattice <| WithTopBot α #synth CompleteLattice <| WithBotTop α variable {α : Type*} [ConditionallyCompleteLinearOrder α] #synth ConditionallyCompleteLinearOrder αᵒᵈ #synth ConditionallyCompleteLinearOrder <| WithTop α -- new #synth ConditionallyCompleteLinearOrderBot <| WithBot α -- new #synth CompleteLinearOrder <| WithTopBot α #synth CompleteLinearOrder <| WithBotTop α variable {α : Type*} [ConditionallyCompleteLinearOrderBot α] #synth ConditionallyCompleteLinearOrder αᵒᵈ #synth CompleteLinearOrder <| WithTop α #synth ConditionallyCompleteLinearOrderBot <| WithBot α -- new #synth CompleteLinearOrder <| WithTopBot α #synth CompleteLinearOrder <| WithBotTop α ```
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-order maintainer-merge 89/69 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean 1 5 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
1-24075
1 day ago
1-24085
1 day ago
24-47909
24 days
39992 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory/Order): Lattice Homs preserve limits and colimits Provides instances for when [OrderHom.toFunctor](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Category/Preorder.html#OrderHom.toFunctor) preserves limits and colimits. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory t-order 105/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Preserves/Lattice.lean 2 2 ['dagurtomas', 'github-actions'] nobody
1-23825
1 day ago
1-23816
1 day ago
1-26772
1 day
39998 Whysoserioushah
author:Whysoserioushah
feat(LinearAlgebra/Matrix/SpecialLinear): More About SL and SL2 --- - [ ] depends on: #39997 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR awaiting-author
label:t-algebra$
199/0 Mathlib/Algebra/Notation/Defs.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'yuanyi-350'] nobody
1-18140
1 day ago
1-36512
1 day ago
0-3138
52 minutes
40002 mcdoll
author:mcdoll
chore(Analysis/TemperedDistribution): generalize to TVS codomains Obviously the codomain of a tempered distribution should be allowed to be an arbitrary topological vector space --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 60/21 Mathlib/Analysis/Distribution/TemperedDistribution.lean 1 1 ['github-actions'] nobody
1-18028
1 day ago
1-18113
1 day ago
1-18075
1 day
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'] nobody
1-15938
1 day ago
4-22880
4 days ago
7-48711
7 days
30579 smmercuri
author:smmercuri
feat : `v.adicCompletionIntegers K` is compact when `K` is a number field --- - [x] depends on: #30576 - [x] depends on: #33484 - [x] depends on: #33594 - [x] depends on: #34045 - [x] depends on: #36067 - [x] depends on: #36137 - [x] depends on: #36184 - [x] depends on: #36492 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 353/15 Mathlib.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/LiesOverInstances.lean,Mathlib/NumberTheory/RamificationInertia/Valuation.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 8 11 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
1-15792
1 day ago
226-82319
226 days ago
0-13
13 seconds
37310 CoolRmal
author:CoolRmal
feat(MeasureTheory): uniformly distributed outer regular measures in a second countable pseudometric space are unique up to a finite constant In this PR we define uniformly distributed measures and prove [Christensen's Lemma](https://en.wikipedia.org/wiki/Spherical_measure), which says that uniformly distributed outer regular measures in a second countable pseudometric space are unique up to a finite constant. A classical application of Christensen's Lemma is to show that the restriction of the `n - 1`-dimensional Hausdorff measure onto an `n`-dimensional sphere coincides with the spherical measure. This will be done in another PR. --- - [x] depends on: #37311 - [x] depends on: #37312 - [x] depends on: #37313 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability awaiting-author 201/1 Mathlib.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/UniformlyDistributed.lean,Mathlib/Order/LiminfLimsup.lean 4 28 ['CoolRmal', 'EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'wwylele'] EtienneC30
assignee:EtienneC30
1-15153
1 day ago
1-15153
1 day ago
27-53875
27 days
28013 astrainfinita
author:astrainfinita
feat: Lindemann-Weierstrass Theorem This PR continues the work from #6718. -------- - [x] depends on: #18693 - [x] depends on: #29121 - [x] depends on: #36762 - [x] depends on: #37797 - [x] depends on: #37811 t-algebra t-analysis awaiting-author
label:t-algebra$
1040/64 Mathlib.lean,Mathlib/Data/Finsupp/Quotient.lean,Mathlib/NumberTheory/Transcendental/Lindemann/AlgebraicPart.lean,Mathlib/NumberTheory/Transcendental/Lindemann/AnalyticalPart.lean,Mathlib/NumberTheory/Transcendental/Lindemann/Basic.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Eval.lean,docs/100.yaml,docs/1000.yaml 8 33 ['astrainfinita', 'github-actions', 'grunweg', 'j-loreaux', 'jcommelin', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'mathlib4-merge-conflict-bot'] nobody
1-14727
1 day ago
194-49656
194 days ago
3-86310
3 days
40003 grunweg
author:grunweg
chore: move Data.Set.{Accumulate,Dissipate} to Order.Set{Accumulate,Dissipate} Both files have only order-theoretic imports, and their contents are arguably also order-theoretic. --- - [ ] depends on: #39990 Bikeshedding question: should I create a new directory `Order/Set` instead, then move `Order/Set.lean` to `Order/Set/Basic.lean` and move these files to `Order/Set/Accumulate.lean` etc.? I'm happy to do so if preferred. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed blocked-by-other-PR 25/25 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/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/Order/Interval/Set/OrdConnectedLinear.lean,Mathlib/Order/Lattice/Nat.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/SetAccumulate.lean,Mathlib/Order/SetDissipate.lean,Mathlib/RingTheory/Nilpotent/Basic.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Instances/Nat.lean,Mathlib/Topology/Metrizable/Uniformity.lean 22 2 ['github-actions', 'mathlib-dependent-issues'] nobody
1-12171
1 day ago
1-12172
1 day ago
0-2771
46 minutes
40007 kbuzzard
author:kbuzzard
perf: prefer CommGroup.toCommMonoid This PR tests the hypothesis that the reason most things are an AddCommMonoid is because they're an AddCommGroup. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
8/0 Mathlib/Algebra/Group/Defs.lean 1 3 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
1-10732
1 day ago
1-9774
1 day ago
0-1912
31 minutes
40005 tautschnig
author:tautschnig
feat(Data/ZMod/Basic): isUnit characterisation in prime power moduli Add two lemmas characterising units in ZMod (p^n) via divisibility of the canonical lift: isUnit_iff_not_prime_dvd_val: for prime p and n > 0, IsUnit x ↔ ¬ p ∣ x.val. not_isUnit_iff_prime_dvd_val: for prime p and n > 0, ¬ IsUnit x ↔ p ∣ x.val. These specialise the existing isUnit_iff_coprime to prime power moduli, where the coprimality condition reduces to a simple divisibility check on the unique prime factor. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 15/0 Mathlib/Data/ZMod/Basic.lean 1 3 ['copilot-pull-request-reviewer', 'github-actions'] nobody
1-10238
1 day ago
1-12556
1 day ago
1-12518
1 day
40006 tautschnig
author:tautschnig
feat(Data/ZMod/Basic): idempotents in ZMod (p^d) are exactly {0, 1} Add sq_eq_self_iff_eq_zero_or_one: in ZMod (p^d) for prime p and d > 0, x^2 = x iff x = 0 or x = 1. This generalises eq_zero_or_one_of_sq_eq_self (which requires CancelMonoidWithZero, i.e., no zero divisors) to the prime-power case. ZMod (p^d) has zero divisors for d >= 2, so the mul_left_injective₀ argument used by the existing lemma does not apply. The proof works by lifting to ℕ, using that if gcd(a, b) = 1 and p^d | a*b then p^d divides one of a or b (by Euclid's lemma), then noting that a = x.val and b = x.val - 1 are consecutive naturals and hence coprime. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 56/0 Mathlib/Data/ZMod/Basic.lean 1 2 ['github-actions'] nobody
1-7635
1 day ago
1-7705
1 day ago
1-8362
1 day
35672 dennj
author:dennj
feat(RingTheory/Polynomial/Cyclotomic): vanishing sums and fiber equidistribution at primitive roots ## Summary Building on `sum_eq_zero_iff_forall_eq` from #34592, this PR adds: - cyclotomic_dvd_of_aeval_eq_zero, exists_int_smul_cyclotomic_of_natDegree_le_totient — integer polynomials vanishing at a primitive n-th root are divisible by cyclotomic n ℤ, and (for degree ≤ φ(n)) integer multiples of it. - sum_eq_zero_iff_forall_eq and its ℤ / ZMod p variants — vanishing iff all coefficients equal. - sum_fiber_eq_sum_fiber_of_sum_weighted_pow_eq_zero, card_fiber_eq_card_div_of_sum_pow_eq_zero — fiber equidistribution. - cyclotomic_prime_coeff — the formula (cyclotomic p R).coeff i = if i < p then 1 else 0, generalising existing coeff_zero/coeff_one lemmas. - References: [deLauneyFlannery2011, Lemma 2.8.5] (underlying ℚ/ℕ fact) and [armario2024, Lemma 7 and Theorem 3] (ℤ statement and the fiber-counting application). Theorems imported from: https://github.com/Latinum-Agentic-Commerce/AlgebraicDesignTheory Human made PR with LLM used for documentation and proof golfing t-ring-theory new-contributor LLM-generated 128/2 Mathlib/RingTheory/Polynomial/Cyclotomic/Basic.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Roots.lean,docs/references.bib 3 7 ['dennj', 'github-actions', 'grunweg', 'ocfnash', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
1-7438
1 day ago
24-55290
24 days ago
42-69362
42 days
37008 BryceT233
author:BryceT233
feat(RingTheory/LocalRing): `IsLocalRing` for pullbacks We provide basic lemmas for equalizers and pullbacks of `RingHom` and `AlgHom`, and show they are local rings under suitable condtions. This is needed in #37940 to construct a residue algebra structure on pullbacks. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 167/0 Mathlib.lean,Mathlib/RingTheory/LocalRing/Pullback.lean 2 6 ['BryceT233', 'github-actions', 'riccardobrasca', 'wwylele'] riccardobrasca
assignee:riccardobrasca
1-6903
1 day ago
33-45811
33 days ago
68-14126
68 days
38002 Raph-DG
author:Raph-DG
feat(Topology): Relating irreducible components of a space to codimension one points in non dense subsets In this PR we show that the coheight zero points of a sober space (in the specialization order) correspond to the irreducible components. Furthermore, we show that the coheight one points of any non dense subset p of X (in the specialization order on p) have coheight zero in the specialization order on X. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-topology 113/0 Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Minimal.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/Sober.lean 5 7 ['ADedecker', 'Raph-DG', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
1-6757
1 day ago
1-6757
1 day ago
41-65592
41 days
39810 RemyDegenne
author:RemyDegenne
feat(Probability/Decision): Bayes estimators This PR adds the concept of a Bayes estimator for an estimation problem: an estimator that attains the Bayes risk. We can get such estimators by taking an argmin of an integral involving a posterior kernel, when a measurable version of that argmin exists. 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 awaiting-author 170/0 Mathlib.lean,Mathlib/Probability/Decision/BayesEstimator.lean 2 5 ['EtienneC30', 'github-actions'] EtienneC30
assignee:EtienneC30
1-6623
1 day ago
1-6623
1 day ago
4-3557
4 days
37975 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): AdicCompletion of local ring is local In this PR, we proved that AdicCompletion of local ring wrt the maximal ideal is local ring with maximal ideal equal to the map of the original maximal ideal. Also, removing some old junk produced by myself. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 173/5 Mathlib/RingTheory/AdicCompletion/LocalRing.lean 1 21 ['BryceT233', 'Thmoas-Guan', 'github-actions', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
1-6206
1 day ago
47-4871
47 days ago
47-16627
47 days
26464 joelriou
author:joelriou
feat(LinearAlgebra): generators of pi tensor products In this PR, we show that the `R`-module `⨂[R] i, M i` is finitely generated if the index type is finite and all `M i` are finitely generated. This follows from a more precise result about generators of `⨂[R] i, M i`. --- This PR continues the work from #18725. Original PR: https://github.com/leanprover-community/mathlib4/pull/18725 file-removed t-algebra awaiting-author
label:t-algebra$
260/7 Mathlib.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/SubtypeNeLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/DFinsupp.lean,Mathlib/LinearAlgebra/PiTensorProduct/DirectSum.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/Logic/Equiv/Option.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean 13 38 ['Vierkantor', 'eric-wieser', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] mattrobball
assignee:mattrobball
1-4972
1 day ago
1-4972
1 day ago
113-75656
113 days
37794 EtienneC30
author:EtienneC30
feat: a sum of independent Bernoulli random variables is a binomial random variable --- - [ ] depends on: #37736 - [x] depends on: #37761 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability large-import blocked-by-other-PR 424/33 Mathlib/Data/Set/Card.lean,Mathlib/Probability/Distributions/Bernoulli.lean,Mathlib/Probability/Distributions/Binomial.lean,Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean,Mathlib/Probability/Distributions/SetBernoulli.lean,Mathlib/Probability/ProbabilityMassFunction/Binomial.lean 6 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-3798
1 day ago
unknown
0-0
0 seconds
39475 ADedecker
author:ADedecker
feat: define LinearMap.QuasiInverse If the name "QuasiInverse" is considered too vague, I am open to suggestions. This was written by @PatrickMassot and @CoolRmal at the May 2026 ICERM workshop as part of the project on Fredholm operators. --- - [x] depends on: #39468 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated
label:t-algebra$
158/1 Mathlib/Algebra/Module/LinearMap/FiniteRange.lean 1 4 ['ADedecker', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'ocfnash'] nobody
1-3797
1 day ago
1-5157
1 day ago
3-62679
3 days
40000 Whysoserioushah
author:Whysoserioushah
feat(Projectivization/PSL/PSL2): PSL(2, F) is simple [WIP] --- - [ ] depends on: #39997 - [ ] depends on: #39998 - [ ] depends on: #39999 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR
label:t-algebra$
624/0 Mathlib.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Projectivization/PSL/PSL2.lean,Mathlib/LinearAlgebra/Projectivization/PSL/Stabilizer.lean 7 6 ['Whysoserioushah', 'b-mehta', 'github-actions', 'mathlib-dependent-issues'] nobody
1-3676
1 day ago
1-37825
1 day ago
0-271
4 minutes
39428 harahu
author:harahu
chore: add an empty line after module headers This makes the docs easier to read. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 120/4 Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/PeanoCurve.lean,Counterexamples/Pseudoelement.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/EuclideanDomain/Int.lean,Mathlib/Algebra/Homology/Opposite.lean,Mathlib/Algebra/Lie/Cochain.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/Loop.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Archimedean/IndicatorCard.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Algebra/Vertex/VertexOperator.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Product.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Normed/Affine/Convex.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromBounded.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/CategoryTheory/DinatTrans.lean,Mathlib/CategoryTheory/Limits/Preserves/Filtered.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/HasPullback.lean,Mathlib/CategoryTheory/PathCategory/Basic.lean,Mathlib/CategoryTheory/Preadditive/Schur.lean,Mathlib/CategoryTheory/Sites/Abelian.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Thin.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Data/Bracket.lean,Mathlib/Data/Bundle.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Nat/Squarefree.lean,Mathlib/Data/PSigma/Order.lean,Mathlib/Data/SProd.lean,Mathlib/Data/Set/Enumerate.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/LinearAlgebra/Multilinear/Curry.lean,Mathlib/LinearAlgebra/RootSystem/Finite/CanonicalBilinear.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/RootSystem/OfBilinear.lean,Mathlib/LinearAlgebra/RootSystem/RootPairingCat.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/Logic/Lemmas.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Group/Prod.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleAbs.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleAbsoluteValue.lean,Mathlib/NumberTheory/ClassNumber/Finite.lean,Mathlib/NumberTheory/Cyclotomic/Discriminant.lean,Mathlib/NumberTheory/Cyclotomic/PrimitiveRoots.lean,Mathlib/NumberTheory/FLT/Four.lean,Mathlib/NumberTheory/FLT/Three.lean,Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Embeddings.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/PID.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Three.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Defs.lean,Mathlib/NumberTheory/NumberField/EquivReindex.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/NumberField/Norm.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/Order/Bounded.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/RepresentationTheory/Rep/Res.lean,Mathlib/RingTheory/AdicCompletion/RingHom.lean,Mathlib/RingTheory/Conductor.lean,Mathlib/RingTheory/Coprime/Lemmas.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Binomial.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean 120 3 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
1-3568
1 day ago
2-13568
2 days ago
8-67678
8 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
1-3495
1 day ago
23-5568
23 days ago
0-1
1 second
39100 ADedecker
author:ADedecker
feat: operators which are strict and with closed range are stable under finite rank perturbation --- - [x] depends on: #38579 - [x] depends on: #39260 - [x] depends on: #39344 - [ ] depends on: #38937 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author blocked-by-other-PR 482/0 Mathlib.lean,Mathlib/Analysis/Normed/Operator/Perturbation/StrictByFinite.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Restrict.lean 3 9 ['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'ocfnash'] nobody
1-2293
1 day ago
10-63029
10 days ago
0-2900
48 minutes
37298 artie2000
author:artie2000
refactor(Algebra/Order): unbundle group and ring cone * Unbundle `GroupCone` and `RingCone` using `Submonoid.IsMulPointed` The material in `Mathlib.Algebra.Group.Submonoid.Support` was created to treat uniformly * positive cones in groups and rings * pointed cones in vector spaces over an ordered field * orderings in rings This PR deprecates the [GroupCone](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Cone.html#GroupCone) and [RingCone](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Cone.html#RingCone) structures, making use of the predicates `Submonoid.IsMulPointed` and `AddSubmonoid.IsPointed` defined in that file instead. See also #36863 for the analogous change to ring orderings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import awaiting-zulip
label:t-algebra$
136/31 Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Ring/Cone.lean 2 3 ['Vierkantor', 'YaelDillies', 'github-actions', 'joneugster'] YaelDillies
assignee:YaelDillies
1-1146
1 day ago
1-1169
1 day ago
60-63667
60 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
1-899
1 day ago
12-32152
12 days ago
54-75347
54 days
36922 SnirBroshi
author:SnirBroshi
feat(Data/List/Chain): generalize `WellFounded.asymmetric₃` to chains The existing `WellFounded.asymmetric` shows `r a b → ¬r b a`, and `WellFounded.asymmetric₃` shows `r a b → r b c → ¬r c a`. This adds `WellFounded.asymmetricₙ` which shows `l.IsChain r → ¬r l.getLast l.head`. --- Also adds a couple of `IsChain` lemmas which might be useful. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 29/8 Mathlib/Data/List/Chain.lean 1 6 ['SnirBroshi', 'Vierkantor', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] eric-wieser
assignee:eric-wieser
1-750
1 day ago
1-750
1 day ago
70-26867
70 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 22/0 Mathlib/Data/Set/Card.lean 1 4 ['EtienneC30', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
1-470
1 day ago
14-77671
14 days ago
56-80783
56 days
30526 SnirBroshi
author:SnirBroshi
chore(Logic/Relation): use `≤` to spell subrelation Replace every `∀ x y, r x y → r' x y` with `r ≤ r'` --- NOTE: this PR began as an effort to use `Subrelation` since `≤` wasn't available in this file, but it was agreed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2330526.20use.20Subrelation.20in.20Mathlib.2ELogic.2ERelation/with/546572676) to instead make `≤` available there. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic awaiting-author 146/133 Mathlib.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Filtered/Connected.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Types/Coequalizers.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/Prop.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Topology/Gluing.lean 19 26 ['SnirBroshi', 'Vierkantor', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'plp127', 'thorimur', 'vihdzp'] Vierkantor and joneugster
assignee:Vierkantor assignee:joneugster
0-85800
23 hours ago
1-29096
1 day ago
94-74564
94 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
0-83958
23 hours ago
3-80931
3 days ago
3-80893
3 days
25473 adomani
author:adomani
feat(CI): check that Mathlib files have lean or md extension Twice recently there have been files with an "intended" `.lean` extension in `Mathlib/`: * #24942, ending in `;lean`; * #25457, ending in `.Lean`. `mk_all` does not add these files to `Mathlib.lean`, since they do not end in `.lean` and this later causes problems. This CI step checks that all files in `Mathlib/` end with `.lean` or `.md`. See #25474 for a test where the new step [correctly fails](https://github.com/leanprover-community/mathlib4/actions/runs/15464097783/job/43532018379?pr=25474). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI delegated 10/0 .github/workflows/lint_and_suggest_pr.yml 1 10 ['adomani', 'bryangingechen', 'github-actions', 'grunweg', 'mathlib-bors'] nobody
0-83911
23 hours ago
358-82130
358 days ago
0-10728
2 hours
38021 IvanRenison
author:IvanRenison
feat(Data/Int/ModEq): add theorem `modEq_two_abs` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data delegated 4/0 Mathlib/Data/Int/ModEq.lean 1 3 ['Vierkantor', 'github-actions', 'mathlib-bors'] TwoFX
assignee:TwoFX
0-83725
23 hours ago
0-83725
23 hours ago
45-49719
45 days
39876 kim-em
author:kim-em
feat(scripts): dump cross-reference tags to TSV for downstream review This PR adds `scripts/dump_crossref_tags.lean`, which walks `Mathlib.CrossRef.tagExt` in the elaborated Mathlib environment and writes one TSV record per tagged declaration. The TSV is consumed by a privileged `workflow_run` job that posts the cross-reference review PR comment; the rest of that machinery lives in https://github.com/leanprover-community/external-tags and https://github.com/leanprover-community/mathlib-ci. Fields are sanitised so tabs/newlines in user-controlled comments can't break the TSV framing, and the output is capped at 2 MB. Uses `importModules (loadExts := true)` rather than `withImportModules`, because the wrapper passes `loadExts := false` and would leave `tagExt` empty for imported modules. 🤖 Prepared with [Claude Code](https://claude.com/claude-code) CI LLM-generated 96/0 scripts/README.md,scripts/dump_crossref_tags.lean 2 3 ['github-actions', 'jcommelin', 'kim-em'] nobody
0-83076
23 hours ago
3-10791
3 days ago
3-10859
3 days
39934 kim-em
author:kim-em
ci: wire up `lake lint` to run `runLinter` This PR configures the `mathlib` package so that the standard `lake lint` command is equivalent to `lake exe runLinter Mathlib`, by setting ``` lintDriver := "batteries/runLinter" lintDriverArgs := #["Mathlib"] ``` on the `package mathlib` declaration. `runLinter` is already a `lean_exe` in batteries, so the `/` syntax lets mathlib reuse it directly. The CI workflows in `build_template.yml` and `nolints.yml` are also switched from invoking `lake exe runLinter [args] Mathlib` to `lake lint -- [args]` so there's a single source of truth for "lint mathlib", and so that local users get the same behaviour as CI. ### Behavior change for local users Before this PR, `lake lint` in a Mathlib checkout errored out with "no lint driver configured" and was essentially unused. After this PR, `lake lint` runs the full Batteries linter over all of Mathlib, which is a substantial multi-minute job. Anyone who has scripts or muscle memory expecting `lake lint` to be a no-op should be aware. The previous direct invocation, `lake exe runLinter Mathlib`, continues to work for anyone who prefers it. The `scripts/bench/lint/` benchmark intentionally keeps the direct `lake exe runLinter Mathlib` invocation so its measurements are not affected by anything `lake lint` may do above the linter. Motivated by a recent Zulip discussion in which it became clear that very few people know `lake lint` exists, partly because few packages bother to configure a lint driver: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Using.20.60lake.20test.60.20effectively Companion to https://github.com/leanprover/reference-manual/pull/855 (which documents the mechanism in the Lean reference manual). 🤖 Prepared with Claude Code CI delegated 9/7 .github/workflows/build_template.yml,.github/workflows/nolints.yml,lakefile.lean 3 5 ['Garmelon', 'bryangingechen', 'github-actions', 'joneugster', 'mathlib-bors'] nobody
0-81604
22 hours ago
0-82882
23 hours ago
1-78098
1 day
39274 ADedecker
author:ADedecker
WIP: Fredholm operators --- - [ ] depends on: #39468 - [ ] depends on: #39475 - [ ] depends on: #39100 - [ ] depends on: #39525 - [ ] depends on: #39930 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 1608/1 Mathlib.lean,Mathlib/Analysis/Normed/Operator/Perturbation/StrictByFinite.lean,Mathlib/Topology/Algebra/Module/FredholmOperators.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-81081
22 hours ago
unknown
0-0
0 seconds
37976 CoolRmal
author:CoolRmal
feat(MeasureTheory): Lusin's theorem We prove several versions of Lusin's theorem, all of which roughly says that measurable functions are continuous on nearly all its domain. --- - [x] depends on: #38533 - [x] depends on: #38535 - [x] depends on: #38536 - [x] depends on: #38538 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability large-import merge-conflict 792/14 Mathlib.lean,Mathlib/MeasureTheory/Function/LusinContinuous.Lean,Mathlib/MeasureTheory/Measure/Tight.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Maps/Basic.lean,Mathlib/Topology/Separation/GDelta.lean,Mathlib/Topology/Separation/Hausdorff.lean,docs/1000.yaml 8 15 ['CoolRmal', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
0-78926
21 hours ago
47-14111
47 days ago
0-17
17 seconds
39616 sgouezel
author:sgouezel
feat: more API for the variation of vector measures Prompted by the extension of the API around integrals wrt vector measures in #39113 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability delegated 218/19 Mathlib/Data/ENNReal/Action.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/JordanSub.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean 5 26 ['EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib-bors', 'sgouezel'] EtienneC30
assignee:EtienneC30
0-78619
21 hours ago
0-78621
21 hours ago
8-61752
8 days
31018 joelriou
author:joelriou
feat(CategoryTheory/Presentable): the uniformization theorem WIP --- - [ ] depends on: #39669 - [ ] depends on: #39655 - [x] depends on: #30727 - [x] depends on: #31767 - [x] depends on: #29519 - [x] depends on: #29543 - [x] depends on: #29565 - [x] depends on: #29854 - [x] depends on: #30459 - [x] depends on: #30605 - [x] depends on: #31426 - [x] depends on: #31421 - [x] depends on: #30633 - [x] depends on: #30634 - [x] depends on: #30693 - [x] depends on: #30696 - [x] depends on: #30781 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory blocked-by-other-PR 887/7 Mathlib.lean,Mathlib/CategoryTheory/Comma/CardinalArrow.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/CardinalDirectedPoset.lean,Mathlib/CategoryTheory/Presentable/SharplyLT/Basic.lean,Mathlib/CategoryTheory/Presentable/SharplyLT/Lemmas.lean,Mathlib/CategoryTheory/Presentable/Uniformization.lean 7 5 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
0-78526
21 hours ago
213-67639
213 days ago
0-1
1 second
38348 mirajcs
author:mirajcs
feat(Geometry/Curve): add Frenet–Serret framework --- This PR introduces a basic formalization of smooth parametrized curves in `ℝ³` (`EuclideanSpace ℝ (Fin 3)`) together with the Frenet frame and partial proofs of the Frenet–Serret formulas. Main contributions: * Define `ParametrizedDifferentiableCurve` as a smooth map on an open interval. * Define arc length and arc-length parametrization. * Define geometric quantities: - curvature `κ(t) = ‖α''(t)‖` - tangent, normal, and binormal vector fields - torsion via `‖B'(t)‖` * Introduce the `FrenetFrame` structure. * Prove key Frenet–Serret formulas: - `T' = κ • N` - `B' = -τ • N` - `N' = -κ • T + τ • B` The implementation relies on existing analysis and inner product space infrastructure, as well as properties of the cross product in `ℝ³`. Some intermediate lemmas about orthogonality and cross-product identities are included. At present, some results assume nonvanishing curvature/torsion and include auxiliary hypotheses about derivatives. These can be streamlined in future work. This development is intended as a foundation for further formalization of classical differential geometry (curves and surfaces). --- new-contributor t-differential-geometry awaiting-author 525/0 Mathlib.lean,Mathlib/Geometry/Curves/Basic.lean,Mathlib/Geometry/Curves/FrenetFrame.lean 3 18 ['bryangingechen', 'github-actions', 'mathlib-merge-conflicts', 'mirajcs', 'ocfnash', 'vihdzp', 'wwylele'] nobody
0-77843
21 hours ago
31-67167
31 days ago
6-55291
6 days
39353 Raph-DG
author:Raph-DG
feat(Topology): Show existence of a neighbourhood around p which avoids all points in the support of a locally finsupp function except those which specialize to p In this PR we show a simple lemma proving the existence of a neighbourhood around any point p which avoids every point in the support of a locally finsupp function except those which specialize to p. AI disclosure: The statements and a sketch with sorries were provided by me, but I had claude fill in the sorries. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 29/0 Mathlib/Topology/LocallyFinsupp.lean 1 1 ['github-actions'] nobody
0-77687
21 hours ago
0-77687
21 hours ago
1-22584
1 day
29774 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): Order of vanishing of elements of the function field of locally noetherian, integral schemes In this PR, we define the order of vanishing of elements of the function field of locally noetherian, integral schemes at points of codimension 1. This is essentially just a wrapper around the API for the order of vanishing for rings (i.e. Ring.ord and Ring.ordFrac), but I think it's good to have this too for usability. --- - [ ] depends on: #29550 - [ ] depends on: #26735 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 99/0 Mathlib.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/AlgebraicGeometry/Properties.lean 4 10 ['Raph-DG', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
0-77660
21 hours ago
0-77660
21 hours ago
31-22612
31 days
39979 lua-vr
author:lua-vr
feat(Analysis/Oscillation): oscillation along a filter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis large-import 206/41 Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/Oscillation.lean 2 1 ['github-actions'] nobody
0-77327
21 hours ago
unknown
0-0
0 seconds
40012 SnirBroshi
author:SnirBroshi
feat(GroupTheory/PGroup): iSup of normal p-subgroups is a p-subgroup Also shows that the `iSup` of subgroups equals the set-union of all finite `iSup`s. Co-authored-by: Albert Smith <10266947+ChiCubed@users.noreply.github.com> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 34/0 Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/GroupTheory/PGroup.lean 2 1 ['github-actions'] nobody
0-77207
21 hours ago
0-77039
21 hours ago
0-81154
22 hours
39891 SnirBroshi
author:SnirBroshi
feat: the center of a product/pi is the product/pi of the centers (for subobjects) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
77/3 Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Pi.lean,Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Group/Center.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/GroupTheory/Subgroup/Center.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/GroupTheory/Subsemigroup/Lemmas.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean 13 27 ['SnirBroshi', 'github-actions', 'plp127', 'tb65536', 'themathqueen'] tb65536
assignee:tb65536
0-76857
21 hours ago
2-14600
2 days ago
2-30335
2 days
39816 WenrongZou
author:WenrongZou
chore(MvPolynomial): rename a lemma using prime This PR renames a lemma by adding a prime. Many other lemmas in (mv)polynomial theory also use a prime in their names for the same reason — their primed versions should be rewritten in the `xxx_eq_ite` form. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory easy 13/10 Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPolynomial/IrreducibleQuadratic.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,scripts/nolints_prime_decls.txt 6 11 ['NoahW314', 'WenrongZou', 'github-actions', 'ocfnash'] nobody
0-76653
21 hours ago
0-76704
21 hours ago
3-76753
3 days
39941 mkaratarakis
author:mkaratarakis
feat(Data/List): add count lemmas for duplicate detection ## Summary Add general list count lemmas used in the Perron–Frobenius quiver-path development: - `List.mem_tail_of_count_ge_two` - `List.exists_pos_get_of_dropLast_count_ge_two` Relocated from the PF-specific file per review feedback. Proofs use upstream `List.Duplicate` API and `grind` where appropriate (per @chenson2018). Part of the Perron–Frobenius formalization (with @or4nge19). ## Test plan - [x] `lake build Mathlib.Data.List.Count` - [x] `lake build Mathlib.Combinatorics.Quiver.Path.PerronFrobenius` (on integration branch) cc @or4nge19 for review t-data 24/0 Mathlib/Data/List/Count.lean 1 3 ['chenson2018', 'github-actions', 'mkaratarakis'] nobody
0-76580
21 hours ago
2-58290
2 days ago
2-58852
2 days
39917 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): auxiliary matrix and topology lemmas Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Aux.lean`: finset infimum monotonicity, eventually-to-open filters, and other supporting lemmas for Collatz–Wielandt. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39914 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
207/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Aux.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76578
21 hours ago
3-6589
3 days ago
0-110
1 minute
39913 mkaratarakis
author:mkaratarakis
feat(Combinatorics/Quiver): periodicity and aperiodicity Add `Mathlib/Combinatorics/Quiver/Cyclic.lean`: cycle lengths, index of imprimitivity, and cyclic partitions for strongly connected quivers. Imports only upstream mathlib (`Matrix.Irreducible.Defs`, etc.). Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) cc @or4nge19 for review t-combinatorics 194/0 Mathlib.lean,Mathlib/Combinatorics/Quiver/Cyclic.lean 2 2 ['github-actions', 'or4nge19'] nobody
0-76574
21 hours ago
2-2030
2 days ago
3-3388
3 days
39919 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): Collatz–Wielandt function and Perron root bounds Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/CollatzWielandt.lean`: the Collatz–Wielandt formula, alternative Perron-root characterizations, upper semicontinuity on the standard simplex, and maximizer existence via `UpperSemicontinuousOn.exists_isMaxOn`. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39918 - [ ] depends on: #39917 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
597/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/CollatzWielandt.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76570
21 hours ago
3-6148
3 days ago
0-544
9 minutes
39920 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): Perron–Frobenius for primitive matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Primitive.lean`: a Collatz–Wielandt maximizer is a Perron eigenvector, and existence of the Perron eigenpair for primitive matrices. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39919 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
158/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Primitive.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76569
21 hours ago
3-6139
3 days ago
0-550
9 minutes
39918 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): core lemmas for non-negative matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Lemmas.lean`: positivity, sub-invariance, and quiver-path consequences used throughout the Perron–Frobenius chain. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39916 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
437/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Lemmas.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76566
21 hours ago
3-6151
3 days ago
0-545
9 minutes
39922 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): Perron–Frobenius for irreducible matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Irreducible.lean`: existence and uniqueness of the Perron eigenpair for irreducible non-negative matrices. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39918 - [ ] depends on: #39921 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
483/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Irreducible.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76565
21 hours ago
3-6143
3 days ago
0-539
8 minutes
39921 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): uniqueness of the Perron eigenvector Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Uniqueness.lean`: uniqueness (up to scaling) of the positive Perron eigenvector. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39920 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
81/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Uniqueness.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76562
21 hours ago
3-6141
3 days ago
0-544
9 minutes
39924 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): spectral dominance for primitive matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/DominancePart2.lean`: strict spectral dominance for primitive matrices. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39923 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
414/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/DominancePart2.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76543
21 hours ago
3-6147
3 days ago
0-528
8 minutes
39925 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): simplicity of the Perron root Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Multiplicity.lean`: the Perron root has algebraic multiplicity one. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39924 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
232/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Multiplicity.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76540
21 hours ago
3-6149
3 days ago
0-523
8 minutes
39923 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): spectral dominance for irreducible matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Dominance.lean`: spectral dominance of the Perron root over other eigenvalues for irreducible non-negative matrices. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39922 - [ ] depends on: #39915 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
539/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Dominance.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76538
21 hours ago
3-6145
3 days ago
0-533
8 minutes
39926 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): aperiodic non-negative matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Aperiodic.lean`: aperiodic (index of imprimitivity 1) non-negative matrices are primitive. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39913 - [ ] depends on: #39916 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
94/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Aperiodic.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76529
21 hours ago
3-6151
3 days ago
0-518
8 minutes
39927 mkaratarakis
author:mkaratarakis
feat(PerronFrobenius): Perron–Frobenius for column-stochastic matrices Add `Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Stochastic.lean`: Perron–Frobenius theorem for column-stochastic matrices. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39923 cc @or4nge19 for review t-algebra blocked-by-other-PR
label:t-algebra$
71/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/PerronFrobenius/Stochastic.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-76496
21 hours ago
3-6154
3 days ago
0-511
8 minutes
38859 SnirBroshi
author:SnirBroshi
feat(Order/CompleteLattice/Basic): tag `iSup_of_empty'` with `@[simp]` The theorem says `iSup f = sSup ∅` when the domain of `f` is empty, and dually `iInf f = sInf ∅`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 31/47 Mathlib/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Data/ENat/Lattice.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/LinearAlgebra/Eigenspace/Pi.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Lift.lean 14 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-76137
21 hours ago
5-81340
5 days ago
26-28359
26 days
38856 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Indexed): `iSup_iSup_eq_{left/right}` for `ConditionallyCompleteLinearOrderBot` and `≤` versions for `ConditionallyCompleteLattice`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 32/9 Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 2 1 ['github-actions'] nobody
0-76054
21 hours ago
27-26136
27 days ago
27-26098
27 days
39952 vihdzp
author:vihdzp
feat: `IsBotOneClass (WithTop α)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order easy
label:t-algebra$
4/0 Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean 1 1 ['github-actions', 'plp127'] nobody
0-75606
21 hours ago
2-39557
2 days ago
2-39519
2 days
32692 WilliamCoram
author:WilliamCoram
feat: define multivariate restricted power series We define multivariate restricted power series over a normed ring R, and show the properties that they form a ring when R has the ultrametric property. This work generalises my previous work in #26089 which will need to be refactored. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-number-theory new-contributor 159/0 Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Antidiag/Tendsto.lean,Mathlib/RingTheory/MvPowerSeries/Restricted.lean 4 51 ['WilliamCoram', 'erdOne', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mbkybky'] jcommelin
assignee:jcommelin
0-74125
20 hours ago
10-72201
10 days ago
53-47785
53 days
36018 wwylele
author:wwylele
feat(LinearAlgebra/AffineSpace): parallel cross-section of a simplex This is preparing to calculate the volume of a simplex by integrating the cross-section created by shifting the base plane. Part of #37910. --- - [ ] depends on: #38220 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
176/1 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 2 12 ['alreadydone', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'wwylele'] dagurtomas
assignee:dagurtomas
0-73397
20 hours ago
2-38560
2 days ago
40-36056
40 days
37055 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): * `OreLocalization.smul'_char`: unchanged 🎉 * `Equiv.Perm.cycleOf_mem_cycleFactorsFinset_iff`: unchanged 🎉 * `StrictMono.ite'`: unchanged 🎉 * `Mathlib.Meta.NormNum.isInt_ediv`: 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/) awaiting-author 10/29 Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Tactic/NormNum/DivMod.lean 4 14 ['Vierkantor', 'chenson2018', 'euprunin', 'github-actions'] nobody
0-72905
20 hours ago
0-83937
23 hours ago
66-12547
66 days
37577 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walk): upgrade subset theorems to sublist/prefix/suffix Upgrades theorems about `p.support ⊆ q.support` / `p.darts ⊆ q.darts` / `p.edges ⊆ q.edges` to `List.IsInfix`/`List.IsSuffix`/`List.Sublist`, which imply the subset versions. Also adds `cycleBypass` sublist lemmas that were missing, and golfs `length_bypass_le` and `bypass_eq_self_of_length_le` using the new sublist theorems. Co-authored-by: Iván Renison <85908989+IvanRenison@users.noreply.github.com> --- Except for a couple of `cycleBypass` ones, I did not add such theorems where there was no subset theorem to begin with (e.g. `(p.take n).darts <+: p.darts`), as they are usually not worth stating since they're trivial and simp proves them. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 182/113 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 7 7 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions'] b-mehta
assignee:b-mehta
0-72881
20 hours ago
17-76843
17 days ago
57-22782
57 days
38557 SnirBroshi
author:SnirBroshi
feat(Order/Monotone/Defs): weaken `Preorder` to `LE`/`LT` `Monotone`/`Antitone`/`MonotoneOn`/`AntitoneOn` can use any `LE`, and `StrictMono`/`StrictAnti`/`StrictMonoOn`/`StrictAntiOn` can use any `LT`. This makes it necessary to add some explicit type params (e.g. `(α := α)`) in some places that use monotone-related theorems (e.g. `Function.monotone_eval`). --- Currently `OrderEmbedding` and `OrderIso` can use `LE` but `OrderHom` requires `Preorder` because it's defined using `Monotone`. Generalizing `Monotone` and friends will let us fix this oddity. This follows other basic definitions such as `IsMax`/`CovBy`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 21/15 Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Order/Interval/Lex.lean,Mathlib/Order/Monotone/Defs.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/Topology/Order/MonotoneConvergence.lean 7 2 ['JovanGerb', 'github-actions'] nobody
0-72859
20 hours ago
33-38320
33 days ago
33-41113
33 days
39158 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Matrix/Rank): generalize `Matrix.rank`/`LinearMap.rank` to semirings - Generalize `Matrix.rank` from `CommRing` to `CommSemiring` - Generalize `LinearMap.rank` from `AddCommGroup`s over `Ring`s to `AddCommMonoid`s over `Semiring`s (which are the minimum requirements for `Module`) - Many `Matrix.rank` theorems now require `StrongRankCondition` explicitly (which `CommRing` used to provide) - `Matrix.cRank` theorems don't need commutativity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
58/64 Mathlib/LinearAlgebra/Dimension/LinearMap.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean 2 1 ['github-actions'] nobody
0-72786
20 hours ago
19-47384
19 days ago
19-47346
19 days
38349 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph/Coloring/VertexColoring): rename to `Vertex.lean` After #37525 moved `Coloring.lean` to `Coloring/VertexColoring.lean`, a [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500) poll decided to avoid duplicating the word "Coloring", so this renames `Coloring/VertexColoring.lean` to `Coloring/Vertex.lean`. --- I planned to make this move in #33313 but it isn't moving along, so I think it's best to split the renaming. #37546 adds module deprecation [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-combinatorics 6/6 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Partition.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean 7 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-72740
20 hours ago
5-80482
5 days ago
37-53986
37 days
37546 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph): add module deprecations for #36819 #36854 #37525 #37544 #38349 --- - [x] depends on: #37544 - [ ] depends on: #38349 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics blocked-by-other-PR 702/624 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/EdgeLabeling.lean,Mathlib/Combinatorics/SimpleGraph/Partition.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Counting.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Subwalks.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Traversal.lean 20 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-72720
20 hours ago
38-37906
38 days ago
0-29887
8 hours
36635 Vierkantor
author:Vierkantor
chore(*): turn comments before declarations into docstrings This PR goes through the whole of Mathlib and replaces `/- comments -/` with `/-- docstrings -/` or `/-! module docs -/` whenever they appear before a declaration. A lot of these appear to be simple typos, where a docstring was actually intended. Where a comment was originally intended, I would argue it is still a good idea include the comments in the generated documentation, or at least it does not hurt anyone. These instances were found by a linter, in an upcoming PR: #36636. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt delegated 214/221 Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Subgroup/MulOppositeLemmas.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/Order/Group/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Polynomial/CoeffList.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Morphisms/WeaklyEtale.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Synonym.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Fourier/Convolution.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/LConvolution.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Normed/Algebra/GelfandMazur.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryBiproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Monoidal/Closed/Ideal.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Counting.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Finset/Sym.lean,Mathlib/Data/Fintype/Sets.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Set/Pointwise/Support.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/MaximalSubgroups.lean,Mathlib/LinearAlgebra/CliffordAlgebra/SpinGroup.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Isomorphisms.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/UnivLE.lean,Mathlib/MeasureTheory/Function/ConditionalLExpectation.lean,Mathlib/MeasureTheory/Function/JacobianOneDim.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/Measure/Haar/NormedSpace.lean,Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/Heyting/Boundary.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/RingTheory/AdicCompletion/AsTensorProduct.lean,Mathlib/RingTheory/AdicCompletion/Exactness.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/DividedPowers/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/MvPowerSeries/Evaluation.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/RingTheory/Valuation/Minpoly.lean,Mathlib/RingTheory/WittVector/Defs.lean,Mathlib/RingTheory/ZMod/UnitsCyclic.lean,Mathlib/Tactic/TFAE.lean 118 97 ['JovanGerb', 'Vierkantor', 'github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-71713
19 hours ago
0-71713
19 hours ago
2-31887
2 days
38071 JovanGerb
author:JovanGerb
feat(Convert): less aggressive congruence This PR tries to make `convert` behave more predictably, disabling some of the aggressive congruence steps that `congr!` does. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author 13/7 Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/List/Perm/Basic.lean,Mathlib/Tactic/Convert.lean 3 5 ['Vierkantor', 'github-actions', 'joneugster', 'mathlib-merge-conflicts'] Vierkantor and joneugster
assignee:Vierkantor assignee:joneugster
0-71593
19 hours ago
0-81519
22 hours ago
0-5245
1 hour
36616 EtienneC30
author:EtienneC30
feat: add predicates IsPreBrownian and IsBrownian The predicate `IsPreBrownian X P` means that, under the probability measure `P`, the finite dimensional laws of the stochastic process `X` are those of the Brownian motion, given by `gaussianProjectiveFamily`. The predicate `IsBrownian X P` means that `X` is pre-Brownian and has almost-surely continuous paths. We prove that a centered Gaussian process with the right covariances is pre-Brownian, as well as basic invariance properties. We also prove that any pre-Brownian motion satisfies the weak Markov property. --- - [ ] depends on: #36472 - [x] depends on: #36615 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR brownian t-measure-probability large-import 509/1 Mathlib.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/Probability/BrownianMotion/Basic.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/HasLaw.lean,Mathlib/Probability/Moments/Basic.lean 8 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-71393
19 hours ago
77-56096
77 days ago
0-1
1 second
39337 grunweg
author:grunweg
chore: de-continuity --- - [x] depends on: #39343 - [x] depends on: #39358 - [x] depends on: #39359 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 39/10 Mathlib/AlgebraicTopology/SimplicialSet/TopAdj.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Topology/Algebra/MvPolynomial.lean,Mathlib/Topology/Algebra/SeparationQuotient/Section.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Compactness/CompactlyGeneratedSpace.lean,Mathlib/Topology/ContinuousMap/Basic.lean 9 5 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot'] nobody
0-71267
19 hours ago
0-69931
19 hours ago
0-35046
9 hours
40019 grunweg
author:grunweg
chore: golf using fun_prop Partially enabled through #35683. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 14/30 Mathlib/Analysis/Convex/Contractible.lean,Mathlib/Condensed/Discrete/LocallyConstant.lean,Mathlib/Condensed/Light/Sequence.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Function/SpecialFunctions/Basic.lean 5 1 ['github-actions'] nobody
0-70612
19 hours ago
0-70681
19 hours ago
0-70643
19 hours
28291 vasnesterov
author:vasnesterov
feat(Tactic): tactic for computing asymptotics of real functions It's an auxiliary PR that implements the entire `compute_asymptotics` tactic. I am spliting it into multiple small PRs. --- Tactic description: https://vasnesterov.github.io/compute_asymptotics Zulip announcement: [#announce > New tactic: `compute_asymptotics`](https://leanprover.zulipchat.com/#narrow/channel/113486-announce/topic/New.20tactic.3A.20.60compute_asymptotics.60/with/538639418) In this PR I implement the `compute_asymptotics` tactic. Its purpose is to compute asymptotics of functions from `ℝ` to `ℝ`. So far it is able to compute the limit of any function constructed using arithmetic operations (`+`, `-`, `*`, `/`, inversion), powers, logarithms, and exponents. ```lean import Mathlib.Tactic.ComputeAsymptotics open Real Filter Topology Asymptotics example : Tendsto (fun (x : ℝ) ↦ (1 + 6 * x⁻¹) ^ (7 * x)) atTop (𝓝 (exp 42)) := by compute_asymptotics example : (fun x ↦ x - 1 - log x) ~[𝓝[≠] 1] (fun x ↦ (x - 1) ^ 2 / 2) := by compute_asymptotics example (a b : ℝ) (h : a < b) : (fun x ↦ (x + x * log x) ^ a) =O[atTop] (fun x ↦ (x / log x) ^ b) := by compute_asymptotics example : (fun x ↦ log x) =o[𝓝[>] 0] (fun x ↦ Real.pi / (exp (Real.log 2 * x) - 1)) := by compute_asymptotics ``` For more examples see `compute_asymptotics.lean` in tests. ### TODO * Different domains in `compute_limit` as well. * Trigonometric functions and Gamma-function. ### References I am basically implementing [this article](https://www21.in.tum.de/~eberlm/pdfs/real_asymp.pdf) about computing asymptotics in Isabelle by Manuel Eberl. ### Small PRs Here's a few smaller PRs coming from this one, ordered by importance: - [ ] depends on: #37415 - [ ] depends on: #37342 - [ ] depends on: #40014 - [ ] depends on: #40017 - [x] depends on: #37418 - [x] depends on: #37411 - [x] depends on: #37414 - [x] depends on: #37419 - [x] depends on: #35072 - [x] depends on: #34922 - [x] depends on: #34356 - [x] depends on: #34422 - [x] depends on: #34403 - [x] depends on: #34311 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis t-meta large-import blocked-by-other-PR 11488/75 Mathlib.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/SpecialFunctions/Complex/Analytic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/BasisM.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/CompareMS.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/CompareReal.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/ConstSimp.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/ConstSimpAttribute.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/ConvertDomain.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/Exp.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/LeadingMonomial.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/Log.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/MS.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/Misc.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/Normalization.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/Trimming.lean,Mathlib/Tactic/ComputeAsymptotics/Meta/ZeroOracle.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basis.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Defs.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/LogBasis.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/Basic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/LeadingMonomial.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Add.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Basic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Exp.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Inv.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Log.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Mul.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Pow.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/Powser.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Trimming.lean,MathlibTest/compute_asymptotics.lean 38 24 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'ocfnash', 'vasnesterov'] nobody
0-70392
19 hours ago
290-79767
290 days ago
0-54
54 seconds
26394 winstonyin
author:winstonyin
feat: existence of local flows on manifolds This PR continues the work from #21777. Original PR: https://github.com/leanprover-community/mathlib4/pull/21777 Transfer the existence theorem of local flows on vector spaces to manifolds. The precise statement is: > If a vector field `v` on a manifold `M` is continuously differentiable at an interior point `x₀`, then for a given `t₀` there exists a neighbourhood `u` of `x₀`, a positive `ε`, and `γ : M → ℝ → M` such that `γ x` is an integral curve of `v` on `(t₀ - ε, t₀ + ε)` for all `x ∈ u`. This is powerful because all curves `γ x` (each with initial condition `x ∈ u`) share the same existence time interval `(t₀ - ε, t₀ + ε)`, rather than each curve having its own `ε`. This will allow us to show that $C^1$ vector fields on compact manifolds always have global integral curves / global flows. Any suggestions to shorten the proof or split out useful lemmas are welcome! - [x] depends on: #26392 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 138/61 Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Order/Filter/Prod.lean 3 11 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash', 'winstonyin'] ocfnash
assignee:ocfnash
0-70078
19 hours ago
0-70162
19 hours ago
22-50885
22 days
39714 tb65536
author:tb65536
feat(RingTheory/Localization/AtPrime/Basic): add variants of `localAlgHom` and `localAlgEquiv` This PR adds variants of `localAlgHom` and `localAlgEquiv` where the base ring is also localized. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
39/7 Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean 2 2 ['github-actions', 'tb65536'] nobody
0-69088
19 hours ago
7-68634
7 days ago
7-68598
7 days
40022 chenson2018
author:chenson2018
chore(Algebra): 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
16/6 Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Notation/Support.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean 6 1 ['github-actions'] nobody
0-68803
19 hours ago
0-68889
19 hours ago
0-68851
19 hours
40023 chenson2018
author:chenson2018
chore(AlgebraicTopology): 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 11/5 Mathlib/AlgebraicTopology/SimplexCategory/DeltaZeroIter.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean 4 1 ['github-actions'] nobody
0-68352
18 hours ago
0-68449
19 hours ago
0-68411
19 hours
40020 kbuzzard
author:kbuzzard
wip --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
38/27 Mathlib/Algebra/Group/Pi/Basic.lean 1 4 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
0-68203
18 hours ago
0-69047
19 hours ago
0-69009
19 hours
39787 Hagb
author:Hagb
feat(Order/WellQuasiOrder): `WellQuasiOrdered` if onto homomorphous from a `WellQuasiOrdered` relation It is used in #39788 for proof of well foundedness of `MonomialOrder` when the index type is finite. The hypotheses can be further weaken once #38557 is merged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy 16/0 Mathlib/Order/WellQuasiOrder.lean 1 3 ['Hagb', 'github-actions', 'plp127'] nobody
0-67382
18 hours ago
5-53458
5 days ago
5-53420
5 days
39873 mkaratarakis
author:mkaratarakis
feat(RingTheory/IntegralClosure): add IsIntegral helpers for casts Add `IsIntegral.Cast` and `IsIntegral.Nat`, stating that integer and natural literals are integral over `ℤ` in a field. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 7/0 Mathlib/RingTheory/IntegralClosure/Algebra/Basic.lean 1 8 ['github-actions', 'mkaratarakis', 'tb65536'] nobody
0-66910
18 hours ago
3-11120
3 days ago
3-17598
3 days
39916 mkaratarakis
author:mkaratarakis
feat(Combinatorics/Quiver/Path): paths for Perron–Frobenius Add `Mathlib/Combinatorics/Quiver/Path/PerronFrobenius.lean`: weighted quiver paths, cycle decomposition, and positivity lemmas for matrix irreducibility. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39941 cc @or4nge19 for review t-combinatorics blocked-by-other-PR 376/9 Mathlib.lean,Mathlib/Combinatorics/Quiver/Induced.lean,Mathlib/Combinatorics/Quiver/Path/Cycle.lean,Mathlib/Combinatorics/Quiver/Path/Replicate.lean,Mathlib/Combinatorics/Quiver/Path/Vertices.lean 5 9 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mkaratarakis', 'or4nge19'] nobody
0-66861
18 hours ago
3-6436
3 days ago
0-267
4 minutes
40016 xhalo32
author:xhalo32
feat(InfiniteSum): add hasProd_ite_eq' and tprod_ite_eq' Adds `eq'` variants that mirror those in `Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean` and `Mathlib/Algebra/BigOperators/Finsupp/Basic.lean`. For proof of their usefulness, these summability lemmas about indicator functions are now straight-forward: ```lean theorem hasSum_indicator_singleton_const [CommMonoid α] [TopologicalSpace α] [TopologicalSpace β] [AddCommMonoid β] {x : α} {f : α → β} (L := unconditional α) [L.LeAtTop] : HasSum (fun y => Set.indicator {y} f x) (f x) L := by classical exact hasSum_ite_eq' x (f x) L theorem summable_indicator_singleton_const [CommMonoid α] [TopologicalSpace α] [TopologicalSpace β] [AddCommMonoid β] {x : α} {f : α → β} (L := unconditional α) [L.LeAtTop] : Summable (fun y => Set.indicator {y} f x) L := ⟨_, hasSum_indicator_singleton_const _⟩ ``` We are also depending on these proofs in [Polya-lean](https://github.com/alma-n/polya-lean). Update: changed `convert` to `convert!`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 14/0 Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 1 3 ['github-actions', 'xhalo32'] nobody
0-66251
18 hours ago
0-69535
19 hours ago
0-73927
20 hours
40015 SnirBroshi
author:SnirBroshi
chore: replace some `omega`s None of these had any noticable slowdown. --- Is it time to add `omega` to the technical debt counters? There are ~250 left. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt 7/7 Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Int/Interval.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Infix.lean 5 6 ['SnirBroshi', 'chenson2018', 'github-actions', 'grunweg'] nobody
0-65232
18 hours ago
0-65234
18 hours ago
0-69578
19 hours
37631 linesthatinterlace
author:linesthatinterlace
feat: add `Function.{prod,diag,fstComp,sndComp,prodMap}` Adds `Mathlib/Logic/Function/Init.lean`, centralising a cluster of general-purpose function operations in the `Function` namespace: - `Function.dcomp` (notation `∘'`) — dependent composition, moved here from `Mathlib/Logic/Function/Defs.lean`. - `Function.prod` (notation `⋏`) — pointwise pair of two (possibly dependent) functions, `(f ▽ g) i = (f i, g i)`. - `Function.fstComp` / `Function.sndComp` — the two components of a function valued in a product; inverse to `Function.prod`. - `Function.diag` (notation `△`) — the diagonal `a ↦ (a, a)`. - `Function.prodMap` — dot-notation alias for `Prod.map`; collapses to `Prod.map` under `simp` so existing API applies unchanged. `Pi.prod` is removed in favour of `Function.prod` (which is itself the dependent version); a deprecated alias is provided. The file depends only on `Mathlib.Init` (and `Batteries.Tactic.Alias` for the deprecated alias) so it can be upstreamed to Batteries / core without pulling mathlib dependencies. - [x] depends on: #38963 t-logic WIP 247/27 Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Data/Fin/Tuple/Curry.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Logic/Function/Init.lean 7 21 ['SnirBroshi', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'linesthatinterlace', 'mathlib-dependent-issues'] fpvandoorn
assignee:fpvandoorn
0-65224
18 hours ago
25-60314
25 days ago
24-73399
24 days
39189 tb65536
author:tb65536
feat(RingTheory/RamificationInertia/Basic): ramification-inertia formula for finite flat extensions This PR proves the ramification-inertia formula for finite flat extensions. --- - [x] depends on: #38825 - [x] depends on: #39094 - [x] depends on: #39196 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
114/3 Mathlib.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/RamificationInertia/Basic.lean 4 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-65184
18 hours ago
0-65184
18 hours ago
1-63098
1 day
40025 artie2000
author:artie2000
chore(Data/SetLike/Basic): generalise instance * Generalise the standard `IsConcreteLE` instance from `PartialOrder.ofSetLike` to `LE.ofSetLike` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 8/4 Mathlib/Data/SetLike/Basic.lean 1 2 ['github-actions'] nobody
0-64657
17 hours ago
0-64882
18 hours ago
0-64844
18 hours
33143 wwylele
author:wwylele
feat(PowerSeries): pentagonal number theorem The proof is split in two files: `Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean` for the algebraic part, and `Mathlib/RingTheory/PowerSeries/Pentagonal.lean` for the summability part. In the near future, I also plan to prove the real/complex version that branches off from the algebraic part. --- - [x] depends on: #30436 - [x] depends on: #38179 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
361/6 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Pentagonal.lean,Mathlib/RingTheory/PowerSeries/Pentagonal.lean,Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean,docs/1000.yaml 5 59 ['copilot-pull-request-reviewer', 'github-actions', 'jcommelin', 'mathlib-dependent-issues', 'tb65536', 'urkud', 'vihdzp', 'wwylele'] mattrobball
assignee:mattrobball
0-64267
17 hours ago
28-39115
28 days ago
138-50934
138 days
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
0-63830
17 hours ago
17-71508
17 days ago
0-7302
2 hours
38937 zw810-ctrl
author:zw810-ctrl
feat: API and proof of `isStrictMap_prodMap` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor large-import awaiting-author 64/0 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Maps/Strict/Basic.lean 3 31 ['ADedecker', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash', 'zw810-ctrl'] nobody
0-63205
17 hours ago
0-66979
18 hours ago
0-20012
5 hours
34908 CoolRmal
author:CoolRmal
feat(GroupTheory): a characteristic subgroup of a characteristic subgroup is characteristic The main theorem proved in this PR is `characteristic_of_characteristic_of_characteristic`. If says that if `K` is a characteristic subgroup of a characteristic subgroup `H` of `G`, then `K` is a characteristic subgroup of `G`. Created with the help of Codex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory LLM-generated
label:t-algebra$
25/0 Mathlib/Algebra/Group/Subgroup/Basic.lean 1 22 ['CoolRmal', 'github-actions', 'robin-carlier', 'tb65536'] mattrobball
assignee:mattrobball
0-63198
17 hours ago
0-63198
17 hours ago
11-25643
11 days
39904 wwylele
author:wwylele
refactor(Analysis/Meromorphic): generalize 𝕜 → 𝕜 to 𝕜 → 𝕜' for order lemma when possible I don't have a real use for this, but this is the style that Meromorphic/Basic.lean follows, so let's unify them. --- I unfortunately had to duplicate the proof for `meromorphicOrderAt_mul` from `meromorphicOrderAt_smul`. They are almost the same, but I don't find a good way to unify them. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 38/22 Mathlib/Analysis/Meromorphic/Order.lean 1 1 ['github-actions'] nobody
0-63041
17 hours ago
3-37783
3 days ago
3-37745
3 days
39831 wwylele
author:wwylele
feat(Topology): a preconnected set is discrete iff is subsingleton --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 9/0 Mathlib/Topology/Connected/TotallyDisconnected.lean 1 1 ['github-actions'] nobody
0-63029
17 hours ago
4-73951
4 days ago
4-73913
4 days
39296 scholzhannah
author:scholzhannah
feat: more informative output messages in the flexible linter The current output messages in the flexible linter are: - If the stained location is a hypothesis: `'exact h' uses 'h'!` - If the stained location is the goal: `'exact Nat.le_succ_of_le h' uses '⊢'!` I think the first is not very informative and the second is additionally confusing. So I change them to read: - For a hypothesis: `'exact h' uses 'h', which was modified by a flexible tactic!` - And for the goal: `'exact Nat.le_succ_of_le h' modifies the current goal, which was modified by a flexible tactic!` I also added some more explanation to the messages in the case that all the hypotheses and the goal were stained by `simp at *`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-author 129/26 Mathlib/Tactic/Linter/FlexibleLinter.lean,MathlibTest/Linter/Flexible/Basic.lean,MathlibTest/Linter/Flexible/ImportHeavy.lean 3 11 ['b-mehta', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts', 'scholzhannah', 'thorimur'] grunweg, joneugster, thorimur
assignee:joneugster assignee:grunweg assignee:thorimur
0-62357
17 hours ago
0-62357
17 hours ago
12-7574
12 days
39680 grunweg
author:grunweg
feat(CI): validate PR titles more strictly - lint extraneous spaces (and any tabs) - check that PR scopes are well-formed - also extract the PR subject, and check that it does not end in a period, and starts in lower-case - linter about strange Unicode characters (anything not allowed by the Unicode linter) Continuation of #34518: this covers the remaining checks of #16303. (This does not check that the subject is in imperative, present tense.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter maintainer-merge 196/37 Mathlib/Tactic/Linter/ValidatePRTitle.lean,MathlibTest/ValidatePRTitle.lean 2 18 ['SnirBroshi', 'github-actions', 'grunweg', 'joneugster'] JovanGerb
assignee:JovanGerb
0-61910
17 hours ago
0-63106
17 hours ago
8-25698
8 days
38837 kbuzzard
author:kbuzzard
feat: add "higher instance priority" library note We add a library note explaining the logic in making instances like `Semiring.toModule` higher priority than the default. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #38704 [only because one of the claims in the note is false without it] documentation t-algebra delegated
label:t-algebra$
19/0 Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Module/Defs.lean 4 8 ['github-actions', 'joneugster', 'kbuzzard', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
0-61326
17 hours ago
0-61327
17 hours ago
19-69280
19 days
39986 CRudrum
author:CRudrum
feat: add HasKernels instance for Pointed --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-category-theory large-import awaiting-author 28/2 Mathlib/CategoryTheory/Category/Pointed.lean 1 9 ['CRudrum', 'Whysoserioushah', 'dagurtomas', 'github-actions'] nobody
0-60074
16 hours ago
1-53396
1 day ago
0-5451
1 hour
38714 YaelDillies
author:YaelDillies
refactor(Algebra): make `MonoidAlgebra` into a one-field structure --- - [x] depends on: #26732 - [x] depends on: #28407 - [x] depends on: #28460 - [x] depends on: #28511 - [x] depends on: #29207 - [x] depends on: #30877 - [x] depends on: #31143 - [x] depends on: #31144 - [x] depends on: #32253 - [x] depends on: #32254 - [x] depends on: #32398 - [x] depends on: #32501 - [x] depends on: #32508 - [x] depends on: #32562 - [x] depends on: #32588 - [x] depends on: #32591 - [x] depends on: #32592 - [x] depends on: #32604 - [x] depends on: #32965 - [x] depends on: #33093 - [x] depends on: #33094 - [x] depends on: #33099 - [x] depends on: #33137 - [x] depends on: #33139 - [x] depends on: #33141 - [x] depends on: #33452 - [x] depends on: #33453 - [x] depends on: #33482 - [x] depends on: #33492 - [x] depends on: #36675 - [x] depends on: #36678 - [x] depends on: #36768 - [x] depends on: #36848 - [x] depends on: #36851 - [x] depends on: #37210 - [x] depends on: #37750 - [x] depends on: #37755 Port of #25273 to my fork [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-CI large-import
label:t-algebra$
1920/1901 Mathlib/Algebra/FreeAlgebra/Cardinality.lean,Mathlib/Algebra/Lie/Loop.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Cardinal.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/Algebra/MonoidAlgebra/Lift.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Algebra/MonoidAlgebra/Opposite.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Cardinal.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/Division.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Supported.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basis.lean,Mathlib/Algebra/Polynomial/Cardinal.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Polynomial/Homogenize.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/OfFn.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/Ring/Subring/IntPolynomial.lean,Mathlib/Analysis/Fourier/BoundedContinuousFunctionChar.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/FreeAlgebra.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basis.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/Basic.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/NumberTheory/BernoulliPolynomials.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/RepresentationTheory/Action.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/Coinduced.lean,Mathlib/RepresentationTheory/Equiv.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RepresentationTheory/Rep/Basic.lean,Mathlib/RepresentationTheory/Rep/Iso.lean,Mathlib/RingTheory/Coalgebra/MonoidAlgebra.lean,Mathlib/RingTheory/Derivation/MapCoeffs.lean,Mathlib/RingTheory/Extension/Cotangent/Basis.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean,Mathlib/RingTheory/HopfAlgebra/MonoidAlgebra.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPolynomial/EulerIdentity.lean,Mathlib/RingTheory/MvPolynomial/FreeCommRing.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean,Mathlib/RingTheory/MvPolynomial/IrreducibleQuadratic.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Opposites.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/MonoidAlgebra.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean 92 26 ['Vierkantor', 'Whysoserioushah', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
0-59604
16 hours ago
30-75985
30 days ago
0-788
13 minutes
39833 wwylele
author:wwylele
feat(Analysis/Meromorphic): const_smul lemma This allows more general scalar type than the existing `smul` ones --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 14/0 Mathlib/Analysis/Meromorphic/Basic.lean 1 1 ['github-actions'] nobody
0-59249
16 hours ago
0-59327
16 hours ago
4-70943
4 days
31513 amellendijk
author:amellendijk
feat(Tactic): `polynomial` tactic Implement tactic for proving equality of polynomials. This tactic is part of a larger suite (see https://github.com/leanprover-community/mathlib4/pull/30374). - [x] depends on: #31508 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-author 382/4 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Algebra/Basic.lean,Mathlib/Tactic/Polynomial/Basic.lean,Mathlib/Tactic/Polynomial/Core.lean,MathlibTest/Algebra/Polynomial.lean 8 37 ['amellendijk', 'github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] Vierkantor and joneugster
assignee:Vierkantor assignee:joneugster
0-58512
16 hours ago
0-58512
16 hours ago
15-22389
15 days
35744 mkaratarakis
author:mkaratarakis
feat(NumberTheory): non-vanishing derivative and algebraic lower bound for Gelfond-Schneider This PR continues the formalization of the **Gelfond-Schneider Theorem** (Hilbert's Seventh Problem). It establishes the critical algebraic lower bound for the auxiliary function's evaluation by isolating its first non-vanishing derivative and scaling it to a non-zero algebraic integer. Following the contradiction argument in Loo-Keng Hua's *Introduction to Number Theory* (Chapter 17.9, Equation 5), we extract the minimal non-vanishing derivative order $r$ and prove the integrality of its scaled evaluation to establish a strict analytical lower bound. 1) Confirms that by our previous choice of coefficients $\eta$, the first $n$ derivatives of the auxiliary function $R(x)$ vanish at the evaluation points $1, \dots, m$. 2) Extracts the exact minimal order of vanishing $r$ among all points $l_0 + 1$, explicitly proving the textbook assertion that $n \le r$. 3) Defines the non-zero algebraic number $\rho = (\log \alpha)^{-r} R^{(r)}(l_0)$. 4) Formalizes the crucial algebraic step that scaling the evaluated system coefficients by $c_1^{r+2mq}$ (formalized here as `cρ`) clears all denominators, resulting in an algebraic integer strictly within $\mathcal{O}_K$. 5) Concludes that because the scaled $\rho$ is a non-zero algebraic integer, its absolute norm is strictly bounded below by $1$. This establishes the algebraic foundation for the absolute lower bound $|N(\rho)| > c_5^{-r}$, which will directly oppose the complex analytic upper bound via Cauchy's integral formula in the final contradiction step. --- - [ ] depends on: #35316 - [ ] depends on: #35743 - [ ] depends on: #35315 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory blocked-by-other-PR 2028/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlgSetup.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAnalytic.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainOrder.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainPostAnalytic.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-58393
16 hours ago
94-32433
94 days ago
0-122
2 minutes
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
0-57898
16 hours ago
1-618
1 day ago
14-72937
14 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
0-57517
15 hours ago
0-59351
16 hours ago
3-83515
3 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
0-57384
15 hours ago
1-1723
1 day ago
29-75928
29 days
40028 marcelolynch
author:marcelolynch
chore(ci): tweaks to Lake cache shadow workflow This PR tweaks the Lake cache shadow workflow (#39402) with some improvements - Bump actions (removes some warnings) - Report new content uploaded per run. This is surfaced as a new Zulip line, e.g. `📦 new content uploaded: 47MiB across 312 new artifact(s) vs rev a1b2c3d4e5f6 (distance: 84 commits)`. - Route the Zulip summary to `nightly-testing-mathlib` instead of `nightly-testing`. CI 42/4 .github/workflows/lake_cache_shadow.yml 1 1 ['github-actions'] nobody
0-56756
15 hours ago
0-56893
15 hours ago
0-56855
15 hours
39875 mkaratarakis
author:mkaratarakis
refactor(NumberField/House): expose Siegel lemma infrastructure Expose Siegel's lemma infrastructure in `NumberField.House`: rename the private basis-matrix bound to `basisMatrixInvSupNorm`, make `house` reducible, and adjust `exists_ne_zero_int_vec_house_le`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 59/48 Mathlib/NumberTheory/NumberField/House.lean 1 4 ['github-actions', 'mkaratarakis', 'tb65536'] nobody
0-56415
15 hours ago
3-60090
3 days ago
3-63779
3 days
39872 mkaratarakis
author:mkaratarakis
feat(RingTheory/Algebraic): add natDenominator API Add `AlgebraicDenominator.denominator` and `AlgebraicDenominator.natDenominator`, characterizing denominators of algebraic elements as generators of a colon ideal and, over `ℤ`, their absolute value as a natural-number denominator. Part of the Gelfond–Schneider formalization; see #39873, #39875, and #39874. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) cc @tb65536 t-ring-theory 68/0 Mathlib.lean,Mathlib/RingTheory/Algebraic/NatDenominator.lean 2 1 ['github-actions'] nobody
0-56373
15 hours ago
3-77360
3 days ago
3-77322
3 days
34273 gasparattila
author:gasparattila
feat(Topology/Sets): finite sets are dense in `(Nonempty)Compacts` --- - [x] depends on: #34266 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology ready-to-merge 35/0 Mathlib/Topology/Sets/VietorisTopology.lean 1 8 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'ocfnash', 'scholzhannah'] ocfnash
assignee:ocfnash
0-56085
15 hours ago
0-65019
18 hours ago
66-3298
66 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 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 3 ['github-actions', 'mathlib-dependent-issues'] nobody
0-55801
15 hours ago
0-57777
16 hours ago
0-57795
16 hours
37295 wwylele
author:wwylele
feat(Analysis/InnerProductSpace): generalized determinant of a rectangle matrix / linear map This is the volume factor of a linear map --- I have encountered the expression `sqrt(det(T' * T))` a few times in various places but it doesn't look like it has a standard name and entry in mathlib, so this adds it. Zulip thread [#Is there code for X? > (norm of) "determinant" of map between inner product spaces](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.28norm.20of.29.20.22determinant.22.20of.20map.20between.20inner.20product.20spaces/with/581776873) One motivation to define this is to state volume formula under transformations. From *Measure theory and fine properties of functions*: - Lemma 3.1: for linear map $L : \mathbb{R}^n \to \mathbb{R}^m$, we have $\mathcal{H}^n(L(A)) = [ L ] \mathcal{L}^n(A)$. This is proved in this PR at `euclideanHausdorffMeasure_image_eq_normDet_mul_volume` - Theorem 3.8, for (not necessarily linear) $f : \mathbb{R}^n \to \mathbb{R}^m$ ($n \le m$) and $\mathcal{L}^n$-measurable set $A \subset \mathbb{R}^n$, we have $\int_A J f dx = \int_{\mathbb{R}^m} \mathcal{H}^0(A \cap f\^{-1}\{y\}) d\mathcal{H}^n(y)$, where $J f$ is the `normDet` of the rectangular Jacobian matrix AI usage disclosure: AI was used in the following parts - searching for related literature for an appropriate name - generate draft proofs for some lemma to verify their correctness, though the final code has been completely rewritten by me. - [ ] depends on: #37918 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 480/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/NormDet.lean,docs/references.bib 4 19 ['copilot-pull-request-reviewer', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'themathqueen', 'wwylele'] faenuccio and themathqueen
assignee:themathqueen assignee:faenuccio
0-55512
15 hours ago
25-59568
25 days ago
59-47692
59 days
35281 harahu
author:harahu
chore: fix markdown list indentation WIP --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 672/296 Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Homology/SpectralSequence/ComplexShape.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Prod.lean,Mathlib/AlgebraicGeometry/EllipticCurve/LFunction.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/Flat.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicTopology/CechNerve.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subdivision.lean,Mathlib/AlgebraicTopology/SimplicialSet/TopAdj.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/Convex/KreinMilman.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Normed/Field/Approximation.lean,Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Field/Krasner.lean,Mathlib/Analysis/Normed/Group/SemiNormedGrp/Completion.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/CategoryTheory/Abelian/Preradical/Colon.lean,Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Category/ULift.lean,Mathlib/CategoryTheory/GlueData.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/ChosenPullback.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/Point/OfIsCofiltered.lean,Mathlib/CategoryTheory/Sites/PrecoverageToGrothendieck.lean,Mathlib/CategoryTheory/WithTerminal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Lemma.lean,Mathlib/Data/Bracket.lean,Mathlib/Data/Finset/Density.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/L1.lean,Mathlib/MeasureTheory/Order/UpperLower.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/Order/Birkhoff.lean,Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/Zorn.lean,Mathlib/Probability/Process/Adapted.lean,Mathlib/RingTheory/Smooth/Flat.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/RingTheory/Spectrum/Prime/Jacobson.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Tactic/Algebra/Basic.lean,Mathlib/Tactic/CategoryTheory/CancelIso.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/Finiteness.lean,Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/PositiveVector.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Topology/Category/Profinite/AsLimit.lean,Mathlib/Topology/Continuous.lean,Mathlib/Topology/DiscreteQuotient.lean,Mathlib/Topology/Gluing.lean,Mathlib/Topology/Maps/Proper/Basic.lean,Mathlib/Topology/MetricSpace/UniformConvergence.lean,Mathlib/Topology/Sheaves/Presheaf.lean,Mathlib/Topology/Sheaves/Sheaf.lean,Mathlib/Topology/Sheaves/SheafOfFunctions.lean,Mathlib/Topology/Sion.lean,scripts/check_docstring_list_indentation.py 82 15 ['github-actions', 'harahu', 'mathlib-merge-conflicts'] nobody
0-55434
15 hours ago
unknown
0-0
0 seconds
39989 Brian-Nugent
author:Brian-Nugent
feat(AlgebraicGeometry/Sheaves/Sites): The pullback of a quasicoherent sheaf is quasicoherent The main contribution of this PR is a natural isomorphism `SheafOfModules.PullbackRestrictIso` that shows that pullback commutes with restriction to the over category. This is then applied to show that for a morphism of schemes `f : X ⟶ Y`, the pullback of a quasicoherent `Y.Module` is quasicoherent and the pullback of a locally free `Y.Module` is locally free. --- - [ ] depends on: #39553 - [ ] depends on: #39993 - [ ] depends on: #39994 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 672/28 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/LocallyFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackRestrict.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Quasicoherent.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Preserves/Lattice.lean,Mathlib/CategoryTheory/Limits/Preserves/Over.lean,Mathlib/CategoryTheory/Sites/CoproductSheafCondition.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/CoversTop/Basic.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Sheaves/Presheaf.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean 17 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-54176
15 hours ago
unknown
0-0
0 seconds
39993 Brian-Nugent
author:Brian-Nugent
feat(Topology/CategoryTheory): TopologicalSpace.Opens.map preserves colimits and finite limits --- - [ ] depends on: #39992 - [ ] depends on: #39991 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-topology t-category-theory large-import 149/17 Mathlib.lean,Mathlib/CategoryTheory/Limits/Preserves/Lattice.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Sheaves/Presheaf.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-53500
14 hours ago
unknown
0-0
0 seconds
39996 RuthP628
author:RuthP628
feat(ModelTheory/Semantics): add simp theorems similar to Sentence.realize_not Add simp theorems Sentence.realize_bot, Sentence.realize_top, Sentence.realize_inf, Sentence.realize_sup, Sentence.realize_imp and Sentence.realize_iff in the style of Sentence.realize_not as consequences of the corresponding theorems for formulas. t-logic new-contributor 31/1 Mathlib/ModelTheory/Semantics.lean 1 10 ['RuthP628', 'b-mehta', 'github-actions', 'plp127'] nobody
0-52706
14 hours ago
0-79712
22 hours ago
1-513
1 day
40029 vasnesterov
author:vasnesterov
feat(Analysis/Analytic): alternating geometric series * Define `geometricAlternatingSeries`: `1 - x + x ^ 2 - ...` as a `FormalMultilinearSeries`. * Prove the same lemmas as for existing `formalMultilinearSeries_geometric`. * Move the "Composition with a linear map" section above as it's needed to directly translate the results about `formalMultilinearSeries_geometric` to results about `geometricAlternatingSeries`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 132/65 Mathlib/Analysis/Analytic/Constructions.lean 1 1 ['github-actions'] nobody
0-51658
14 hours ago
0-51745
14 hours ago
0-51707
14 hours
37623 IvanRenison
author:IvanRenison
feat(Order/RelIso): add theorems about `RelHom.comp` and `RelEmbedding.trans` Co-authored-by: SnirBroshi <26556598+SnirBroshi@users.noreply.github.com> --- Missing of this theorems noticed by @SnirBroshi in #37598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order ready-to-merge 18/0 Mathlib/Order/RelIso/Basic.lean 1 15 ['IvanRenison', 'Komyyy', 'SnirBroshi', 'Vierkantor', 'dagurtomas', 'eric-wieser', 'github-actions', 'mathlib-bors', 'plp127'] nobody
0-49156
13 hours ago
0-86372
23 hours ago
55-4225
55 days
39915 mkaratarakis
author:mkaratarakis
feat(Analysis/CStarAlgebra): complex-analytic lemmas for Perron–Frobenius Add `Mathlib/Analysis/CStarAlgebra/PerronFrobenius.lean`: complex-analytic tools used in the spectral-dominance chain. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) cc @or4nge19 for review t-analysis 610/0 Mathlib.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Analysis/CStarAlgebra/PerronFrobenius.lean,Mathlib/Analysis/Complex/Arg.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Complex/TriangleEquality.lean 6 1 ['github-actions'] nobody
0-48654
13 hours ago
0-46779
12 hours ago
0-9203
2 hours
39914 mkaratarakis
author:mkaratarakis
feat(LinearAlgebra/Matrix/Spectrum): Perron–Frobenius spectral lemmas Add `Mathlib/LinearAlgebra/Matrix/Spectrum/PerronFrobenius.lean`: spectral-radius bounds, Perron-root characterizations, and supporting matrix spectrum lemmas. Part of the Perron–Frobenius formalization (with @or4nge19). --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) cc @or4nge19 for review t-algebra
label:t-algebra$
648/1 Mathlib.lean,Mathlib/Analysis/Matrix/Spectrum.lean,Mathlib/Analysis/Matrix/Stochastic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Eigs.lean,Mathlib/LinearAlgebra/Matrix/Spectrum/PerronFrobenius.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean 6 6 ['github-actions', 'mkaratarakis', 'or4nge19', 'themathqueen'] themathqueen
assignee:themathqueen
0-48551
13 hours ago
0-48278
13 hours ago
1-5555
1 day
39960 SnirBroshi
author:SnirBroshi
feat(GroupTheory/IsPGroup): p-groups with coprime p are disjoint Also their commutator is trivial. Adds the same theorems to finite groups using `Nat.card`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory awaiting-author 47/15 Mathlib/GroupTheory/Commutator/Finite.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/PGroup.lean 4 7 ['SnirBroshi', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
0-47830
13 hours ago
0-53181
14 hours ago
1-40205
1 day
39972 tb65536
author:tb65536
feat(GroupTheory/Torsion): the free rank of an abelian group This PR defines the rank of the free part of an abelian group. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
29/0 Mathlib/GroupTheory/Torsion.lean 1 7 ['github-actions', 'plp127', 'riccardobrasca', 'tb65536'] riccardobrasca
assignee:riccardobrasca
0-46770
12 hours ago
1-79390
1 day ago
1-79354
1 day
40033 JJYYY-JJY
author:JJYYY-JJY
chore: remove flexible linter suppressions This PR removes two local `linter.flexible` suppressions by replacing compact `simp; infer_instance` with explicit proofs. Changed files: - `Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean` - `Mathlib/Topology/UniformSpace/Ultra/Constructions.lean` Tested with: `lake build` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 20/8 Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/Topology/UniformSpace/Ultra/Constructions.lean 2 2 ['github-actions'] nobody
0-46206
12 hours ago
0-46283
12 hours ago
0-46245
12 hours
40011 SnirBroshi
author:SnirBroshi
feat(Algebra/Group/Subgroup/Pointwise): iSup of normal subgroups is normal This is a generalization of `sup_normal`, which is for the supremum of two subgroups. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
29/0 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean 2 2 ['github-actions', 'tb65536'] nobody
0-46074
12 hours ago
0-81752
22 hours ago
0-81714
22 hours
39339 marcelolynch
author:marcelolynch
feat(ci): add !downstream-check PR-validation workflow This PR adds a comment-triggered workflow that lets maintainers validate a mathlib4 PR against curated downstream Lean projects. A user comments !downstream-check FLT, Toric --merge-branch, carleson@v1.2.3 on a PR and the workflow: * gates the commenter on `author_association ∈ {OWNER, MEMBER, COLLABORATOR}`, * checks out `leanprover-community/mathlib-ci` via the existing `get-mathlib-ci` composite action and runs `./ci-tools/.github/actions/check-downstream-validate` on the directive (parses the grammar, resolves the PR's `merge_commit_sha`, and POSTs a user-facing PR comment if the syntax is wrong), * mints an App token and dispatches `mathlib-pr-validation.yml` in `leanprover-community/downstream-reports`, * runs `./ci-tools/.github/actions/check-downstream-ack` to post an acknowledgement comment on the PR. Grammar (each comma-separated entry): [@] [--merge-branch] * `` — inventory short name (e.g. `FLT`) or GitHub `owner/repo` slug. Resolved by the dispatched workflow. * `@` — optional. Any git refspec for the downstream's checkout. * `--merge-branch` — optional, per entry. Flips that entry from the default LKG mode (cherry-pick PR onto the downstream's last-known-good mathlib) to merge mode (build against the PR's merge tree). Grammar errors leave a comment on the PR addressing the requester, quoting the parser's error + a usage hint, so a typo doesn't bury the diagnosis in the workflow log. Runtime errors (unknown downstream, build failures, etc.) come from the dispatched downstream-reports workflow on its own — the two repos stay decoupled. ## Companion changes * leanprover-community/mathlib-ci#37 : adds the actions this workflow consumes. This PR bumps the `get-mathlib-ci` SHA pin to ingest this CI 169/1 .github/actions/get-mathlib-ci/action.yml,.github/workflows/pr_check_downstream.yml 2 10 ['downstream-reports-automation', 'github-actions', 'marcelolynch', 'thorimur'] bryangingechen
assignee:bryangingechen
0-45586
12 hours ago
0-53903
14 hours ago
0-53865
14 hours
37736 EtienneC30
author:EtienneC30
feat: API for binomial distribution Provide basic API regarding the binomial distribution, computing the measure of singletons and writing it as a sum of Dirac masses. Provide basic results regarding integrability. Deprecate [PMF.binomial](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/ProbabilityMassFunction/Binomial.html#PMF.binomial). --- As I explain in the module docstring, I am proving most results in two versions: one for the measure over `Nat` and one for the cast version. This obviously leads to some duplications, I think it's fine but I am happy to hear other ideas. - [ ] depends on: #37534 - [x] depends on: #37541 - [x] depends on: #37543 - [x] depends on: #37739 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability blocked-by-other-PR large-import 196/18 Mathlib/Data/Set/Card.lean,Mathlib/Probability/Distributions/Binomial.lean,Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean,Mathlib/Probability/ProbabilityMassFunction/Binomial.lean 4 3 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] nobody
0-45560
12 hours ago
unknown
0-0
0 seconds
27897 grunweg
author:grunweg
feat: check indentation of doc-strings Likely will require further adaptations to mathlib. May land piece-wise. But at first, let's see how big the overall fallout actually is. (So far: 100 lines of implementation and tests, and 170 lines of fix-ups; which are probably mostly complete, but not entirely.) --- - [x] depends on: #27898 - [x] depends on: #39245 - [x] depends on: #39246 - [x] depends on: #39247 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-CI awaiting-author merge-conflict 363/81 Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/Lie/Classical.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Limits/Basic.lean,Mathlib/CategoryTheory/NatIso.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Presentable/OrthogonalReflection.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/Num/Basic.lean,Mathlib/Data/Num/Bitwise.lean,Mathlib/Dynamics/BirkhoffSum/QuasiMeasurePreserving.lean,Mathlib/Geometry/Euclidean/Simplex.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Lookup.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Centroid.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/Tactic/Algebra/Basic.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/MinImports.lean,Mathlib/Tactic/MoveAdd.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/EMetricSpace/PairReduction.lean,MathlibTest/DocStringLinter.lean 38 14 ['github-actions', 'grunweg', 'joneugster', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
0-44528
12 hours ago
299-85148
299 days ago
0-1
1 second
7890 grhkm21
author:grhkm21
feat(Mathlib/Tactic/Setm): implement setm tactic This is my first time doing metaprogramming in Lean 4, please provide feedback when you have them :) The `setm` tactic, which stands for `set` + matching, matches a given expression with the goal and introduces new local hypotheses for the named holes specified. One of the best usage is for rearrangement proofs. As a simple example, ```lean example : (1 + 1) + (4 * 3) - (1 + 1) = (3 * 4 : Rat) := by setm ?A + ?B - ?A = (?C : Rat) rw [show ∀ A B, A + B - A = B by intro A B ; ring_nf ] apply Rat.mul_comm ``` One can imagine replacing the three term expression with a 7 term algebraic expression. This was developed with tons of help from [Zulip](https://leanprover.zulipchat.com/#narrow/stream/239415-metaprogramming-.2F-tactics/topic/Help.20with.20writing.20tactic), especially from Thomas. Thanks! TODO: - [X] Support `setm ... at ...` syntax, see *example 1* below - [X] Write docs - [ ] Use `withNewMCtxDepth` - [X] Rename the intermediate `MVar`s, see *example 2* below - [ ] Use `elabTermWithHolesPostponing` in conjunction with `Term.synthesizeSyntheticMVarsNoPostPoning` after `isDefEq` to handle instances Example 1: ```lean /- Usage with `using` and `at` keywords -/ example (h1 : 1 + 1 = 3) (h2 : 1 + 3 = 5) (h3 : 2 + 2 = 5) : true := by setm ?A + _ = (?B : Nat) using h2 at h1 h2 h3 guard_hyp A := 1 guard_hyp B := 5 guard_hyp h1 : A + A = 3 guard_hyp h2 : A + 3 = B guard_hyp h3 : 2 + 2 = B trivial ``` Example 2: ```lean /- Test reusing named holes -/ example (h : b + a = c) : a + b = c := by /- setm 1-/ setm ?A + ?B = (_ : Nat) guard_hyp A := a guard_hyp B := b /- clean up -/ unfold_let A B clear hA hB A B /- setm 2 -/ rewrite [Nat.add_comm] setm ?A + ?B = (_ : Nat) at h ⊢ guard_hyp A := b guard_hyp B := a exact h ``` Co-authored-by: Jireh Loreaux [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 141/0 Mathlib.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Setm.lean,test/Setm.lean 4 5 ['mathlib4-merge-conflict-bot', 'thorimur', 'xhalo32'] nobody
0-43508
12 hours ago
949-14270
949 days ago
0-104
1 minute
39956 SnirBroshi
author:SnirBroshi
feat(GroupTheory/IsPerfect): Grün's lemma Grün's lemma: In a perfect group (`commutator G = ⊤`), `center (G ⧸ center G) = ⊥`. Also the `derivedSeries` and the `lowerCentralSeries` are a constant `⊤`, and the `upperCentralSeries` starts with `⊥` and afterwards is a constant `center G`. --- [Wikipedia](https://en.wikipedia.org/wiki/Perfect_group#Gr.C3.BCn.27s_lemma) [MathWorld](https://mathworld.wolfram.com/GruensLemma.html) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory awaiting-author 70/0 Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/IsPerfect.lean,Mathlib/GroupTheory/Nilpotent.lean 4 9 ['github-actions', 'tb65536'] tb65536
assignee:tb65536
0-43353
12 hours ago
0-43353
12 hours ago
1-70307
1 day
29499 chrisflav
author:chrisflav
feat(CategoryTheory/Sites): sheafification via hypercovers This is very much WIP, but I need a fresh cache. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory merge-conflict 1941/3 Mathlib.lean,Mathlib/CategoryTheory/Sites/HomotopyOneHypercover.lean,Mathlib/CategoryTheory/Sites/Hypercover/Homotopy.lean,Mathlib/CategoryTheory/Sites/Hypercover/One.lean,Mathlib/CategoryTheory/Sites/Hypercover/Refinement.lean,Mathlib/CategoryTheory/Sites/Hypercover/Sheafification.lean,Mathlib/CategoryTheory/Sites/Hypercover/Zero.lean 7 4 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
0-42692
11 hours ago
unknown
0-0
0 seconds
32497 themathqueen
author:themathqueen
chore: make `FiniteDimensional.complete 𝕜` an instance when `𝕜` is `RCLike` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis awaiting-bench merge-conflict 3/26 Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean 2 4 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'themathqueen'] nobody
0-42446
11 hours ago
unknown
0-0
0 seconds
32989 kim-em
author:kim-em
fix(Tactic/Simps): skip @[defeq] inference for non-exposed definitions This PR makes `@[simps]` check whether the source definition's body is exposed before calling `inferDefEqAttr`. When the body is not exposed, we skip the `@[defeq]` inference to avoid validation errors. Without this fix, using `@[simps]` on a definition that is not `@[expose]`d produces an error like: ``` Theorem Foo_bar has a `rfl`-proof and was thus inferred to be `@[defeq]`, but validating that attribute failed: Not a definitional equality: the left-hand side ... is not definitionally equal to the right-hand side ... Note: This theorem is exported from the current module. This requires that all definitions that need to be unfolded to prove this theorem must be exposed. ``` The fix checks `(← getEnv).setExporting true |>.find? cfg.srcDeclName |>.any (·.hasValue)` to determine if the definition body is visible in the public scope, and only calls `inferDefEqAttr` if it is. 🤖 Prepared with Claude Code t-meta LLM-generated merge-conflict 68/15 Mathlib/CategoryTheory/Triangulated/TStructure/TruncLTGE.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Translate/Core.lean,MathlibTest/SimpsModule.lean 4 22 ['JovanGerb', 'Vierkantor', 'github-actions', 'joneugster', 'kim-em', 'mathlib-merge-conflicts'] nobody
0-42321
11 hours ago
1-85787
1 day ago
37-19177
37 days
33817 FlAmmmmING
author:FlAmmmmING
fix(Combinatorics/Enumerative/Schroder): fix the definition of `smallSchroder` In the previous definition, the small Schröder numbers were defined as ```LaTeX s_0 = 1, s_1 = 1, s_2 = 1, s_3 = 3... ``` , which does not match the sequence listed in OEIS A006318. Moreover, this definition makes it difficult to correctly write the generating function for the small Schröder numbers. This PR fixes this issue. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import awaiting-author merge-conflict 61/39 Mathlib/Combinatorics/Enumerative/Schroder.lean 1 21 ['FlAmmmmING', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] YaelDillies
assignee:YaelDillies
0-42196
11 hours ago
65-20202
65 days ago
74-58112
74 days
34015 erdOne
author:erdOne
feat(AlgebraicGeometry): category of schemes affine over a base --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry delegated merge-conflict 522/11 Mathlib.lean,Mathlib/AlgebraicGeometry/AffineOver.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/RelativeGluing.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/CategoryTheory/Sites/Hypercover/Subcanonical.lean 8 53 ['chrisflav', 'dagurtomas', 'erdOne', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] chrisflav
assignee:chrisflav
0-42195
11 hours ago
20-9785
20 days ago
40-35668
40 days
34867 urkud
author:urkud
feat(FDeriv/Comp): migrate to TVS --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #34832 t-analysis awaiting-author merge-conflict 94/91 Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean 3 22 ['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'urkud'] j-loreaux
assignee:j-loreaux
0-40669
11 hours ago
94-61848
94 days ago
15-63882
15 days
35136 joelriou
author:joelriou
feat(AlgebraicGeometry): points of the small étale site The main definition in this PR is `Scheme.pointSmallEtale`. Given a morphism `Spec (.of Ω) ⟶ S` where `Ω` is a separably closed field, we define the corresponding point of the small étale site of `S`. We show that these points form a conservative family. (This PR also removes the definition `Scheme.geometricFiber` which was not correct.) Co-authored-by: Christian Merten --- - [x] depends on: #35141 - [x] depends on: #35175 - [x] depends on: #35240 - [x] depends on: #34976 - [x] depends on: #33958 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry large-import merge-conflict 301/6 Mathlib.lean,Mathlib/AlgebraicGeometry/Fiber.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Sites/Etale.lean,Mathlib/AlgebraicGeometry/Sites/EtalePoint.lean,Mathlib/CategoryTheory/Elements.lean,Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/Limits/FinallySmall.lean,Mathlib/CategoryTheory/Limits/MorphismProperty.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean,Mathlib/CategoryTheory/ObjectProperty/Small.lean 11 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40668
11 hours ago
0-40669
11 hours ago
9-10949
9 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
0-40667
11 hours ago
2-79738
2 days ago
62-83523
62 days
35522 grunweg
author:grunweg
feat: lint for unused `backward` options --- Based on the `unnecessarySetOptionIn` linter (#35521 and #13653). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter tech debt large-import merge-conflict 211/4 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Linter/UnnecessarySetOptionIn.lean,MathlibTest/UnnecessarySetOptionIn.lean,lakefile.lean 7 4 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-40665
11 hours ago
100-10920
100 days ago
0-19
19 seconds
35569 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): deprecate `injectiveSeminorm` This PR: * Deprecates `PiTensorProduct.injectiveSeminorm` and supporting lemmas. * Moves the theory of `liftEquiv` from InjectiveSeminorm.lean to ProjectiveSeminorm.lean. No changes are introduced beyond adding deprecation notices, adapting docstrings, and moving material between files. The PR leaves InjectiveSeminorm.lean almost empty. A new implementation of `injectiveSeminorm`, one which reflects the common mathematical definition, is to be done. This is the third in a series of three PRs with the goal to [deprecate `PiTensorProuduct.injectiveSeminorm`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798633). --- - [ ] depends on: #35567 - [ ] depends on: #35568 Deprecations: - injectiveSeminorm - dualSeminorms_bounded - injectiveSeminorm_apply - norm_eval_le_injectiveSeminorm - injectiveSeminorm_le_projectiveSeminorm - injectiveSeminorm_tprod_le Preliminary work toward a reimplementation is at #33969. I've added Davood and myself to the "Authors" field, as we have now significantly refactored this module. Co-authored-by: Davood H. T. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 222/233 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean 2 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40664
11 hours ago
0-40665
11 hours ago
59-23938
59 days
35896 harahu
author:harahu
chore(misc): fix typos The typos were identified by `PyCharm`'s proofreading inspection. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 34/32 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Group/Cyclic.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Control/Traversable/Equiv.lean,Mathlib/Data/Analysis/Filter.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Data/TypeVec.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/Topology/Compactness/Lindelof.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Sheaves/CommRingCat.lean,docs/references.bib 21 10 ['euprunin', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-40540
11 hours ago
79-42263
79 days ago
7-55245
7 days
35951 parabamoghv
author:parabamoghv
feat(CategoryTheory/Monoidal): evaluation coevaluation isomorphisms This PR adds four features to rigid categories: 1. `coevaluation_evaluation` and `evaluation_coevaluation` as isomorphism equalities: Using `IsIso` instances for the `evaluation` and `coevaluation` morphisms, we promote the morphism equalities to isomorphism equalities. 2. `ExactPairing Y X` from `ExactPairing X Y`: Using an exact pairing and `IsIso` instances for both `evaluation` and `coevaluation`, we swap the exact pairing by inverting the evaluation and coevaluation morphisms. Any suggestions for the definition name are welcome. Right now it is `ExactPairing.Symm`. The second choice was `ExactPairing.Swap`. 3. `HasLeftDual X` from `HasRightDual X`: Using a `HasRightDual X` instance and relevant `IsIso` instances, we construct a left dual. Similar construction for the other way. 4. `LeftDual` isomorphic to `RightDual`: Using relevant `IsIso` instances, we provide the isomorphism from the left dual of an object to the right dual. This can be achieved in two ways: either by using `leftDualIso` or using `rightDualIso`. We will prove in a subsequent PR that both these isomorphisms are equal. Motivation: This is part of an effort to formalize CategoricalGroups, which can be defined as right rigid groupoids. The approach is motivated by the discussion in [#34830](https://github.com/leanprover-community/mathlib4/pull/34830). Any comments or suggestions are welcome, especially about the naming. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author merge-conflict 64/2 Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean 1 19 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'parabamoghv', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-40538
11 hours ago
71-63334
71 days ago
7-83579
7 days
36036 grunweg
author:grunweg
[placeholder PR uniting ongoing work on connections and geodesics] --- - [x] depends on: #34263 - [x] depends on: #36277 - [x] depends on: #36279 - [x] depends on: #36285 - [ ] depends on: #36299 - [x] depends on: #37537 - [x] depends on: #34257 - [x] depends on: #39226 - [x] depends on: #39451 - [x] depends on: #39485 - [x] depends on: #39554 - [ ] depends on: #39513 - [x] depends on: #39486 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry blocked-by-other-PR merge-conflict 4731/44 Mathlib.lean,Mathlib/Geometry/Manifold/CheatSheet.md,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/Riemannian/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/ContMDiffSection.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/ChristoffelSymbols.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Curvature.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Ehresmann.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Geodesics.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/IntegralCurvePrelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/LeviCivita.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Lift.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Metric.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Prelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Torsion2.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/TrivPrelim.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Trivial.lean,Mathlib/Geometry/Manifold/VectorBundle/GramSchmidtOrtho.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/Geometry/Manifold/VectorBundle/OrthonormalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/Tensoriality.lean,Mathlib/Geometry/Manifold/VectorBundle/Unused.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean 28 10 ['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40537
11 hours ago
88-5078
88 days ago
0-7
7 seconds
36236 kim-em
author:kim-em
chore: add module keyword to Archive and Counterexamples files This PR converts 105 Archive and Counterexamples files to module format, adding `module`, `public import`, and `@[expose] public section`. Eight files are left unconverted for now: - Seven files containing `private` declarations that need further work (`Imo1962Q1`, `MiuLanguage/Basic`, `MiuLanguage/DecisionSuf`, `AscendingDescendingSequences`, `BallotProblem`, `AharoniKorman`, `TopologistsSineCurve`) - `Counterexamples/InvertibleModuleNotIdeal` which needs an import path update For `Archive/Examples/PropEncodable`, the `private` declarations were removed as part of this conversion. 🤖 Prepared with Claude Code IMO LLM-generated merge-conflict 738/310 Archive/Arithcc.lean,Archive/Examples/Eisenstein.lean,Archive/Examples/Kuratowski.lean,Archive/Examples/PropEncodable.lean,Archive/Hairer.lean,Archive/Imo/Imo1959Q1.lean,Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo1961Q3.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1963Q5.lean,Archive/Imo/Imo1964Q1.lean,Archive/Imo/Imo1969Q1.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1977Q6.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo1985Q2.lean,Archive/Imo/Imo1986Q5.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1997Q3.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2001Q3.lean,Archive/Imo/Imo2001Q4.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2001Q6.lean,Archive/Imo/Imo2002Q3.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2005Q4.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2010Q5.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2015Q6.lean,Archive/Imo/Imo2019Q1.lean,Archive/Imo/Imo2019Q2.lean,Archive/Imo/Imo2019Q4.lean,Archive/Imo/Imo2020Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Imo/Imo2024Q2.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q6.lean,Archive/Imo/Imo2025Q3.lean,Archive/Kuratowski.lean,Archive/MinimalSheffer.lean,Archive/OxfordInvariants/Summer2021/Week3P1.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Archive/Wiedijk100Theorems/InverseTriangleSum.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Archive/Wiedijk100Theorems/SolutionOfCubicQuartic.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CharPZeroNeCharZero.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/Cyclotomic105.lean,Counterexamples/DimensionPolynomial.lean,Counterexamples/DirectSumIsInternal.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/EulerSumOfPowers.lean,Counterexamples/Girard.lean,Counterexamples/HeawoodUnitDistance.lean,Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/IrrationalPowerOfIrrational.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Motzkin.lean,Counterexamples/NowhereDifferentiable.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Counterexamples/PeanoCurve.lean,Counterexamples/Phillips.lean,Counterexamples/PolynomialIsDomain.lean,Counterexamples/Pseudoelement.lean,Counterexamples/QuadraticForm.lean,Counterexamples/SeminormLatticeNotDistrib.lean,Counterexamples/SeparableNotSecondCountable.lean,Counterexamples/SorgenfreyLine.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean 97 11 ['JovanGerb', 'github-actions', 'grunweg', 'kim-em', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
0-40535
11 hours ago
0-40536
11 hours ago
13-62459
13 days
36239 plp127
author:plp127
feat(FieldTheory/KrullTopology): define uniform group structure on galois group Endow the galois group of a field extension `Gal(L/K)` with the structure of a uniform group. Use this to prove some properties of the galois group earlier, for example, that the galois group is compact is immediate, and in more generality than the version proved in `FieldTheory/Galois/Profinite`. Deprecate some material which used to be used to define the krull topology, but is now unused since the krull topology comes out of the uniform structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
295/220 Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean 4 24 ['acmepjz', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] mattrobball
assignee:mattrobball
0-40534
11 hours ago
0-40534
11 hours ago
61-51013
61 days
36572 JovanGerb
author:JovanGerb
feat(CategoryTheory/Limits/IsLimit): use `to_dual` on `IsLimit` This PR makes a start at translating `IsLimit` using `to_dual`. --- - [x] depends on: #35031 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author merge-conflict 71/235 Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/IsLimit.lean 2 5 ['JovanGerb', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40408
11 hours ago
3-52316
3 days ago
0-678
11 minutes
37501 xgenereux
author:xgenereux
feat(DedekindDomain/AdicValuation): `intValuation` on uniformizers is `exp (-1)` This PR add the lemma `intValuation_val_uniformizer_eq` which is an application of #37497. Note that I've had to reorganize the files a little bit: 1. I wanted to import `Valuation.Discrete.Basic` in `AdicValuation` but this was not possible since there was a dependency in the other direction (`Valuation.Discrete.Basic` depended on `AdicValuation`). I don't think this makes sense - we want to have access to basic definitions on general valuation in an application file like `AdicValuation`. ~~The reorganization consist of moving the `IsDiscreteValuationRing` of `Valuation.Discrete.Basic` to `AdicValuation`.~~ The reorganization consist of moving the `IsDiscreteValuationRing` section to a new file. 2. I moved some lemmas out of `Mathlib.RingTheory.Valuation.Discrete.RankOne` to the parent file `Mathlib.RingTheory.Valuation.Discrete.Basic.`. These lemmas do not need the richer imports from `RankOne` and are needed in my application. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- - [x] depends on: #37497 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory merge-conflict 203/167 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/IsDiscreteValuationRing.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean 8 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
0-40283
11 hours ago
0-40284
11 hours ago
49-51888
49 days
37659 erdOne
author:erdOne
feat(AlgebraicTopology): relative singular homology --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory awaiting-author merge-conflict 205/2 Mathlib.lean,Mathlib/Algebra/Homology/ShortComplex/ShortExact.lean,Mathlib/AlgebraicTopology/SingularHomology/Basic.lean,Mathlib/AlgebraicTopology/SingularHomology/Relative.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean 5 10 ['erdOne', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] nobody
0-40282
11 hours ago
49-69307
49 days ago
5-21324
5 days
37682 SabrinaJewson
author:SabrinaJewson
refactor(Order/OrdContinuous): redefine left and right order continuity to not require preserving ⊥/⊤ `LeftOrdContinuous` currently requires that `f ⊥ = ⊥`, but this means that many functions that are perhaps intuitively left-continuous (like `f x = x + 1` on `ℝ≥0`) are not. In particular, this change means that functions between conditionally complete lattices are `LeftOrdContinuous` iff they are monotone and topologically left continuous (see `MonotoneOn.map_csSup_of_continuousWithinAt` for the reverse direction). If one wants the concept that existed before, one can either accept the `f ⊥ = ⊥` hypothesis separately or, if the function is between complete lattices, use the left side of a `GaloisConnection` (which is equivalent, although I think this is not yet in Mathlib). This removes the definitional equality of the type in favour of a structure. Since most of the time users will be working with the `sSup` versions and not with `IsLUB`, I think this is justified. As a consequence, this removes the definitional equality between `LeftOrdContinuous` and `RightOrdContinuous` of the dual – the latter could be redefined to re-add this, but we do have conversion functions. `LeftOrdContinuous.continuousWithinAt_Iic` is rewritten to accomodate these changes; the superfluous `DenselyOrdered` assumption is also removed. [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/LeftOrdContinuous.20requires.20f.28.E2.8A.A5.29.20.3D.20.E2.8A.A5/near/582932491) --- - [x] depends on: #37735 - [x] depends on: #37772 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order merge-conflict 52/38 Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Topology/Order/Basic.lean 3 11 ['SabrinaJewson', 'astrainfinita', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] Komyyy
assignee:Komyyy
0-40281
11 hours ago
0-40282
11 hours ago
52-2543
52 days
37757 JovanGerb
author:JovanGerb
chore(Order/liminfLimsup): use `to_dual` This PR uses `to_dual` on `limsup`. This PR still depends on many other PRs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 86/251 Mathlib/Order/LiminfLimsup.lean,Mathlib/Tactic/Translate/ToDual.lean 2 3 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-40280
11 hours ago
52-73303
52 days ago
0-8
8 seconds
37955 artie2000
author:artie2000
feat(Algebra/Polynomial): lemmas about `modByMonic` * Add various small lemmas about `Polynomial.modByMonic` * Remove unneccesary commutativity assumption on `Polynomial.aeval_eq_zero_of_dvd_aeval_eq_zero` by proving `Polynomial.aeval_dvd` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated merge-conflict
label:t-algebra$
20/6 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/FieldTheory/Minpoly/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean 5 5 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
0-40154
11 hours ago
23-53959
23 days ago
24-18920
24 days
37959 artie2000
author:artie2000
feat(LinearAlgebra/Dimension/Free): lemmas about finrank * Division variant of tower law * Isomorphic to base ring iff rank is one --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
34/9 Mathlib/LinearAlgebra/Dimension/Free.lean 1 8 ['artie2000', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] themathqueen
assignee:themathqueen
0-40153
11 hours ago
34-39393
34 days ago
12-62496
12 days
38127 riccardobrasca
author:riccardobrasca
feat: add ClassGroup.extendedHom --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-algebra t-ring-theory merge-conflict
label:t-algebra$
198/6 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/NumberTheory/ClassNumber/Finite.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/RingTheory/ClassGroup/Basic.lean,Mathlib/RingTheory/ClassGroup/ExtendedHom.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/RingTheory/UniqueFactorizationDomain/ClassGroup.lean 9 31 ['faenuccio', 'github-actions', 'mathlib-merge-conflicts', 'riccardobrasca'] mattrobball
assignee:mattrobball
0-40152
11 hours ago
0-40152
11 hours ago
39-65429
39 days
38144 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): Golf 100 files This PR is an experimental project. In this PR, we use an Agent to automatically scan and attempt to simplify proofs. We hope to eventually effectively golf 100 files and avoid reinventing the wheel in mathlib. We have chosen `Mathlib/NumberTheory` as the testing ground. If this experiment is very successful and accepted by the mathlib community, we would be honored to open source it. The relevant projects includes - [ ] #38104, which golfs `Mathlib/MeasureTheory`. - [ ] #37968, which golfs `Mathlib/Analysis`. This PR serves as an index. For the actual code review, please refer to the individual PRs linked below. Each of those PRs modifies only a single file to facilitate the review process. - [ ] depends on: #38204 - [ ] depends on: #38277 - [ ] depends on: #38278 - [ ] depends on: #38279 - [ ] depends on: #38280 - [ ] depends on: #38351 - [ ] depends on: #38402 - [ ] depends on: #38403 - [ ] depends on: #38454 - [ ] depends on: #38457 - [ ] depends on: #38494 - [ ] depends on: #38495 - [ ] depends on: #38832 - [ ] depends on: #38833 - [ ] depends on: #38834 - [ ] depends on: #38835 - [ ] depends on: #38836 - [ ] depends on: #38838 - [ ] depends on: #38839 - [ ] depends on: #39372 - [ ] depends on: #39373 - [ ] depends on: #39374 - [ ] depends on: #39375 - [ ] depends on: #39376 - [ ] depends on: #39377 - [ ] depends on: #39378 - [ ] depends on: #39379 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory large-import codex LLM-generated blocked-by-other-PR merge-conflict 60/169 Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/EulerProduct/Basic.lean,Mathlib/NumberTheory/FLT/Four.lean,Mathlib/NumberTheory/FLT/Polynomial.lean,Mathlib/NumberTheory/GaussSum.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/Derivative.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/MDifferentiable.lean,Mathlib/NumberTheory/ModularForms/SlashActions.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/PrimeCounting.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean 14 13 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536', 'yuanyi-350'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-40151
11 hours ago
15-70007
15 days ago
3-39923
3 days
38216 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet/KanComplex): MulStruct.assoc --- - [ ] depends on: #38665 - [ ] depends on: #38662 - [ ] depends on: #38664 - [x] depends on: #38172 - [x] depends on: #38367 - [x] depends on: #38063 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP large-import blocked-by-other-PR merge-conflict 450/3 Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/CategoryWithFibrations.lean,Mathlib/AlgebraicTopology/SimplicialSet/KanComplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/MulStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/Op.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean 6 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-40149
11 hours ago
41-54262
41 days ago
0-1
1 second
40035 marcelolynch
author:marcelolynch
feat(cache): restructure cache tool server-side storage layout This PR significantly restructures the cache back-end storage layout to address some security issues and as a side benefit improve auditing, garbage collection, provenance. 1) Instead of setting the cache-universe boundary to the repository, we scope it to particular commit SHAs. This means a review of the changes in a PR does give you confidence in that pulling from the cache at that commit. 2) Split the cache universes from master, forks, and nightly-testing at the infrastructure level, using different azure containers. This has other benefits in management, like better auditing, the possibility of targeted garbage collection, etc. See `SECURITY.md` for the motivation and explanation of the trust model implemented here. Also added cache tool tests, and changed a bunch of the messages output to users to surface security concerns more clearly. Extra details: ### Trust model - Five containers — `master`, `forks`, `nightly-testing`, `pr-toolchain-tests`, and `legacy` (the original bare `mathlib4` bucket) — each mapped to a dedicated Azure container. Every trust level has its own writer identity. Azure RBAC on the OIDC token is the enforced write boundary, not the workflow logic. - Reads use a per-repo, trust-ordered chain (most-trusted first, stop at first hit - URL layout is fixed per container, not per repo: `master` is flat (`/f/{hash}`), multi-writer containers namespace by repo (`/f/{repo}/{hash}`), `legacy` preserves its historical mixed layout for older clients. ### Per-commit scoping & discovery - Fork uploads are scoped to their commit SHA (`/f/{repo}/{sha}/{hash}`), so a closed/hidden PR's artifacts can't be served to a later honest PR on the same fork. A marker blob (`/m/{repo}/{sha}`) is written after a successful upload. - New `cache query [REF]`: walks history to the merge-base with master and HEAD- probes markers to report the most recent cached commit (or a boolean probe for a single ref). `cache get --scope=` then reads that commit's namespace. - `cache get` prints a security notice whenever a read leaves the repo's default trust boundary (a scope, a widened `--cache-from`, or a `--repo` that diverges from the git remote), plus a hint pointing uncached fork HEADs at `cache query`. ### CLI / env surface - New flags: `--cache-from=LIST`, `--container=NAME`, `--scope=REF`; new command `cache query`. - New env: `MATHLIB_CACHE_FROM`, `MATHLIB_CACHE_REPO_SCOPE`. `MATHLIB_CACHE_GET_URL` / `_PUT_URL` retained as single-URL escape hatches; `MATHLIB_CACHE_USE_CLOUDFLARE` removed. ### CI wiring - New composite action `cache-trust-dispatch` is the single source mapping `(repo, branch) → (write container, read chain, per-commit scope)`; `build.yml`, `bors.yml`, and `build_template.yml` consult it. Trust policy lives in YAML, not in the Lean tool. - During migration, master CI dual-writes to `legacy` so older cache clients keep working; forks/nightly never write to `legacy`. ### Code organization & testing - Backend split into focused modules: `Cache.Infra` (container model), `Cache.Cli` (option parsing), `Cache.Marker`, `Cache.Query`, `Cache.Warning`; `Cache.Init` folded away. - New standalone `lake exe cache-test` (`Cache.Test`) unit-tests the pure logic — container model, URL construction, per-repo read chains, flag parsing, and the warning conditions — without building Mathlib. file-removed CI 2372/286 .github/actions/cache-trust-dispatch/action.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_template.yml,Cache/Cli.lean,Cache/Infra.lean,Cache/Init.lean,Cache/Main.lean,Cache/Marker.lean,Cache/Query.lean,Cache/README.md,Cache/Requests.lean,Cache/SECURITY.md,Cache/Test.lean,Cache/Warning.lean,lakefile.lean 16 1 ['github-actions'] nobody
0-38383
10 hours ago
0-38153
10 hours ago
0-40226
11 hours
36888 CoolRmal
author:CoolRmal
feat: generalize some lemmas by using conditional Jensen This PR includes two possible ways of generalizing `integral_abs_condExp_le`: 1. Replace absolute values with norms. 2. Consider absolute values defined on a lattice with a solid norm. We also prove that if a function is in Lp then its conditional expectation is also in Lp. In order to prove these results, some of the lemmas about essSup are generalized to conditionally complete lattices. Created with the help of Codex. --- - [x] depends on: #36877 - [x] depends on: #39104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 260/140 Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Measure/Trim.lean,Mathlib/Probability/CondVar.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/Centering.lean 7 42 ['CoolRmal', 'EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] EtienneC30
assignee:EtienneC30
0-38233
10 hours ago
0-39578
10 hours ago
8-57137
8 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 66/215 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/SupClosed.lean 2 6 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-37691
10 hours ago
44-65825
44 days ago
48-69998
48 days
38095 astrainfinita
author:astrainfinita
perf(Algebra/*/{InjSurj, TransferInstance}): reduce instance `Expr`s --- We can not just use `fast_instance%`, because `fast_instance%` reduces instances into constructor applications, but their arguments may still not be reduced. This PR continues the work from #13795. Original PR: https://github.com/leanprover-community/mathlib4/pull/13795 [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/instance.20unfolding.20phenomenon/) t-algebra
label:t-algebra$
401/219 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/TransferInstance.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/TransferInstance.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/TransferInstance.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/End.lean,Mathlib/Algebra/GroupWithZero/Action/TransferInstance.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/TransferInstance.lean,Mathlib/Util/TermReduce.lean,scripts/noshake.json 16 7 ['astrainfinita', 'github-actions', 'leanprover-radar'] nobody
0-37690
10 hours ago
44-27039
44 days ago
44-29531
44 days
38821 Jun2M
author:Jun2M
feat(Data/List): rotation of sublist is sublist of rotation This PR proves `(∃ L₁ : List α, L ~r L₁ ∧ L₁ <+ L') ↔ (∃ L₂ : List α, L <+ L₂ ∧ L₂ ~r L')`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 10/0 Mathlib/Data/List/Rotate.lean 1 3 ['SnirBroshi', 'eric-wieser', 'github-actions'] nobody
0-37689
10 hours ago
28-56007
28 days ago
28-55969
28 days
38223 Deicyde
author:Deicyde
feat(Geometry/Manifold): add `MfldCat`, the category of `C^n` manifolds We define `MfldCat 𝕜 n`: the category of `C^n` manifolds over a field `𝕜`, following the pattern of `TopCat` in `Mathlib.Topology.Category.TopCat.Basic`. We also implement `HasForget₂ (MfldCat 𝕜 n) TopCat`—the forgetful functor into the category of topological spaces. For more discussion see the Zulip thread: [#PR reviews > #38223 The Category of C^n Manifolds](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/with/587038032) Also added: `ContMDiffMap.id_apply`, `.coe_id` and `.coe_comp` which are comparable to `ContinuousMap` API. ### Future work - ✅ Define a Monoidal structure via product manifolds, analogous to `Manifold.Topology.Category.TopCat.Monoidal` #38560 - ✅ Define the tangent functor: `M ↦ TM`, `F ↦ F.tangentMap` from `MfldCat (n+1) 𝕜` to `MfldCat n 𝕜` #38270 - Functor `FGModuleCat 𝕜 ⥤ MfldCat 𝕜 n` sending a finite-dimensional `𝕜`-vector space to the manifold modeled on itself. Left as `TODO`. - Define `FGModuleCat 𝕜` as an enriched category over `MfldCat n 𝕜`. Then _smooth functors_ can be realized as endofunctors on the enriched category. This is the main motivation for this construction. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor t-category-theory 224/0 Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean 3 57 ['Deicyde', 'chrisflav', 'dagurtomas', 'github-actions', 'idontgetoutmuch', 'peabrainiac'] nobody
0-37688
10 hours ago
21-55868
21 days ago
35-19546
35 days
34759 Hagb
author:Hagb
feat(RingTheory/MvPolynomial/MonomialOrder): add degree with `⊥` as degree of `0` `withBotDegree` is to distinguish the degree of zero polynomial from the degree of non-zero constant polynomial. `MonomialOrder.degree` of both are 0, while `withBotDegree` is `⊥` for zero polynomial and 0 for non-zero constant polynomial. `MonomialOrder.withBotDegree` is to `MonomialOrder.degree` as `Polynomial.degree` is to `Polynomial.natDegree`. It's upstreamized from https://github.com/WuProver/groebner_proj. --- `MonomialOrder.withBotDegree` is to [`MonomialOrder.degree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MonomialOrder.degree#doc) as [`Polynomial.degree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=Polynomial.degree#doc) is to [`Polynomial.natDegree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=Polynomial.natDegree#doc). It's upstreamized from [`Groebner/MonomialOrder.lean` in the repo `WuProver/groebner_proj`](https://github.com/WuProver/groebner_proj/blob/main/Groebner/MonomialOrder.lean). - [x] ~depends on: #34755~ - [x] depends on: #34756 - [x] depends on: #34758 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 243/2 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 2 17 ['Hagb', 'github-actions', 'joneugster', 'mariainesdff', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-37687
10 hours ago
21-77094
21 days ago
56-65127
56 days
34271 gasparattila
author:gasparattila
feat(Topology/Sets): second-countability of `(Nonempty)Compacts` --- - [x] depends on: #34266 - [x] depends on: #34268 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 17/76 Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sets/VietorisTopology.lean 2 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'scholzhannah'] nobody
0-37685
10 hours ago
21-53857
21 days ago
58-62722
58 days
36743 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): introduce `GraphLike` typeclass Per discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)), This PR introduces the `GraphLike` typeclass to capture the notions like `dart` and `walk` across various graph objects, such as `SimpleGraph`, `Graph`, and `Digraph`. The goal is that by abstracting these core components into a typeclass, we can prove these results once for all graph-like structures rather than duplicating them across different graph types. ### Main definitions * `GraphLike V D E Gr`: A typeclass parameterized by a vertex type `V`, dart type `D` and a graph type `Gr` (with `V`, `D` & `E` as an `outParam`). * `GraphLike.verts : Set V`: The set of vertices of the graph. * `GraphLike.darts : Set D`: The set of darts of the graph. * `GraphLike.edges : Set E`: The set of edges of the graph. * `GraphLike.Adj : V → V → Prop`: The adjacency relation, defined by default as `∃ d ∈ darts, fst d = u ∧ snd d = v`. --- This PR generalises #35776 to also unify `Graph`. PRs depending on this PR are #39047 (graphLike with no multi edges) => #39050 (Digraph is graphLike) || V #36829 (undirected graphLike) => #39053 (Graph is graphLike) & #39054 (Simplegraph is graphLike) || V #36756 (def of walk on GraphLike) => #36971 (change Simplegraph to use GraphLike walk) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 104/0 Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean 2 78 ['IvanRenison', 'Jun2M', 'SnirBroshi', 'YaelDillies', 'github-actions', 'lauramonk', 'mathlib-merge-conflicts'] nobody
0-37684
10 hours ago
21-68494
21 days ago
72-66872
72 days
38785 scholzhannah
author:scholzhannah
feat: use `alias_in` attribute for CW complexes Using the `alias_in` attribute for classical CW complexes to get rid of the `export` sections. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 103/58 Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Finite.lean,Mathlib/Topology/CWComplex/Classical/Subcomplex.lean 3 8 ['github-actions', 'grunweg', 'scholzhannah'] nobody
0-37684
10 hours ago
22-11958
22 days ago
29-282
29 days
39868 JuanCoRo
author:JuanCoRo
feat(Algebra/Polynomial): linearity of `divByMonic` and adjacent results --- This PR adds the `R`-linearity of the monic polynomial division map `_ /ₘ q`. It also adds adjacent results that stem from this work. #### Refactors: - Reuses the proofs from `add_modByMonic` and `smul_modByMonic` to generalize these results to `add_div_modByMonic` and `smul_div_modByMonic` respectively. - Replaces the proofs of `add_modByMonic` and `smul_modByMonic` as specializations of the more general theorems `add_div_modByMonic` and `smul_div_modByMonic` respectively. #### Additions: - Adds the necessary results for `_ /ₘ q` linearity: - `add_divByMonic : (p₁ + p₂) /ₘ q = p₁ /ₘ q + p₂ /ₘ q` - `smul_divByMonic : c • p /ₘ q = c • (p /ₘ q)` - Adds `_ /ₘ q` as an `R`-linear map: - `divByMonicHom`: definition of `_ /ₘ q` as a linear map - `mem_ker_divByMonic`: kernel characterization for `_ /ₘ q`. - In `Div.lean` adds dual results for `/ₘ` that were already present for `%ₘ` - `neg_divByMonic : (-p) /ₘ q = -(p /ₘ q)` - `sub_divByMonic : (p₁ - p₂) /ₘ q = p₁ /ₘ q - p₂ /ₘ q` - `mul_divByMonic_assoc (hd : q ∣ p₂) : (p₁ * p₂) /ₘ q = p₁ * (p₂ /ₘ q)` While `mul_divByMonic_assoc` is not exactly the dual of `mul_modByMonic`, I thought it wouldn't hurt to add it. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
54/17 Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/RingDivision.lean 2 4 ['github-actions', 'wwylele'] nobody
0-37307
10 hours ago
1-951
1 day ago
1-992
1 day
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
0-37136
10 hours ago
6-59794
6 days ago
6-59756
6 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
0-37124
10 hours ago
4-36533
4 days ago
18-28445
18 days
38326 Jun2M
author:Jun2M
feat(Combinatorics/Graph): Degree This PR adds definition of `incFun`, a nat function counting how many times an edge is incident to a vertex (2 if it is loop), and `eDegree` & `degree`, enat and nat valued degree function as a tsum of `incFun`. Co-authored-by: Peter Nelson --- - [ ] depends on: #38325 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-combinatorics merge-conflict 194/22 Mathlib.lean,Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/Graph/Degree/Defs.lean,Mathlib/Combinatorics/Graph/Subgraph.lean,Mathlib/Topology/CWComplex/Classical/Graph.lean 5 7 ['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36739
10 hours ago
39-20425
39 days ago
0-1332
22 minutes
38376 smmercuri
author:smmercuri
refactor(Algebra): semialgebra maps --- - [x] depends on: #38715 - [ ] depends on: #38964 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR merge-conflict 776/587 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Notation.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SplittingField/IsSplittingField.lean,Mathlib/LinearAlgebra/FreeProduct/Basic.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/Cyclotomic/Gal.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/Adjoin/Field.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Derivation/ToSquareZero.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Etale/StandardEtale.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/GradedAlgebra/AlgHom.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Evaluation.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/Trace/Basic.lean,Mathlib/RingTheory/Unramified/Pi.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Module/Spaces/CharacterSpace.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean,MathlibTest/GalNotation.lean 65 14 ['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'smmercuri'] nobody
0-36738
10 hours ago
37-70764
37 days ago
0-8
8 seconds
38384 Jun2M
author:Jun2M
chore(Combinatorics/Graph): per def "expose" tag `Combinatorics/Graph/Basic.lean` has a file-wide `expose` tag. This PR moves it to defs that requires them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 26/24 Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/Graph/Subgraph.lean,Mathlib/Topology/CWComplex/Classical/Graph.lean 3 5 ['eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-36737
10 hours ago
35-82734
35 days ago
1-52776
1 day
38393 staroperator
author:staroperator
refactor(ModelTheory): add typeclasses for algebraic symbols `Language.ring` and `Language.presburger` share the same symbols `0`, `1` and `+` and have duplicated instances on `Term` and `realize` simp lemmas. This PR makes these symbols certain typeclasses (similar to [`Language.IsOrdered`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/ModelTheory/Order.html#FirstOrder.Language.IsOrdered)) and removes the duplication. It also adds certain definability lemmas that `fun_prop` can use. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic merge-conflict 332/201 Mathlib.lean,Mathlib/ModelTheory/Algebra/Classes.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Algebra/Ring/Basic.lean,Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Definability.lean 7 2 ['github-actions', 'mathlib-merge-conflicts'] fpvandoorn
assignee:fpvandoorn
0-36736
10 hours ago
0-36736
10 hours ago
36-80727
36 days
38413 yuanyi-350
author:yuanyi-350
doc(CategoryTheory): fix typos In this PR, we used a Codex agent to scan the `CategoryTheory` directory to check for typos in the docstrings. We picked out some of the more obvious errors to fix in this PR. Depends on #38441 Co-authored-by: @LehengChen --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated codex documentation t-category-theory WIP merge-conflict 35/34 Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/Subobject.lean,Mathlib/CategoryTheory/Abelian/Injective/Basic.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Action/Continuous.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/Adjunction/Triple.lean,Mathlib/CategoryTheory/Center/Localization.lean,Mathlib/CategoryTheory/FiberedCategory/Fiber.lean,Mathlib/CategoryTheory/Functor/Const.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerived.lean,Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean,Mathlib/CategoryTheory/Functor/OfSequence.lean,Mathlib/CategoryTheory/Functor/Trifunctor.lean,Mathlib/CategoryTheory/GradedObject/Bifunctor.lean,Mathlib/CategoryTheory/Groupoid/Basic.lean,Mathlib/CategoryTheory/IsomorphismClasses.lean,Mathlib/CategoryTheory/Join/Final.lean,Mathlib/CategoryTheory/Limits/ExactFunctor.lean,Mathlib/CategoryTheory/Limits/Filtered.lean,Mathlib/CategoryTheory/Limits/Opposites.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Images.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/HasPullback.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Iso.lean,Mathlib/CategoryTheory/Limits/Shapes/StrictInitial.lean,Mathlib/CategoryTheory/Limits/SmallComplete.lean,Mathlib/CategoryTheory/Limits/Types/Yoneda.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/Basic.lean,Mathlib/CategoryTheory/Localization/SmallShiftedHom.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Over.lean,Mathlib/CategoryTheory/Monoidal/Action/End.lean,Mathlib/CategoryTheory/Monoidal/Braided/Multifunctor.lean 32 4 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-36735
10 hours ago
36-73254
36 days ago
0-2163
36 minutes
38431 joelriou
author:joelriou
refactor(Topology): redefine Delta-generated spaces Delta-generated spaces are made particular cases of `X`-generated spaces, where `X` is a family of topological spaces. --- - [x] depends on: #38080 - [x] depends on: #37799 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import merge-conflict 144/211 Mathlib/Topology/Category/DeltaGenerated.lean,Mathlib/Topology/Compactness/DeltaGeneratedSpace.lean,Mathlib/Topology/Convenient/Category.lean,Mathlib/Topology/Convenient/GeneratedBy.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] PatrickMassot
assignee:PatrickMassot
0-36733
10 hours ago
0-36734
10 hours ago
23-29045
23 days
38567 dagurtomas
author:dagurtomas
feat(CategoryTheory/Monoidal): autogenerate some lemmas instead of stating them explicitly --- - [ ] depends on: #38482 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 928/166 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Limits/HasLimits.lean,Mathlib/CategoryTheory/Monoidal/Limits/Shapes/Pullback.lean,Mathlib/CategoryTheory/Monoidal/PushoutProduct.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,Mathlib/Tactic/CategoryTheory/Op.lean,Mathlib/Tactic/CategoryTheory/SpecializeMap.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean,MathlibTest/CategoryTheory/Op.lean,MathlibTest/CategoryTheory/SpecializeMap.lean 12 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36732
10 hours ago
33-23862
33 days ago
0-512
8 minutes
38586 chrisflav
author:chrisflav
feat(RingTheory): algebra maps between finite étale algebras are locally finite split From Pi1. --- - [ ] depends on: #38649 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory large-import blocked-by-other-PR 335/2 Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Group/Idempotent.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/RingTheory/LocalRing/Basic.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Module.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/TotallySplit.lean 8 5 ['chrisflav', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36732
10 hours ago
32-60468
32 days ago
0-1
1 second
38589 vlad902
author:vlad902
feat(SimpleGraph): add universal vertex predicate Add the predicate `G.IsUniversal v` to indicate that `v` is a universal vertex, i.e. connected to all other vertices in `G`. This matches the recently added `G.IsIsolated v` predicate for isolated vertices. Co-authored-by: Justin Lai --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics merge-conflict 61/10 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Combinatorics/SimpleGraph/UniversalVerts.lean 5 15 ['8e7', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] nobody
0-36730
10 hours ago
0-36731
10 hours ago
32-17772
32 days
38595 openendings
author:openendings
chore(CategoryTheory): remove defeq abuse in Monad/Kleisli.lean Currently most of Kleisli.lean uses defeq abuse to perform deep rewrites equivalent to `Kleisli.of_mk`, `Kleisli.mk_of`, etc. This PR removes all backward.isDefEq.respectTransparency from the file. Additionally: - Add `theorem Kleisli.comp`, encoding `Kleisli.category.map_comp` in the base category. - Add `theorem Cokleisli.comp`, encoding `category.map_comp` in the base category. - Make `C` implicit in `Monad.unit_naturality` and `Monad.mu_naturality`. - Make `C` implicit in `Comonad.counit_naturality` and `Comonad.delta_naturality`. --- - ~~I would greatly appreciate advice ([e.g. via Zulip](https://leanprover.zulipchat.com/#user/1060393)) on tackling the remainder of this file: the defeqs mostly appear in morally `simp`/`calc` proofs that look horrid in `refine` style. I can supply more rfl theorems like `of_mk` and `mk_of` (and hope to do so in subsequent PRs), but don't know how to use them for a deep type rewrite.~~ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor awaiting-author WIP merge-conflict 95/28 Mathlib/CategoryTheory/Monad/Basic.lean,Mathlib/CategoryTheory/Monad/Kleisli.lean,MathlibTest/CategoryTheory/Monad.lean 3 23 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'openendings'] nobody
0-36729
10 hours ago
32-29547
32 days ago
0-4425
1 hour
38664 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): more API for `SSet.op` --- TODO: fix the names of some lemmas so that they match those in #35287. - [x] depends on: #38662 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP merge-conflict 130/0 Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/MulStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/Op.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean 3 7 ['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36605
10 hours ago
31-61178
31 days ago
0-1
1 second
38671 dagurtomas
author:dagurtomas
chore(CategoryTheory): start using `mk_concrete_category` --- - [ ] depends on: #38587 - [x] depends on: #39005 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated blocked-by-other-PR merge-conflict 1125/1796 Mathlib.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/CommBialgCat.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Category/Semigrp/Basic.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Subscheme.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/Analysis/Normed/Group/SemiNormedGrp.lean,Mathlib/Order/Category/BddDistLat.lean,Mathlib/Order/Category/BddLat.lean,Mathlib/Order/Category/BddOrd.lean,Mathlib/Order/Category/BoolAlg.lean,Mathlib/Order/Category/DistLat.lean,Mathlib/Order/Category/FinBddDistLat.lean,Mathlib/Order/Category/Frm.lean,Mathlib/Order/Category/HeytAlg.lean,Mathlib/Order/Category/Lat.lean,Mathlib/Order/Category/LinOrd.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Category/PartOrdEmb.lean,Mathlib/Order/Category/Preord.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Rep/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/MkConcreteCategory.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/UniformSpace.lean,MathlibTest/CategoryTheory/MkConcreteCategory.lean 37 10 ['dagurtomas', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36603
10 hours ago
31-47554
31 days ago
0-1
1 second
38725 yuanyi-350
author:yuanyi-350
chore(AlgebraicGeometry/ProjectiveSpectrum): remove `erw`s - folds the `erw` steps in `isSeparated` into the surrounding `simp only` rewrites, including `affineOpenCover_f` Extracted from #38415 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry awaiting-author merge-conflict 9/12 Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean 1 4 ['dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
0-36601
10 hours ago
16-79041
16 days ago
13-3096
13 days
38965 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet/Homology): extension of scalars If `X` is a simplicial set, `R₁ →+* R₂` is a morphism of commutative rings, and `M₁` is a `R₁`-module, then the chain complex of `R₂`-modules of `X` with coefficients in `R₂ ⊗[R₁] M₁` identifies to the extensions of scalars of the chain complex of `R₁`-modules of `X` with coefficients in `M₁`. In this file, we obtain a formulation of this result where the extension of scalars functor `ModuleCat R₁ ⥤ ModuleCat R₂` is replaced by an arbitrary functor `F : C ⥤ D` which commutes with coproducts. (As `SimplicialObject` is now an `abbrev` for a category of functors, `SimplicialObject.whiskering` is also made an abbrev here.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology awaiting-author merge-conflict 137/35 Mathlib.lean,Mathlib/Algebra/Homology/HomologicalComplex.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Homology/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Homology/MapHomologicalComplex.lean,Mathlib/AlgebraicTopology/SingularHomology/Basic.lean,Mathlib/CategoryTheory/Limits/Preserves/SigmaConst.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean 9 8 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-36477
10 hours ago
2-53500
2 days ago
9-34565
9 days
38966 smmercuri
author:smmercuri
chore(Algebra): `coe_ringHom` -> `coe_toRingHom` --- - [ ] depends on: #38950 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 197/120 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Centralizer.lean,Mathlib/Algebra/Azumaya/Basic.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/LinearDisjoint.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Charpoly/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean,Mathlib/NumberTheory/Cyclotomic/Gal.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Algebraic/MvPolynomial.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/DividedPowerAlgebra/Init.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/GradedAlgebra/AlgHom.lean,Mathlib/RingTheory/GradedAlgebra/RingHom.lean,Mathlib/RingTheory/GradedAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/LocalRing/ResidueField/Polynomial.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Factorization.lean,Mathlib/RingTheory/RingHom/StandardSmooth.lean,Mathlib/RingTheory/RingInvo.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/TensorProduct/Maps.lean,Mathlib/RingTheory/Trace/Quotient.lean,Mathlib/RingTheory/Unramified/Basic.lean 63 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36476
10 hours ago
24-68112
24 days ago
0-4608
1 hour
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 demotes the mathlib instances to definitions, 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, and the theorems about the mathlib instances are now called `String.lt_iff_toList_lt'` and `String.le_iff_toList_le'`. Deprecating the material related to the mathlib instances would be a logical next step, but it might make sense to wait with this until core ships more API for `LE String` and `LT String` (right now it ships none). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data awaiting-author merge-conflict 31/14 Mathlib/Data/String/Basic.lean 1 9 ['TwoFX', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
0-36474
10 hours ago
15-73342
15 days ago
7-32948
7 days
39029 felixpernegger
author:felixpernegger
chore: remove redundant `unfold`s This PR removed roughly (estimated by files I went through) half of the `unfold`'s in mathlib which can be removed such that the proof still works (found by searching `unfold ` in VSCode in manually going through ~600/1100 occurences). I originally planned to replace all, but I couldn't find any relevant discussion if this is actually a good practice, so to save potentially wasted time, I make this PR now. (similarly with the `clear` tactic) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 63/108 Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q5.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Coskeletal.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/Strict.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Orthogonality.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/CategoryTheory/Functor/FullyFaithful.lean,Mathlib/CategoryTheory/Monoidal/Closed/Functor.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Graph/Delete.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Computability/TuringMachine/PostTuringMachine.lean,Mathlib/Computability/TuringMachine/StackTuringMachine.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/List/Intervals.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/Nat/ChineseRemainder.lean,Mathlib/Data/Nat/Digits/Div.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Prime.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/Data/Stream/Init.lean,Mathlib/Data/WSeq/Basic.lean,Mathlib/Data/ZMod/Basic.lean 44 5 ['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
0-36473
10 hours ago
0-36474
10 hours ago
22-8291
22 days
39071 scholzhannah
author:scholzhannah
feat(Topology): add `PartialHomeomorph` as generalization of `OpenPartialHomeomorph` As discussed on Zulip ([#mathlib4 > Generalizing `PartialHomeomorph`?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Generalizing.20.60PartialHomeomorph.60.3F/with/536896273)), I renamed `PartialHomeomorph` to `OpenPartialHomeomorph` in #29113. In this PR I now add a new `PartialHomeomorph` which is a `PartialEquiv` that is continuous on both source and target. An `OpenPartialHomeomorph` is then a `PartialHomeomorph` that additionally has open source and target. `PartialHomeomorph` should find uses at least for and manifolds (`ModelWithCorners`). Afterwards, I want to add a `ClosedPartialHomeomorph` to use for CWComplexes. --- I don't have a lot of experience doing these kind of modifications of a large piece of code. Additionally, I am not familiar with the main uses of `OpenPartialHomeomorph` in Mathlib. So while I did this to the best of my abilities, you should read this carefully because there might be things I did wrong or in non-ideal ways. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-topology merge-conflict 1569/139 Mathlib.lean,Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/OpenPartialHomeomorph/Basic.lean,Mathlib/Topology/OpenPartialHomeomorph/Composition.lean,Mathlib/Topology/OpenPartialHomeomorph/Constructions.lean,Mathlib/Topology/OpenPartialHomeomorph/Defs.lean,Mathlib/Topology/OpenPartialHomeomorph/IsImage.lean,Mathlib/Topology/PartialHomeomorph/Basic.lean,Mathlib/Topology/PartialHomeomorph/Composition.lean,Mathlib/Topology/PartialHomeomorph/Constructions.lean,Mathlib/Topology/PartialHomeomorph/Defs.lean,Mathlib/Topology/PartialHomeomorph/IsImage.lean 19 3 ['github-actions', 'grunweg', 'mathlib-merge-conflicts'] grunweg
assignee:grunweg
0-36472
10 hours ago
unknown
0-0
0 seconds
39084 scholzhannah
author:scholzhannah
feat: generalize `OpenPartialHomeomorph.Defs` file to `PartialHomeomorph` As discussed on Zulip ([#mathlib4 > Generalizing `PartialHomeomorph`?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Generalizing.20.60PartialHomeomorph.60.3F/with/536896273)), I renamed `PartialHomeomorph` to `OpenPartialHomeomorph` in #29113. In this PR I now add a new `PartialHomeomorph` which is a `PartialEquiv` that is continuous on both source and target. An `OpenPartialHomeomorph` is then a `PartialHomeomorph` that additionally has open source and target. In subsequent PRs I will generalize the other files. See this draft PR (#39071) for what I think the end result might be. `PartialHomeomorph` should find uses at least for manifolds (`ModelWithCorners`). Afterwards, I want to add a `ClosedPartialHomeomorph` to use for CWComplexes. --- I don't have a lot of experience doing these kind of modifications of a large piece of code. Additionally, I am not familiar with the main uses of `OpenPartialHomeomorph` in Mathlib. So while I did this to the best of my abilities, you should read this carefully because there might be things I did wrong or in non-ideal ways. - [x] depends on: #39565 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology merge-conflict 295/53 Mathlib.lean,Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/OpenPartialHomeomorph/Basic.lean,Mathlib/Topology/OpenPartialHomeomorph/Composition.lean,Mathlib/Topology/OpenPartialHomeomorph/Constructions.lean,Mathlib/Topology/OpenPartialHomeomorph/Defs.lean,Mathlib/Topology/OpenPartialHomeomorph/IsImage.lean,Mathlib/Topology/PartialHomeomorph/Defs.lean 12 25 ['github-actions', 'grunweg', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'scholzhannah'] grunweg and j-loreaux
assignee:j-loreaux assignee:grunweg
0-36471
10 hours ago
1-79919
1 day ago
8-24385
8 days
39117 joelriou
author:joelriou
feat(CategoryTheory): the right derived functor commutes with the shift A few lemmas are obtained about precomposing and postcomposing left/right Kan extensions or right/left derived functors with equivalences of categories. By applying these results to the equivalences given by shifts, we construct a family of isomorphisms which shows that the right derived functor commutes with shifts, and by proving certain compatibilities, we obtain a `Functor.CommShift` instance of the right derived functor of a functor which commutes with shifts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory large-import awaiting-author merge-conflict 413/9 Mathlib.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerived.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerived.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedCommShift.lean,Mathlib/CategoryTheory/Functor/KanExtension/AdjunctionPreserves.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/Localization.lean 8 11 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-36469
10 hours ago
16-65753
16 days ago
3-2306
3 days
39126 joelriou
author:joelriou
feat(CategoryTheory/Functor/Derived): derived functors are triangulated --- - [ ] depends on: #39117 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory blocked-by-other-PR merge-conflict 423/7 Mathlib.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerived.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerivedTriangulated.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerived.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedCommShift.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedTriangulated.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/Localization.lean 9 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36468
10 hours ago
20-55347
20 days ago
0-1
1 second
39154 joelriou
author:joelriou
feat(CategoryTheory): the left derived functor commutes with the shift This dualized the result in #39117. --- - [ ] depends on: #39117 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory blocked-by-other-PR merge-conflict 448/7 Mathlib.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerived.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerivedCommShift.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerived.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedCommShift.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/Localization.lean 8 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36467
10 hours ago
19-53926
19 days ago
0-1
1 second
39164 allenhaozhu
author:allenhaozhu
feat(Probability/Distance): add total variation distance `tvDist` Add `MeasureTheory.tvDist : Measure α → Measure α → ℝ≥0∞`, the total variation distance between two measures, defined via the truncated subtraction `μ - ν` already in `Mathlib.MeasureTheory.Measure.Sub`. Add four basic lemmas (`tvDist_self`, `tvDist_comm`, `tvDist_nonneg`, `tvDist_le_one`) and a bridge lemma `tvDist_eq_signedMeasure_totalVariation` connecting `tvDist` to the existing `MeasureTheory.SignedMeasure.totalVariation` for finite measures. --- ## AI-assistance disclosure Per the Mathlib [AI-use policy](https://leanprover-community.github.io/contribute/index.html#use-of-ai): - **Tool.** Claude Code (Anthropic) with the Claude Sonnet 4.6 model. - **Use.** I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under `lake build` from a clean checkout, and read the final code. - **Vouching.** I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules. t-measure-probability new-contributor LLM-generated awaiting-author merge-conflict 187/0 Mathlib.lean,Mathlib/Probability/Distance/TotalVariation.lean 2 5 ['allenhaozhu', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
0-36466
10 hours ago
19-7205
19 days ago
0-2707
45 minutes
37712 eric-wieser
author:eric-wieser
feat: add a `LawfulXor` typeclass I've put this in mathlib since it can use `Function.Involutive`; it can of course be upstreamed at a later date. Having this generalization encourages downstream code in cslib to be expressed in terms of involutive functions, rather than just `^^^` on bitvectors. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 130/0 Mathlib.lean,Mathlib/Data/LawfulXor.lean 2 6 ['eric-wieser', 'github-actions', 'linesthatinterlace'] TwoFX
assignee:TwoFX
0-36351
10 hours ago
24-37321
24 days ago
31-29875
31 days
38375 WenrongZou
author:WenrongZou
feat(MvPowerSeries): some lemmas `truncTotal` of `subst` This PR adds some lemmas about truncation of total degree of a substitution. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 154/7 Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean 2 3 ['BryceT233', 'github-actions'] riccardobrasca
assignee:riccardobrasca
0-36350
10 hours ago
18-975
18 days ago
37-71451
37 days
38527 archiebrowne
author:archiebrowne
feat(Analysis/Calculus): continuously differentiable actions define the class `ContDiffSMul 𝕜 M X n` which asserts that the map `(c, x) ↦ c • x` is `n` times continuously differentiable on `M × X`. Many of the results are the C^n analogues of those in the module Mathlib.Topology.Algebra.MulAction. t-differential-geometry new-contributor 317/24 Mathlib.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/ContDiffMulAction.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean 6 11 ['archiebrowne', 'github-actions', 'grunweg', 'peabrainiac'] ocfnash
assignee:ocfnash
0-36349
10 hours ago
22-53549
22 days ago
30-39420
30 days
38551 TTony2019
author:TTony2019
feat(Analysis/Convex/Intrinsic): add `affineSpan_prod_eq` and `intrinsicInterior_prod_eq` ### Summary We prove that the affine span of a product set equals the product of the affine spans, and that the intrinsic interior of a product set equals the product of the intrinsic interiors. - `affineSpan_prod_eq`: for `s : Set P₁` and `t : Set P₂`, `affineSpan k (s ×ˢ t) = (affineSpan k s) ×ˢ (affineSpan k t)` as sets. - `intrinsicInterior_prod_eq`: for `s : Set P` and `t : Set Q`, `intrinsicInterior 𝕜 (s ×ˢ t) = intrinsicInterior 𝕜 s ×ˢ intrinsicInterior 𝕜 t`. These two theorems are added to `Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean` and `Mathlib/Analysis/Convex/Intrinsic.lean`. ### Collaboration Co-authored-by: @imathwy new-contributor t-analysis 144/0 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean,Mathlib/LinearAlgebra/Prod.lean 5 24 ['TTony2019', 'github-actions', 'wwylele'] themathqueen
assignee:themathqueen
0-36348
10 hours ago
31-32050
31 days ago
33-62285
33 days
38873 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Constructions/BorelSpace/Real` - rewrites `measurable_const_mul` by splitting off the `c = 0` case and proving the nonzero case via `measurable_of_continuousOn_compl_singleton` - replaces the ad hoc case analysis on `⊥`, `⊤`, and real coefficients with a direct continuity argument for multiplication on `EReal` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 5/19 Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean 1 3 ['LorenzoLuccioli', 'github-actions', 'yuanyi-350'] RemyDegenne
assignee:RemyDegenne
0-36347
10 hours ago
23-40207
23 days ago
26-51278
26 days
38885 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/LpOrder` - rewrites `coeFn_nonneg` to use the `Lp.coeFn_zero` eventual equality directly via `trans_le`, instead of a separate `filter_upwards` proof Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 1/4 Mathlib/MeasureTheory/Function/LpOrder.lean 1 2 ['github-actions', 'yuanyi-350'] sgouezel
assignee:sgouezel
0-36346
10 hours ago
26-77034
26 days ago
26-76996
26 days
38895 emlis42
author:emlis42
chore(Algebra/ContinuedFractions): golf This PR simplifies some proofs in `Algebra/ContinuedFractions` t-algebra new-contributor
label:t-algebra$
39/63 Mathlib/Algebra/ContinuedFractions/Computation/ApproximationCorollaries.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/ContinuedFractions/ContinuantsRecurrence.lean,Mathlib/Algebra/ContinuedFractions/ConvergentsEquiv.lean 7 2 ['github-actions'] joelriou
assignee:joelriou
0-36345
10 hours ago
25-40708
25 days ago
26-28973
26 days
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-36344
10 hours ago
15-72223
15 days ago
23-6784
23 days
39211 urkud
author:urkud
refactor: turn `Set` into a 1-field structure --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 1545/1414 Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/FiniteSupport/Basic.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Group/Action/Equidecomp.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Homology/EulerCharacteristic.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/Notation/Indicator.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Calculus/FDeriv/Congr.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean,Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/CoveringMap.lean,Mathlib/Analysis/Complex/PhragmenLindelof.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/Indicator.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Complex/Analytic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleMap.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/NonIntegrable.lean,Mathlib/Analysis/SpecialFunctions/PolarCoord.lean,Mathlib/Analysis/SumIntegralExpDecay.lean,Mathlib/CategoryTheory/CofilteredSystem.lean,Mathlib/CategoryTheory/MorphismProperty/Concrete.lean,Mathlib/CategoryTheory/Sites/JointlySurjective.lean,Mathlib/Combinatorics/Derangements/Basic.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Partition.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Data/Nat/Count.lean,Mathlib/Data/Nat/Nth.lean,Mathlib/Data/QPF/Multivariate/Basic.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Constructions.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/List.lean,Mathlib/Data/Set/MemPartition.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Dynamics/Ergodic/Action/Basic.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/Dynamics/Ergodic/Conservative.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/Dynamics/Ergodic/RadonNikodym.lean,Mathlib/Dynamics/OmegaLimit.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Subset.lean,Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/FieldTheory/Minpoly/Basic.lean,Mathlib/Geometry/Diffeology/Basic.lean,Mathlib/Geometry/Euclidean/Circumcenter.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean,Mathlib/Geometry/Manifold/Complex.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 332 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36342
10 hours ago
unknown
0-0
0 seconds
39655 joelriou
author:joelriou
feat(CategoryTheory): the κ-accessible category of κ-directed posets Given a regular cardinal `κ : Cardinal.{u}`, we show that the category `CardinalFilteredPoset κ` of `κ`-directed partially ordered types (with order embeddings as morphisms) is a `κ`-accessible category. --- - [x] depends on: #39669 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 188/2 Mathlib/CategoryTheory/Presentable/CardinalDirectedPoset.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] robin-carlier
assignee:robin-carlier
0-36342
10 hours ago
0-79208
21 hours ago
1-5711
1 day
39248 grunweg
author:grunweg
dev: lint modules with just one exposed def, to manually inspect --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-meta merge-conflict 50/9 Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/Tactic/Linter/PrivateModule.lean,MathlibTest/PrivateModuleLinter/hasOnlyPrivateNoDefs.lean 3 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36341
10 hours ago
18-1048
18 days ago
0-8
8 seconds
39729 grunweg
author:grunweg
chore(Geometry/Manifold): make some doc-strings follow the style guide such as, by them beginning with the object they are defining as a subject. This will yield much better doc-strings for the differential geometry elaborators in #39677. It also increases conformance with the [documentation style guide](https://github.com/leanprover/lean4/blob/master/doc/style.md). Inspired by the MI retreat in Lisbon. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 30/20 Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean 3 2 ['github-actions', 'grunweg'] PatrickMassot
assignee:PatrickMassot
0-36341
10 hours ago
7-41813
7 days ago
7-41775
7 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 merge-conflict 722/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'] nobody
0-36339
10 hours ago
1-17210
1 day ago
5-20760
5 days
39315 marcelolynch
author:marcelolynch
chore: bulk strip @[expose] from public sections Removed `@[expose]` from `section` headers, flipping each file's default from bodies-exposed to bodies-hidden. This was done with a naive automated process that tried removing the annotation + rebuilding each module, then a global build reverting any failures. A second pass used the compiler hints to reapply @[expose] only to certain definitions within the section. Most high-density `@[expose] section` files were filtered out; smarter automation might still give us some mechanically hideable defs (namely, without any proof changes) inside particular sections that could still be exposed. awaiting-author merge-conflict 279/239 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/Azumaya/Defs.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Category/FGModuleCat/Colimits.lean,Mathlib/Algebra/Category/FGModuleCat/EssentiallySmall.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/Abelian.lean,Mathlib/Algebra/Category/Grp/Images.lean,Mathlib/Algebra/Category/Grp/IsFinite.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Abelian.lean,Mathlib/Algebra/Category/ModuleCat/Algebra.lean,Mathlib/Algebra/Category/ModuleCat/Descent.lean,Mathlib/Algebra/Category/ModuleCat/Free.lean,Mathlib/Algebra/Category/ModuleCat/LeftResolution.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/ModuleCat/Products.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Subobject.lean,Mathlib/Algebra/Category/ModuleCat/Tannaka.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/Ring/EqualizerPushout.lean,Mathlib/Algebra/Category/Ring/Small.lean,Mathlib/Algebra/Category/Ring/Under/Property.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/ContinuedFractions/ConvergentsEquiv.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/Expr.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Sigma.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Finset.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Homology/BifunctorFlip.lean,Mathlib/Algebra/Homology/BifunctorHomotopy.lean,Mathlib/Algebra/Homology/EulerCharacteristic.lean,Mathlib/Algebra/Homology/HomologicalComplexBiprod.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/ModelCategory/Lifting.lean,Mathlib/Algebra/Homology/Monoidal.lean,Mathlib/Algebra/Homology/ShortComplex/ConcreteCategory.lean,Mathlib/Algebra/Homology/SpectralObject/FirstPage.lean,Mathlib/Algebra/Homology/Square.lean,Mathlib/Algebra/Homology/TotalComplexSymmetry.lean,Mathlib/Algebra/Lie/Graded.lean,Mathlib/Algebra/Lie/SerreConstruction.lean,Mathlib/Algebra/Module/Presentation/RestrictScalars.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Algebra/MvPolynomial/Counit.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean,Mathlib/Algebra/Order/Floor/Div.lean,Mathlib/Algebra/Order/Group/Action/End.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Order/GroupWithZero/Range.lean,Mathlib/Algebra/Order/Quantale.lean,Mathlib/Algebra/Polynomial/Basis.lean,Mathlib/Algebra/Polynomial/Module/TensorProduct.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/Polynomial/Sequence.lean,Mathlib/Algebra/Polynomial/SumIteratedDerivative.lean,Mathlib/Algebra/Ring/Pointwise/Finset.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/AlgebraicTopology/ModelCategory/Basic.lean,Mathlib/AlgebraicTopology/ModelCategory/Over.lean,Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Polynomial/Norm.lean,Mathlib/CategoryTheory/Abelian/EpiWithInjectiveKernel.lean,Mathlib/CategoryTheory/Abelian/Preradical/Radical.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/CategoryTheory/Category/Cat/Adjunction.lean,Mathlib/CategoryTheory/Comma/Presheaf/Colimit.lean,Mathlib/CategoryTheory/Distributive/Monoidal.lean,Mathlib/CategoryTheory/Enriched/EnrichedCat.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/FiberedCategory/Cocartesian.lean,Mathlib/CategoryTheory/FiberedCategory/Fibered.lean,Mathlib/CategoryTheory/Filtered/Small.lean,Mathlib/CategoryTheory/Functor/Derived/PointwiseLeftDerived.lean,Mathlib/CategoryTheory/Functor/Functorial.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Limits.lean,Mathlib/CategoryTheory/Generator/HomologicalComplex.lean,Mathlib/CategoryTheory/GradedObject/Braiding.lean,Mathlib/CategoryTheory/Join/Final.lean,Mathlib/CategoryTheory/Limits/FinallySmall.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Shapes/Products.lean,Mathlib/CategoryTheory/Limits/Indization/Category.lean,Mathlib/CategoryTheory/Limits/Indization/FilteredColimits.lean,Mathlib/CategoryTheory/Limits/Indization/LocallySmall.lean,Mathlib/CategoryTheory/Limits/Indization/ParallelPair.lean,Mathlib/CategoryTheory/Limits/Pi.lean,Mathlib/CategoryTheory/Limits/Preserves/BifunctorCokernel.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Preserves/Yoneda.lean 237 16 ['b-mehta', 'downstream-reports-automation', 'github-actions', 'grunweg', 'jcommelin', 'leanprover-radar', 'marcelolynch', 'mathlib-merge-conflicts'] nobody
0-36338
10 hours ago
16-33595
16 days ago
0-22373
6 hours
39770 mathlib-splicebot
author:mathlib-splicebot
feat: atoms of a countably generated measurable space This PR adds a definition for the atoms in a countably generated measurable space, expressed with `natGeneratingSequence`. We also show that the atoms are measurable sets. --- This PR was automatically created from PR #39739 by @RemyDegenne via a [review comment](https://github.com/leanprover-community/mathlib4/pull/39739#discussion_r3294476245) by @RemyDegenne. t-measure-probability 121/0 Mathlib/MeasureTheory/MeasurableSpace/CountablyGenerated.lean 1 4 ['RemyDegenne', 'gaetanserre', 'github-actions'] EtienneC30
assignee:EtienneC30
0-36338
10 hours ago
5-82866
5 days ago
5-82828
5 days
39357 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): the pushout-product of a mono and an anodyne extension is an anodyne extension Co-authored-by: Jack McKoen --- - [x] depends on: #39466 - [x] depends on: #39464 - [ ] depends on: #39298 - [ ] depends on: #39462 - [ ] depends on: #39463 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP blocked-by-other-PR large-import merge-conflict 1142/11 Mathlib.lean,Mathlib/AlgebraicTopology/RelativeCellComplex/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PairingCore.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PushoutProduct.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Rank.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/RankNat.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/UnionProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/CategoryWithFibrations.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nonsingular.lean,Mathlib/AlgebraicTopology/SimplicialSet/PushoutProduct.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/SmallObject/TransfiniteCompositionLifting.lean,docs/references.bib 14 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] dagurtomas
assignee:dagurtomas
0-36337
10 hours ago
16-4871
16 days ago
0-2
2 seconds
39819 mathlib-splicebot
author:mathlib-splicebot
feat: variants of lemmas in CondJensen with a.e. inequalities for the trimmed measure This PR was automatically created from PR #35349 by @RemyDegenne via a [review comment](https://github.com/leanprover-community/mathlib4/pull/35349#discussion_r3298163528) by @RemyDegenne. t-measure-probability 34/0 Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean 1 1 ['github-actions'] EtienneC30
assignee:EtienneC30
0-36337
10 hours ago
4-82334
4 days ago
4-82296
4 days
39388 marcelolynch
author:marcelolynch
chore: remove @[expose] from def-free public sections Strip `@[expose]` from `public section` headers in 100 modules where no declaration needs its body visible downstream. A new sweep in the style of #38480 Found using the linter-in-progress: #39387 Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230 merge-conflict 100/100 Mathlib/Algebra/Category/Ring/Small.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Field/Opposite.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Field/ULift.lean,Mathlib/Algebra/Field/ZMod.lean,Mathlib/Algebra/Group/Action/Option.lean,Mathlib/Algebra/Group/Action/Sigma.lean,Mathlib/Algebra/Group/Action/Sum.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Order/Floor/Div.lean,Mathlib/Algebra/Order/Group/Action/End.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Ring/Commute.lean,Mathlib/AlgebraicTopology/ModelCategory/Over.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/Normed/Operator/Compact/FiniteDimension.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/OfLocalizedEquivalences.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Normal.lean,Mathlib/CategoryTheory/Monoidal/Functor/Types.lean,Mathlib/CategoryTheory/Monoidal/Types/Coyoneda.lean,Mathlib/CategoryTheory/Sites/CoversTop/Over.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Data/ENNReal/Action.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/Finsupp/Pointwise.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/FunLike/Embedding.lean,Mathlib/Data/FunLike/Equiv.lean,Mathlib/Data/Int/Cast/Pi.lean,Mathlib/Data/List/Monad.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/Data/Rat/Cast/OfScientific.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/GroupTheory/GroupAction/Embedding.lean,Mathlib/GroupTheory/IsPerfect.lean,Mathlib/GroupTheory/ResiduallyFinite.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Star.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Semisimple.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Measure/Sub.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Transform.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/Padics/PadicVal/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Interval/Set/OrdConnected.lean,Mathlib/Order/Quotient.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/Flat/IsBaseChange.lean,Mathlib/RingTheory/HopfAlgebra/TensorProduct.lean,Mathlib/RingTheory/Ideal/GoingDown.lean,Mathlib/RingTheory/Ideal/GoingUp.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Localization/Finiteness.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Polynomial.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/Regular/ProjectiveDimension.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/Smooth/Fiber.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeRightExact.lean,Mathlib/RingTheory/Unramified/LocalRing.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/RingTheory/Valuation/IsTrivialOn.lean,Mathlib/SetTheory/Cardinal/Regular.lean,Mathlib/Tactic/Algebra/Lemmas.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/CWComplex/Classical/Subcomplex.lean,Mathlib/Topology/EMetricSpace/Pi.lean,Mathlib/Topology/List.lean,Mathlib/Topology/MetricSpace/Pseudo/Pi.lean 100 7 ['eric-wieser', 'github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts', 'urkud'] nobody
0-36336
10 hours ago
0-36337
10 hours ago
15-23632
15 days
40014 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): basic constructions Introduce basic constructions for multiseries: `const`, `monomial`, `monomialRpow`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 356/9 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basis.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Defs.lean 5 1 ['github-actions'] thorimur
assignee:thorimur
0-36335
10 hours ago
0-76119
21 hours ago
0-76233
21 hours
39408 fgdorais
author:fgdorais
feat(Tactic/Linter/DeprecatedModule): add option `linter.deprecated.module.exclude_root` This PR fixes an incorrect behavior in the deprecated module linter: the linter excluded all modules with filenames ending with `Mathlib.lean` without checking that the file is the Mathlib root module rather than a random module whose name happens to end with `Mathlib` (such are more plausible in downstream projects than in Mathlib itself). The Mathlib root module is autogenerated and imports all modules regardless of deprecation status. So it needs to be excluded from the deprecated module check. An easy way to correct the erroneous behavior would be to remove the hard-coded exclusion from the linter and add `set_option linter.deprecated.module false` at the end of `Mathlib.lean`. However, this PR takes a broader approach, which is to add a `linter.deprecated.module.exclude_root` option. That way downstream projects with a similarly designed root module can also use this feature by setting `linter.deprecated.module.exclude_root` to `true` in their lakefile. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter maintainer-merge awaiting-author merge-conflict 19/3 Mathlib/Tactic/Linter/DeprecatedModule.lean,lakefile.lean 2 13 ['JovanGerb', 'Vierkantor', 'adomani', 'fgdorais', 'github-actions', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
0-36334
10 hours ago
1-85649
1 day ago
13-3029
13 days
40017 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): define `Trimmed` Define `Trimmed` predicate and prove basic lemmas about it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 170/5 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Basis.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Defs.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Trimming.lean 5 1 ['github-actions'] dwrensha
assignee:dwrensha
0-36334
10 hours ago
0-73246
20 hours ago
0-73208
20 hours
39416 AlexBrodbelt
author:AlexBrodbelt
feat(Mathlib/Tactic/Group): Improved the group tactic The `group` tactic is improved to: 1. Once simplification on the exponents is done, apply left and right cancellation. That is, to normalise expressions like `a * b = a * c` to `b * c` 2. Apply a post-processing where expression of the form `( · )^(-1)` are normalised to use the inversion notation `( · )⁻¹`. This allows immediately being able to use lemmas involving inversion which is how most lemmas are stated. There is another PR which adds some relevant tests. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor WIP merge-conflict 57/9 Mathlib/Tactic/Group.lean,MathlibTest/Group.lean 2 4 ['AlexBrodbelt', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-36333
10 hours ago
14-77243
14 days ago
0-51
51 seconds
40026 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(ArithmeticFunction/Defs): A power of a multiplicative arithmetic function is multiplicative --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 9/0 Mathlib/NumberTheory/ArithmeticFunction/Defs.lean 1 2 ['github-actions', 'wwylele'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-36333
10 hours ago
0-62796
17 hours ago
0-62758
17 hours
40031 EtienneC30
author:EtienneC30
chore: fix deprecations for PMF.bernoulli Some statements about `PMF.bernoulli` were not deprecated while `PMF.bernoulli` was deprecated, see https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Deprecation.20policy/near/598588742. The two lemmas about the support of `PMF.bernoulli` are deprecated in favor of [ProbabilityTheory.bernoulliMeasure_apply_of_notMem_of_notMem](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Distributions/Bernoulli.html#ProbabilityTheory.bernoulliMeasure_apply_of_notMem_of_notMem). [PMF.binomial_one_eq_bernoulli](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/ProbabilityMassFunction/Binomial.html#PMF.binomial_one_eq_bernoulli) should wait for #37736 which deprecates `PMF.binomial`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 4/4 Mathlib/Probability/ProbabilityMassFunction/Constructions.lean 1 1 ['github-actions'] RemyDegenne
assignee:RemyDegenne
0-36332
10 hours ago
0-46568
12 hours ago
0-46530
12 hours
39434 Paul-Lez
author:Paul-Lez
feat: add Faa Di Bruno helper results WIP This PR adds a few helper results for the Faa Di Bruno theorem - the motivation for adding those is work I've been doing at the ICERM analysis workshop on defining jet bundles, which requires proving some vanishing results for higher order derivatives. ~~One question for review: currently a few of the results are stated for `(s ∩ u)` - do people think this is useful? Or would it be worth just stating the results for `u` directly?~~ Actually after a bit of thinking I'm not super happy with this approach, so I'm going to remove these. There's also one or two other lemmas I'd like to add before someone takes a look at these! AI usage: I used codex for part of the work on this (stating some of the results, based on some precise prompting I gave), and checked the content carefully and spent some time golfing proofs and so on (all of this before the first commit). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis WIP merge-conflict 79/1 Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36331
10 hours ago
13-55742
13 days ago
0-84707
23 hours
39449 Paul-Lez
author:Paul-Lez
doc: add library note about scoping simp lemmas with weak keys In PR #39262 I noticed that some `simp` lemmas were scoped for a reason that is not immediately obvious, so I figured that adding a library note would be nice in case anyone else runs into this in the future (this pattern is quite common in Mathlib!) In case it's helpful for review, here are links to a few of the PRs that added this scoping initially: - #14233 - #15620 - #15631 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 71/4 Mathlib.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/CharZero.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimpLibraryNote.lean 8 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36205
10 hours ago
0-36206
10 hours ago
13-7752
13 days
39460 Deicyde
author:Deicyde
feat(Algebra/Module/ZLattice): Quotient by `IsZLattice` is group isomorphic to `UnitAddTorus` The main result `quotientAddEquivUnitAddTorus` constructs an isomorphism `(E ⧸ L) ≃+ UnitAddTorus ι` for any `IsZLattice ℝ L`. Currently left as a draft for educational purpose. See the Zulip thread [#mathlib4 > What Is A Torus?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/What.20Is.20A.20Torus.3F/with/595553420) for more discussion. --- - [ ] depends on: #39452 - [ ] depends on: #39453 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict 67/6 Mathlib.lean,Mathlib/Algebra/Module/ZLattice/Torus.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/Topology/Instances/AddCircle/Real.lean 5 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36204
10 hours ago
unknown
0-0
0 seconds
39489 Paul-Lez
author:Paul-Lez
fix: defeq abuse in HasFTaylorSeriesUpToOn.comp Removes a `set_option backward.isDefEq.respectTransparency false`. The fix isn't as nice as I would have hoped (I tried to make it smaller but to no avail). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis merge-conflict 5/2 Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
0-36202
10 hours ago
0-36202
10 hours ago
12-82083
12 days
39582 plp127
author:plp127
chore: unsimp `Set.coe_setOf` See [#mathlib4 > `Set.coe_setOf` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Set.2Ecoe_setOf.60/near/579579409) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data merge-conflict 52/55 Archive/Imo/Imo1987Q1.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Sites/Coherent/RegularSheaves.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/LinearAlgebra/RootSystem/OfBilinear.lean,Mathlib/NumberTheory/KummerDedekind.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean 15 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-36198
10 hours ago
0-36199
10 hours ago
6-13316
6 days
40036 SnirBroshi
author:SnirBroshi
feat(GroupTheory/PGroup): define the `p`-core subgroup Define the `p`-core subgroup of a group `G` as the largest normal `p`-subgroup of `G`. We prove various properties, such as it being a characteristic subgroup, and that the `p`-core is the intersection of all Sylow `p`-subgroups. --- - [ ] depends on: #40011 - [ ] depends on: #40012 (two theorems from these dependencies are included as sorried theorems, to make the diff easier to review, but they appear in full in the dependent PRs) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory blocked-by-other-PR 117/0 Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Sylow.lean 2 3 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] nobody
0-36058
10 hours ago
0-37243
10 hours ago
0-13
13 seconds
38739 CoolRmal
author:CoolRmal
feat: Analytic Hahn Banach theorem for locally convex spaces Closes #38419 This PR proves Hahn-Banach theorem for locally convex spaces, which allow us to generalize both [ContinuousLinearMap.exist_extension_of_finiteDimensional_range](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Module/HahnBanach.html#ContinuousLinearMap.exist_extension_of_finiteDimensional_range) and [Submodule.ClosedComplemented.of_finiteDimensional](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Module/HahnBanach.html#Submodule.ClosedComplemented.of_finiteDimensional) (I also moved these two lemmas to the new file I created). Some helper lemmas about continuity of seminorms/linear functions are added. Created with the help of Codex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis delegated 187/57 Mathlib.lean,Mathlib/Analysis/LocallyConvex/HahnBanach.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Seminorm.lean 5 20 ['ADedecker', 'CoolRmal', 'github-actions', 'j-loreaux', 'mathlib-bors'] ADedecker
assignee:ADedecker
0-33433
9 hours ago
19-55447
19 days ago
10-63110
10 days
39954 jihuang2024
author:jihuang2024
feat(Analysis/Polynomial): define Hurwitz stability and prove small-degree characterizations Proofs were developed with assistance from Claude Code. I have reviewed and understand all the code and can justify the design decisions. This PR introduces the predicate Polynomial.IsHurwitzStable for real polynomials and proves the Routh–Hurwitz stability criterion for degrees 1 and 2. A polynomial p : ℝ[X] is Hurwitz stable if every root of its complexification has strictly negative real part. This notion arises in control theory and the study of linear ODEs, where it characterises asymptotic stability of a system. New definitions Polynomial.IsHurwitzStable: ∀ z : ℂ, (p.map (algebraMap ℝ ℂ)).IsRoot z → z.re < 0 New theorems Polynomial.not_isHurwitzStable_zero: the zero polynomial is not Hurwitz stable Polynomial.IsHurwitzStable.ne_zero: Hurwitz stable polynomials are nonzero Polynomial.isHurwitzStable_X_add_C: X + C a is Hurwitz stable ↔ 0 < a Polynomial.isHurwitzStable_quadratic: X ^ 2 + C b * X + C c is Hurwitz stable ↔ 0 < b ∧ 0 < c Proof strategy for the quadratic The quadratic case splits on whether a root z is real (z.im = 0) or complex (z.im ≠ 0, which forces 2 * z.re + b = 0). Existence of a root uses Complex.exists_root (Fundamental Theorem of Algebra). The necessary condition in the real-root case uses the Vieta complementary root -b - z.re. Future work The general Routh–Hurwitz theorem (for degree n, stated in terms of the Hurwitz matrix and its leading principal minors) requires infrastructure not yet in Mathlib — in particular a theory of the Cauchy index or the Bezoutian of two polynomials. This PR lays the definitional foundation for that work. This corresponds to [1000.yaml](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L2697) Q4455015 - Routh–Hurwitz theorem t-analysis new-contributor LLM-generated 131/0 Mathlib.lean,Mathlib/Analysis/Polynomial/RouthHurwitz.lean 2 10 ['SnirBroshi', 'github-actions', 'jihuang2024', 'wwylele'] nobody
0-33374
9 hours ago
0-81085
22 hours ago
1-86074
1 day
39739 RemyDegenne
author:RemyDegenne
chore: generalize `IsZeroOneMeasure.exists_eq_dirac` Replace the `StandardBorelSpace` assumption by `CountablySeparated`, since the existing proof used only that. Add another version of the result for `CountablyGenerated`. --- - [ ] depends on: #39770 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability blocked-by-other-PR merge-conflict 185/50 Mathlib/MeasureTheory/MeasurableSpace/CountablyGenerated.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/Probability/Kernel/Deterministic.lean 3 11 ['RemyDegenne', 'gaetanserre', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot'] nobody
0-32675
9 hours ago
7-13536
7 days ago
0-6941
1 hour
39773 kbuzzard
author:kbuzzard
perf: add some fast_instance% This PR adds some `fast_instance%`s, which tidies up some terms. See [#mathlib4 > fast_instance% plans](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/fast_instance.25.20plans/with/597402311) for explicit descriptions of what every change in this PR actually does to the terms in question. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
6/4 Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean 2 4 ['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
0-32674
9 hours ago
0-32675
9 hours ago
5-46079
5 days
39813 kim-em
author:kim-em
feat(GroupTheory/Fitting): prove Fitting's theorem This PR adds Fitting's theorem: the join of two normal nilpotent subgroups of a group is nilpotent. The main result is `Subgroup.isNilpotent_sup_of_normal`, in the new file `Mathlib/GroupTheory/Fitting.lean`. The proof uses the new subgroup-valued `Subgroup.lowerCentralSeries` (introduced in #39844): the iterated commutator of a subgroup `S` with itself, computed in the ambient group `G`, is `S.lowerCentralSeries n`. The argument bounds `(H ⊔ K).lowerCentralSeries n` by a diagonal `⨆ i ≤ n, H.lowerCentralSeries i ⊓ K.lowerCentralSeries (n - i)`, which vanishes once `n` exceeds `c + d` (the sum of nilpotency classes). The bound produced is `max c d + (c + d)` rather than the sharp `c + d` from the three-subgroups lemma; Fitting's theorem as commonly stated only asserts existence of nilpotency. Diff against #39844: - [ ] depends on: #39844 🤖 Prepared with Aristotle, Claude Code, and Codex t-group-theory awaiting-author merge-conflict 419/157 Mathlib.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/Fitting.lean,Mathlib/GroupTheory/Nilpotent.lean,docs/references.bib 5 11 ['SnirBroshi', 'github-actions', 'kim-em', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] tb65536
assignee:tb65536
0-32673
9 hours ago
0-50611
14 hours ago
1-15901
1 day
39835 chrisflav
author:chrisflav
feat(CategoryTheory): universal property of `Ind C` This contribution was created as part of the "Formalization of Anabelian Geometry" conference in Tokyo, July 2025. Co-authored by: Dagur Asgeirsson --- - [ ] depends on: #39845 - [ ] depends on: #39882 - [ ] depends on: #39883 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory large-import blocked-by-other-PR merge-conflict 494/39 Mathlib.lean,Mathlib/CategoryTheory/Comma/StructuredArrow/Basic.lean,Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/Functor/KanExtension/Adjunction.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean,Mathlib/CategoryTheory/Limits/Indization/Category.lean,Mathlib/CategoryTheory/Limits/Indization/UniversalProperty.lean,Mathlib/CategoryTheory/Limits/Preserves/Filtered.lean 9 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-32671
9 hours ago
4-70937
4 days ago
0-1
1 second
39857 plp127
author:plp127
chore(Order/CompleteLattice/Basic): `Sort*` polymorphism Generalize some theorems from `Type*` to `Sort*`. Also make type-variables explicitly either `Type*` or `Sort*`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict 15/31 Mathlib/Order/CompleteLattice/Basic.lean 1 4 ['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-32546
9 hours ago
0-32546
9 hours ago
4-715
4 days
39928 Vierkantor
author:Vierkantor
feat(Tactic): `convert` discharges side goals reducibly This PR implements the main behaviour change from #39039: `convert` now discharges side goals at reducible transparency. `convert!`, which we previously switched all calls inside Mathlib to, keeps the old behaviour of working at default transparency. (Everything discussed in this PR holds analogously for the other tactics in the family: `convert_to` and `ac_change`). The main trick in this PR is in allowing `convert!` to have different configuration options than `convert`, but still allow the user to override those options too. So `convert! (postTransparency := .instances)` will have transparency set to `.instances`, not `.default`. We achieve this by having two new structures that copy `Congr!.Config` but set different default values, and choosing between the corresponding elaborators for those configs based on the presence of an `!`. I got this trick from Jovan's #38071 which also changes settings in `Convert.Config`. This PR should be mostly compatible with #38071 and I'd like to get both this one and #38071 in before wrapping up #39039 by replacing unnecessary calls to `convert!` with `convert`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 165/47 Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyOpen.lean,Mathlib/AlgebraicGeometry/Normalization.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/PointsPi.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/PUnit.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nerve.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/CategoryTheory/Galois/Decomposition.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/FieldTheory/IntermediateField/ExtendRight.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/Filter/AtTopBot/Finite.lean,Mathlib/RepresentationTheory/Action.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Polynomial/GaussNorm.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Tactic/CongrExclamation.lean,Mathlib/Tactic/Convert.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,MathlibTest/Tactic/Convert/Basic.lean,MathlibTest/Tactic/Convert/Bugfix7945.lean,MathlibTest/ValuedCSP.lean 33 2 ['github-actions', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
0-32544
9 hours ago
0-32544
9 hours ago
1-39934
1 day
39944 tb65536
author:tb65536
chore(Topology/Algebra/Category/ProfiniteGrp): to_additivize --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory WIP t-algebra awaiting-CI merge-conflict
label:t-algebra$
69/15 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Limits.lean,Mathlib/Topology/Algebra/ClopenNhdofOne.lean,Mathlib/Topology/Algebra/Group/ClosedSubgroup.lean 6 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-32543
9 hours ago
2-59568
2 days ago
0-2
2 seconds
39966 chrisflav
author:chrisflav
chore(Algebra/Exact): relate surjectivity / injectivity and exactness This came up while reviewing #39520, but ended up unnecessary. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
8/0 Mathlib/Algebra/Exact.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-32541
9 hours ago
0-32542
9 hours ago
1-54778
1 day
39967 hargoniX
author:hargoniX
perf(Linter/DeprecatedModule): avoid running check multiple times in parallel Use a mutex to ensure we only run the linter check once: this removes instruction jitter and might provide a small speed-up. t-linter awaiting-author merge-conflict 14/13 Mathlib/Tactic/Linter/DeprecatedModule.lean 1 6 ['github-actions', 'hargoniX', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] joneugster
assignee:joneugster
0-32540
9 hours ago
0-68449
19 hours ago
1-17691
1 day
39983 grunweg
author:grunweg
chore: remove `Dynamics` dependency from `Data` A handful of files remain, which might need more thought. (For instance, some remaining `Data/Matrix` files would need to be *merged* with their `LinearAlgebra/Matrix` file, which is more effort than a mere rename.) --- - [ ] depends on: #39984 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP tech debt file-removed blocked-by-other-PR merge-conflict 91/84 Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2024Q1.lean,Archive/Sensitivity.lean,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/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Algebra/Order/Archimedean/Real/Hom.lean,Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Algebra/Order/Star/Real.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/Ball/Homeomorph.lean,Mathlib/Analysis/NormedSpace/Alternating/Basic.lean,Mathlib/Analysis/NormedSpace/Alternating/Curry.lean,Mathlib/Analysis/NormedSpace/Alternating/Uncurry/Fin.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean,Mathlib/Analysis/NormedSpace/HahnBanach/SeparatingDual.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/Normalize.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Rat/NatSqrt/Real.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/Real/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/Combinatorics/Schnirelmann.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rat/NatSqrt/Defs.lean,Mathlib/Data/Real/CompleteField.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Real/Pointwise.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/ClassNumber/AdmissibleAbs.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/Real/Irrational.lean,Mathlib/NumberTheory/Zsqrtd/GaussianInt.lean,Mathlib/NumberTheory/Zsqrtd/ToReal.lean,Mathlib/RingTheory/PowerSeries/GaussNorm.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/SetTheory/Cardinal/Embedding.lean,Mathlib/SetTheory/Cardinal/NatCard.lean,Mathlib/SetTheory/Cardinal/Rat.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/NormNum/RealSqrt.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean,Mathlib/Topology/ContinuousMap/ContinuousSqrt.lean,MathlibTest/Delab/SupInf.lean,MathlibTest/positivity.lean,MathlibTest/sqrt.lean,scripts/noshake.json 79 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-32539
9 hours ago
1-64538
1 day ago
0-1
1 second
40004 jcommelin
author:jcommelin
doc: add wikidata attributes This PR adds a batch of wikidata attributes to concepts from overview.yaml. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 45/21 Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Ring/Subring/Defs.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Category/Basic.lean,Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/NatTrans.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Real/Basic.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/Perm/Subgroup.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/Subgroup/Simple.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/RingTheory/Ideal/Prime.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/LocalRing/Defs.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean 38 53 ['SnirBroshi', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] nobody
0-32417
9 hours ago
0-32418
8 hours ago
0-67351
18 hours
29701 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/RingTheory): polynomial over regular ring In this PR, we proved that polynomial over regular ring is regular. --- - [x] depends on: #37627 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 126/0 Mathlib.lean,Mathlib/RingTheory/RegularLocalRing/Polynomial.lean 2 11 ['Thmoas-Guan', 'github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joneugster
assignee:joneugster
0-28225
7 hours ago
0-56890
15 hours ago
31-44445
31 days
29703 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra/RingTheory): Hilbert's Syzygy theorem (projective version) In this PR, we proved for field `k`, `MvPolynomial (Fin n) k` has global dimension `n`. --- - [ ] depends on: #29701 - [ ] depends on: #29699 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-ring-theory 3189/26 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/RingTheory/CohenMacaulay/Basic.lean,Mathlib/RingTheory/CohenMacaulay/Maximal.lean,Mathlib/RingTheory/Depth/AuslanderBuchsbaum.lean,Mathlib/RingTheory/Depth/Basic.lean,Mathlib/RingTheory/Depth/Ischebeck.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/GlobalDimension.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Regular/Free.lean,Mathlib/RingTheory/Regular/LinearMap.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/GlobalDimension.lean,Mathlib/RingTheory/RegularLocalRing/Polynomial.lean,Mathlib/RingTheory/RegularLocalRing/Syzygy.lean,docs/references.bib 19 25 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
0-28194
7 hours ago
256-9504
256 days ago
0-2475
41 minutes
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-24090
6 hours ago
1-55308
1 day ago
2-19184
2 days
38227 vihdzp
author:vihdzp
chore(Algebra/Order/Monoid/Unbundled/Basic): golfing + formatting We make use of `variable`, fix some weird spacing, and golf many proofs. The only breaking change is that `mul_lt_iff_lt_one_left'`/`add_lt_iff_neg_left` now takes an explicit argument, matching the theorems surrounding it. --- Not too fond of the `calc` tactic. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
233/501 Mathlib/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean 2 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-23961
6 hours ago
0-23999
6 hours ago
13-38661
13 days
39637 mcdoll
author:mcdoll
feat(Topology/Algebra): use `Is*Apply` for `ContinuousLinearMap` This is the first in many PRs that use the new `Is*Apply` classes instead of structure specific `foo_apply` lemmas. The main bulk of the PR is in Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean, everything else is just fixing errors. For each `foo` in `zero`, `one`, `add`, `sub`, `neg`, smul` we do the following: - add an instance `IsFooApply` - rename `coe_foo` to `toLinearMap_foo` - depreprecate `coe_foo`, `coe_foo'`, and `foo_apply` We are rather conservative when it comes to the instances, in future PRs this will be used more. --- Note to maintainers: please don't put multiple PRs regarding `Is*Apply` on the queue, they will most likely create merge conflicts. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 279/282 Archive/Sensitivity.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/AbsolutelyMonotone.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/Darboux.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/CompMul.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Norm.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Harmonic/Analytic.lean,Mathlib/Analysis/Convex/Birkhoff.lean,Mathlib/Analysis/Convex/DoublyStochasticMatrix.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/ConformalLinearMap.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/LinearMap.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Rayleigh.lean,Mathlib/Analysis/InnerProductSpace/Reproducing.lean,Mathlib/Analysis/InnerProductSpace/StarOrder.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Group/SeparationQuotient.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Operator/Bilinear.lean,Mathlib/Analysis/Normed/Operator/Compact/Basic.lean,Mathlib/Analysis/Normed/Operator/ContinuousAlgEquiv.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/LinearAlgebra/Eigenspace/ContinuousLinearMap.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/JacobianOneDim.lean,Mathlib/MeasureTheory/Group/Prod.lean,Mathlib/MeasureTheory/Integral/Bochner/L1.lean,Mathlib/MeasureTheory/Integral/FinMeasAdditive.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/DistribChar.lean,Mathlib/MeasureTheory/Measure/Haar/MulEquivHaarChar.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Hahn.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Jordan.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/JacobiTheta/TwoVariable.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/Probability/Distributions/Gaussian/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Fernique.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 80 8 ['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'mcdoll'] nobody
0-22868
6 hours ago
0-22908
6 hours ago
5-70585
5 days
38864 xroblot
author:xroblot
feat(IsGaloisGroup): add `restrictHom` --- - [x] depends on: #38902 - [x] depends on: #38464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP 198/18 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-19626
5 hours ago
27-9303
27 days ago
0-12
12 seconds
37832 YaelDillies
author:YaelDillies
chore(Algebra/Order/GroupWithZero): flatten `Unbundled` folder The algebraic order classes are unbundled now. --- More thought is needed to do the same for `Algebra.Order.Monoid` since filenames conflict. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-algebra t-order
label:t-algebra$
20/20 Mathlib.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/List.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Pointwise.lean,Mathlib/Algebra/Order/GroupWithZero/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Bounds.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/GroupWithZero/OrderIso.lean,Mathlib/Algebra/Order/GroupWithZero/Submonoid.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean 19 4 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-18156
5 hours ago
0-18195
5 hours ago
48-54789
48 days
39753 mathlib-splicebot
author:mathlib-splicebot
feat: the sigma-algebra generated by the constant indicator of a set is smaller than the one generated by the set This PR was automatically created from PR #37259 by @EtienneC30 via a [review comment](https://github.com/leanprover-community/mathlib4/pull/37259#discussion_r3292960152) by @EtienneC30. t-measure-probability 6/0 Mathlib/MeasureTheory/MeasurableSpace/MeasurablyGenerated.lean 1 2 ['EtienneC30', 'github-actions'] nobody
0-17546
4 hours ago
6-73862
6 days ago
6-74275
6 days
37932 idontgetoutmuch
author:idontgetoutmuch
feat: Exponential map of Lie group is smooth We construct the exponential map `expLie : g → G` for a Lie group `G` and prove that it is smooth. The main reference is: * Eckhard Meinrenken, *Lie Groups and Lie Algebras*, Lecture Notes, University of Toronto. Available at https://www.math.toronto.edu/mein/teaching/LectureNotes/lie.pdf --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-differential-geometry awaiting-author 392/0 Mathlib.lean,Mathlib/Geometry/Manifold/Algebra/SmoothLieExp.lean 2 32 ['github-actions', 'grunweg', 'idontgetoutmuch', 'mathlib-bors', 'wwylele'] nobody
0-17186
4 hours ago
42-10272
42 days ago
0-973
16 minutes
30121 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): principal fiber bundle core A structure capturing what it means to be a principal fibre bundle. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-differential-geometry new-contributor 227/0 Mathlib.lean,Mathlib/Geometry/Manifold/PrincipalFiberBundle/PrincipalGBundle.lean 2 9 ['github-actions', 'grunweg', 'idontgetoutmuch', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] hrmacbeth
assignee:hrmacbeth
0-17160
4 hours ago
214-71684
214 days ago
25-16508
25 days
39969 YaelDillies
author:YaelDillies
feat(Analysis): pre/postcomposition by an isometry preserves the operator norm From MeanFourier --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 62/19 Mathlib/Analysis/Normed/Operator/NormedSpace.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean,Mathlib/Probability/Distributions/Gaussian/Multivariate.lean 3 1 ['github-actions'] nobody
0-16637
4 hours ago
0-16702
4 hours ago
0-17412
4 hours
36346 kckennylau
author:kckennylau
chore: add simp lemma to unfold Algebra.algHom ```lean @[simp] lemma Algebra.coe_algHom : ⇑(Algebra.algHom R A B) = algebraMap A B := rfl ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
6/2 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/RingTheory/Etale/StandardEtale.lean 2 7 ['acmepjz', 'artie2000', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
0-16269
4 hours ago
57-6169
57 days ago
26-21993
26 days
37940 BryceT233
author:BryceT233
feat(Algebra/Category): the category of local extensions over a fixed field This is an attempt to design the definitions of base category [[Stacks, 06GC]](https://stacks.math.columbia.edu/tag/06GC) and complete base category in deformation theory. The approach we take is to first introduce a larger category of local extensions with a fixed field, then define base category and complete base category to be full subcategories of this larger category via `ObjectProperty`. To be specific: * In `Defs.lean`, we define `LocExtCat` and `LocExtCat.Hom` to be the type of objects and morphisms in the category. * In `Basic.lean`, we add the basic construction `ofQuot` and `toOfQuot`, which is the quotient of an object in `LocExtCat` by a proper Ideal. Then we use them to define `infinitesimal` and `specialFiber` for an object in `LocExtCat`. * In `Cotangent.lean`, we prove the exactness of the conormal sequence for the special fiber. * In `BaseCat.lean`, we define `BaseCat` to be the full subcategory of `LocExtCat` consisting of objects whose underlying rings are Artinian, and introduce the type class of a small extension for morphisms in `BaseCat`. We show that any surjective morphism in `BaseCat` can be factored into a finite composition of small extensions [[Stacks, 06GE]](https://stacks.math.columbia.edu/tag/06GE) This PR is intended to showcase the overall design and architecture, I will split this into smaller PRs once the community reaches a consensus on the design choices. --- - [x] depends on: #36657 - [ ] depends on: #37008 - [ ] depends on: #39223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-algebra WIP
label:t-algebra$
1595/0 Mathlib.lean,Mathlib/Algebra/Category/LocExtCat/BaseCat.lean,Mathlib/Algebra/Category/LocExtCat/Basic.lean,Mathlib/Algebra/Category/LocExtCat/Cotangent.lean,Mathlib/Algebra/Category/LocExtCat/Defs.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Extension/Cotangent/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean,Mathlib/RingTheory/LocalRing/Pullback.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean 11 32 ['BryceT233', 'Deicyde', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues'] nobody
0-15428
4 hours ago
43-541
43 days ago
2-38364
2 days
37381 martinwintermath
author:martinwintermath
chore(LinearAlgebra/SesquilinearForm): deprecate `IsOrtho` and associated lemmas Next steps in cleaning up bilinearity and orthogonality: - deprecate `IsOrtho` and accompanying trivial lemmas (this also allows to shorten the proofs in `orthogonalBilin`). - deprecate `ortho_smul_right` and `ortho_smul_left` since now provable from simp. - remove uses of deprecated definitions. - replace `IsOrtho` in undergrad.yaml by `iIsOrtho`. See discussion at [#mathlib4 > Reorganizing bilinearity and orthogonality?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Reorganizing.20bilinearity.20and.20orthogonality.3F/with/582426197) Due to too agressive simplification I had to remove simp from - `QuadraticMap.associated_apply` - `QuadraticMap.isOrtho_polarBilin` --- - [x] depends on: #37389 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
112/94 Mathlib/Algebra/Lie/InvariantForm.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Lie/Weights/Killing.lean,Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/IsometryEquiv.lean,Mathlib/LinearAlgebra/QuadraticForm/Radical.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct/Isometries.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean,docs/undergrad.yaml 12 12 ['github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll', 'vihdzp'] nobody
0-14487
4 hours ago
0-14523
4 hours ago
10-81421
10 days
38340 xroblot
author:xroblot
refactor(Data/ZMod): move `coe_int_isUnit_iff_isCoprime` to `ZMod.Units` Move `ZMod.coe_int_isUnit_iff_isCoprime` from `Mathlib.Data.ZMod.Coprime` to `Mathlib.Data.ZMod.Units`, where it more naturally belongs as a statement about units in `ZMod`. The proof is rewritten to only use tools available in `Mathlib.Data.ZMod.Units`, avoiding the dependency on `Mathlib.Algebra.EuclideanDomain.Int`. This is motivated by the desire to use `coe_int_isUnit_iff_isCoprime` without the overhead of importing `Mathlib.Data.ZMod.Coprime` (see #38339 for a use case). t-data delegated 13/7 Mathlib/Data/ZMod/Coprime.lean,Mathlib/Data/ZMod/Units.lean 2 10 ['github-actions', 'joneugster', 'mathlib-bors', 'riccardobrasca', 'xroblot'] joneugster
assignee:joneugster
0-14347
3 hours ago
0-84186
23 hours ago
35-76941
35 days
39958 BryceT233
author:BryceT233
feat(RingTheory/Kaehler/JacobiZariski): exactness at the left of Jacobi-Zariski sequence under flatness assumption Given algebras `R → S → T` and `T` flat over `S`, this PR adds the exactness of `T ⊗[S] H₁(L_{S/R}) → H₁(L_{T/R}) → H₁(L_{T/S})` at the left of Jacobi-Zariski sequence. Note that the flatness assumption here is stronger than the Tor-vanishing conditions required in the full statement of [Stacks Project, 00S2](https://stacks.math.columbia.edu/tag/00S2), this should be refactored and generalized once more results on Tor modules are available. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 70/0 Mathlib/RingTheory/Kaehler/JacobiZariski.lean 1 1 ['github-actions'] nobody
0-13811
3 hours ago
2-15724
2 days ago
2-15686
2 days
39520 BryceT233
author:BryceT233
feat(RingTheory/Extension): `cotangentEquivH1Cotangent` Given `Algebra R S` and an extension `P : Extension R S`, this PR adds a linear equivalence between the cotangent space of `P` and the first homology of the naive cotangent complex of `S` over `P.Ring` . We show that the connecting homomorphism of the Jacobi-Zariski sequence of `R → P.Ring → S` coincides with `P.cotangentComplex` via this equivalence: 屏幕截图_22-5-2026_82258_www overleaf com --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author 64/0 Mathlib/RingTheory/Kaehler/JacobiZariski.lean 1 4 ['chrisflav', 'github-actions', 'robin-carlier'] chrisflav
assignee:chrisflav
0-13745
3 hours ago
2-2727
2 days ago
10-40988
10 days
40037 SaarShai
author:SaarShai
feat(NumberTheory): the three-gap (Steinhaus) theorem ## What Adds the **three-gap theorem** (a.k.a. *three-distance theorem* / *Steinhaus conjecture*): for irrational `α` and any `N`, the `N` points `{0·α}, …, {(N−1)·α}` partition the circle `ℝ ⧸ ℤ` into arcs taking **at most three** distinct lengths. ```lean theorem three_gap {α : ℝ} (hα : Irrational α) (N : ℕ) : ((Finset.univ : Finset (Fin N)).image (gap hα)).card ≤ 3 ``` Here `x α k = Int.fract (k·α)` is the orbit point `{kα} ∈ [0,1)`, `e` sorts the `N` points via `Finset.orderEmbOfFin`, and `gap hα i` is the arc from the `i`-th sorted point to its cyclic successor (a dependent `if` handles the wraparound arc, correct for all `N`). ## How Liang's rigid-gap / dynamical proof (*Discrete Math.* 28 (1979) 325–326). Each arc length equals `Int.fract ((b−a)·α)` for the orbit-index jump of the two points it spans (`fract_x_sub`); a strong induction (the *jump trichotomy*, `isGap_trichotomy`) shows every jump lies in `{p, −q, p−q}` for the two closest one-sided return times `p`, `q`. The argument is organised around the rotation `T y = Int.fract (y + α)` acting on the oriented forward distance `fwdDist a c = Int.fract ((c−a)·α)`: base cases at `x_0`; a descent step that pulls a gap back under `T` preserving its jump; and an R3 split at the last point `x_{N−1}`, whose `+p` half is handled by reflecting the orbit `k ↦ N−1−k` back onto the base case. ## Notes - **New file.** Placed at `Mathlib/NumberTheory/ThreeGapTheorem.lean`; happy to relocate (e.g. `Mathlib/Dynamics/`) per maintainer preference. - **Prior art:** formalized in Coq by Mayero (*The Three Gap Theorem (Steinhaus Conjecture)*, TYPES'99, 2000; arXiv:cs/0609124). To my knowledge this is the first Lean/Mathlib formalization. - **Disambiguation:** the existing "Steinhaus theorem" in Mathlib (Wikidata `Q3527166`) is the unrelated *difference-set* theorem; the three-gap theorem is `Q3527252`. - `#print axioms three_gap` = `[propext, Classical.choice, Quot.sound]`. ## AI usage disclosure Per Mathlib's policy on AI assistance: this contribution was developed with substantial help from **Claude (Anthropic), via the Claude Code agent**. The agent produced the Lean development — a forward-distance (`fwdDist a c = Int.fract ((c-a)·α)`) reformulation of Liang's rigid-gap argument: the jump-trichotomy strong induction (`isGap_trichotomy`), the orbit-reflection lemma closing the `x_{N−1}` case (`reflection_lemma` / `succ_to_pred` / `isGap_pred_last`), and all supporting lemmas — and carried out the port to current Mathlib and the PR mechanics. Every step is machine-checked by the Lean kernel (`#print axioms ThreeGap.three_gap` = `[propext, Classical.choice, Quot.sound]`; `lake exe runLinter` reports no findings). t-number-theory new-contributor 625/0 Mathlib.lean,Mathlib/NumberTheory/ThreeGapTheorem.lean 2 2 ['github-actions'] nobody
0-13568
3 hours ago
unknown
0-0
0 seconds
39867 JovanGerb
author:JovanGerb
feat: `to_dual` for `Adjunction` This PR uses the new capability of `to_dual` to deal with universe reorderings to tag `Adjunction`. `Adjunction.ext_counit` is added as the dual of `Adjunction.ext`. This PR introduces 4 uses of `erw` to deal with defeq abuse. See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.5Bto_app.5D.20and.20associators.2Funitors/near/597924260 Note: there is a bug in the implementation that I'll have to fix which stops me from being able to tag `Adjunction.comp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 45/47 Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/FullyFaithful.lean,Mathlib/CategoryTheory/Sites/Sheafification.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-12771
3 hours ago
0-12810
3 hours ago
3-55765
3 days
40038 idontgetoutmuch
author:idontgetoutmuch
Smooth exp lie v # Principal Bundles, Connections, and the Christoffel Transformation Law ## Overview This PR formalises a path from smooth Lie group exponential maps through principal bundle connection theory to the Yang-Mills transformation law, with the Christoffel symbol transformation law as a corollary. It is a draft overview PR intended to be split into smaller PRs for review. ## What is proved ### Smooth exponential map (`ExpLie.lean`) - `expLie : GroupLieAlgebra IG G → G` — the Lie group exponential map - `contMDiff_expLie` — smoothness of `expLie` - `isMIntegralCurve_expLie_smul` — the curve `t ↦ expLie (t • A)` is an integral curve of the left-invariant vector field associated to `A` - `expLie_add`, `expLie_zero` — basic properties ### Lee Theorem 9.12 / Maximal flow (`MaximalFlow.lean`) - `W_lee_eq_flowSet_lee` — the flow domain of a smooth vector field on a manifold is open and the flow is smooth on it (Lee, *Introduction to Smooth Manifolds*, Theorem 9.12, continuity part) ### Principal bundles, connection forms, and Yang-Mills (`FakeFormII.lean`) **Warmup: fake differential forms** - `VectorField`, `OneForm`, `TwoForm` as smooth sections of appropriate bundles - `apply_smooth''` — pairing a 1-form with a vector field gives a smooth function **Principal bundle structure** - `IsPrincipalBundle` — smooth principal G-bundle: free right G-action, fibre-preserving, equivariant local trivializations, smooth projection - `IsPrincipalBundle.is_transitive` — G acts transitively on each fibre (proved from equivariance; this is Lee Proposition 27.6 / Tu §27) **Fundamental vector fields** - `fundamentalVectorField` — infinitesimal generator of the one-parameter subgroup acting on `p ∈ P` - `fundamentalVectorField_mem_vertical` — fundamental vector fields are vertical - `fundamentalVectorField_zero_iff` — vanishes only if the Lie algebra element is zero (uses freeness of the action) - `isMIntegralCurve_action_expLie` — `t ↦ p ▷ expLie(tA)` is an integral curve of the fundamental vector field (Tu, Proposition 27.14) - `contMDiff_fundamentalVectorField` — fundamental vector fields vary smoothly **Connection forms** - `LieAlgebraValuedOneForm` — a `𝔤`-valued 1-form as a smooth family of linear maps `T_pP → 𝔤` (fake, pending proper differential forms in Mathlib) - `ConnectionForm` — connection 1-form satisfying the two axioms: reproduces Lie algebra elements on fundamental vector fields, and equivariance `R_g^* ω = Ad_{g⁻¹} ∘ ω` - `maurerCartan` — the Maurer-Cartan form on G **Yang-Mills transformation law** - `yangMillsField` — pullback of connection form along a local section (the gauge potential) - `IsLocalSection` — smooth local section of the principal bundle - `yangMills_transformation` — **main theorem**: under a change of local section via gauge map `Ω : U → G`, ``` ω^{U₂}(v) = Ad_{Ω⁻¹}(ω^{U₁}(v)) + Ξ_{Ω(m)}(dΩ_m(v)) ``` (Schuller, Theorem 22.6 / Bleecker, Theorem 1.2.5) **Frame bundle** - `endBundleCore` — endomorphism bundle as a `VectorBundleCore` with fibre `E →L[𝕜] E` - `FrameBundle` — the open subset of invertible elements; as an open subset of a smooth manifold it inherits a smooth manifold structure for free - `contMDiff_action` — the `(E →L[𝕜] E)ˣ`-action on the frame bundle is smooth - `frameBundle_action_isFree`, `frameBundle_triv_equivariant` — the frame bundle is a principal `(E →L[𝕜] E)ˣ`-bundle When `yangMills_transformation` is applied to the frame bundle with sections induced by coordinate charts and `Ω` the Jacobian matrix, the result is the classical Christoffel symbol transformation law (Schuller, Example 22.7). ## Dependencies on other PRs This work depends on the following PRs which are not yet merged into Mathlib master: - **#26394** (winstonyin) — `exists_mem_nhds_isMIntegralCurveOn_Ioo_of_contMDiffAt`: existence of local integral curves on manifolds with joint continuity of the flow - **#34288** (winstonyin) — `contDiffOn_enat_Ioo_of_hasDerivAt`: C^n smoothness of ODE solutions on Banach spaces ## Proof wanted The following statement is used as `#proof_wanted` pending the smooth flow theory: ```lean #proof_wanted contMDiff_flow_like : ∀ {M : Type*} [TopologicalSpace M] [ChartedSpace HG M] [IsManifold IG (minSmoothness ℝ 3) M] (X : ∀ x : M, TangentSpace IG x) (hX : ContMDiff IG IG.tangent (minSmoothness ℝ 2) (fun x => (⟨x, X x⟩ : TangentBundle IG M))) (Φ : ℝ → M → M) (hΦ : ∀ x, IsMIntegralCurve (fun t => Φ t x) (fun x => X x)), ContMDiff (𝓘(ℝ, ℝ).prod IG) IG (minSmoothness ℝ 2) (fun p : ℝ × M => Φ p.1 p.2) ``` This follows from the smooth analog of `exists_mem_nhds_isMIntegralCurveOn_Ioo_of_contMDiffAt` (with `ContMDiffOn` in place of `ContinuousOn`), which in turn requires joint C^n smoothness of ODE flows on Banach spaces — work deferred to future PRs by #34288. ## What is not yet done - Differential forms on manifolds: `LieAlgebraValuedOneForm` is a fake — a smooth family of linear maps rather than a proper differential form. Without exterior algebra, curvature `Ω = dω + ω ∧ ω`, the Bianchi identity, and Stokes' theorem cannot be stated. - Associated bundles: `TM = Fr(TM) ×_{GL(n)} ℝⁿ` requires quotient manifolds, which Mathlib does not yet have. This means the covariant derivative on `TM` cannot be derived from the principal bundle connection — only the transformation law is proved. - Explicit application to the frame bundle: `yangMills_transformation` specialises to the Christoffel transformation law when applied to coordinate frame sections, but this specialisation is not yet fully formalised. ## Relation to existing PRs This PR consolidates and extends: - **#37932** — smooth exponential map - **#38374** — principal bundles and connection forms Those PRs will be updated and submitted separately for review once the dependencies on #26394 and #34288 are resolved. merge-conflict t-differential-geometry new-contributor 3690/57 Mathlib.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/ODE/SmoothFlow.lean,Mathlib/Geometry/Manifold/Algebra/ExpLie.lean,Mathlib/Geometry/Manifold/Algebra/FakeFormII.lean,Mathlib/Geometry/Manifold/Algebra/MaximalFlow.lean,Mathlib/Geometry/Manifold/IntegralCurve/Compact.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Order/Filter/Prod.lean,Mathlib/Topology/MetricSpace/Pseudo/Lemmas.lean 11 1 ['github-actions'] nobody
0-12738
3 hours ago
unknown
0-0
0 seconds
39710 justus-springer
author:justus-springer
feat(AlgebraicGeometry/AffineSpace): affine space is smooth Show that affine space `𝔸(n; S)` is smooth over `S` (or relative dimension `Nat.card n`) . Also remove the `LocallyOfFinitePresentation` instance, as it can be inferred automatically from smoothness. - [ ] depends on: #39709 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry large-import blocked-by-other-PR 66/12 Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean 6 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-12485
3 hours ago
7-71859
7 days ago
0-2625
43 minutes
39665 justus-springer
author:justus-springer
feat(AlgebraicGeometry/AffineSpace): affine space over an integral base is integral Prove that `AffineSpace` inherits the properties `IrreducibleSpace`, `IsReduced` and `IsIntegral` from its base. Also clean up a few variables, that were used very scarcely. These were causing weird issues in these new instances, where they would be automatically included. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 33/12 Mathlib/AlgebraicGeometry/AffineSpace.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-12144
3 hours ago
0-12181
3 hours ago
8-42176
8 days
39445 justus-springer
author:justus-springer
feat(AlgebraicGeometry/Birational): composition of rational maps Define composition of partial and rational maps. - [x] depends on: #39442 - [ ] depends on: #39443 - [x] depends on: #39317 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry blocked-by-other-PR 270/14 Mathlib.lean,Mathlib/AlgebraicGeometry/Birational/Composition.lean,Mathlib/AlgebraicGeometry/Birational/Dominant.lean,Mathlib/AlgebraicGeometry/Birational/RationalMap.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/Data/Set/Image.lean 6 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-11980
3 hours ago
14-44585
14 days ago
0-1227
20 minutes
38713 justus-springer
author:justus-springer
feat(Algebra/Category/ModuleCat/Sheaf/ChangeOfRings): API for `restrictScalars` Extend the `restrictScalars` API for presheaves and sheaves of modules to match the existing API in `ModuleCat/ChangeOfRings`. For both `PresheafOfModules` and `SheafOfModules` we add: - `restrictScalarsCongr`: restriction of scalars along equal morphisms are naturally isomorphic - `restrictScalarsId'/restrictScalarsId`: restriction along the identity is naturally isomorphic to the identity functor - `restrictScalarsComp'/restrictScalarsComp`: restriction along a composition is naturally isomorphic to the composition of restriction functors - `restrictScalarsEquivalenceOfIso`: an isomorphism `R ≅ R'` of (pre)sheaves of rings induces an equivalence of categories of (pre)sheaves of modules. We also move up the "simp barrier": `PresheafOfModules.restrictScalars` and `SheafOfModules.restrictScalars` are no longer `@[simps]` as they have their own API now. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-algebra
label:t-algebra$
325/4 Mathlib/Algebra/Category/ModuleCat/Presheaf/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/ChangeOfRings.lean 2 7 ['dagurtomas', 'github-actions', 'justus-springer', 'mathlib-merge-conflicts'] joelriou
assignee:joelriou
0-11762
3 hours ago
0-11797
3 hours ago
28-83425
28 days
32983 JovanGerb
author:JovanGerb
feat: use `LE.le` for subset relation in `Set`, `Finset`, `PSet`, `ZFSet` This PR uses `@[use_set_notation_for_order]` in `Set`, `Finset`, `PSet`, `ZFSet` and `Class`. So, for these types, we will write `⊆`, while the underlying constant is `LE.le`. Some notes: - The idea is to later extend this feature to other set notation constants, such as union/intersection. - Dot notation on the `HasSubset.Subset` namespace now doesn't work anymore, and the names need to be put in the `LE.le` namespace instead. - Various `simp` and `gcongr` tags needed to be removed/updated as a result of this change. See also https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F/near/579333629 --- - [x] depends on: #36633 - [x] depends on: #36734 - [x] depends on: #36782 - [x] depends on: #37012 - [x] depends on: #37347 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-meta large-import 318/367 Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Group/Indicator.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Finset.lean,Mathlib/Algebra/GroupWithZero/Action/Pointwise/Set.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/AlgebraicTopology/SimplicialSet/Horn.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Normed/Group/FunctionSeries.lean,Mathlib/Analysis/SpecialFunctions/Log/Summable.lean,Mathlib/CategoryTheory/CofilteredSystem.lean,Mathlib/CategoryTheory/Topos/Sheaf.lean,Mathlib/Combinatorics/Enumerative/Partition/GenFun.lean,Mathlib/Combinatorics/Hall/Basic.lean,Mathlib/Combinatorics/Matroid/Basic.lean,Mathlib/Combinatorics/Matroid/Constructions.lean,Mathlib/Combinatorics/Matroid/Dual.lean,Mathlib/Combinatorics/Matroid/Rank/Cardinal.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SetFamily/KruskalKatona.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Option.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/SDiff.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/Set/FiniteExhaustion.lean,Mathlib/Data/Set/Notation.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Set/Sups.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/FixedPoints/Prufer.lean,Mathlib/Geometry/Manifold/VectorBundle/FiberwiseLinear.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/Lean/Expr/ExtraRecognizers.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/MeasureTheory/Covering/LiminfLimsup.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Measure/AEDisjoint.lean,Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Prokhorov.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/Order/Birkhoff.lean,Mathlib/Order/BooleanAlgebra/Set.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Filter/AtTopBot/Finset.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/CountableInter.lean,Mathlib/Order/Filter/Ker.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Interval/Finset/Defs.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/PrimeSeparator.lean,Mathlib/Order/RelClasses.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/RingTheory/Spectrum/Prime/Module.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean,Mathlib/Tactic/SetNotationForOrder.lean,Mathlib/Topology/Algebra/InfiniteSum/Constructions.lean,Mathlib/Topology/Algebra/InfiniteSum/SummationFilter.lean,Mathlib/Topology/Algebra/Nonarchimedean/TotallyDisconnected.lean,Mathlib/Topology/Category/TopCat/Limits/Konig.lean,Mathlib/Topology/Compactness/SigmaCompact.lean,Mathlib/Topology/ExtremallyDisconnected.lean,Mathlib/Topology/Instances/CantorSet.lean,Mathlib/Topology/MetricSpace/Ultra/Basic.lean,Mathlib/Topology/Order/HullKernel.lean,Mathlib/Topology/Semicontinuity/Hemicontinuity.lean,Mathlib/Topology/Separation/Profinite.lean 104 52 ['JovanGerb', 'Vierkantor', 'b-mehta', 'eric-wieser', 'github-actions', 'j-loreaux', 'joneugster', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'plp127', 'thorimur'] nobody
0-11516
3 hours ago
0-8764
2 hours ago
17-39451
17 days
37951 martinwintermath
author:martinwintermath
chore(Geometry/Convex/Cone): rework `PointedCone.dual` to take a cone as input in place of a set Rework `PointedCone.dual` to take as input a cone instead of a set. This is done to untangle the functionality of `PointedCone.dual` from `PointedCone.hull` and to align it with the signature of its submodule analogue `Submodule.orthogonalBilin`. See also the discussion here: [#mathlib4 > Reorganizing bilinearity and orthogonality?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Reorganizing.20bilinearity.20and.20orthogonality.3F/with/583882414). Main changes: * change signature `dual (s : Set M)` to `dual (C : PointedCone R M)`. * deprecate `dual_hull` since now obsolete in this form, instead add `mem_dual_hull` in addition to `mem_dual`. * deprecate all of `dual_empty`, `dual_zero` and `dual_singleton_zero` in favor of only `dual_bot`. * deprecate `dual_univ` in favor of `dual_top`. * add notation `R ∙₊ x` in analogy to submodule version `R ∙ x`, for use in new lemma `dual_hull_singleton`. * deprecate `dual_insert` since now obsolete (use `Submodule.span_insert` instead). * deprecate `dual_union`, `dual_iUnion` and `dual_sUnion` in favor of `dual_sup`, `dual_sSup` and `dual_iSup`. * remove `dual_sup` since now obsolete and name has been reused (see above). * add `dual_sup_ker` and `dual_univ_eq_ker` to align with (proposed) submodule analogue for `Submodule.orthogonalBilin`. * deprecate `dual_image` in favor of `dual_map` * add `hull_eq` (cone version of `span_eq`) since used in `basis_coord_mem_dual`. * adjust doc-strings Numerous changes to other files have been necessary. The dual-variants for proper cones or inner product spaces have not yet been adapted to cone-inputs, though this should happen eventually. The definition of `DualFG` has been changed to "duals of `FG`-cones" instead of "duals of finite sets" (also getting rid of `Finset` as previously requested). --- - [x] depends on: #37950 - [x] depends on: #37542 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 227/128 Mathlib/Analysis/Convex/Cone/Dual.lean,Mathlib/Analysis/Convex/Cone/InnerDual.lean,Mathlib/Analysis/Convex/Cone/TensorProduct.lean,Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/Geometry/Convex/Cone/DualFinite.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/Geometry/Convex/Cone/TensorProduct.lean 7 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-10790
2 hours ago
0-10871
3 hours ago
31-25506
31 days
38534 AlexeyMilovanov
author:AlexeyMilovanov
refactor(Computability): bundle PFun into a structure with FunLike instance This PR refactors `PFun` from `def PFun α β := α → Part β` to a structure with a `FunLike` instance. [Discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fix.20for.20fun_prop.20on.20PFun.20.28context.3A.20Computability.20Theory.29) ### Main changes * `PFun` is now a structure with a single field `toFun : α → Part β`. * Added the `FunLike (α →. β) α (Part β)` instance and `initialize_simps_projections`. * Added the basic projection/application simp lemmas needed for the structure wrapper. * Definitions which used to return raw lambdas as partial functions now explicitly use `PFun.mk` or `PFun.lift`. * Equality proofs for partial functions now use `PFun.ext` / `DFunLike.ext` where `funext` no longer applies directly. ### Downstream impact The refactor mainly impacts Computability Theory and Category Theory (`Category/PartialFun.lean`). Since `PFun` is no longer definitionally equal to `α → Part β`, tactics such as `rfl`, `simp`, and `funext` can no longer always see through the old raw-function representation. As a result, several proofs (e.g. `fix_aux`, `ppred`, `mem_eval`, and `unitIso`) grew in size, requiring explicit `ext` + `simp` breakdowns. I tried to keep these proof changes minimal; further golfing suggestions are very welcome. It seems that fully recovering the old brevity in some places may require additional `PFun`-specific API/congruence support, which I avoided adding in this PR to keep the diff minimal. ### Affected files * **Core:** `Mathlib/Data/PFun.lean` * **Computability:** `Partrec`, `PartrecBasis`, `PartrecCode`, `RE`, `RecursiveIn`, `Ackermann`, `Halting`, `StateTransition`, `TuringDegree`, `TuringMachine/Config` * **Category Theory:** `Category/PartialFun.lean` * **Other:** `Data/Finset/PImage.lean`, `NumberTheory/Dioph.lean` This also removes the previous `set_option linter.flexible false` workaround and the local transparency workaround in `TuringMachine/Config.lean`, as well as the local transparency workarounds in `Category/PartialFun.lean`. ### Note on LLM usage The core `PFun` change caused numerous downstream errors. I initially used an LLM to help draft fixes for these files. Afterwards, I spent a significant amount of time manually correcting and modifying all of the generated changes. new-contributor t-computability 786/589 Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecBasis.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RE.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/StateTransition.lean,Mathlib/Computability/TuringDegree.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Data/Finset/PImage.lean,Mathlib/Data/PFun.lean,Mathlib/NumberTheory/Dioph.lean 13 9 ['AlexeyMilovanov', 'dagurtomas', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib-merge-conflicts'] nobody
0-10355
2 hours ago
4-50355
4 days ago
12-78060
12 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', 'github-actions', 'grunweg'] nobody
0-10144
2 hours ago
1-54254
1 day ago
1-54218
1 day
39476 faenuccio
author:faenuccio
feat(Mathlib.Topology.Algebra.Module.Equiv): add results on IsHomeomorph Add the construction of a `ContinuousLinearEquiv` from a `LinearEquiv` that `IsHomeomorph`, and two basic API lemmas. Also remove a `simp` tag from a lemma in about `Function.Bijective`, and change its signature a bit. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author 53/21 Mathlib/Logic/Equiv/Defs.lean,Mathlib/Topology/Algebra/Module/Equiv.lean 2 17 ['ADedecker', 'faenuccio', 'github-actions', 'mathlib-merge-conflicts'] ADedecker
assignee:ADedecker
0-10059
2 hours ago
10-11455
10 days ago
2-5083
2 days
39433 JovanGerb
author:JovanGerb
feat(Tactic): `#click_suggestions` This is an initial PR for a point&click suggestion tool that can suggest theorems and tactics. This PR only implements theorem suggestions. This PR adds the `#click_suggestions` command that activates the tool. It could potentially in the future be active by default. The code is ported from this repository: https://github.com/JovanGerb/infoview_search TODO: import this feature in Tactic.Common (during development it's easier to not do this to avoid import tangles) This PR deletes `unfold?` in favour of the `#click_suggestions`. For backwards compatability, I have left `rw??` in place, but I plan to deprecate it in the future. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-meta 2293/124 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ClickSuggestions.lean,Mathlib/Tactic/ClickSuggestions/Apply.lean,Mathlib/Tactic/ClickSuggestions/ApplyAt.lean,Mathlib/Tactic/ClickSuggestions/FindPremises.lean,Mathlib/Tactic/ClickSuggestions/GRewrite.lean,Mathlib/Tactic/ClickSuggestions/Rewrite.lean,Mathlib/Tactic/ClickSuggestions/SectionState.lean,Mathlib/Tactic/ClickSuggestions/TryPremises.lean,Mathlib/Tactic/ClickSuggestions/Unfold.lean,Mathlib/Tactic/ClickSuggestions/Util.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,MathlibTest/ClickSuggestions/Benchmark.lean,MathlibTest/ClickSuggestions/Test.lean,MathlibTest/ClickSuggestions/TestImpl.lean,MathlibTest/ClickSuggestions/Unfold.lean 17 20 ['JovanGerb', 'fpvandoorn', 'github-actions', 'mathlib-merge-conflicts'] fpvandoorn
assignee:fpvandoorn
0-9930
2 hours ago
0-9963
2 hours ago
1-25553
1 day
38027 8e7
author:8e7
feat(Combinatorics/SimpleGraph/Star): define star graphs Add a new definition `starGraph` and several key lemmas. Star graphs are a trivial class of tree, often used in constructive proofs regarding trees. An example use case is shown in #38334. --- All lemmas are hand written first, then golfed with the help of Claude Code. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 87/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Star.lean 2 41 ['8e7', 'IvanRenison', 'JovanGerb', 'SnirBroshi', 'b-mehta', 'github-actions', 'vihdzp', 'vlad902'] nobody
0-8437
2 hours ago
44-29265
44 days ago
46-27492
46 days
39962 grunweg
author:grunweg
fix(Tactic/{ToFun,Translate}): fix handling of `_root_` in provided names Currently, there is no way to specify a generated name in the root namespace (or one that is shorter than the namespace of the translated declaration). While it is unclear if this is actually necessary, the current behaviour (generating a declaration literally named `Foo._root_.bar` is more confusing than helpful). Make it do something logical instead: if the provided name starts with `_root_`, disable the namespace length heuristic. --- - [ ] depends on: #39988 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta blocked-by-other-PR 60/2 Mathlib/Tactic/ToFun.lean,Mathlib/Tactic/Translate/Core.lean,MathlibTest/Attribute/ToAdditive/Basic.lean,MathlibTest/ToFun.lean 4 14 ['JovanGerb', 'adomani', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'thorimur'] nobody
0-8077
2 hours ago
1-55829
1 day ago
0-26033
7 hours
38198 JovanGerb
author:JovanGerb
chore(Data/Real/Basic): `no_expose` the private operations This PR puts `no_expose` on all of the operations on `Real` that are defined in terms of quotients. This is a step in the direction of not exposing the definiton of `Real`. Note that I leave the `irreducible_def`s as is. This is because the `simpNF` linter does not participate in the module system, and it would time out otherwise. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 11/32 Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 3 12 ['JovanGerb', 'eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] TwoFX
assignee:TwoFX
0-7616
2 hours ago
0-7656
2 hours ago
41-63088
41 days
38318 JovanGerb
author:JovanGerb
feat(GRewrite): new `grw` implementation This PR adds a new implementation of the `grewrite` tactic. It replaces `grw` with the new implementation. The old implementation can be used with `grw +useKAbstract`. New features: - The new `grw` can rewrite terms with bound variables. - The new `grw` will only rewrite in places where this is valid. Previously, if there were both valid and non-valid positions, it would try rewriting everywhere and then complain. Future features that will build on the new implementation: - I'd like to add support for strict rewrites that can change the strictness of parts of the goal. This would require the concept of asymmetric `gcongr` lemmas, something like `le_imp_lt_of_lt_left` and `le_imp_lt_of_lt_right`. An example of such a lemma that already exists in mathlib is `Ico_subset_Ioo_left`. - I'd like to improve the support for rewriting with symmetric relations such as `=ᵥ`. The following doesn't work very well yet: ``` variable {R : Type*} [CommRing R] [ValuativeRel R] {x y z : R} example (h : x =ᵥ y) : x <ᵥ z ↔ y <ᵥ z := by grw [h] ``` Limitations: - The new implementation does not support occurrences. So, `nth_grw` still uses the old `kabstract`-based implementation. The reason is that there are often multiple `gcongr` lemmas for rewriting in the same place (e.g. `add_le_add` and `add_le_add_left`), and it's tricky to keep track of exactly what is "the same" subexpression. - The new implementation tries `gcongr` lemmas one by one, and commits to the first `gcongr` lemma that lets us do a rewrite. This means that we need to lower the priority of `add_le_add_left`, so that `add_le_add` is preferred, so that we can rewrite on both sides of `+` at the same time. However, `mul_le_mul_of_nonneg_left` and `mul_le_mul_of_nonneg_right` are still tried before `mul_le_mul`, to avoid getting unnecessary side goals. - Because the new term is constructed from `gcongr` lemmas, rather than by instantiating the result of `kabstract`, it may be that metadata gets lost, or that some implicit arguments change. For example, rewriting inside `a ≤ b` for `a b : Nat` will change the instance argument from `Nat.instLE` to `Nat.instPreorder.toLE`. This is not really a problem. - Some problems arise when implementing a rewriting tactic that can rewrite under binders, because metavariables have a fixed local context of free variables that they are allowed to depend on. This issue also affects the new `rw` tactic that the FRO is currenlty working on. This PR works around this by "illegally" changing the local context of metavariabes, so as to allow them to depend on bound variables. This has the unfortunate side effect that the "Expected Type" view can get messed up when rewriting bound variables, because the expression is being delaborated with the wrong local context. But I think this is only a minor problem. We coould reconsider this design when the new `rw` tactic is done. Changes to `gcongr`: - The `@[goncgr]` attribute now checks more thoroughly whether the given lemma is of the right form. Some lemmas are not suitable for use in `grw`, but they still "feel" like a `gcongr` lemma, so we still allow them to be used in `gcongr`. For such cases I've added a linter warning that can be turned off. - I've refactored how `gcongr` lemmas are applied, in order to share this code between `gcongr` and `grw`. Now, binder names are taken from the goal when possible, rather than not giving any name to new free variables. This improves `gcongr` (as it means you don't anymore need to write `gcongr with ...` to give the variable a name), and allows `grw` to preserve binder names in the goal. The grewrite test file now tests the new `grw` implementation. Should I make a copy of the test file to also test the old implementation? I have put myself as the copyright holder, instead of Sebastian Zimmer, as I think this more accurately reflect code ownership. The original `grw` PR was by Sebastian in 2023, but it was majorly rewritten by me in 2025. Sebastian is still in the list of authors. --- - [x] depends on: #38558 - [x] depends on: #38556 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 689/255 Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Analysis/CStarAlgebra/Extreme.lean,Mathlib/Analysis/Convex/StrictCombination.lean,Mathlib/Analysis/Distribution/Support.lean,Mathlib/Combinatorics/Graph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Average.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/AbsolutelyContinuousFun.lean,Mathlib/Order/Basic.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Independence.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRewrite/Core.lean,Mathlib/Tactic/GRewrite/Elab.lean,Mathlib/Topology/MetricSpace/ThickenedIndicator.lean,MathlibTest/Tactic/GCongr/Implications.lean,MathlibTest/Tactic/GRewrite.lean 22 43 ['JovanGerb', 'PatrickMassot', 'Vierkantor', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
0-7444
2 hours ago
0-7515
2 hours ago
19-32398
19 days
40032 ADedecker
author:ADedecker
feat: define MonoidHom.piMap --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
58/34 Mathlib/Algebra/Group/Pi/Lemmas.lean 1 1 ['github-actions'] nobody
0-6455
1 hour ago
0-46295
12 hours ago
0-46257
12 hours
38938 lua-vr
author:lua-vr
chore(ConditionallyCompleteLattice/Indexed): dualize --- - [ ] depends on: #38906 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-order 112/251 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean 3 7 ['github-actions', 'lua-vr', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-5984
1 hour ago
unknown
0-0
0 seconds
40034 cfigueroab91
author:cfigueroab91
feat: prove DirectSum.congr in GroupTheory/FiniteAbelian/Basic ## Summary - Uncomments and completes `DirectSum.congr` in `Mathlib/GroupTheory/FiniteAbelian/Basic.lean`, which had two `sorry`s marked as *"probably doable with the existing machinery, but quite painful"*. - Adds two necessary hypotheses `hFne` and `hGne` (that the morphisms preserve non-zeroness). These are needed to correctly identify nontrivial components of the image under composition, and are trivially satisfied in the application `directSumNeZeroMulEquiv` (where `F = G = id`). - Replaces the workaround implementation of `directSumNeZeroMulEquiv` with a clean application of the now-complete `DirectSum.congr`. ## Proof strategy The `left_inv` and `right_inv` proofs use `DirectSum.induction_on`. The key technical challenge is that `Nontrivial` witnesses are `Prop`-typed, so different witnesses are definitionally equal by proof irrelevance. The `show` tactic is used to unify these dependent types before applying `DFinsupp.single_add` and `map_add`. The zero cases use `simp [DFinsupp.sum]` since `DFinsupp.sum_zero_index` is not available as a standalone lemma in this Mathlib version. ## Test plan - [x] `Mathlib/GroupTheory/FiniteAbelian/Basic.lean` compiles without errors or warnings - [x] `directSumNeZeroMulEquiv` (used in `equiv_directSum_zmod_of_finite'`) continues to work with the new `DirectSum.congr` 🤖 Generated with [Claude Code](https://claude.ai/claude-code) t-group-theory new-contributor LLM-generated 195/41 Mathlib/GroupTheory/FiniteAbelian/Basic.lean 1 2 ['github-actions'] nobody
0-5292
1 hour ago
0-38116
10 hours ago
0-593
9 minutes
40027 Robby955
author:Robby955
RFC/draft: feat(Probability/Moments): Orlicz Phase A scaffolding — Young functions, Orlicz norm, ψ_p hierarchy ## Status: DRAFT / RFC — please read framing first This PR is **statements-only scaffolding** opened to surface feedback on the proposed API direction *before* proof work commits. All theorems are `sorry`-stubbed and the file is **not** yet expected to compile against `master`. Three specific design questions for reviewers are listed at the bottom; please defer line-level proof critique to a later non-draft round. ## What is being added A Phase A scaffolding for Orlicz norms / Orlicz spaces in `Mathlib.Probability.Moments`: - `YoungFunction` — convex, non-decreasing `ℝ≥0 → ℝ≥0` with `ψ 0 = 0`, unbounded above; bundled as a structure to support the parameterised `ψ_p` family. - `YoungFunction.psi p`, `psi2`, `psi1` — the `ψ_p(x) = exp(x^p) - 1` family. `ψ_2` characterises sub-Gaussian; `ψ_1` characterises sub-exponential. - `orliczNorm X μ ψ` — `sInf { c > 0 | μ[ψ(|X|/c)] ≤ 1 }` with the empty-set convention `⊤`. - Basic norm-style lemmas: `orliczNorm_zero`, `orliczNorm_nonneg`, `orliczNorm_add_le`, `orliczNorm_smul` — signature only. - Two bridge theorems to existing API: - `orliczNorm_psi2_lt_top_iff_hasSubgaussianMGF` — connects to the existing `HasSubgaussianMGF` predicate. - `orliczNorm_psi1_lt_top_characterization` — sub-exponential MGF characterisation; the predicate-level analogue `HasSubexponentialMGF` is the subject of a planned prerequisite PR (see framing question 3 below). ## Why this is missing from mathlib The TODO line in `Mathlib/Probability/Moments/SubGaussian.lean`: > *TODO: implement definitions for (i)-(iv) when it makes sense. For > example the maximal constant `K₄` such that (iv) is true is an > Orlicz norm.* names the gap explicitly. The downstream consequence is that no current mathlib API can express "this random variable is sub-exponential" or "this random variable has finite `ψ_p`-Orlicz norm," which are the natural language for fast-rate concentration (Bennett, Bernstein, Freedman) and for any application that needs sub-Gaussian and sub-exponential side-by-side (Boucheron-Lugosi-Massart *Concentration Inequalities* Ch. 2; Vershynin §2.5; Wainwright *High-Dimensional Statistics* Ch. 2). ## Three-phase plan (for reviewer context; this PR is Phase A only) - **Phase A — this PR:** Young functions, Orlicz norm, `ψ_p` family, basic properties, sub-Gaussian / sub-exponential equivalences at the characterisation level. - **Phase B — follow-on PR:** Bennett / Bernstein / Freedman tail inequalities reformulated in Orlicz language. - **Phase C — separate track:** VC fundamental theorem with matching lower bound (Fano-Le Cam-Assouad). Orthogonal to the concentration side. ## Three framing questions for reviewers 1. **Bundled `YoungFunction` vs. an `IsYoungFunction` typeclass.** Current draft: bundled structure. Alternative: typeclass over `ℝ≥0 → ℝ≥0`. Bundled wins for the parameterised `ψ_p` family; typeclass wins for composition with the existing `Lp` machinery. 2. **`Lᵠ` as a subspace of `Lp` vs. an independent space.** Not yet defined in this PR. The intended downstream presentation is `Lᵠ` as the subspace of `Lp 1 μ` for which `orliczNorm < ⊤`. Alternatives: define `Lᵠ` as its own bundled type with a coercion, or skip `Lᵠ` entirely in Phase A and keep only the norm. 3. **Whether to introduce `HasSubexponentialMGF` in this PR or as a prerequisite separate PR.** The `orliczNorm_psi1_lt_top_characterization` statement above currently inlines the characterisation rather than referencing a predicate not yet upstream. Sequencing preference: separate prerequisite PR for `HasSubexponentialMGF` that mirrors `HasSubgaussianMGF`, then rebase this Orlicz PR on top. Reviewer preference welcome. ## What is *not* in this PR - No proofs. All `:= sorry`. - No Hölder duality, no conjugate Young function, no Pisier's lemma — those follow once the three framing questions are resolved. - No CI passing claim. The file may not even compile against `master`; this is intentional for a framing-only RFC at this stage. ## External context (not part of the PR) This PR is the mathlib-upstream component of a 12-week sprint tracked in the author's private repo [`Robby955/lean-statistical-learning`](https://github.com/Robby955/lean-statistical-learning), specifically the architectural decision documented at `docs/research/FORMALSLT_DIRECTION_REVIEW_2026-05-29.md` (private). Shared for context only; the mathlib contribution stands on its own mathematical merit independent of the downstream learning-theory application. ## Asking specifically - @RemyDegenne for direction on framing questions 1-3 if/when bandwidth permits — no urgency, this is opened early so the conversation can happen in parallel with proof work rather than after. - General reviewers: comments on direction are welcome; please defer line-level proof or compilation critique. ## References - Vershynin, *High-Dimensional Probability*, §2.5. - Boucheron-Lugosi-Massart, *Concentration Inequalities*, §4.2. - The upstream `Mathlib/Probability/Moments/SubGaussian.lean` docstring TODO line cited above. t-measure-probability new-contributor awaiting-author LLM-generated 207/0 Mathlib/Probability/Moments/Orlicz.lean 1 4 ['Robby955', 'github-actions', 'grunweg'] nobody
0-5275
1 hour ago
unknown
0-0
0 seconds
39513 grunweg
author:grunweg
feat: add `mvfderivWithin` with (d)elaborators and basic API Add `mvfderivWithin` (a version of `mvfderiv` within a set) and add analogues of all `mvfderiv` lemmas. We also add analogous custom elaborators and delaborators. To prove our set-up works, we re-phrase two lemmas in `VectorField/LieBracket.lean` to use this definition, instead of open-coding it. Part of https://github.com/leanprover-community/mathlib4/pull/36036, i.e. from the path towards the Levi-Civita connection and Riemanian curvature. Related to fixing defeq abuses related to tangent space and scalar multiplication in mathlib. --- - [x] depends on: #39485 - [x] depends on: #34257 - [x] depends on: #39554 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 203/12 Mathlib/Analysis/Complex/UpperHalfPlane/Manifold.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean 5 7 ['github-actions', 'grunweg', 'hrmacbeth', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] PatrickMassot
assignee:PatrickMassot
0-5080
1 hour ago
0-5051
1 hour ago
10-4421
10 days
39677 grunweg
author:grunweg
feat: improve doc-strings for differential geometry elaborators Right now, the custom elaborators in the manifold library have doc-strings which explain what the elaborator expands to --- but don't show what the expanded concept means. It would be much better to show that also. Verso allows doing so easily: this PR implements this as a proof of concept for the elaborator for `mvfderiv`. This is not ready to land yet: - the verso command defined currently works outside the module system, but not inside yet (this is because of a core bug fixed yesterday; it will be fixed in the next Lean release) - the verso command should move to a better place (at least `Geometry/Manifold/Notation.lean`, perhaps even lower) - Right now, the concatenated doc-string is formatted as pure text (not markdown): Lean core will implement this soon, but has not done so yet. - this technique should be applied to all the custom elaborators - the doc-strings of the elaborators may need to be rewritten, to start with the subject they're defining. (Once this happens, just concatenating the doc-strings produces reasonable results. This PR does this for mvfderiv only.) Made with in-person help of David Thrane Christiansen at the MI retreat. Thanks a lot! --- - [ ] depends on: #39729 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-differential-geometry t-meta blocked-by-other-PR 572/35 Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpaceVersoPoC.lean,Mathlib/Geometry/Manifold/Notation.lean 5 3 ['github-actions', 'grunweg', 'mathlib-dependent-issues'] nobody
0-3997
1 hour ago
8-44932
8 days ago
0-1
1 second
39543 jvanwinden
author:jvanwinden
feat(MeasureTheory/Measure/Tight): portmanteau condition for compact sets One part of the portmanteau theorem states that a limsup condition for closed sets implies weak convergence of probability measures. In the situation where the measures are tight however, one only needs to check the limsup condition for compact sets. This PR thus introduces `tendsto_of_forall_isCompact_of_isTightMeasureSet`, which is a version of [tendsto_of_forall_isClosed_limsup_le](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/Portmanteau.html#MeasureTheory.tendsto_of_forall_isClosed_limsup_le) but replaces `IsClosed` with `IsCompact`, under the additional hypothesis that the measures are tight. I would have liked to put this lemma in MeasureTheory/Portmeanteau, but this created an import cycle. I am open to suggestions for where it could otherwise be moved. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 196/151 Mathlib/MeasureTheory/Measure/Portmanteau.lean,Mathlib/MeasureTheory/Measure/Prokhorov.lean,Mathlib/MeasureTheory/Measure/Tight.lean 3 12 ['EtienneC30', 'RemyDegenne', 'github-actions', 'jvanwinden'] EtienneC30
assignee:EtienneC30
0-3882
1 hour ago
0-3883
1 hour ago
10-21087
10 days
39113 sgouezel
author:sgouezel
feat: integration by parts for stieltjes vector measures --- - [x] depends on: #39614 - [x] depends on: #39615 - [ ] depends on: #39616 - [x] depends on: #39652 - [x] depends on: #39862 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability blocked-by-other-PR large-import 2163/192 Mathlib.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Analysis/Normed/Operator/Mul.lean,Mathlib/Data/ENNReal/Action.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/InfiniteSum.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/VectorMeasure/AddContent.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/MeasureTheory/VectorMeasure/SetIntegral.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/WithDensity.lean,Mathlib/MeasureTheory/VectorMeasure/WithDensityVec.lean 25 3 ['github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] nobody
0-3655
1 hour ago
21-5987
21 days ago
0-8
8 seconds
40040 JovanGerb
author:JovanGerb
chore(Order/Bounds/Basic): add missing `to_dual` tags This PR adds some `to_dual` tags that weren't added in #35208 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 43/68 Mathlib/Order/Bounds/Basic.lean 1 1 ['github-actions'] nobody
0-3493
58 minutes ago
0-3574
58 minutes ago
0-3536
58 minutes
40010 Hagb
author:Hagb
feat(Algebra/MvPolynomial/SupDegree): port `AddMonoidAlgebra.supDegree` to `MvPolynomial` This PR ports `AddMonoidAlgebra.{supDegree,leadingCoeff,Monic}` to `MvPolynomial.{supDegree,leadingCoeff,Monic}`, adopts some definitions about MvPolynomial to `supDegree`, and simplify some proofs with lemmas of `supDegree`. Given `p : MvPolynomial σ R` and `D` (in a type as is required by `{MvPolynomial,AddMonoidAlgebra}.supDegree`), `MvPolynomial.supDegree D f` is def-eq to `AddMonoidAlgebra.supDegree D f`, while `MvPolynomial.supDegree` is stated directly on `MvPolynomial` and makes using it on `MvPolynomial` easier. Most of theorems about `MvPolynomial.supDegree` are also just specialized variants of their `AddMonoidAlgebra.supDegree` versions, and proved directly by the latter. (Note: some theorems of `MvPolynomial`, such as [`MvPolynomial.degrees_monomial_eq`](https://github.com/leanprover-community/mathlib4/blob/29c689a82e2f78fa770f8c6dd70cb9a21b7e4d05/Mathlib/Algebra/MvPolynomial/Degrees.lean#L94-L97), have used `AddMonoidAlgebra.supDegree` before this PR.) The following definitions are reworded with `supDegree`, whose original definitions are def-eq to the new definitions: - [`MvPolynomial.totalDegree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MvPolynomial.totalDegree#doc) - [`MvPolynomial.degrees`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MvPolynomial.degrees#doc) - [`MvPolynomial.weightedTotalDegree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MvPolynomial.weightedTotalDegree#doc) - [`MvPolynomial.weightedTotalDegree'`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MvPolynomial.weightedTotalDegree'#doc) - [`MonomialOrder.degree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MonomialOrder.degree#doc) The following definitions are not changed directly, while provided lemmas that express them with `supDegree`, `MvPolynomial.leadingCoeff` or `MvPolynomial.Monic`, since their original definitions are not def-eq to their `supDegree` versions. - [`MvPolynomial.degreeOf`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MvPolynomial.degreeOf#doc) - [`MonomialOrder.leadingCoeff`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MonomialOrder.leadingCoeff#doc) - [`MonomialOrder.Monic`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MonomialOrder.Monic#doc) Further works (probably not in this PR): - abstract general and reusable theorems in `supDegree` from some theorems about those specialized declarations; - simplify proofs of more theorems about those specialized declarations with theorems in `supDegree`; - add `D.Injective` as a hypothesis of `{AddMonoidAlgebra,MvPolynomial}.leadingCoeff` or add another definition natural for cases where `D` is not injective. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-ring-theory 415/188 Mathlib.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/SchwartzZippel.lean,Mathlib/Algebra/MvPolynomial/SupDegree.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/NoetherNormalization.lean 13 2 ['Hagb', 'github-actions'] nobody
0-3438
57 minutes ago
unknown
0-0
0 seconds
36155 grunweg
author:grunweg
feat: custom elaborators for TangentSpace and tangentMap(Within) And use these to golf the differential geometry files a bit further. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-meta 161/106 Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/MFDeriv/Tangent.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/Riemannian/Basic.lean,Mathlib/Geometry/Manifold/Riemannian/PathELength.lean,Mathlib/Topology/FiberBundle/Constructions.lean,MathlibTest/DifferentialGeometry/Notation/Basic.lean 11 13 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'ocfnash'] JovanGerb
assignee:JovanGerb
0-3319
55 minutes ago
0-5635
1 hour ago
71-34906
71 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
0-3126
52 minutes ago
0-57511
15 hours ago
1-46224
1 day
39793 grunweg
author:grunweg
feat: make the `dupNamespace` linter catch any duplicate namespace(s) Before this PR, the `dupNamespace` linter would only flag a namespace as duplicate if it was repeated in two consecutive positions: `Foo.Foo.bar` would be linted, but neither `Foo.Bar.Foo.Bar.baz` nor `Foo.Bar.Foo.Baz.baz` would be (even though they are very likely unintentional). Strengthen the linter check, to error if any namespace component is duplicated. This has few false positives (which we manually annotate), but catches many pre-existing cases where the duplication was clearly unintentional and undesirable. Most of the mathlib adaptation was done in #39794. --- - [x] depends on: #39794 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter awaiting-author awaiting-CI 187/20 Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Analysis/InnerProductSpace/JointEigenspace.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Adj.lean,Mathlib/CategoryTheory/Groupoid/VertexGroup.lean,Mathlib/CategoryTheory/Subobject/Classifier/Defs.lean,Mathlib/Data/Set/FiniteExhaustion.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/GroupTheory/Submonoid/Inverses.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/TensorProduct/Maps.lean,Mathlib/Tactic/Linter/Lint.lean,MathlibTest/Lint.lean 18 29 ['SnirBroshi', 'github-actions', 'grunweg', 'joneugster', 'kim-em', 'leanprover-radar', 'mathlib-dependent-issues'] joneugster and thorimur
assignee:joneugster assignee:thorimur
0-3035
50 minutes ago
0-66582
18 hours ago
1-70950
1 day
39506 b-mehta
author:b-mehta
feat(Data/Complex/Basic): add simproc to reduce powers of I This is enabled by default to make eg i^5 simplify automatically. We intentionally require the exponent to be a numeral, as this is intended to be a reduction statement, and for symbolic `n`, the lemma `I_pow_eq_pow_mod` should be used instead. Note that we can't have `I_pow_eq_pow_mod` as a simp lemma due to looping. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 65/5 Mathlib/Algebra/Group/Defs.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Data/Complex/Basic.lean,MathlibTest/Simproc/IPow.lean 5 15 ['Paul-Lez', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-2189
36 minutes ago
0-36201
10 hours ago
12-32262
12 days
39951 chrisflav
author:chrisflav
refactor(CategoryTheory/Sites): replace `Functor.inducedTopology` The current `Functor.inducedTopology` is only defined for a locally fully faithful and locally cover dense functor and in the general situation it does not make the functor continuous. We change the situation in two ways: - Replace `Functor.inducedTopology` by the induced topology in the sense of SGA, III, 3.1: The finest topology on the domain making a functor continuous. - Add `Functor.restrictedTopology`: This is the coarsest topology on the domain containing all sieves whose image generates a covering sieve in the codomain. In general, a functor does not preserve covers for this topology and in particular is not necessarily continuous. The old `Functor.inducedTopology` is equal (but not def-eq) to the new `Functor.restrictedTopology` whenever the old definition applies. In the situation where `Functor.restrictedTopology` makes the functor continuous, for example when `F` is flat, locally fully faithful and locally cover dense, the two topologies agree. Related Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Induced.20topology.20on.20a.20category/with/593098526 From Proetale. --- - [ ] depends on: #39961 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 294/122 Mathlib.lean,Mathlib/AlgebraicGeometry/Sites/Affine.lean,Mathlib/AlgebraicGeometry/Sites/AffineEtale.lean,Mathlib/AlgebraicGeometry/Sites/Proetale.lean,Mathlib/AlgebraicGeometry/Sites/Small.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/CategoryTheory/MorphismProperty/CommaSites.lean,Mathlib/CategoryTheory/Sites/Coherent/Equivalence.lean,Mathlib/CategoryTheory/Sites/Coherent/SheafComparison.lean,Mathlib/CategoryTheory/Sites/DenseSubsite/InducedTopology.lean,Mathlib/CategoryTheory/Sites/Equivalence.lean,Mathlib/CategoryTheory/Sites/InducedTopology.lean 12 4 ['dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
0-2050
34 minutes ago
0-2125
34 minutes ago
1-20225
1 day
40013 WilliamCoram
author:WilliamCoram
feat: define bounded sets and power bounded elements We define bounded sets, so that we can define power bounded elements in a topological ring. Using this we generalise some notions of topoligcally nilpotent elements and define a residue field. AI usage: some proofs were initially generated with Claude code before being cleaned and/or rewritten by hand. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology LLM-generated large-import 431/5 Mathlib.lean,Mathlib/Topology/Algebra/Bounded.lean,Mathlib/Topology/Algebra/PowerBounded.lean,Mathlib/Topology/Algebra/TopologicallyNilpotent.lean 4 4 ['WilliamCoram', 'github-actions', 'wwylele'] nobody
0-1843
30 minutes ago
0-1922
31 minutes ago
0-77752
21 hours
39771 kim-em
author:kim-em
feat(GroupTheory/PCore): define the `p`-core of a subgroup This PR adds `Subgroup.pCore p H`, the largest normal `p`-subgroup of a subgroup `H : Subgroup G` (classically `O_p(H)`), defined as the supremum of all normal `p`-subgroups. Even without finiteness or primality hypotheses, this is itself a normal `p`-group (the family of normal `p`-subgroups is directed under `≤`, so every element of the supremum lies in some specific summand). For the classical `O_p(G)`, take `pCore p (⊤ : Subgroup G)`. API covers the universal-property characterisations (`le_pCore`, `normal_le_pCore`, `mem_pCore_iff`, `pCore_eq_bot_iff`, `pCore_eq_top_iff`, `pCore_zero`, `pCore_one`), the Sylow alignment `pCore p H = ⨅ P : Sylow p H, (P : Subgroup H)`, and behaviour under group homomorphisms via `MonoidHom.subgroupMap` and `MonoidHom.subgroupComap` (`map_pCore_le_pCore`, `comap_pCore_eq_pCore` and friends, `MulEquiv.map_pCore`). Also adds `Subgroup.normal_iSup_normal` in `Mathlib/Algebra/Group/Subgroup/Pointwise.lean` (the supremum of a family of normal subgroups is normal) as the sibling of the existing `normal_iInf_normal`, and `ker_subgroupComap` in `Mathlib/Algebra/Group/Subgroup/Ker.lean` alongside the existing `ker_subgroupMap`. Both marked `@[to_additive]`. Used downstream in [leanprover/lean-eval#311](https://github.com/leanprover/lean-eval/pull/311) to state the Baer-Suzuki theorem as a [lean-eval](https://lean-lang.org/eval) problem. 🤖 Prepared with Claude Code t-group-theory 272/0 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/GroupTheory/PCore.lean 4 15 ['SnirBroshi', 'Whysoserioushah', 'adomani', 'github-actions', 'kim-em', 'tb65536'] tb65536
assignee:tb65536
0-1689
28 minutes ago
5-1038
5 days ago
5-3767
5 days
39888 adomani
author:adomani
ci(decls-diff): post-build workflow that emits a Lean-aware diff into the step summary Stage 2 of the Lean-aware declarations-diff feature. Stage 1 (#39880) made the producer side write `decls.txt` + `imports.json` into the `import-graph` artifact; this PR adds the consumer. ## What this PR adds A new `.github/workflows/decls-diff.yml` workflow that fires on `workflow_run` completion of the `ci` workflow (PR builds only), and: 1. Resolves the new commit's SHA and the merge-base against master. 2. Downloads the `import-graph` artifact from both sides — the triggering PR run, and the most recent master `ci` run at the merge-base. 3. Sparse-checks-out mathlib's local actions from `${{ github.workflow_sha }}` (the trusted base-branch ref), invokes `get-mathlib-ci`, and then calls leanprover-community/mathlib-ci's [`decls-diff` composite action](https://github.com/leanprover-community/mathlib-ci/pull/43) to compute the diff and render a Markdown body. 4. Writes the rendered diff to that run's `$GITHUB_STEP_SUMMARY`. If the master-side artifact isn't found for the merge-base (a bors-batch-intermediate cache miss), the step summary gets an explanatory message instead and no further work runs. ## Stage-2 scope: step summary only There's no `### PR summary` comment patching here. That behaviour ships in stage 3 along with the patcher script. Stage 2 lets reviewers evaluate the rendering quality without us touching PR comments under the bot's identity. ## Security notes * `Checkout local actions` sparse-checks-out `.github/actions/` from `${{ github.workflow_sha }}` into `workflow-actions/`, so `Get mathlib-ci` resolves against the trusted base-branch copy of the action rather than the PR-branch copy. Same pattern as `build_template.yml`'s `build` job and the `post_steps` `Get mathlib-ci` step added to #39880. * Cross-repo `decls-diff` action is SHA-pinned to the mathlib-ci PR's branch HEAD (`5802cc4c1d`); `update_dependencies.yml` will roll it forward to the merged-master SHA once leanprover-community/mathlib-ci#43 lands. * `permissions:` is read-only (`contents: read` for the checkout, `actions: read` for cross-workflow artifact downloads); no write tokens flow to consumers. * Artifact contents are treated as data — fed to `comm`/`sort`/`sed`/`printf` and emitted verbatim into the step summary. Never executed, never path-interpreted. ## Dependencies * leanprover-community/mathlib-ci#43 (companion PR; adds the action this workflow invokes). 🤖 Generated with [Claude Code](https://claude.com/claude-code) CI LLM-generated 122/0 .github/workflows/decls-diff.yml 1 3 ['bryangingechen', 'github-actions'] nobody
0-688
11 minutes ago
3-49271
3 days ago
3-49233
3 days
40039 ADedecker
author:ADedecker
chore: rename Pi.ringHom to RingHom.pi Discussed on Zulip at https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Pi.2EfooHom.20or.20FooHom.2Epi/near/598538630 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 75/63 Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/Under/Limits.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Ring/Pi.lean,Mathlib/AlgebraicGeometry/Morphisms/Flat.lean,Mathlib/AlgebraicGeometry/PointsPi.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/ConvexBody.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Pure.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Idempotents.lean,Mathlib/RingTheory/Localization/Pi.lean,Mathlib/RingTheory/Spectrum/Maximal/Localization.lean 16 1 ['github-actions'] nobody
0-465
7 minutes ago
0-461
7 minutes ago
0-2439
40 minutes
40041 JovanGerb
author:JovanGerb
chore: use `inferInstanceAs` for `OrderDual` instances This PR uses the new `inferInstanceAs` to generate the algebraic instances on `OrderDual`. If this goes well, `Lex` and `Colex` should be done next. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 101/162 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Order/Group/Action/Synonym.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Action/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Synonym.lean,Mathlib/Algebra/Order/Ring/Synonym.lean 6 0 [] nobody
0-441
7 minutes ago
0-441
6 minutes ago
0-403
6 minutes
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'] nobody
0-250
4 minutes ago
3-54280
3 days ago
3-54242
3 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 awaiting-author 10/0 .github/workflows/build_template.yml 1 3 ['adomani', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
0-225
3 minutes ago
0-83177
23 hours ago
2-54813
2 days

Other lists of PRs

Some other lists of PRs which could be useful:

PRs from a branch of the main mathlib repo

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
13847 alreadydone
author:alreadydone
feat(EllipticCurve): the universal elliptic curve + Define the universal Weierstrass curve (`Universal.curve`) over the polynomial ring `ℤ[A₁,A₂,A₃,A₄,A₆]`, and the universal pointed elliptic curve (`Universal.pointedCurve`) over the field of fractions (`Universal.Field`) of the universal ring `ℤ[A₁,A₂,A₃,A₄,A₆,X,Y]/⟨P⟩ = Universal.Poly/⟨P⟩` (`Universal.Ring`, where `P` is the Weierstrass polynomial) with distinguished point `(X,Y)`. + Given a Weierstrass curve `W` over a commutative ring `R`, we define the specialization homomorphism `W.specialize : ℤ[A₁,A₂,A₃,A₄,A₆] →+* R`. If `(x,y)` is a point on the affine plane, we define `W.polyEval x y : Universal.Poly →+* R`, which factors through `W.ringEval x y : Universal.Ring →+* R` if `(x,y)` is on `W`. + Introduce the cusp curve `Y² = X³`, on which lies the rational point `(1,1)`, with the nice property that `ψₙ(1,1) = n`, making it easy to prove nonvanishing of the universal `ψₙ` when `n ≠ 0` by specializing to the cusp curve, which shows that `(X,Y)` is a point of infinite order on the universal pointed elliptic curve. --- - [x] depends on: #13845 - [x] depends on: #12883 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-algebraic-geometry
label:t-algebra$
543/208 Mathlib.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean 6 4 ['Multramate', 'alreadydone', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11659
1 year ago
unknown
0-0
0 seconds
13297 urkud
author:urkud
feat(Semicontinuous): add `comp` lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 31/13 Mathlib/Topology/Semicontinuous.lean 1 3 ['sgouezel', 'urkud'] nobody
668-11658
1 year ago
732-12356
732 days ago
0-18201
5 hours
12608 eric-wieser
author:eric-wieser
feat: allow `nsmul` / `zsmul` to be omitted again, with a warning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-meta
label:t-algebra$
118/2 Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DefaultFieldLinter.lean,scripts/noshake.json,test/default_field_linter.lean 6 12 ['YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions'] nobody
668-11657
1 year ago
757-44076
757 days ago
0-84
1 minute
13057 alreadydone
author:alreadydone
feat(NumberTheory): characterize elliptic divisibility sequences Main results: + Every `normEDS` is an elliptic divisibility sequence (EDS). The key proof is `rel₄_of_anti_oddRec_evenRec`, based on my original argument first published on [MathSE](https://math.stackexchange.com/a/4903422/12932) + Conversely, every EDS is equal to some `normEDS` (assuming that the first two terms are not zero divisors) --- - [ ] depends on: #13155 - [x] depends on: #13153 - [x] depends on: #10843 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-number-theory blocked-by-other-PR
label:t-algebra$
1032/55 Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Data/Int/Defs.lean,Mathlib/Data/Int/Parity.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 5 6 ['Multramate', 'alreadydone', 'kbuzzard', 'leanprover-community-mathlib4-bot'] nobody
668-11657
1 year ago
736-36085
736 days ago
0-34672
9 hours
12192 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: generalize isLittleO_const_id_atTop/atBot From PNT+. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 10/4 Mathlib/Analysis/Asymptotics/Asymptotics.lean 1 6 ['Ruben-VandeVelde', 'llllvvuu', 'urkud'] nobody
668-11656
1 year ago
772-33752
772 days ago
1-21749
1 day
10024 ADedecker
author:ADedecker
feat: rename `connectedComponentOfOne` to `identityComponent`, prove that it is normal and open --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology awaiting-CI 58/24 Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/Connected/Basic.lean 5 0 [] nobody
668-11655
1 year ago
855-3779
855 days ago
0-832
13 minutes
10521 eric-wieser
author:eric-wieser
chore: generalize `IsBoundedLinearMap` to modules Most of the lemmas don't actually need the normed on the scalars at all. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 58/42 Mathlib/Analysis/NormedSpace/BoundedLinearMaps.lean 1 3 ['github-actions', 'j-loreaux', 'urkud'] nobody
668-11655
1 year ago
834-66105
834 days ago
1-29105
1 day
10721 urkud
author:urkud
feat(Order/FunLike): define `PointwiseLE` - introduce a mixin class `DFunLike.PointwiseLE`, use it to define `DFunLike.instPartialOrder`; - add a generic `DFunLike.orderEmbeddingCoe` - add `DFunLike.PointwiseLE` instances here and there. With this refactor and #13022, I'm going to generalize lemmas like `MeasureTheory.ae_mono` to `OuterMeasureClass`. --- - [x] depends on: #12983 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order t-logic 123/50 Mathlib.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/GroupTheory/Congruence.lean,Mathlib/Order/FunLike.lean,Mathlib/Order/Heyting/Hom.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/Bounded.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Topology/Order/Hom/Basic.lean 13 48 ['YaelDillies', 'dupuisf', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
668-11655
1 year ago
717-76457
717 days ago
64-12984
64 days
11100 eric-wieser
author:eric-wieser
feat(CategoryTheory/Limits): add `Functor.mapBinaryBiconeInv` --- - [ ] depends on: #11130 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) It's tempting to try to prove something like ```lean theorem Functor.mapBinaryBiconeInv_toCone [Limits.HasZeroMorphisms C] [Limits.HasZeroMorphisms D] (e : D ⥤ C) [IsEquivalence e] {X Y : D} (b : BinaryBicone (e.obj X) (e.obj Y)) : (e.mapBinaryBiconeInv b).toCone = (e.mapConeInv <| (Cones.postcompose (pairComp X Y e).symm.hom).obj b.toCone) := by simp sorry theorem Functor.mapBinaryBiconeInv_toCocone [Limits.HasZeroMorphisms C] [Limits.HasZeroMorphisms D] (e : D ⥤ C) [IsEquivalence e] {X Y : D} (b : BinaryBicone (e.obj X) (e.obj Y)) : (e.mapBinaryBiconeInv b).toCocone = (e.mapCoconeInv <| (Cocones.precompose (pairComp X Y e).hom).obj b.toCocone) := by sorry ``` but maybe equality is evil here merge-conflict t-category-theory awaiting-CI 52/0 Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Biproducts.lean 3 6 ['TwoFX', 'eric-wieser', 'leanprover-community-mathlib4-bot'] nobody
668-11655
1 year ago
unknown
0-0
0 seconds
8503 thorimur
author:thorimur
feat: meta utils for `refine?` This PR introduces some metaprogramming infrastructure and utilities that are necessary for `refine?` (#8364). * `elabTermWithHoles'` (and `withCollectingNewGoalsFrom'`): a more configurable version of `elabTermWithHoles`, which allows: preserving the initial mvar type; *not* tagging untagged goals; and postponing mvars. * Some `Syntax` and `TSyntax` functionality, including: * `TSyntax.map`(`M`), for acting on `TSyntax` with functions `f : Syntax -> (m) Syntax` * Range operations: `includes` and `isEqByRange` * `setTrailingInfoBy?` and `unsetOriginalTrailing`, which is like `unsetTrailing`, but behaves as expected. * `Term.withoutModifyingState`, which does not allow unknown mvarIds to escape via the infotree * `hasNewErrors`, which runs a monad computation and returns the value along with `true` or `false` depending on whether new error messages have been logged * the option `pp.anonymousMVarSuffixes`, which can be set to `false` to replace all numeric suffixes of anonymous mvars with `✝`, which is useful in tandem with `#guard_msgs` for tests (but is essentially a workaround—although it can make some tactic states more legible). --- I'm open to suggestions on the location and name of the option/delaborator used for trimming the numeric suffixes of anonymous mvar names (which is used in the tests)—including whether or not it should exist in the first place, as it's essentially just a workaround. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 312/5 Mathlib.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Tactic/ElabTerm.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Util/Delaborators.lean,Mathlib/Util/Syntax.lean 6 2 ['kmill', 'thorimur'] kmill
assignee:kmill
668-11654
1 year ago
884-70378
884 days ago
38-46649
38 days
8519 eric-wieser
author:eric-wieser
refactor(LinearAlgebra/TensorProduct): golf using `liftAddHom` This new `TensorProduct.liftAddHom` doesn't require bilinearity, only that scalar multiplication can be moved between the arguments. While in theory we only need the `AddMonoidHom` version as it offers exactly the same generality, we first provide an unbundled `liftFun` as this seems to give a sizeable performance boost if used in downstream `lift` variants. --- - [x] depends on: #8571 - [x] depends on: #8584 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
53/50 Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean 3 28 ['bustercopley', 'eric-wieser', 'jcommelin', 'jjaassoonn', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors'] nobody
668-11654
1 year ago
907-63417
907 days ago
5-6524
5 days
8616 eric-wieser
author:eric-wieser
feat(Algebra/FreeAlgebra): add right action and `IsCentralScalar` --- - [ ] depends on: #8652 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI
label:t-algebra$
30/8 Mathlib/Algebra/FreeAlgebra.lean 1 1 ['leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
915-45596
915 days ago
2-25170
2 days
8658 eric-wieser
author:eric-wieser
feat: support right actions for `Con` This adds a new `Con.CompatibleSMul` typeclass that captures exactly the condition when `smul` descends to the quotient. I was not quite able to merge this with `MulAction.QuotientAction`: * The imports are such that the congruence relation `QuotientGroup.con` is not yet available in that file * `QuotientGroup.con` requires the subgroup to be normal, while `MulAction.QuotientAction` does not --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
80/18 Mathlib/GroupTheory/Congruence.lean,Mathlib/RingTheory/Congruence.lean 2 6 ['YaelDillies', 'eric-wieser'] nobody
668-11654
1 year ago
884-63701
884 days ago
29-65537
29 days
8788 FMLJohn
author:FMLJohn
feat(Algebra/Module/GradeZeroModule): if `A` is a graded semiring and `M` is a graded `A`-module, then each grade of `M` is a module over the 0-th grade of `A`. --- - [ ] depends on: #8187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
237/4 Mathlib.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean 6 4 ['FMLJohn', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
908-1550
908 days ago
1-57831
1 day
8906 jjaassoonn
author:jjaassoonn
feat: add some missing lemmas about linear algebra --- - [ ] depends on: #8905 [lifting injective modules to higher universe] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
45/1 Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/LinearAlgebra/Basic.lean,Mathlib/LinearAlgebra/BilinearMap.lean 4 21 ['AntoineChambert-Loir', 'alreadydone', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
903-71148
903 days ago
0-343
5 minutes
8961 eric-wieser
author:eric-wieser
refactor: use the coinduced topology on ULift --- - [x] depends on: #8958 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict awaiting-author awaiting-CI 46/14 Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/Constructions.lean 3 6 ['eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
668-11654
1 year ago
901-43484
901 days ago
0-1
1 second
9146 laughinggas
author:laughinggas
feat(Data/ZMod/Defs): Topological structure on `ZMod` Added a discrete topology structure to `ZMod n` for all `n` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-topology
label:t-algebra$
55/3 Mathlib.lean,Mathlib/Topology/Algebra/Constructions.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Instances/ZMod.lean,Mathlib/Topology/Maps.lean 5 61 ['YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'laughinggas', 'mo271', 'urkud'] nobody
668-11654
1 year ago
874-56145
874 days ago
7-11053
7 days
9229 eric-wieser
author:eric-wieser
refactor(Algebra/GradedMonoid): Use `HMul` to define `GMul` This make the notation much nicer, but I'm pretty sure this is a bad idea for performance / ambiguity reasons. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
114/125 Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/GradedMulAction.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/LinearAlgebra/TensorAlgebra/ToTensorPower.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean 11 6 ['eric-wieser', 'leanprover-bot'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9354 chenyili0818
author:chenyili0818
feat: monotonicity of gradient on convex real-valued functions This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 540/0 Mathlib.lean,Mathlib/Analysis/Convex/ConvexFunction.lean 2 15 ['github-actions', 'winstonyin'] nobody
668-11654
1 year ago
858-42280
858 days ago
23-36394
23 days
9356 alexjbest
author:alexjbest
feat: assumption? A little helper for replacing `assumption`s with `exact` statements quickly --- If this is approved I will add tests This begs the question of whether it might simply be better to add some sort of code action for "replace with trythis output" [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 24/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/TryAssumption.lean 4 5 ['alexjbest', 'j-loreaux', 'jcommelin'] nobody
668-11654
1 year ago
862-47652
862 days ago
19-26336
19 days
9469 dupuisf
author:dupuisf
feat: maximum modulus principle for functions vanishing at infinity This PR adds versions of the maximum modulus principle for functions vanishing at infinity that parallel those we already had for functions over a bounded set. These will have applications in e.g. norm interpolation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-analysis 71/0 Mathlib/Analysis/Complex/AbsMax.lean 1 8 ['dupuisf', 'j-loreaux'] nobody
668-11654
1 year ago
862-52900
862 days ago
12-86009
12 days
9487 eric-wieser
author:eric-wieser
feat: the exponential of dual numbers over non-commutative rings This is a work in progress, as I don't know my way around the measure theory library. --- - [x] depends on: #9489 - [x] depends on: #9486 - [x] depends on: #10427 - [ ] depends on: #10452 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-measure-probability merge-conflict t-analysis
label:t-algebra$
97/0 Mathlib/Analysis/NormedSpace/TrivSqZeroExt.lean 1 7 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9510 eric-wieser
author:eric-wieser
feat(Analysis/Calculus/DualNumber): Extending differentiable functions to dual numbers This shows that this operation preserves multiplication and composition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-analysis awaiting-CI
label:t-algebra$
119/0 Mathlib/Analysis/Calculus/DualNumber.lean 1 4 ['github-actions'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9570 eric-wieser
author:eric-wieser
feat(Algebra/Star): Non-commutative generalization of `StarModule` [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Star.20modules.20over.20non-commutative.20scalars/near/383664005). Until we address #7152, we have to have both `StarModule` and `StarModule'`. To prove this generalization is useful, this shows that with it as an assumption, `TrivSqZeroExt` is a `StarRing`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra awaiting-CI
label:t-algebra$
66/6 Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Pi.lean,Mathlib/Algebra/Star/Prod.lean,Mathlib/Algebra/TrivSqZeroExt.lean 4 0 [] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
9642 eric-wieser
author:eric-wieser
refactor(Analysis/Normed/{Group/Field}/Basic): Let `extends` generate the repeated fields New-style structure shenanigans mean that instance constructors randomly complain about a missing field that can be found with `__ : MetricSpace _ := infer_instance`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) I will write a longer PR description for this once CI is happy WIP merge-conflict awaiting-author help-wanted t-analysis 122/202 Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Completion.lean,Mathlib/Analysis/Normed/Order/Basic.lean,Mathlib/Analysis/NormedSpace/ProdLp.lean,Mathlib/Analysis/NormedSpace/Star/Matrix.lean,Mathlib/Analysis/NormedSpace/Unitization.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean 17 11 ['eric-wieser', 'leanprover-bot', 'urkud'] nobody
668-11654
1 year ago
unknown
0-0
0 seconds
6580 adomani
author:adomani
chore: `move_add`-driven replacements This PR accompanies #6576 and uses `move_add/mul` to simplify/streamline a selection of proofs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 12/13 Counterexamples/Monic_nonRegular.lean,Mathlib/Algebra/Associated.lean,Mathlib/Data/Polynomial/RingDivision.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean 4 0 [] nobody
668-11653
1 year ago
953-60817
953 days ago
62-34247
62 days
6630 MohanadAhmed
author:MohanadAhmed
feat: Reduced Spectral Theorem For A hermitian matrix $A : n \times n$ with rank $A.rank \leq n$, we can eliminate the zero eigenvalues and their corresponding eigenvectors from the (alternate) spectral theorem. As such the matrix $A$ can be written as: $$A = V₁ D V₁ᴴ$$ where - $V₁$ : $n \times r$ is the matrix of eigenvector with non-zero associated eigenvalues. - $D$ is $r \times r$ is the diagonal matrix containing only non-zero eigenvalues on its main diagonal. with $r = A.rank$ being the rank of the matrix Towards that goal we make several equivalence definitions: - `{i // hA.eigenvalues i ≠ 0} ≃ Fin (A.rank)` the set of non-zero eigenvalues can be indexed by the numbers from 0 to (r - 1). - `{i // ¬ hA.eigenvalues i ≠ 0} ≃ Fin (n - A.rank)` the set of non-zero eigenvalues can be indexed by the numbers from 0 to (n - r - 1). - `{i // hA.eigenvalues i ≠ 0} ⊕ {i // ¬hA.eigenvalues i ≠ 0} ≃ n`: the index set of the matrix (together with the associated eigenvector matrix and eigenvalues matrix ) can be partitioned into two complement groups the ones corresponding to non-zero eigenvalues and the ones corresponding to zero eigenvalues. - We can then put the previous definitions together to obtain a: `Fin (A.rank) ⊕ Fin (Fintype.card n - A.rank) ≃ n` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
31/0 Mathlib/LinearAlgebra/Matrix/Spectrum.lean 1 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
6777 adomani
author:adomani
chore(Co*variantClass): replace eta-expanded (· * ·), (· + ·), (· ≤ ·), (· < ·) Replace `CovariantClass X X (· * ·) (· ≤ ·)` with -> `CovariantClass X X HMul.hMul LE.le` and similarly for `HAdd`, `LT`, `Contravariant`. This PR is inspired by [Issue #6646](https://github.com/leanprover-community/mathlib4/issues/6646) and, more specifically, [this comment](https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1692792066). Note that https://github.com/leanprover/lean4/pull/2267 would make this unnecessary --- ```bash # First sed command: # the first captured pattern is `Co*variantClass ` # the second captured pattern is `` # the third captured pattern is `+` or `*` # the fourth captured pattern is `<` or `≤` # a match for `Co*variantClass ·) (· ·)` becomes # `Co*variantClass replaceop replaceop` # Second sed command: similar to the first, but looks for `(Function.swap (· ·))` sed -i ' s=\(Co[ntra]*variantClass \(..*\) \2 \)(· *\([+*]\) *·) (· *\([<≤]\) *·)=\1replaceop\3 replaceop\4=g s=\(Co[ntra]*variantClass \(..*\) \2 \)(\([Functio\.swap ]*\)(· *\([+*]\) *·)) (· *\([<≤]\) *·)=\1(\3replaceop\4) replaceop\5=g s=replaceop+=HAdd.hAdd=g s=replaceop\*=HMul.hMul=g s=replaceop<=LT.lt=g s=replaceop≤=LE.le=g s=\(Co[ntra]*variantClass N N\) (· \* ·) r=\1 HMul.hMul r=g s=\(Co[ntra]*variantClass N N (swap μ)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass N N\) (swap (· \* ·)) r=\1 (swap HMul.hMul) r=g s=\(CovariantClass (Filter α) (Filter α)\) (· / ·) (· ≤ ·)=\1 HDiv.hDiv LE.le=g s=\(CovariantClass (Filter α) (Filter α)\) (swap (· / ·)) (· ≤ ·)=\1 (swap HDiv.hDiv) LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· ≤ ·)=\1 LE.le=g s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· < ·)=\1 LT.lt=g s=\(Co[ntra]*variantClass [^}]*\) (· ≤ ·)=\1 LE.le=g s=\(CovariantClass .* (Filter β)\) (· • ·) LE.le=\1 HSMul.hSMul LE.le=g ' $(git ls-files '*.lean') ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 703/678 Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/Bounds.lean,Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/GroupPower/Order.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/MinMax.lean,Mathlib/Algebra/Order/Group/OrderIso.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/LatticeGroup.lean,Mathlib/Algebra/Order/Module.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Cancel/Defs.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Lemmas.lean,Mathlib/Algebra/Order/Monoid/MinMax.lean,Mathlib/Algebra/Order/Monoid/NatCast.lean,Mathlib/Algebra/Order/Monoid/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithZero/Basic.lean,Mathlib/Algebra/Order/Monoid/WithZero/Defs.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Lemmas.lean,Mathlib/Algebra/Order/Sub/Basic.lean,Mathlib/Algebra/Order/Sub/Canonical.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Order/WithZero.lean,Mathlib/Algebra/Parity.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Normed/Order/Lattice.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/List/BigOperators/Basic.lean,Mathlib/Data/List/BigOperators/Lemmas.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Nat/Cast/Order.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/Real/ENNReal.lean,Mathlib/Data/Real/NNReal.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/Data/Sign.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/VectorMeasure.lean,Mathlib/Order/ConditionallyCompleteLattice/Group.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/PGame.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Topology/ContinuousFunction/Algebra.lean,lean-toolchain,test/Recall.lean,test/propose.lean 81 37 ['adomani', 'alreadydone', 'digama0', 'eric-wieser', 'ericrbg', 'jcommelin', 'leanprover-bot', 'sgouezel', 'vihdzp'] nobody
668-11653
1 year ago
942-63550
942 days ago
35-63136
35 days
6791 eric-wieser
author:eric-wieser
refactor: Use flat structures for morphisms This restores the symmetry we had in Lean3, where we had `MonoidHom.mk f one mul` not `MonoidHom.mk (OneHom.mk f one) mul`, and `f.toFun` wasn't notation for `f.toMulHom.toFun`. The nesting provided by the previous inheritance is useless to us in the face of `MonoidHomClass.toMonoidHom`, which completely eta-expands the structure anyway. We call the class `FunLikeFlatHack._` because this means the field is called `to_` which uses up less space in the goal view than any alternative. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted awaiting-CI 174/201 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Category/GroupCat/ZModuleEquivalence.lean,Mathlib/Algebra/Category/GroupWithZeroCat.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/Hom/Equiv/Basic.lean,Mathlib/Algebra/Hom/Group/Defs.lean,Mathlib/Algebra/Hom/GroupAction.lean,Mathlib/Algebra/Hom/NonUnitalAlg.lean,Mathlib/Algebra/Hom/Ring/Defs.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Module/Equiv.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Order/Interval.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Analysis/Normed/Group/SemiNormedGroupCat.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/Rat/Cast/CharZero.lean,Mathlib/Data/Real/EReal.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/RingTheory/RingInvo.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/MetricSpace/Dilation.lean 32 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
6930 kmill
author:kmill
feat: `resynth_instances` tactic for resynthesizing instances in the goal or local context This tactic can be useful for debugging non-canonical instances or for fixing up goals and hypotheses after using the `classical` tactic. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 327/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ResynthInstances.lean,test/ResynthInstances.lean 4 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
6931 urkud
author:urkud
refactor(Analysis/Normed*): use `RingHomIsometric` for `*.norm_cast` --- I don't understand why linter fails. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted t-analysis 78/68 Mathlib/Analysis/LocallyConvex/ContinuousOfBounded.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/NormedSpace/Basic.lean,Mathlib/Analysis/NormedSpace/Exponential.lean,Mathlib/Analysis/NormedSpace/Spectrum.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean 8 0 [] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7227 kmill
author:kmill
feat: flexible binders and integration into notation3 Introduces `flexibleBinders`, which is an extensible system for binder notations that allow destructuring, bounded domains, and other niceties. Integrates this into `notation3`, and makes `Finset.sum`/`Finset.prod` use it. --- - [ ] depends on: #6833 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 1215/131 Mathlib.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Mathport/Notation.lean,Mathlib/Util/FlexibleBinders.lean,Mathlib/Util/FlexibleBindersFinset.lean,Mathlib/Util/SyntaxFun.lean,test/FlexibleBinders.lean,test/notation3.lean 10 3 ['eric-wieser', 'kmill', 'leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7351 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/Algebra/Order): extend function on `Ioo` to `Icc` Extend a strictly monotone function defined on an open interval. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-order 59/0 Mathlib.lean,Mathlib/Data/Set/Function.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean 3 7 ['j-loreaux', 'shuxuezhuyi'] nobody
668-11653
1 year ago
946-66881
946 days ago
30-32706
30 days
7467 ADedecker
author:ADedecker
feat: spectrum of X →ᵇ ℂ is StoneCech X --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 121/23 Mathlib/Analysis/NormedSpace/Star/BoundedContinuousFunction.lean,Mathlib/Analysis/NormedSpace/Star/GelfandDuality.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/ContinuousFunction/Compact.lean 4 1 ['github-actions'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7564 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/Algebra/Order): extend strictly monotone function on `Ioo` to homeomorphism on `Icc` A strictly monotone function between open intervals can be extended to a homeomorphism between the closed intervals. --- - [ ] depends on: #7351 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR 162/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean 2 1 ['leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
965-85285
965 days ago
0-537
8 minutes
7601 digama0
author:digama0
feat: ring hom support in `ring` As [requested on Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/aroots/near/395750055). Adds support for distributing ring morphisms in `ring`: ```lean example (p : ℤ[X]) (r : ℤ) : C (2 * r) * p = C r * p + C r * p := by ring ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-meta
label:t-algebra$
257/48 Mathlib/Tactic/Ring/Basic.lean,test/linear_combination.lean,test/ring.lean 3 1 ['eric-wieser'] nobody
668-11653
1 year ago
900-81656
900 days ago
62-28836
62 days
7615 eric-wieser
author:eric-wieser
chore(LinearAlgebra/Basic): generalize compatibleMaps to semilinear maps Spotted while reviewing #7611 --- - [x] depends on: #7611 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra easy awaiting-CI
label:t-algebra$
9/33 Mathlib/LinearAlgebra/Basic.lean 1 1 ['leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
962-46361
962 days ago
0-1
1 second
7713 RemyDegenne
author:RemyDegenne
feat: add_left/right_inj for measures `μ + ν₁ = μ + ν₂ ↔ ν₁ = ν₂`, and similarly on the right. This is not true in general for measures, but is true when `μ` is mutually singular with the two other measures or when `μ` is finite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 53/1 Mathlib/MeasureTheory/Measure/MutuallySingular.lean,lean-toolchain 2 6 ['RemyDegenne', 'digama0', 'eric-wieser', 'fpvandoorn'] nobody
668-11653
1 year ago
956-5791
956 days ago
0-62955
17 hours
7835 shuxuezhuyi
author:shuxuezhuyi
feat(LinearAlgebra/Matrix): `lift` for projective special linear group We provide converters to help with the use of "quotient.liftOn" on projective special linear groups. --- - [x] depends on: #7826 - [x] depends on: #7791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
52/0 Mathlib/LinearAlgebra/Matrix/ProjectiveSpecialLinearGroup.lean 1 3 ['jcommelin', 'leanprover-community-mathlib4-bot', 'shuxuezhuyi'] jcommelin
assignee:jcommelin
668-11653
1 year ago
814-21484
814 days ago
1-85797
1 day
7875 astrainfinita
author:astrainfinita
chore: make `SMulCommClass A A B` and `SMulCommClass A B B` higher priority --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
54/48 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/NormedSpace/lpSpace.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/GroupTheory/GroupAction/Prod.lean,Mathlib/GroupTheory/GroupAction/Ring.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/Topology/ContinuousFunction/ContinuousMapZero.lean,Mathlib/Topology/ContinuousFunction/StoneWeierstrass.lean,Mathlib/Topology/ContinuousFunction/ZeroAtInfty.lean 27 15 ['Parcly-Taxel', 'astrainfinita', 'jcommelin', 'leanprover-bot'] nobody
668-11653
1 year ago
722-28161
722 days ago
1-47913
1 day
7932 eric-wieser
author:eric-wieser
refactor(Algebra/TrivSqZeroExt): replace with a structure This is dogfooding my claim that "one-field structures are the lesser evil in Lean 4". This runs into the `simp [(stupid_parens)]` bug; or rather, a particular nasty instance of it where the offending simp call is inside `@[simps]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI
label:t-algebra$
155/73 Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/TrivSqZeroExt.lean,Mathlib/Logic/Equiv/TransferInstance.lean,Mathlib/Topology/Instances/TrivSqZeroExt.lean 4 1 ['github-actions'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
7962 eric-wieser
author:eric-wieser
feat: `DualNumber (Quaternion R)` as a `CliffordAlgebra` This provides a clifford algebra isomorphic to the dual quaternions --- - [x] depends on: #7934 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
307/7 Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/QuaternionBasis.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Equivs.lean 3 16 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
668-11653
1 year ago
unknown
0-0
0 seconds
8364 thorimur
author:thorimur
feat: `refine?` This PR adds `refine? e`, which suggests replacing unsynthesized `_`'s in `e` with `?_` in order to make `refine e'` work: ```lean example : Nat → Nat := by refine? fun (_ : _) => _ -- Try this: refine fun (_ : _) => ?_ ``` Note that this only suggests replacements for `_`'s present in the syntax; to create goals for implicit or instance arguments, the user is expected to use `refine'`. --- I'm especially open to suggestions on the filename (currently `RefineFix`). I'm also curious if this behaves as expected! Feel free to try it out "in real life" and comment here on edge cases. - [ ] depends on: #8503 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-meta 684/5 Mathlib.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Tactic/ElabTerm.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Tactic.lean,Mathlib/Tactic/RefineFix.lean,Mathlib/Util/Delaborators.lean,Mathlib/Util/Syntax.lean,test/RefineFix.lean 9 5 ['j-loreaux', 'leanprover-community-mathlib4-bot', 'thorimur'] nobody
668-11653
1 year ago
923-31787
923 days ago
6-59892
6 days
4871 j-loreaux
author:j-loreaux
feat: define the additive submonoid of positive elements in a star ordered ring This file defines the `AddSubmonoid` of nonegative elements `StarOrderedRing.positive R` in a star ordered ring `R` with carrier `{ x : R | 0 ≤ x }` (in fact, the definition only requires `OrderedAddCommMonoid R` to allow for other use cases, but it is primarily intended for `StarOrderedRing R`). Equivalently, this is the `AddSubmonoid` generated by the elements of the form `star s * s`. Even though this technically corresponds to the nonnegative elements, the "positive" terminology is standard throughout the literature (at least in C⋆-algebra theory and operator theory), so we choose to prefer that. The advantage of using this over other definitions of positivity is that it allows us to unify several different concepts under a single umbrella. For example, one might be tempted to consider the collection of bounded linear operators on an Hilbert space and define positivity as `∀ x, 0 ≤ ⟪T x, x⟫`, but this doesn't generalize nicely to C⋆-algebras. Alternatively, one could define positivity as those self-adjoint elements with nonnegative spectrum, but this requires the algebra to be unital. Our definition herein conveniently sidesteps these issues. --- Note: I declared the `AddMonoidWithOne` and `AddGroupWithOne` instances for `selfAdjoint R` separately because it made the proof of the latter easier. - [x] depends on: #6229 - [x] depends on: #10209 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-CI
label:t-algebra$
216/12 Mathlib.lean,Mathlib/Algebra/Order/Ring/CharZero.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Star/Positive.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/GroupTheory/Submonoid/Operations.lean 6 28 ['eric-wieser', 'j-loreaux', 'leanprover-community-mathlib4-bot'] nobody
668-11652
1 year ago
1080-84104
1080 days ago
5-55287
5 days
5133 kmill
author:kmill
feat: IntermediateField adjoin syntax for sets of elements Adds support for both `F⟮S⟯` and `F⟮α⟯`. The term `x` in `F⟮x⟯` is elaborated, and if it has type `Set _` the first interpretation is used, and otherwise the second is. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
110/55 Mathlib/FieldTheory/Adjoin.lean 1 0 [] nobody
668-11652
1 year ago
1079-12778
1079 days ago
0-20
20 seconds
5912 ADedecker
author:ADedecker
feat(Analysis.Distribution.ContDiffMapSupportedIn): space of smooth maps with support in a fixed compact --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 513/13 Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/Set/Function.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean 8 0 [] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6002 slerpyyy
author:slerpyyy
feat(Analysis.SpecialFunctions.Gaussian): add `integrable_fun_mul_exp_neg_mul_sq` If `f : ℝ → ℝ` is bounded by a polynomial, `fun x : ℝ => f x * exp (-b * x ^ 2)` is integrable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 26/0 Mathlib/Analysis/SpecialFunctions/Gaussian.lean 1 3 ['ocfnash', 'slerpyyy', 'urkud'] nobody
668-11652
1 year ago
1036-12014
1036 days ago
9-71263
9 days
6195 eric-wieser
author:eric-wieser
chore(RingTheory/TensorProduct): golf the `mul` definition --- - [x] depends on: #6211 - [x] depends on: #6187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Strangely this causes a timeout downstream merge-conflict t-algebra awaiting-CI
label:t-algebra$
4/29 Mathlib/RingTheory/TensorProduct.lean 1 1 ['leanprover-community-mathlib4-bot'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6328 FR-vdash-bot
author:FR-vdash-bot
chore: make some instance about `Sub...Class` lower priority Many similar instances have been marked as lower priority. I'd like to see if this would make things faster. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra awaiting-CI
label:t-algebra$
14/14 Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/Subsemiring/Basic.lean,lean-toolchain 3 1 ['digama0'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6330 astrainfinita
author:astrainfinita
chore: make some instance about `Sub...Class` higher priority than `Sub...` The opposite direction to #6328. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra slow-typeclass-synthesis
label:t-algebra$
123/128 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/Subfield.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Subring/Basic.lean,Mathlib/RingTheory/Subsemiring/Basic.lean,lean-toolchain 11 13 ['astrainfinita', 'digama0', 'leanprover-bot'] nobody
668-11652
1 year ago
unknown
0-0
0 seconds
6491 eric-wieser
author:eric-wieser
chore(Mathlib/Algebra/Hom/GroupAction): add `SMulHomClass.comp_smul` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
24/10 Mathlib/Algebra/Hom/GroupAction.lean 1 0 [] nobody
668-11652
1 year ago
939-84052
939 days ago
83-76369
83 days
7076 grunweg
author:grunweg
feat: define measure zero subsets of a manifold A topological manifold has no canonical measure, but there is a canonical notion of measure zero subsets. We show that these are closed under subsets and countable unions (hence define a filter, the almost everywhere filter) and that a closed nowhere dense has empty interior. This is necessary for stating the general version of Sard's theorem (in finite dimensions), and a first step towards its proof. This code was written at LftCM 2023. Thanks for @fpvandoorn for mentoring me! :heart: --- Unresolved questions/looking for feedback - Is "measure zero" a good name or would "null set" be better? I tend towards the former, but welcome input from a measure theorist (which I'm not). - What is the correct definition? One could also define "measure zero" using any `IsOpenPosMeasure` on the charted space. I think all results in this file still hold then, but for applications (e.g., Sard's theorem), this might be too general. - define custom notation, similar to the a.e. filter on a measure space? (We could include $J$ instead of $\mu$.) - what's the right syntax for formulas in docstrings --- use LaTeX or backticks? I don't know how to preview the generated docs, the guidelines are a bit ambiguous for me. merge-conflict WIP t-differential-geometry t-measure-probability 165/0 Mathlib.lean,Mathlib/Geometry/Manifold/MeasureZero.lean,docs/references.bib 3 27 ['ADedecker', 'github-actions', 'grunweg', 'mo271', 'sgouezel'] ADedecker
assignee:ADedecker
668-11652
1 year ago
823-8961
823 days ago
43-56110
43 days
3757 thorimur
author:thorimur
feat: config options for `fail_if_no_progress` This PR creates config options for `fail_if_no_progress` that allow the user to tweak what exactly counts as "progress". This includes whether to use defeq or `BEq`, what transparency to use, and which parts of the goal and local context to check. It also splits off the comparison functionality into `Mathlib.Lean.Meta.Compare`, which provides fully configurable comparison functions for common complex metaprogramming types not specific to `fail_if_no_progress`. These types are `Expr`, `LocalDecl`, `LocalContext`, `MetavarDecl`, `MVarId`, and `List MVarId`. --- See [zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/progress.20on.20fail_if_no_progress) for a couple review questions. Status update: this PR is now basically done, save for some extra tests which should probably be included. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 603/54 Mathlib.lean,Mathlib/Lean/Meta.lean,Mathlib/Lean/Meta/Compare.lean,Mathlib/Tactic/FailIfNoProgress.lean,test/fail_if_no_progress.lean 5 38 ['alexjbest', 'github-actions', 'joneugster', 'kim-em', 'thorimur'] nobody
668-11651
1 year ago
1124-62733
1124 days ago
0-15
15 seconds
12353 thorimur
author:thorimur
feat: `conv%` This PR introduces `conv% e => tac`, along with `simp%`, `norm_num%`, and `push_neg%`, which are defined in terms of `conv%`. It also introduces `conv%?` (and `simp%?`, `norm_num%?`, and `push_neg%?`) as shortcuts for `show_term ...`. This is a relatively straightforward refactor of code already present in the implementation of `#conv`, and otherwise relies entirely on simple macros. This PR also introduces some modifications to existing command syntax for `#conv`, `#simp`, and `#norm_num`: * The syntax for `#conv` was `#conv tac => e`; however, this is inconsistent with the tactic syntax, and so this has been flipped to `#conv e => tac`. Likewise, `conv%` uses the same (new) syntax `conv% e => tac`. * `#simp` and `#norm_num` separated their config and `only` syntax from the expression by an optional `=>` (for `#simp`) and an optional `:` (for `#norm_num`) (e.g. `#simp only [lem] => e`). These have both been replaced with an optional`on` (e.g. `#simp only [lem] on e`) which is also used for `simp%` and `norm_num%`. Although `#whnf` is implemented in terms of `#conv`, this PR doesn't introduce `whnf%` in the same way, as that's probably better off being implemented directly instead of through `conv`. --- WIP: needs tests. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-meta 131/32 Mathlib/Tactic/Conv.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/PushNeg.lean,docs/Conv/Guide.lean 4 0 [] nobody
663-74361
1 year ago
767-26003
767 days ago
0-17
17 seconds
7903 urkud
author:urkud
feat: define `UnboundedSpace` --- The new instances generate some timeouts, and I don't understand why. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted t-topology 111/59 Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Topology/Bornology/Basic.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/GromovHausdorffRealized.lean 6 1 ['github-actions'] nobody
660-86030
1 year ago
unknown
0-0
0 seconds
15679 adomani
author:adomani
test: refactor in CI --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 213/5 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/CategoryTheory/Bicategory/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/Order/Filter/Cocardinal.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/TestRefactor.lean,Refactor/Main.lean,lakefile.lean,lean-toolchain 21 1 ['github-actions'] nobody
655-55206
1 year ago
657-64648
657 days ago
0-8
8 seconds
7565 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/Algebra/Order): extend homeomorphism of `Ioo` to `Icc` We extend the homeomorphisms between open intervals to homeomorphisms between the closed intervals. --- - [ ] depends on: #7018 - [ ] depends on: #7351 - [ ] depends on: #7564 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR t-order 389/5 Mathlib.lean,Mathlib/Data/Set/Intervals/Image.lean,Mathlib/Order/Directed.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean,Mathlib/Topology/Algebra/Order/IntermediateValue.lean 5 1 ['leanprover-community-mathlib4-bot'] nobody
654-5306
1 year ago
965-72585
965 days ago
0-222
3 minutes
10629 madvorak
author:madvorak
feat: List.cons_sublist_append_iff_right --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 11/0 Mathlib/Data/List/Basic.lean 1 1 ['eric-wieser'] nobody
654-5197
1 year ago
780-14034
780 days ago
53-73442
53 days
9973 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: polynomials formed by lists From https://github.com/leanprover-community/mathlib/pull/15476 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-data 311/0 Mathlib.lean,Mathlib/Data/Polynomial/OfList.lean 2 0 [] nobody
654-4730
1 year ago
unknown
0-0
0 seconds
12926 joelriou
author:joelriou
feat(CategoryTheory): the monoidal category structure induced by a monoidal functor In this PR, given a monoidal functor `F : MonoidalFunctor C D`, we define a monoidal category structure on the category `InducedCategory D F.obj`, which has the "same" objects as `C`, but the morphisms between `X` and `Y` identify to `F.obj X ⟶ F.obj Y`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 105/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Induced.lean 2 3 ['eric-wieser', 'github-actions', 'joelriou'] nobody
654-3129
1 year ago
745-8334
745 days ago
0-10
10 seconds
12869 adomani
author:adomani
feat: linter and script for `theorem` vs `lemma` This PR contains a linter for flagging doc-string-less `theorem`s, as well as a bash script that, once the linter ran on Mathlib, automatically replaces every linter-offending `theorem` by `lemma`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 106/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ThmLemma.lean,scripts/thmLemma.sh 4 13 ['adomani', 'github-actions', 'grunweg', 'joneugster'] nobody
653-76293
1 year ago
708-10388
708 days ago
38-16364
38 days
14563 awueth
author:awueth
feat: if-then-else of exclusive or statement --- If `¬(P ∧ Q)` then `ite (P ∨ Q) a 1 = (ite P a 1) * (ite Q a 1)` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
5/0 Mathlib/Algebra/Group/Basic.lean 1 3 ['eric-wieser', 'github-actions', 'kim-em'] nobody
653-4045
1 year ago
683-51027
683 days ago
6-38745
6 days
12093 ADedecker
author:ADedecker
feat: tweak the definition of semicontinuity to behave better in nonlinear orders Summary of the changes: - change definitions to make [lowerSemicontinuous_iff_isClosed_preimage](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Semicontinuous.html#lowerSemicontinuous_iff_isClosed_preimage) true without assuming `LinearOrder`, so that semicontinuity corresponds to continuity for lower/upper order topology on the codomain. See discussion on [Zulip](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Semicontinuity.20definition.20for.20non-linear.20orders/near/432898278) - add new `iff` lemmas for unfolding the definition - add `iff` lemmas with the old definition in the linearly ordered case - some basic lemmas need to be changed in an easy way - minimize assumptions for continuity => semicontinuity - prove the semicontinuity criterion for indicators using "preimage of Ici/Iic" instead of a direct proof, because the proof is more natural (especially because we have no `filter_upwards` for `Frequently`) - in the rest of the file (which is about linear orders anyway), we don't touch the statements and just rewrite to the old definition. Some of these could be generalized, but we keep that for a later PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology 274/130 Mathlib/Analysis/BoundedVariation.lean,Mathlib/MeasureTheory/Integral/FundThmCalculus.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/Semicontinuous.lean 4 0 [] nobody
653-1521
1 year ago
unknown
0-0
0 seconds
11393 mcdoll
author:mcdoll
feat(Analysis/Distribution/SchwartzSpace): The Heine-Borel property --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 688/3 Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/UniformSpace/Ascoli.lean,Mathlib/Topology/UniformSpace/Pi.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean 6 0 [] nobody
653-1487
1 year ago
unknown
0-0
0 seconds
9444 erdOne
author:erdOne
feat: Various instances regarding `𝓞 K`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted t-number-theory 27/0 Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/RingTheory/IntegralClosure.lean 2 9 ['erdOne', 'leanprover-bot', 'mattrobball', 'riccardobrasca', 'xroblot'] nobody
653-1406
1 year ago
875-833
875 days ago
1-62292
1 day
8931 hmonroe
author:hmonroe
feat(Computable): define P, NP, and NP-complete Revised to focus on languages that are binary strings, given the issue of non-acceptable encodings of unspecified Types --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author 381/5 Mathlib.lean,Mathlib/Computability/Complexity copy.lean,Mathlib/Computability/Complexity.lean,Mathlib/Computability/Encoding.lean,Mathlib/Computability/TMComputable.lean,Mathlib/Computability/TuringMachine.lean,Mathlib/Computability/halting example.lean,docs/references.bib 8 3 ['fpvandoorn', 'github-actions', 'hmonroe'] nobody
653-1371
1 year ago
809-10753
809 days ago
93-64275
93 days
10387 adomani
author:adomani
feat(Tactic/ComputeDegree): add `polynomial` tactic Introducing the `polynomial` tactic, summing up `compute_degree, monicity` and adding support for `leadingCoeff`. This is more of a proof of concept: if there is interest in this tactic, I can polish it up. See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Compute.20roots.20of.20polynomials/near/420713624). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP RFC t-meta 24/0 Mathlib/Tactic/ComputeDegree.lean 1 0 [] nobody
653-1193
1 year ago
696-70623
696 days ago
143-73801
143 days
9154 FR-vdash-bot
author:FR-vdash-bot
feat: `npow` / `nsmul` / `Nat.cast`/ `zpow` / `zsmul` implemented using `Nat.binaryRec` --- - [ ] depends on: https://github.com/leanprover/lean4/pull/3756 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra blocked-by-other-PR
label:t-algebra$
168/359 Mathlib/Algebra/Group/Defs.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Digits.lean,Mathlib/Data/Nat/EvenOddRec.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Order/Basic.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Init/Data/Nat/Bitwise.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Denumerable.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Nat.lean,lake-manifest.json,lakefile.lean,test/zmod.lean 25 7 ['astrainfinita', 'eric-wieser', 'kim-em', 'leanprover-community-mathlib4-bot'] nobody
653-984
1 year ago
unknown
0-0
0 seconds
6603 tydeu
author:tydeu
feat: automatically try `cache get` before build --- A quick proof-of-concept. With this, `lake build` will always try `cache get` before building mathlib. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP CI 29/0 lakefile.lean 1 3 ['kim-em', 'tydeu'] nobody
653-958
1 year ago
1007-17481
1007 days ago
11-2031
11 days
6058 apurvnakade
author:apurvnakade
feat: duality theory for cone programs This PR tracks the development of duality theory for cone programs. [Reference](https://ti.inf.ethz.ch/ew/courses/ApproxSDP09/notes/conelp.pdf) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #6059 - [ ] define direct sum of cones - [ ] weak duality - [ ] regular duality - [ ] slater condition - [ ] strong duality merge-conflict WIP t-analysis 159/0 Mathlib.lean,Mathlib/Analysis/Convex/Cone/ConeLinearProgram.lean 2 1 ['leanprover-community-mathlib4-bot'] nobody
653-903
1 year ago
1042-37811
1042 days ago
0-9
9 seconds
6449 ADedecker
author:ADedecker
feat: functions with finite fibers --- This has been discussed before on [Zulip](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/.E2.9C.94.20Cofinite.20maps.3F) and it came up again while working with @kkytola's student. As explained in the docstring, we could absolutely just use `Tendsto f cofinite cofinite` all the time, but (1) we lack some API for it (2) the API is nicer to setup if we have a separate def (e.g for dot notation) and (3) mentioning filters for such a simple concept is really not beginner-friendly. I'm not sure at all about the name. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 203/0 Mathlib.lean,Mathlib/Logic/Function/HasFiniteFibers.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Cofinite.lean 4 14 ['ADedecker', 'YaelDillies', 'alexjbest', 'kkytola'] nobody
653-897
1 year ago
1018-85351
1018 days ago
6-70040
6 days
13163 erdOne
author:erdOne
feat(.vscode/module-docstring.code-snippet): Prevent auto-complete from firing on `do` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 5/0 .vscode/module-docstring.code-snippets 1 5 ['erdOne', 'grunweg', 'robertylewis', 'trivial1711'] nobody
652-85907
1 year ago
685-13699
685 days ago
50-78405
50 days
13791 digama0
author:digama0
refactor: Primrec and Partrec General cleanup of the `Primrec` and `Partrec` files, to better adjust to lean 4 things. The main user-visible change is that `Primrec₂` is no longer a `def` but an `abbrev`, because it was causing inference issues in lean 4. I also removed all the nonterminal `simp`s in `PartrecCode.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability tech debt 585/778 Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Halting.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean 5 2 ['github-actions', 'grunweg'] nobody
649-54442
1 year ago
713-44028
713 days ago
1-84718
1 day
11964 adamtopaz
author:adamtopaz
feat: The functor of points of a scheme We construct the functor of points functor, and prove that it's full and faithful. --- - [x] depends on: #11947 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry t-category-theory 210/0 Mathlib.lean,Mathlib/AlgebraicGeometry/FunctorOfPoints.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean 3 4 ['github-actions', 'grunweg'] nobody
649-54301
1 year ago
777-71242
777 days ago
0-1223
20 minutes
12418 rosborn
author:rosborn
style: replace preimage_val with ↓∩ notation --- This is a rough draft of what the new `↓∩` notation would look like within mathlib. I believe this is an improvement in clarity and would like to have `↓∩` as a standard notation (along with `''`, `⁻¹'`, `↑`, etc...). As `↓∩` is specialized for `Set`s, I have only changed `preimage_val` when the left-hand side of `↓∩` is a `Set`. The introduction of the `↓∩` notation to Data.Set.Image is temporary as it isn't possible to import Data.Set.Subset directly. If we want `↓∩` unscoped, where would be the best place to define it? An option is Data.Set.Defs, but the notation cannot be defined without additional imports as the file does not import `notation3`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 56/61 Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Subset.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Clopen.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/Sober.lean 18 3 ['grunweg', 'rosborn'] nobody
649-54200
1 year ago
735-64184
735 days ago
29-50022
29 days
9978 FR-vdash-bot
author:FR-vdash-bot
chore(FieldTheory/KummerExtension): move some lemmas earlier --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
197/177 Mathlib.lean,Mathlib/Data/Polynomial/FieldDivision.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Polynomial/Irreducible.lean 5 5 ['alreadydone', 'grunweg', 'riccardobrasca'] nobody
649-53992
1 year ago
847-48174
847 days ago
8-83342
8 days
12429 adomani
author:adomani
feat: toND -- auto-generating natDegree This is an experiment to automatically translate theorems about `degree` to theorems about `natDegree`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra RFC merge-conflict awaiting-author t-meta
label:t-algebra$
167/132 Mathlib.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Polynomial/Inductions.lean,Mathlib/Algebra/Polynomial/Mirror.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToNatDegree.lean,scripts/noshake.json 11 2 ['adomani', 'grunweg'] nobody
649-53303
1 year ago
761-976
761 days ago
3-76602
3 days
12751 Command-Master
author:Command-Master
feat: add lemmas for Nat/Bits, Nat/Bitwise and Nat/Size Remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data new-contributor 66/7 Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Size.lean 4 26 ['Command-Master', 'Rida-Hamadani', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'jcommelin'] nobody
648-75354
1 year ago
683-81576
683 days ago
56-40668
56 days
15448 urkud
author:urkud
chore(*): deprecate `Option.elim'` Use `Option.elim` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt 54/50 Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/Option/Defs.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean 17 12 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'grunweg', 'urkud'] nobody
648-64407
1 year ago
658-24169
658 days ago
7-18420
7 days
10350 Shamrock-Frost
author:Shamrock-Frost
feat(Data/Setoid): add the operations of taking the equivalence class of an element and of saturating a set wrt an equivalence relation I'm open to suggestions about changing the name "saturate", someone on zulip rightly pointed out this is a very overloaded term in math. That said, I think it's unlikely to cause confusion and that there's only one reasonable interpretation in the context of setoids. --- - [x] depends on: #10347 - [x] depends on: #10348 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 169/3 Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/Order/Closure.lean 3 1 ['leanprover-community-mathlib4-bot'] nobody
646-77628
1 year ago
765-69256
765 days ago
19-74546
19 days
13573 Shamrock-Frost
author:Shamrock-Frost
feat: add multivariate polynomial modules Add a type synonym for multivariate polynomials with coefficients in a module. --- Multivariate polynomials with module coefficients are sort of silly, but they sometimes show up in commutative algebra (eg in the definition of a quasi regular sequence). Writing this code involved a lot of copy and pasting from `PolynomialModule` and `MvPolynomial`. The API is definitely lacking at this stage but it's a start. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
691/6 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Module/Basic.lean,Mathlib/Algebra/MvPolynomial/Module/MvAEval.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean 4 9 ['Shamrock-Frost', 'erdOne', 'github-actions'] nobody
646-77608
1 year ago
682-69976
682 days ago
39-72752
39 days
6517 MohanadAhmed
author:MohanadAhmed
feat: discrete Fourier transform of a finite sequence # Discrete Fourier Transform (DFT) Matrix and DFT of a (finite) sequence This file defines the `dft` opertaion on a sequence (also a vecotr) and the DFT operation matrix ## Main definitions - `dft v`: given a sequence (v : (Fin n) → ℂ) we can transform it into a sequence (V : (Fin n) →ℂ) such that $$V [p] = ∑_{k = 0}^{N - 1} e^{-j*2πkp/n} v [k]$$ - `idft V` : given a sequence (V : (Fin n) → ℂ) we can transform it into a sequence (v : (Fin n) → ℂ) such that $$v [k] = \frac{1}{N}∑_{p = 0}^{n - 1} e^{j*2πkp/N} v [p]$$ - `dftMatrix n` : the dft matrix of dimensions $n \times n$ with the `k, p` entry equal to $$Wₙ[k, p] = e^{-j2πkp/n}$$ - `(dftMatrix n)⁻¹` : the idft matrix of dimensions $n \times n$ with the `k, p` entry equal to $$Wₙ[k, p] = (1/N) e^{j2πkp/n}$$ ## Main results - `dft v = (dftMatrix n) v` : the dft operation on a sequence is the same as the dft matrix applied to the vector - `idft V = (dftMatrix n)⁻¹ V` : the idft operation on a sequence is the same as the idft matrix applied to the vector - `dft (idft v) = dft ( idft v) = v` the dft and idft operations are inverses - `Wₙ = vandermonde (w)` : the dft matrix is vandermonde with `w` being the first row of the dft matrix - `circulant t = (dftMatrix n)⁻¹ ⬝ diagonal (dft t) ⬝ (dftMatrix n)` : a circulant matrix is diagonalizable by the dft and idft matrix pair. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
294/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/DFT.lean 2 26 ['MohanadAhmed', 'ericrbg'] nobody
646-77446
1 year ago
956-15262
956 days ago
65-20427
65 days
13155 alreadydone
author:alreadydone
feat(NumberTheory/EllipticDivisibilitySequence): show elliptic relations follow from even-odd recursion This PR is centered around the (generalized) elliptic relations (`rel₄`) $E(a,b,c,d): W_{a+b}W_{a-b}W_{c+d}W_{c-d}=W_{a+c}W_{a-c}W_{b+d}W_{b-d}-W_{a+d}W_{a-d}W_{b+c}W_{b-c}$. For an integer-indexed sequence W valued in a commutative ring, the relation makes sense only when a,b,c,d are all integers or all half integers. For convenience of formalization, we instead consider integers a,b,c,d of the same parity and divide all subscripts by 2. We extract the subexpression $W_{(a+b)/2}W_{(a-b)/2}$ (which appear six times) as `addMulSub W a b`. The collection of all $E(a,b,c,d)$ is equivalent to Stange's axiom for elliptic nets (`net`), and the literature (e.g. Silverman) commonly consider only the three-index special case $E(m,n,r,0)$ (`Rel₃`). Important special cases of these relations are (i) $E(m+1,m,1,0): W_{2m+1}W_1^3=W_{m+2}W_m^3-W_{m+1}^3 W_{m-1}$ (`oddRec`) and (ii) $E(m+1,m-1,1,0): W_{2m}W_2 W_1^2=W_m(W_{m+2}W_{m-1}^2-W_{m-2}W_{m+1}^2)$ (`evenRec`), which suffice to uniquely specify $W$ on all positive integers recursively from four initial values $W_1, W_2, W_3, W_4$ (`IsEllSequence.ext`, if $W_1 W_2$ is not a zero divisor). In the usual setting where $W_1=1$ and $W_2\mid W_4$, there does exist a sequence (`normEDS`) satisfying (i) and (ii) given initial values $W_2, W_3$ and $W_4/W_2$. It turns out the same non-zerodivisor condition also guarantees that W is an odd function with $W_0=0$, which naturally extends W to all integers. The main result of this PR (`rel₄_of_oddRec_evenRec`, `IsEllSequence.of_oddRec_evenRec`) is a purely algebraic proof that the sequence W defined by the single-parameter elliptic relations (i) and (ii) implies all $E(a,b,c,d)$, based on my original argument first published on [Math.SE](https://math.stackexchange.com/a/4903422/12932). It's based on the observation that a nonzerodivisor-multiple of $E(a,b,c,d)$ can be expressed as a linear combination of various $E(a,b,c_\min,d_\min)$ with the two smallest indices fixed at their minimal possible values, which can be transformed (`transf`) to an elliptic relation with smaller `a` (which can be assumed to hold by induction), unless they are of the form (i) or (ii) which hold by assumption. For this argument it's necessary to assume `a > b > c > d ≥ 0` (see `StrictAnti₄` and `Rel₄OfValid`), but it's easy to extend to arbitrary a,b,c,d by symmetry properties of `rel₄` under negation and permutations of indices. In the subsequent PR #13057, we show all normalized EDSs (`normEDS`), defined using the even-odd recursion (i)-(ii), are elliptic (i.e. satisfy the elliptic relations) divisibility sequences. This PR doesn't directly apply because a normEDS doesn't always satisfy the nonzerodivisor condition, but they are specializations of the universal normEDS, which does satisfy the condition. The technique of reducing to the universal case will be applied many times, and relies on the naturality (`map`) lemmas. We also change the `ℕ` in the definition `IsDivSequence` to `ℤ` which is more natural given that W is a `ℤ`-indexed sequence. --- - [x] depends on: #13153 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-number-theory
label:t-algebra$
565/12 Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 1 55 ['Multramate', 'alreadydone', 'github-actions', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
641-4650
1 year ago
690-6537
690 days ago
26-39367
26 days
15600 adomani
author:adomani
feat: lint also `let` vs `have` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter 77/26 Mathlib/Tactic/Linter/HaveLetLinter.lean,test/HaveLetLinter.lean 2 1 ['github-actions'] nobody
639-59326
1 year ago
660-53024
660 days ago
0-8
8 seconds
16253 Shreyas4991
author:Shreyas4991
feat: Basics of Discrete Fair Division in Mathlib This PR adds the basics of discrete fair division in mathlib. We include the definitions of allocations, valuations, properties of valuations, and the following notions : Envy-Freeness (EF), Envy-Freeness upto 1 good (EF1), and envy freeness upto any good (EFX). We also include the various implications between these notions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-author 144/0 Mathlib/GameTheory/FairDivision/Discrete/Basic.lean 1 9 ['Shreyas4991', 'eric-wieser', 'github-actions'] nobody
638-57239
1 year ago
638-61500
638 days ago
0-20853
5 hours
15121 Eloitor
author:Eloitor
feat: iff theorems for IsSplitEpi and IsSplitMono in opposite category --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-category-theory new-contributor 40/0 Mathlib/CategoryTheory/EpiMono.lean 1 3 ['github-actions', 'joelriou', 'mattrobball'] nobody
635-50189
1 year ago
667-9448
667 days ago
7-3203
7 days
15895 madvorak
author:madvorak
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability WIP 172/0 Mathlib/Computability/ContextFreeGrammar.lean 1 43 ['YaelDillies', 'github-actions', 'madvorak'] nobody
634-66982
1 year ago
639-14091
639 days ago
1-43047
1 day
14038 adomani
author:adomani
test/decl diff in lean dev --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 231/2 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,Mathlib/Tactic/Eval.lean,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean 8 3 ['github-actions'] nobody
633-75042
1 year ago
706-45161
706 days ago
0-8
8 seconds
7861 shuxuezhuyi
author:shuxuezhuyi
feat(Geometry/Hyperbolic/UpperHalfPlane): instance IsometricSMul PSL(2, ℝ) ℍ --- - [ ] depends on: #7835 - [ ] depends on: #7791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-euclidean-geometry 98/0 Mathlib.lean,Mathlib/Geometry/Hyperbolic/UpperHalfPlane/Basic.lean,Mathlib/LinearAlgebra/Matrix/ProjectiveSpecialLinearGroup.lean 3 1 ['leanprover-community-mathlib4-bot'] nobody
628-10983
1 year ago
688-51511
688 days ago
43-50453
43 days
16570 yuma-mizuno
author:yuma-mizuno
chore(Tactic/CategoryTheory): change `TermElabM` to `MetaM` Separated from #15335. To use `Qq`, we need to modify `Qq` to support universe matching. See [Zulip](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2315335.20meta.20code.20for.20monoidal.20categories). --- - [ ] depends on: #15335 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-meta 26/15 Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mergify'] nobody
627-73848
1 year ago
unknown
0-0
0 seconds
10591 adri326
author:adri326
feat(Topology/Algebra/ConstMulAction): properties of continuous actions in Hausdorff spaces Defines some useful properties of `ContinuousConstSMul` group actions on Hausdorff spaces: - `MulAction.isClosed_fixedBy`, which proves that the `fixedBy α m` set is closed - `t2_separation_smul`, which constructs an open set `s` such that `s` and `g • s` are disjoint - `Set.InjOn.t2_separation_smul`, the extension of `t2_separation_smul` to a set of group elements whose action is injective --- This PR belongs my series of PR around the formalization of Rubin's theorem. `MulAction.isClosed_fixedBy` is used in several places along the proof, and the separation lemmas are primarily used in showing that `(fixedBy α g)ᶜ` and `(fixedBy α h)ᶜ` are disjoint under some intricate but fully group-theoretic condition. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-author t-algebra
label:t-algebra$
57/0 Mathlib/Topology/Algebra/ConstMulAction.lean 1 9 ['ADedecker', 'adri326', 'j-loreaux', 'jcommelin'] ADedecker
assignee:ADedecker
626-65840
1 year ago
778-78582
778 days ago
55-82204
55 days
7545 shuxuezhuyi
author:shuxuezhuyi
feat: APIs of `Function.extend f g e'` when `f` is injective We characterizes `range g`, `Injective g`, `Surjective g` and `Bijective g` in terms of `extend f g e'`.​ --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 50/0 Mathlib.lean,Mathlib/Logic/Function/ApiForExtend.lean 2 1 ['fpvandoorn'] nobody
626-23815
1 year ago
934-57997
934 days ago
32-32325
32 days
14078 Ruben-VandeVelde
author:Ruben-VandeVelde
feat(CI): continue after mk_all fails --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 43/0 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib/Data/Nat/Test.lean 5 2 ['bryangingechen', 'github-actions'] nobody
622-33048
1 year ago
704-86008
704 days ago
0-13311
3 hours
11283 hmonroe
author:hmonroe
feat(ModelTheory/Satisfiability): define theory with independent sentence --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-logic 8/0 Mathlib/ModelTheory/Satisfiability.lean 1 2 ['fpvandoorn', 'hmonroe'] nobody
620-3602
1 year ago
806-63672
806 days ago
3-63452
3 days
16914 siddhartha-gadgil
author:siddhartha-gadgil
Loogle syntax with non-reserved This is PR mainly to test that loogle syntax does not break stuff downstream --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 4/4 lake-manifest.json,lakefile.lean 2 1 ['github-actions'] nobody
617-78611
1 year ago
618-75700
618 days ago
0-14835
4 hours
13782 alreadydone
author:alreadydone
feat(EllipticCurve): ZSMul formula in terms of division polynomials The formula $[n]P = (\phi_n(x,y) : \omega_n(x,y) : \psi_n(x,y))$ in Jacobian coordinates for $P=(x,y)$ a nonsingular point on a Weierstrass/elliptic curve. --- - [x] depends on: #12883 - [x] depends on: #13399 - [ ] depends on: #13057 - [ ] depends on: #13155 - [x] depends on: #13845 - [x] depends on: #13846 - [ ] depends on: #13847 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-number-theory blocked-by-other-PR merge-conflict t-algebraic-geometry
label:t-algebra$
2462/232 Mathlib.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/ZSMul.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean 10 8 ['Multramate', 'alreadydone', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
615-41576
1 year ago
unknown
0-0
0 seconds
8118 iwilare
author:iwilare
feat(CategoryTheory): add dinatural transformations A starting point to define [dinatural transformations](https://ncatlab.org/nlab/show/dinatural+transformation). This is my first PR so style comments and improvements are very welcome! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 147/7 Mathlib.lean,Mathlib/CategoryTheory/DinatTrans.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Products/Bifunctor.lean 4 49 ['Shamrock-Frost', 'github-actions', 'iwilare', 'joelriou'] Shamrock-Frost
assignee:Shamrock-Frost
613-14497
1 year ago
716-81374
716 days ago
21-30729
21 days
14242 js2357
author:js2357
feat: Prove equivalence of `isDedekindDomain` and `isDedekindDomainDvr` Prove that `isDedekindDomainDvr` is equivalent to both `isDedekindDomain` and `isDedekindDomainInv`. Specifically, prove `isDedekindDomainDvr A → isDedekindDomainInv A`, because `isDedekindDomain A → isDedekindDomainDvr A` and `IsDedekindDomain A ↔ IsDedekindDomainInv A` are already in Mathlib. - [x] depends on: #14099 - [x] depends on: #14216 - [ ] depends on: #14237 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR new-contributor
label:t-algebra$
269/1 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean 4 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
612-61248
1 year ago
700-50195
700 days ago
0-273
4 minutes
7516 ADedecker
author:ADedecker
perf: use `abbrev` to prevent unifying useless data --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 4/3 Mathlib/Topology/ContinuousFunction/Bounded.lean 1 3 ['ADedecker', 'leanprover-bot', 'mattrobball'] nobody
607-31250
1 year ago
967-81867
967 days ago
0-16
16 seconds
17127 FR-vdash-bot
author:FR-vdash-bot
chore: remove global `Quotient.mk` `⟦·⟧` notation --- Merge this PR when we are ready to migrate to `QuotLike` API (#16421). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 137/2 Counterexamples/Pseudoelement.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Quandle.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Product.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/QPF/Multivariate/Constructions/Fix.lean,Mathlib/Data/QPF/Univariate/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Set/Finite.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Quotients.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RepresentationTheory/Action/Concrete.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/Birthday.lean,Mathlib/SetTheory/Game/Impartial.lean,Mathlib/SetTheory/Game/Ordinal.lean,Mathlib/SetTheory/Game/State.lean,Mathlib/SetTheory/Lists.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/SetTheory/Surreal/Dyadic.lean,Mathlib/SetTheory/Surreal/Multiplication.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/HomotopyGroup.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Homotopy/Product.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean,Mathlib/Topology/UniformSpace/Separation.lean,test/interactiveUnfold.lean 68 1 ['github-actions'] nobody
607-26293
1 year ago
607-26293
607 days ago
4-72805
4 days
16887 metinersin
author:metinersin
feat(ModelTheory/Complexity): define conjunctive and disjunctive formulas Defines `FirstOrder.Language.BoundedFormula.IsConjunctive` and `FirstOrder.Language.BoundedFormula.IsDisjunctive`. --- - [ ] depends on: #16885 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 300/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57226
1 year ago
619-85300
619 days ago
0-1299
21 minutes
16888 metinersin
author:metinersin
feat(ModelTheory/Complexity): Define conjunctive and disjunctive normal forms Define `FirstOrder.Language.BoundedFormula.IsDNF` and `FirstOrder.Language.BoundedFormula.IsCNF`. --- - [ ] depends on: #16887 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 415/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57226
1 year ago
619-85301
619 days ago
0-1045
17 minutes
16889 metinersin
author:metinersin
feat(ModelTheory/Complexity): Normal forms Defines `FirstOrder.Language.BoundedFormula.toDNF` and `FirstOrder.Language.BoundedFormula.toCNF` - given a quantifier-free formula, these construct a semantically equivalent formula in disjunctive normal form and conjunctive normal form, respectively. --- - [ ] depends on: #16888 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR new-contributor t-logic 525/7 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Syntax.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
604-57225
1 year ago
619-81051
619 days ago
0-613
10 minutes
5995 FR-vdash-bot
author:FR-vdash-bot
feat: add APIs about `Quotient.choice` Some docs in this PR refer to the definition in #5576. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author RFC t-data 76/6 Mathlib/Data/Quot.lean 1 3 ['YaelDillies', 'astrainfinita', 'gebner'] eric-wieser
assignee:eric-wieser
597-71435
1 year ago
723-5696
723 days ago
285-35716
285 days
13156 erdOne
author:erdOne
refactor(Algebra/Module/LocalizedModule): Redefine `LocalizedModule` in terms of `OreLocalization`. --- - [x] depends on: #13151 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
519/628 Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean,Mathlib/RingTheory/OreLocalization/Ring.lean 8 4 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball'] nobody
592-78575
1 year ago
592-78575
592 days ago
51-84473
51 days
16348 urkud
author:urkud
refactor(Topology): require `LinearOrder` with `OrderTopology` While the definition formally makes sense for a preorder, this topology is usually not the right one for a non-linear order (e.g., `Real × Real`). See [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Open.20Ioi) --- This PR doesn't cleanup any API, I'm going to do it in a later PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 33/46 Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/Instances/Sign.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/Filter.lean,Mathlib/Topology/Order/MonotoneContinuity.lean 6 10 ['YaelDillies', 'github-actions', 'jcommelin', 'urkud'] nobody
592-78199
1 year ago
633-24133
633 days ago
3-83049
3 days
13965 pechersky
author:pechersky
feat(Data/DigitExpansion): reals via digit expansion are complete --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #13964 merge-conflict blocked-by-other-PR t-data 3876/0 Mathlib.lean,Mathlib/Data/DigitExpansion/Add.lean,Mathlib/Data/DigitExpansion/Defs.lean,Mathlib/Data/DigitExpansion/Hensel.lean,Mathlib/Data/DigitExpansion/Integer/Basic.lean,Mathlib/Data/DigitExpansion/Integer/Mul.lean,Mathlib/Data/DigitExpansion/Real/Basic.lean,Mathlib/Data/DigitExpansion/Real/CompleteSpace.lean,Mathlib/Data/DigitExpansion/Real/ConditionallyComplete.lean,docs/references.bib 10 4 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
591-28967
1 year ago
709-61586
709 days ago
0-600
10 minutes
12750 Command-Master
author:Command-Master
feat: define Gray code --- Define binary reflected gray code, both as a permutation of `Nat` and as a permutation of `BitVec n`, and prove some theorems about them. Additionally, remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`. - [ ] depends on: #12751 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR t-data new-contributor merge-conflict awaiting-author 226/0 Mathlib.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/GrayCode.lean,Mathlib/Data/Nat/Size.lean 5 5 ['Rida-Hamadani', 'alreadydone', 'github-actions', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
586-79883
1 year ago
735-61981
735 days ago
16-49744
16 days
13514 madvorak
author:madvorak
feat(Computability/ContextFreeGrammar): closure under union - [ ] depends on: #15895 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability blocked-by-other-PR 448/4 Mathlib/Computability/ContextFreeGrammar.lean 1 50 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak'] nobody
574-4811
1 year ago
651-65192
651 days ago
72-28417
72 days
9654 urkud
author:urkud
feat: add `@[mk_eq]` version of `@[mk_iff]` The new attribute generates theorems like ```lean List.chain_eq : @List.Chain = fun {α} R a a_1 => a_1 = [] ∨ ∃ b l, R a b ∧ List.Chain R b l ∧ a_1 = b :: l ``` and is useful to rewrite in a theorem that argues about the properties of an unapplied inductive predicate. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 63/9 Mathlib/Lean/Meta.lean,Mathlib/Tactic/MkIffOfInductiveProp.lean,test/MkIffOfInductive.lean 3 6 ['Vierkantor', 'github-actions', 'urkud'] nobody
572-37604
1 year ago
844-903
844 days ago
25-70825
25 days
16704 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Mathlib.Data.Ordering.Dickson): Dickson orders Dickson orders are a particular class of well founded orders characterized by the fact that every nonempty set has finitely many minimal elements. They appear in the classical theory of Groebner bases because it is easier to prove that some sets are well founded using this property. WiP. In the `tfae` function, property 2 is exactly `Set.PartiallyWellOrderedOn`, so the PR should be rewritten so as to use that property (and not define `IsDickson`). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 324/0 Mathlib.lean,Mathlib/Data/Ordering/Dickson.lean,scripts/noshake.json 3 9 ['AntoineChambert-Loir', 'b-mehta', 'github-actions'] nobody
572-16161
1 year ago
623-4992
623 days ago
2-84515
2 days
16355 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: odd_{add,sub}_one --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-number-theory
label:t-algebra$
12/0 Mathlib/Algebra/Ring/Int.lean,Mathlib/Algebra/Ring/Parity.lean 2 4 ['Ruben-VandeVelde', 'github-actions', 'urkud'] nobody
571-50358
1 year ago
636-38804
636 days ago
0-57608
16 hours
14598 Command-Master
author:Command-Master
chore: add typeclasses to unify various `add_top`, `add_eq_top`, etc. Add the four typeclasses `IsTopAbsorbing`, `IsBotAbsorbing`, `NoTopSum`, `NoBotSum`, as additive equivalents for `MulZeroClass` and `NoZeroDivisors`. Add instances of these for `ENNReal`, `WithTop α`, `WithBot α`, `PUnit`, `EReal`, `PartENat`, `Measure`, `Interval` and `Filter`. Also split `Algebra/Order/AddGroupWithTop` to `Algebra/Order/Group/WithTop` and `Algebra/Order/Monoid/WithTop` --- Previous usages of lemmas with quantified names like `WithTop.add_top` have to be changed to just `add_top`. `add_lt_top` is `@[simp]`, in accordance with `ENNReal.add_lt_top` being `@[simp]`. This affects `WithTop.add_lt_top` which previously hadn't been `@[simp]`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-order new-contributor
label:t-algebra$
264/195 Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib.lean,Mathlib/Algebra/Order/Group/WithTop.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/PUnitInstances/Order.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Analytic/Meromorphic.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/NormedSpace/ENorm.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Log/ENNRealLog.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/Data/Real/EReal.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Integral/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/MvPowerSeries/NoZeroDivisors.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean 57 30 ['Command-Master', 'YaelDillies', 'github-actions'] nobody
570-21759
1 year ago
570-21759
570 days ago
7-45599
7 days
16885 metinersin
author:metinersin
feat(ModelTheory/Complexity): define literals Defines `FirstOrder.Language.BoundedFormula.IsLiteral` and `FirstOrder.Language.BoundedFormula.simpleNot` - an auxiliary operation that takes the negation of a formula and does some simplification. --- - [x] depends on: #16800 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-logic 148/5 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 4 20 ['YaelDillies', 'awainverse', 'github-actions', 'mathlib4-dependent-issues-bot', 'metinersin'] nobody
567-64280
1 year ago
603-53592
603 days ago
0-19926
5 hours
18716 jjaassoonn
author:jjaassoonn
feat(Algebra/Module/GradedModule): quotient and subgrading - [ ] depends on: #9820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR awaiting-CI merge-conflict
label:t-algebra$
997/191 Counterexamples/HomogeneousPrimeNotPrime.lean,Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Module/GradedModule/Basic.lean,Mathlib/Algebra/Module/GradedModule/QuotientGrading.lean,Mathlib/Algebra/Module/GradedModule/Subgrading.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Quotient.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,scripts/no_lints_prime_decls.txt 12 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
567-63911
1 year ago
unknown
0-0
0 seconds
9341 winstonyin
author:winstonyin
feat: Naturality of integral curves Let `v` and `v'` be sections of the tangent bundle of manifolds `M` and `M'`, respectively, and let `f : M → M'` be a differentiable map. Then `f` maps integral curves of `v` to integral curves of `v'` if and only if `v` and `v'` are `f`-related. - [x] depends on: #8483 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-differential-geometry 45/0 Mathlib/Geometry/Manifold/IntegralCurve.lean,Mathlib/Topology/Algebra/Module/Basic.lean 2 9 ['github-actions', 'grunweg', 'leanprover-community-mathlib4-bot', 'winstonyin'] nobody
564-29703
1 year ago
871-86173
871 days ago
0-28222
7 hours
13248 hcWang942
author:hcWang942
feat: basic concepts of auction theory ## Description Formalise some core concepts and results in auction theory: this includes definitions for first-price and second-price auctions, as well as several fundamental results and helping lemmas. This is the very first PR of the project formalizing core concepts and results in auction theory. Our group is working on more contributions on the formalization of game theory prefix. Co-authored-by: Ma Jiajun ## Reference Roughgarden, Tim. ***Twenty Lectures on Algorithmic Game Theory***. Cambridge University Press, 2020. [Link](https://www.cambridge.org/core/books/twenty-lectures-on-algorithmic-game-theory/A9D9427C8F43E7DAEF8C702755B6D72B) --- - [x] Will depend on #14163 once that PR is merged. The Fintype lemmas introduced by this PR have been added in that PR and will be removed from here once that PR gets merged ## Current plan for formalization of Game Theory The current plan for the formalizing of Game Theory include: #### 1. Auction Theory. 🎉 _(200+ lines, this PR)_ - Essential definitions of Sealed-bid auction, First-price auction and Second-price auction. - First-price auction has no dominant strategy. - Second-price auction has dominant strategy. (Second-price auction is DSIC) #### 2. Mechanism design & Myerson's Lemma. 🎉 (400+ lines, pending for modification to Mathlib Standard) - Mechanism design An allocation rule is implementable if there exists - Dominant Strategy Incentive Compatible (DSIC) payment rule - An allocation rule is monotone if for every bidder’s gain is nondecreasing w.r.t. her/his bid - Myerson's Lemma Implementable ⇔ Monotone In the above case, the DSIC payment rule is unique. #### 3. von Neumann‘s Minimax Theorem. 🎉 (800+ lines, pending for modification to Mathlib Standard) - Equilibrium in zero sum game - Formalization strategy: via Loomis’s theorem. #### 4. Nash Equilibrium. 🎉 (pending for modification to Mathlib Standard) #### 5. Brouwer fixed-point theorem. (Work in Progress) #### 6. More Mechanism design. (Planning) merge-conflict awaiting-author new-contributor t-logic 204/0 Mathlib.lean,Mathlib/GameTheory/Auction/Basic.lean,docs/references.bib 3 148 ['Shreyas4991', 'YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'grunweg', 'hcWang942', 'tb65536', 'urkud', 'vihdzp'] hcWang942
assignee:hcWang942
563-16712
1 year ago
577-2900
577 days ago
109-82807
109 days
9344 erdOne
author:erdOne
feat: Add `AddGroup.FG` -> `Module.Finite ℤ` as instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
4/0 Mathlib/RingTheory/Finiteness.lean 1 4 ['alreadydone', 'erdOne', 'leanprover-bot'] nobody
562-1105
1 year ago
861-1548
861 days ago
21-27905
21 days
12133 ADedecker
author:ADedecker
feat: generalize instIsLowerProd to arbitrary products Also change a bit the proof of the product case to match my own taste, feel free to tell if you prefer the old one. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology t-order 34/14 Mathlib/Topology/Constructions.lean,Mathlib/Topology/Order/LowerUpperTopology.lean 2 13 ['Ruben-VandeVelde', 'TwoFX', 'github-actions', 'jcommelin', 'mans0954', 'mathlib-bors', 'riccardobrasca'] nobody
561-10859
1 year ago
712-6495
712 days ago
63-69226
63 days
16637 FR-vdash-bot
author:FR-vdash-bot
perf: reorder `extends` of `(Add)Monoid` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
46/51 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean 20 3 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
561-10097
1 year ago
626-17453
626 days ago
1-49655
1 day
8661 joelriou
author:joelriou
feat(CategoryTheory/Sites): descent of sheaves In this PR, it is shown that the category of sheaves on a site `(C, J)` identifies as a full subcategory of a category of families of sheaves equipped with a descent data (for a family of objects which cover the final object). Under suitable conditions, it shall be shown that this is an equivalence of categories (TODO). --- This shall be split in small PRs later. - [x] depends on: #8622 - [x] depends on: #8632 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 1396/26 Mathlib.lean,Mathlib/CategoryTheory/Over.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Descent.lean,Mathlib/CategoryTheory/Sites/EqualizerSheafCondition.lean,Mathlib/CategoryTheory/Sites/InducedTopology.lean,Mathlib/CategoryTheory/Sites/ObjectsCoverTop.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/SheafHom.lean,Mathlib/CategoryTheory/Sites/Sieves.lean 10 3 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
557-73479
1 year ago
unknown
0-0
0 seconds
10476 shuxuezhuyi
author:shuxuezhuyi
feat(Topology/UniformSpace): define uniform preordered space We define the semi-uniform structure and the uniform preordered space. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 94/0 Mathlib.lean,Mathlib/Topology/UniformSpace/UniformOrder.lean,docs/references.bib 3 2 ['shuxuezhuyi'] nobody
556-60133
1 year ago
785-1161
785 days ago
52-19273
52 days
17593 astrainfinita
author:astrainfinita
chore(Algebra/Order/GroupWithZero/Unbundled): deprecate useless lemmas, use `ZeroLEOneClass` There are still some useless lemmas that were simply ported from `Algebra.Order.Monoid.Lemmas`, such as just chain an existing lemma with an assumption and lemmas whose assumptions imply `1 ≤ 0`. This PR removes them. Also, some lemmas have both assumptions like `1 < a` `0 < a`. This PR uses `ZeroLEOneClass` to remove redundant assumptions. --- - [ ] depends on: #17623 Ported from https://github.com/leanprover-community/mathlib/pull/16525 and https://github.com/leanprover-community/mathlib/pull/18158 Adapted from #9250. This version is easier to review. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR t-order
label:t-algebra$
188/48 Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Order/Field.lean 6 4 ['astrainfinita', 'github-actions', 'mathlib4-dependent-issues-bot', 'vihdzp'] nobody
555-83475
1 year ago
596-69056
596 days ago
0-74903
20 hours
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
555-83475
1 year ago
562-76034
562 days ago
33-64877
33 days
17624 FR-vdash-bot
author:FR-vdash-bot
feat(Algebra/Order/GroupWithZero/Unbundled): generalize lemmas --- - [ ] depends on: #17623 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR t-order
label:t-algebra$
121/26 Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
552-34247
1 year ago
596-67926
596 days ago
0-465
7 minutes
17513 FR-vdash-bot
author:FR-vdash-bot
perf: do not search algebraic hierarchies when using `map_*` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra awaiting-bench
label:t-algebra$
5/3 Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 2 10 ['astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
550-79669
1 year ago
594-81534
594 days ago
4-72589
4 days
17515 FR-vdash-bot
author:FR-vdash-bot
perf: do not need `simp low` now --- - [ ] depends on: #17513 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
12/10 Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/NumberTheory/LucasLehmer.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
550-79668
1 year ago
599-67180
599 days ago
0-380
6 minutes
19212 Julian
author:Julian
feat(LinearAlgebra): add a variable_alias for VectorSpace Taken directly from the variable_alias docs. Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/why.20.5Bvariable_alias.5D.20attribute.20is.20not.20used.20in.20Mathlib.3F --- This is the first actual variable alias added to mathlib. I haven't reviewed variable_alias fully, but it seems like there's at least 3 ways they could be distributed in Mathlib: * alongside whatever subfolder they "belong to" (which is what I've tentatively done here) * In a file called `Aliases` somewhere near the thing they alias (which seems less discoverable to me) * In a single file, a la `Mathlib.TrainingWheels` (with some less playful name) which is meant to define a bunch of more "friendly" aliases all in one place. I kind of like the idea of the third thing as a future module but perhaps it can be synthesized if/when there are more aliases? For now as I say I've done the first one, but please let me know if someone prefers something else. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
25/0 Mathlib.lean,Mathlib/LinearAlgebra/VectorSpace.lean,scripts/noshake.json 3 10 ['Julian', 'PieterCuijpers', 'github-actions', 'urkud'] nobody
549-84914
1 year ago
549-84914
549 days ago
7-68089
7 days
19337 zeramorphic
author:zeramorphic
feat(Data/Finsupp): generalise `Finsupp` to any "zero" value Remove the explicit dependence of `Finsupp` on `[Zero M]`, instead defining `Finsupp'` (better name pending) to be functions that are equal to a fixed value `z : M` cofinitely often. This PR is intended to do the initial work of replacing the definition of `Finsupp` with an instantiation of the more general definition, without adding any appropriate API. If accepted, the API development will follow in later PRs. Issues to consider: - Naming of `Finsupp'.` - Where should `Finsupp'` lemmas go? Do they need their own file/folder under `Data/`? Relevant Zulip threads: - https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finsupp.20generalisations - https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Finsupp-like.20partial.20function Comments are welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 203/83 Archive/Wiedijk100Theorems/Partition.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean,Mathlib/RingTheory/PowerBasis.lean,scripts/nolints_prime_decls.txt 13 5 ['github-actions', 'vihdzp', 'zeramorphic'] nobody
547-60991
1 year ago
547-60991
547 days ago
4-60621
4 days
18756 astrainfinita
author:astrainfinita
refactor: deprecate `DistribMulActionSemiHomClass` `MulSemiringActionSemiHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
50/28 Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean 3 4 ['astrainfinita', 'github-actions', 'leanprover-bot'] nobody
536-26660
1 year ago
536-26660
536 days ago
31-53021
31 days
19125 yhtq
author:yhtq
feat: add theorems to transfer `IsGalois` between pairs of fraction rings feat: add theorems to transfer `IsGalois` between pairs of fraction rings. - [x] depends on: #18404 - [x] depends on: #19124 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra new-contributor
label:t-algebra$
121/0 Mathlib.lean,Mathlib/FieldTheory/Galois/IsFractionRing.lean,Mathlib/RingTheory/Localization/FractionRing.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'tb65536'] nobody
533-39129
1 year ago
560-511
560 days ago
0-1980
33 minutes
18841 hrmacbeth
author:hrmacbeth
chore: change some `linarith`s to `linear_combination`s Change 100 `linarith`s to `linear_combination`s; this is generally a slight speedup. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #18714 (not strictly blocked by this, but the speed comparison will be more informative after it) merge-conflict WIP 106/107 Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2021Q1.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Convex/Visible.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/MeasureTheory/Covering/BesicovitchVectorSpace.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleWith.lean,Mathlib/Probability/Distributions/Pareto.lean 30 29 ['github-actions', 'grunweg', 'hrmacbeth', 'jcommelin', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
532-55
1 year ago
554-22301
554 days ago
3-28253
3 days
11142 hmonroe
author:hmonroe
feat(ProofTheory): Define logical symbols abstractly; opens new top-level section, drawing from lean4-logic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 468/1 Mathlib.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/ProofTheory/LogicSymbol.lean 3 19 ['PatrickMassot', 'YaelDillies', 'avigad', 'fpvandoorn', 'github-actions'] nobody
526-9875
1 year ago
722-69924
722 days ago
94-3235
94 days
11210 hmonroe
author:hmonroe
Test commit --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 1950/1 Mathlib.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/ProofTheory/Calculus.lean,Mathlib/ProofTheory/FirstOrder/Arith/Language.lean,Mathlib/ProofTheory/FirstOrder/Basic/Syntax/Term.lean,Mathlib/ProofTheory/LogicSymbol.lean,Mathlib/ProofTheory/Matrix.lean,Mathlib/ProofTheory/Semantics.lean,Mathlib/ProofTheory/System.lean,docs/references.bib 10 100 ['github-actions'] nobody
526-9874
1 year ago
811-85755
811 days ago
2-67901
2 days
19621 Command-Master
author:Command-Master
feat: Multiplicity and prime-adic valuation of derivations --- - [ ] depends on: #19596 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR large-import
label:t-algebra$
397/13 Mathlib.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Derivation/Multiplicity.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/PrimeMultiplicity.lean 9 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
525-78535
1 year ago
546-17484
546 days ago
0-666
11 minutes
18262 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat/Presheaf): exterior powers of presheaves of modules --- - [x] depends on: #18261 - [ ] depends on: #18236 - [ ] depends on: #18197 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR t-category-theory merge-conflict
label:t-algebra$
874/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/FunctorOfNatTrans.lean,Mathlib/Algebra/Category/ModuleCat/Pseudofunctor.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
525-69830
1 year ago
unknown
0-0
0 seconds
15269 kkytola
author:kkytola
feat: Add ENNReal.floor A right-continuous floor function on `ENNReal`. --- - [x] depends on: #13938 - [ ] depends on: #15773 (general type class for `ENat`-valued floor functions) - [x] depends on: #15380 (topology on `ENat` is needed to state right continuity of the floor function) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra blocked-by-other-PR t-order merge-conflict awaiting-author
label:t-algebra$
445/0 Mathlib.lean,Mathlib/Algebra/Order/EFloor.lean,Mathlib/Data/ENNReal/Floor.lean,Mathlib/Data/Nat/Lattice.lean 4 18 ['YaelDillies', 'github-actions', 'kkytola', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
512-50764
1 year ago
661-45830
661 days ago
0-3440
57 minutes
15773 kkytola
author:kkytola
feat: Add type class for ENat-valued floor functions This PR adds a type class for extended natural number -valued floor functions. This is split off from #15269, where the suggestions were to make the floor function on ENNReal ENat-valued and to have an API mimicling FloorSemirings. Besides ENNReal, at least ENNRat would naturally satisfy the general type class. --- Two things are worth noting: * To fully mimic `FloorSemiring` API, also ceiling functions need to be added. The plan is to do that in a later PR. * The PR introduces the class `CastNatENatClass` to ensure that `natCast` and a coercion from `ENat` behave in the natural and order-respecing manner. This feels a little ad hoc, but such assumptions are needed for general `ENat`-valued floor functions to behave well. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-order 231/0 Mathlib.lean,Mathlib/Algebra/Order/EFloor.lean,Mathlib/Data/ENat/Basic.lean 3 5 ['YaelDillies', 'github-actions', 'kkytola', 'urkud'] nobody
512-50641
1 year ago
588-49994
588 days ago
66-24436
66 days
3251 kmill
author:kmill
feat: deriving `LinearOrder` for simple enough inductive types Uses the same machinery underlying the `Fintype` derive handler to derive a lexicographical `LinearOrder` for non-recursive inductive types that have no indices. In principle more complicated types can have `LinearOrder`s, but that would require a more sophisticated implementation. --- - [x] depends on: #3198 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-meta 82/0 Mathlib.lean,Mathlib/Tactic/DeriveLinearOrder.lean 2 5 ['ChrisHughes24', 'kim-em', 'kmill', 'vihdzp'] nobody
510-25294
1 year ago
1136-27325
1136 days ago
1-80343
1 day
16120 awainverse
author:awainverse
feat(ModelTheory/Algebra/Ring/Basic): Ring homomorphisms are a `StrongHomClass` for the language of rings Adds an `IsAlgebraic` instance to the language of rings Adds a `StrongHomClass` instance to the type of ring homomorphisms between rings with `CompatibleRing` structures --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra RFC t-logic
label:t-algebra$
34/13 Mathlib/ModelTheory/Algebra/Ring/Basic.lean 1 10 ['ChrisHughes24', 'YaelDillies', 'awainverse', 'github-actions', 'jcommelin'] nobody
508-42834
1 year ago
508-42834
508 days ago
135-29017
135 days
20527 trivial1711
author:trivial1711
refactor(Topology/UniformSpace/Completion): more descriptive names for `α → Completion α` - We rename the various maps `α → Completion α` in order to make their names more consistent. - Let `α` be a uniform space. We rename the uniformly continuous function `α → Completion α` from `UniformSpace.Completion.coe'` to `UniformSpace.Completion.coe`. - Let `α` be a uniform additive group. We rename the additive group homomorphism `α →+ Completion α` from `UniformSpace.Completion.toCompl` to `UniformSpace.Completion.coeAddHom`. - Let `α` be a uniform ring. The ring homomorphism `α →+* Completion α` is called `UniformSpace.Completion.coeRingHom`; its name is unchanged. - Let `α` be a normed space over a field `𝕜`. We rename the linear isometry `α →ₗᵢ[𝕜] Completion α` from `UniformSpace.Completion.toComplₗᵢ` to `UniformSpace.Completion.coeₗᵢ`. - Let `α` be a normed space over a field `𝕜`. We rename the continuous linear map `α →L[𝕜] Completion α` from `UniformSpace.Completion.toComplL` to `UniformSpace.Completion.coeL`. - Let `α` be a normed additive group. We rename the norm preserving homomorphism `NormedAddGroupHom α (Completion α)` from `NormedAddCommGroup.toCompl` to `UniformSpace.Completion.coeNormedAddGroupHom`. - We analogously rename some other theorems. - We add some trivial theorems (all of which are proved by `rfl`) that state that the functions considered above are equal. We give all of them the `simp` and `norm_cast` attributes. - We add a new theorem `UniformSpace.Completion.coeAddHom_eq_coe` that states that `UniformSpace.Completion.coeAddHom` and `UniformSpace.Completion.coe` are equal as functions. - We similarly add a new theorem `UniformSpace.Completion.coeRingHom_eq_coe`. - We rename the theorem `UniformSpace.Completion.coe_toComplₗᵢ` to `UniformSpace.Completion.coeₗᵢ_eq_coe`. - We rename the theorem `UniformSpace.Completion.coe_toComplL` to `UniformSpace.Completion.coeL_eq_coe`. - We similarly add a new theorem `UniformSpace.Completion.coeNormedAddGroupHom_eq_coe`. - We change all occurrences of the string `((↑) : α → Completion α)` to `(coe : α → Completion α)` or just `coe`. - We put the statements of some theorems into simp normal form by using the plain function `coe` rather than the homomorphisms that carry more structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 130/92 Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Analysis/SpecialFunctions/NonIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/Nonarchimedean.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformRing.lean,Mathlib/Topology/Category/UniformSpace.lean,Mathlib/Topology/MetricSpace/Completion.lean,Mathlib/Topology/UniformSpace/Completion.lean 17 4 ['eric-wieser', 'github-actions', 'trivial1711'] nobody
501-73866
1 year ago
501-73866
501 days ago
6-66637
6 days
17739 Aaron1011
author:Aaron1011
feat(Topology/Order/DenselyOrdered): prove Not (IsOpen) for intervals Prove that Iic/Ici/Ioc/Ico/Icc intervals are not open in densely ordered topologies with no min/max element --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology new-contributor 27/0 Mathlib/Topology/Order/DenselyOrdered.lean 1 8 ['github-actions', 'vihdzp'] nobody
499-61141
1 year ago
592-52711
592 days ago
0-4704
1 hour
18474 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `*WithOne.to*` instances --- From #7873. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra t-data
label:t-algebra$
9/2 Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean 3 7 ['astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-bot'] nobody
499-60896
1 year ago
499-60896
499 days ago
76-66907
76 days
20656 Komyyy
author:Komyyy
feat(Mathlib/Geometry/Manifold/VectorBundle/Sphere): convert orthogonal smooth `M → 𝕊ⁿ` & `M → ℝⁿ⁺¹` to smooth `M → T𝕊ⁿ` Current Mathlib has no easy way to define function from a manifold to tangent bundles of sphere: `T𝕊ⁿ`. This PR gives this: `sphereTangentMap`. This convert orthogonal smooth `M → 𝕊ⁿ` & `M → ℝⁿ⁺¹` to smooth `M → T𝕊ⁿ`. I also proved that if `f : M → 𝕊ⁿ` & `g : M → ℝⁿ⁺¹` are smooth then `sphereTangentMap` of `f` & `g` is smooth too. --- ⚠ **CAUTION** I formalized this in my spare time. I don't have the energy to maintain the PR, but I create this PR so this may helps everyone. The only one thing to do is proof cleanup. TODO: - [x] `contDiff_uncurry_stereoInvFunAux` & `coe_sphere_comp_stereoInvFun` may have to be moved to `Mathlib.Geometry.Manifold.Instances.Sphere`. - [ ] Proof cleanup. Current proof may be redundant and ugly. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-differential-geometry 246/6 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/VectorBundle/Sphere.lean 3 1 ['github-actions'] nobody
499-9430
1 year ago
unknown
0-0
0 seconds
15711 znssong
author:znssong
feat(Combinatorics/SimpleGraph): Some lemmas about walk, cycle and Hamiltonian cycle --- These lemmas are separated from the `meow-sister/BondyChvatal` branch and will be needed for the proof of the Bondy-Chvátal theorem. - [x] depends on: #15536 - [x] depends on: #16294 merge-conflict awaiting-author t-combinatorics new-contributor 407/3 Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 4 22 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'znssong'] nobody
498-80227
1 year ago
620-4988
620 days ago
9-13962
9 days
15720 znssong
author:znssong
feat(SimpleGraph): The Bondy-Chvátal theorem The proof of the Bondy-Chvátal theorem, with Dirac's theorem and Ore's theorem as its corollary. - [x] depends on: #15536 - [ ] depends on: #15711 - [ ] depends on: #15578 merge-conflict blocked-by-other-PR t-combinatorics new-contributor 903/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/BondyChvatal.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Increasing.lean 8 3 ['github-actions', 'grunweg'] nobody
498-80227
1 year ago
656-11181
656 days ago
0-1791
29 minutes
18629 tomaz1502
author:tomaz1502
feat(Computability.Timed): Formalization of runtime complexity of List.merge This PR adds the formalization of the runtime complexity of the merge function, defined in `Data/List/Sort`. Requires: https://github.com/leanprover-community/mathlib4/pull/15450 References: - Previous PR on mathlib3: https://github.com/leanprover-community/mathlib3/pull/14494/ - First discussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/BSc.20Final.20Project/near/220647062 - Second disussion on Zulip: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Formalization.20of.20Runtime.20Complexity.20of.20Sorting.20Algorithms/near/284184450 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 186/0 Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean 3 2 ['github-actions', 'trivial1711'] nobody
498-46146
1 year ago
538-45759
538 days ago
33-11262
33 days
8362 urkud
author:urkud
feat(Asymptotics): define `ReflectsGrowth` --- - [x] depends on: #8349 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 268/0 Mathlib.lean,Mathlib/Analysis/Asymptotics/ReflectsGrowth.lean 2 14 ['YaelDillies', 'fpvandoorn', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
496-53400
1 year ago
688-18827
688 days ago
240-47513
240 days
6692 prakol16
author:prakol16
feat: disjoint indexed union of local homeomorphisms Add disjoint indexed union of local equivs and local homeomorphisms --- This is leading up to PRing some things related to covering spaces that I wrote a long time ago in lean 3 but never submitted a PR for. Note that this was converted using mathport. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 126/0 Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/Topology/PartialHomeomorph.lean 2 4 ['alreadydone', 'github-actions', 'winstonyin'] nobody
496-37996
1 year ago
588-48015
588 days ago
118-5497
118 days
18461 hannahfechtner
author:hannahfechtner
feat: left and right common multiples mixins add mixins for left and right common multiples. These carry the data of what factors are used to create the common multiples --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
78/0 Mathlib/Algebra/Group/Defs.lean 1 13 ['github-actions', 'hannahfechtner', 'jcommelin', 'kbuzzard', 'kim-em', 'trivial1711'] nobody
495-7326
1 year ago
495-7326
495 days ago
69-35596
69 days
19291 PieterCuijpers
author:PieterCuijpers
feat(Algebra/Order/Hom): add quantale homomorphism Definition of quantale homomorphisms as functions that are both semigroup homomorphisms and complete lattice homomorphisms. --- - [x] depends on: #19810 - [x] depends on: #19811 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
209/0 Mathlib.lean,Mathlib/Algebra/Order/Hom/Quantale.lean,scripts/noshake.json 3 29 ['PieterCuijpers', 'YaelDillies', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot'] nobody
493-67805
1 year ago
499-35206
499 days ago
29-51482
29 days
19352 hrmacbeth
author:hrmacbeth
chore: change some `nlinarith`s to `linear_combination`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 13/13 Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean,Mathlib/NumberTheory/Modular.lean 8 4 ['github-actions', 'hrmacbeth', 'leanprover-bot'] nobody
492-10616
1 year ago
554-22321
554 days ago
0-8636
2 hours
20372 jvlmdr
author:jvlmdr
feat(MeasureTheory/Function): Add ContinuousLinearMap.bilinearCompLp(L) Introduce ContinuousLinearMap.bilinearCompLp and bilinearCompLpL. Generalize eLpNorm_le_eLpNorm_mul_eLpNorm theorems to include constant C in bound condition. --- Expect this may be useful for defining tempered distributions from functions in `L^p`. The definitions more or less follow `ContinuousLinearMap.compLp...`. Names are loosely analogous to `ContinuousLinearMap.bilinearComp` and `SchwartzMap.bilinLeftCLM`. Note: I preferred the spelling `hpqr : p⁻¹ + q⁻¹ = r⁻¹` with `f` in `L^p` and `g` in `L^q` to `hpqr : 1 / p = 1 / q + 1 / r`. It's easier to obtain from `ENNReal.IsConjExponent` too. A few questions: - [ ] I defined `bilinear{Left,Right}LpL` in addition to `bilinearCompLpL` because `LinearMap.mkContinuous₂` is marked as `noncomputable` and `LinearMap.mkContinuous` is not. Is this worth the extra definitions? (Note: This is not visible in the source due to `noncomputable section`.) - [ ] Should I use `C : ℝ` instead of `C : NNReal` for `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'`? - [ ] Is it going to be painful to have `[Fact (1 ≤ p)] [Fact (1 ≤ q)] [Fact (1 ≤ r)]`? I don't think there's a way to avoid it though. Maybe providing specialized versions for `p.IsConjExponent q` with `L^1`? Naming: - [ ] Is it satisfactory to add a `'` to the `eLpNorm_le_eLpNorm_mul_eLpNorm ` definitions in `CompareExp.lean` where `≤ ‖f x‖ * ‖g x‖` has been replaced with `≤ C * ‖f x‖ * ‖g x‖`? These could replace the existing theorems, although I don't want to break backwards compatibility. There are 5 instances: `eLpNorm_le_eLpNorm_top_mul_eLpNorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm_top'`, `eLpNorm'_le_eLpNorm'_mul_eLpNorm''`, `eLpNorm_le_eLpNorm_mul_eLpNorm_of_nnnorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'` (I'm not sure why the existing theorem `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm` has an internal `'`) - [ ] Is `bilinearLeftLpL` a suitable name? Other options: `bilinearCompLpLeftL`, `bilinearCompLeftLpL`, `bilinLeftLpL` (analogous to `SchwartzMap.bilinLeftCLM`) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-measure-probability new-contributor 203/40 Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace.lean 2 1 ['github-actions'] nobody
486-85153
1 year ago
486-85153
486 days ago
27-43617
27 days
2605 eric-wieser
author:eric-wieser
chore: better error message in linarith On this mwe: ```lean import Mathlib.Tactic.Linarith example (s : Set ℕ) (h : s = s) : 0 ≤ 1 := by linarith ``` this now indicates where the internal error is coming from. Is there a better way of chaining errors than this? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 12/1 Mathlib/Tactic/Linarith/Preprocessing.lean 1 3 ['Vierkantor', 'harahu', 'kim-em', 'mo271'] nobody
484-75746
1 year ago
1132-20885
1132 days ago
51-42225
51 days
11837 trivial1711
author:trivial1711
feat: completion of a uniform multiplicative group Multiplicativize `Topology.Algebra.GroupCompletion`. That is, rewrite it in the multiplicative setting and recover the original results using `@[to_additive]`. - Because `@[to_additive]` doesn't work with `noncomputable section` (https://github.com/leanprover/lean4/pull/2610), some instances with `@[to_additive]` need to be explicitly marked with `noncomputable instance`. - One might be tempted to multiplicativize this definition from `Topology.Algebra.GroupCompletion`: ```lean instance [UniformSpace α] [Add α] : Add (Completion α) := ⟨Completion.map₂ (· + ·)⟩ ``` to this: ```lean @[to_additive] instance [UniformSpace α] [Mul α] : Mul (Completion α) := ⟨Completion.map₂ (· * ·)⟩ ``` However, as Eric Wieser pointed out, doing so would create a bad diamond with the definition ```lean instance [UniformSpace α] [TopologicalRing α] [UniformAddGroup α] [Ring α] : Mul (Completion α) := ⟨curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))⟩ ``` in `Topology.Algebra.UniformRing`. How should this diamond be resolved? Well, the definition of multiplication that uses `curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))` is the "correct" one. For example, it yields the correct result if `α` is `ℚ`, unlike the definition that uses `Completion.map₂ (· * ·)`. (This is because `Completion.map₂` yields junk values if used on a function which is not uniformly continuous. Note, however, that if multiplication on `α` *is* uniformly continuous, then `Completion.map₂ (· * ·)` and `curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))` are propositionally equal.) So, following Eric's suggestion, we remove the definition that uses `Completion.map₂ (· * ·)`, and generalize the other definition to any uniform space with a multiplication operation: ```lean @[to_additive] noncomputable instance [UniformSpace α] [Mul α] : Mul (Completion α) := ⟨curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))⟩ ``` This requires slightly modifying some of the proofs in `Topology.Algebra.GroupCompletion`. For example, suppose that `α` is a uniform group. Since we can no longer use `Completion.continuous_map₂`, it becomes more efficient to prove that the multiplication, inversion, and division operations on `Completion α` are uniformly continuous *before* we prove that `Completion α` is a group. - Previously, `Topology.Algebra.GroupCompletion` had an instance: ```lean instance [UniformSpace α] [Sub α] : Sub (Completion α) := ... ``` Naively multiplicativizing this would yield ```lean @[to_additive] instance [UniformSpace α] [Inv α] : Inv (Completion α) := ... ``` Unfortunately, this would conflict with `Topology.Algebra.UniformField`, which already instantiates `Inv (Completion α)` when `α` is a uniform field. Instead, we use two different `instance` declarations. (If `α` is an additive group, then this instantiates `Neg (Completion α)` twice, and the instances are syntactically equal.) ```lean @[to_additive] noncomputable instance [UniformSpace α] [Group α] : Inv (Completion α) := ... instance [UniformSpace α] [Neg α] : Neg (Completion α) := ... ``` This avoids the bad diamond (because a uniform field can never be a `Group`) while remaining backward compatible. Note that the `@[to_additive]` is necessary here, because it maintains the link between the additive setting and multiplicative setting. We use a similar method to instantiate `Div (Completion α)`. - Some definitions in this file involve a module structure on `α`. We leave these as is and do not attempt to multiplicativize them at all. - The instance of `DistribMulAction` must be multiplicativized to an instance of `MulDistribMulAction` manually. Zulip thread: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Completion.20of.20a.20uniform.20multiplicative.20group --- # (Small) Issue Recall the following trick that this pull request uses to define inversion and negation on uniform spaces. The idea is that we define negation on the completion of any uniform space that has a negation operation, but we define inversion on only the completion of a uniform space that has the structure of a multiplicative group. We do this to avoid creating a bad diamond with the inversion operation on a uniform field. ```lean @[to_additive] noncomputable instance {α : Type*} [UniformSpace α] [Group α] : Inv (Completion α) := ... instance {α : Type*} [UniformSpace α] [Neg α] : Neg (Completion α) := ... ``` Now, suppose that we want to prove `coe_inv_of_group` (resp. `coe_neg`), which states that the coercion `α → Completion α` commutes with inversion (resp. negation). In the current version of this pull request, `coe_inv_of_group` (resp. `coe_neg`) only applies to uniform multiplicative (resp. additive) groups. However, we do not use the fact that multiplication (resp. addition) on `α` is uniformly continuous to prove it. We only use the fact that inversion (resp. negation) is continuous. So, what we really want is to have more general statements that look like this: ```lean theorem coe_inv_of_group {α : Type*} [UniformSpace α] [Group α] [ContinuousInv α] : ... theorem coe_neg {α : Type*} [UniformSpace α] [Neg α] [ContinuousNeg α] : ... ``` Note that `coe_inv_of_group` needs the assumption `[Group α]`, because otherwise inversion is not defined on `Completion α` at all. However, `coe_neg` does not need the analogous assumption `[AdditiveGroup α]`. The question is: If `coe_inv_of_group` and `coe_neg` are written in this more general form, how can we link them using `@[to_additive]`? Here is one option, but it obviously leaves something to be desired. ```lean @[to_additive coe_neg_do_not_use_this_use_the_more_general_version] theorem coe_inv_of_group {α : Type*} [UniformSpace α] [Group α] [ContinuousInv α] : ... theorem coe_neg {α : Type*} [UniformSpace α] [Neg α] [ContinuousNeg α] : ... ``` Co-authored-by: Eric Wieser --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra merge-conflict help-wanted t-topology
label:t-algebra$
342/217 Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformField.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/Algebra/UniformRing.lean 9 14 ['eric-wieser', 'github-actions', 'trivial1711'] nobody
484-53251
1 year ago
513-65530
513 days ago
101-63310
101 days
12670 trivial1711
author:trivial1711
feat: completion of a nonarchimedean multiplicative group We prove that the completion of a nonarchimedean multiplicative group is a nonarchimedean multiplicative group. --- - [x] depends on: #12669 - [ ] depends on: #11837 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra t-topology blocked-by-other-PR
label:t-algebra$
358/228 Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformField.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/Algebra/UniformRing.lean 9 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
484-53128
1 year ago
511-34584
511 days ago
50-17994
50 days
9449 hmonroe
author:hmonroe
feat: Add Turing machine with the quintet definition (TMQ) and a chainable step function for each TM type --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author 458/1 Mathlib/Computability/TuringMachine.lean,Mathlib/Logic/PartArith.lean 2 8 ['eric-wieser', 'github-actions', 'hmonroe'] nobody
479-17930
1 year ago
823-30982
823 days ago
53-6945
53 days
19697 quangvdao
author:quangvdao
feat(BigOperators/Fin): Sum/product over `Fin` intervals This PR adds new theorems about the sum/product of some vector over `Fin` intervals. One example is: ``` @[to_additive] theorem prod_Iic_succ (i : Fin n) : ∏ j ∈ Iic i.succ, v j = (∏ j ∈ Iic i.castSucc, v j) * v i.succ ``` --- - [x] depends on: #20360 This is in preparation for reworking `finSigmaFinEquiv` and `finProdFinEquiv` in #19013. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 87/12 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Data/Fintype/Fin.lean,Mathlib/Order/Interval/Finset/Fin.lean 3 20 ['Ruben-VandeVelde', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody
476-60348
1 year ago
511-9878
511 days ago
6-25961
6 days
19353 hrmacbeth
author:hrmacbeth
chore: golf some term/rw proofs using `linear_combination` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 47/102 Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean 7 5 ['github-actions', 'grunweg', 'hrmacbeth', 'leanprover-bot'] grunweg
assignee:grunweg
475-59469
1 year ago
554-22313
554 days ago
0-7781
2 hours
20248 peabrainiac
author:peabrainiac
feat(Topology/Compactness): first-countable locally path-connected spaces are delta-generated Shows that all first-countable locally path-connected spaces are delta-generated (so in particular all normed spaces and convex subsets thereof are), and that delta-generated spaces are equivalently generated by the unit interval or standard simplices. --- - [ ] depends on: #21616 In principle, this should be close to all that's required to show that all simplicial complexes and CW-complexes are delta-generated; I just haven't done it yet because I'm not sure which file to best do it in. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import new-contributor merge-conflict awaiting-author t-topology 1189/813 Mathlib.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/Compactness/DeltaGeneratedSpace.lean,Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/Homotopy/HSpaces.lean,Mathlib/Topology/Path.lean 9 22 ['YaelDillies', 'github-actions', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'peabrainiac'] nobody
474-42463
1 year ago
481-6980
481 days ago
39-21495
39 days
10678 adri326
author:adri326
feat(Topology/UniformSpace): prove that a uniform space is completely regular Provides the pseudometric definition of a uniform space (for any open set `s` and `x ∈ s`, there exists a finite family of pseudometric spaces on `X` and an `ε > 0`, such that the intersection of the balls of these pseudometric spaces is a subset of `s`), and uses it to prove that `UniformSpace X` implies `CompletelyRegularSpace X`. --- This PR aims to close the gap of pi-base's theorem [T345](https://topology.pi-base.org/theorems/T000345), which says that topological groups are completely regular. We already have a proof that topological groups are uniform, but it turns out that we do not have any connection between `UniformSpace X` and `CompletelyRegularSpace X`. There is an equivalence between `UniformSpace X` and `CompletelyRegularSpace X`: the former implies the latter, and the latter implies *the existence of* the former. This PR provides the first half of this equivalence. The construction of the pseudometric definition is based on N. Bourbaki, Chapter 9, Theorem 4.1 The proof that a uniform space is completely regular is based on [the outline on mathexchange](https://math.stackexchange.com/questions/494718/how-to-prove-that-every-uniform-space-is-completely-regular). I tried to outline the major steps of the different proofs inside of comments; I can happily be more verbose to clear up any confusion. See [the corresponding Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Some.20missing.2C.20accessible.2C.20topology.20results) for more context. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 332/0 Mathlib.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/CompletelyRegular.lean 3 6 ['ADedecker', 'adri326'] ADedecker
assignee:ADedecker
473-53880
1 year ago
814-77559
814 days ago
17-44804
17 days
18785 erdOne
author:erdOne
feat(CategoryTheory): command that generates instances for `MorphismProperty` Co-authored-by: Calle Sönne --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory t-meta 369/0 Mathlib.lean,Mathlib/CategoryTheory/MorphismProperty/Tactic.lean,MathlibTest/AddMorphismPropertyInstances.lean,scripts/noshake.json 4 19 ['alexjbest', 'chrisflav', 'erdOne', 'github-actions', 'grunweg', 'jcommelin', 'joelriou'] nobody
471-70390
1 year ago
493-12260
493 days ago
52-4682
52 days
16311 madvorak
author:madvorak
feat(Computability): regular languages are context-free --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-computability 72/0 Mathlib.lean,Mathlib/Computability/Chomsky.lean,Mathlib/Computability/ContextFreeGrammar.lean 3 7 ['Rida-Hamadani', 'YaelDillies', 'github-actions', 'madvorak'] nobody
469-76809
1 year ago
unknown
0-0
0 seconds
19943 AlexLoitzl
author:AlexLoitzl
feat(Computability): Add Chomsky Normal Form Grammar and translation - Define Chomsky normal form grammars - Add language-preserving translation between context-free grammars and Chomsky normal form grammars Co-authored-by: Martin Dvorak martin.dvorak@matfyz.cz --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 3151/0 Mathlib.lean,Mathlib/Computability/ChomskyNormalForm/Basic.lean,Mathlib/Computability/ChomskyNormalForm/EmptyElimination.lean,Mathlib/Computability/ChomskyNormalForm/LengthRestriction.lean,Mathlib/Computability/ChomskyNormalForm/TerminalRestriction.lean,Mathlib/Computability/ChomskyNormalForm/Translation.lean,Mathlib/Computability/ChomskyNormalForm/UnitElimination.lean,Mathlib/Computability/ContextFreeGrammar.lean 8 59 ['AlexLoitzl', 'YaelDillies', 'github-actions', 'kim-em', 'madvorak'] nobody
469-76562
1 year ago
477-1784
477 days ago
37-29014
37 days
21501 sksgurdldi
author:sksgurdldi
feat(List): add sum_zipWith_eq_finset_sum ### **Description:** This PR adds the lemma `List.sum_zipWith_eq_finset_sum` to `Mathlib.Algebra.BigOperators.Group.Finset.Basic`. #### **Statement:** The sum of the `zipWith` operation on two lists equals the sum of applying the operation to corresponding elements of the two lists, indexed over the minimum of their lengths. #### **Formal Statement:** ```lean lemma sum_zipWith_eq_finset_sum [Inhabited α] [Inhabited β] [AddCommMonoid γ] {op : α → β → γ} (l : List α) (m : List β) : (List.zipWith op l m).sum = ∑ x ∈ (Finset.range (Nat.min l.length m.length)), op (l[x]!) (m[x]!) ``` #### **Remarks:** - This lemma provides a useful equivalence between `List.zipWith` and summation over a `Finset.range` indexed by `Nat.min l.length m.length`. - It can be helpful in algebraic manipulations involving list-based summations. #### **Dependencies:** No additional dependencies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra new-contributor
label:t-algebra$
43/0 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 1 ['github-actions', 'j-loreaux'] nobody
464-45333
1 year ago
464-45333
464 days ago
13-33168
13 days
12054 adomani
author:adomani
feat: auto-bugs This PR introduces a linter for suggesting bugs in tactics. See * #12077 * #12083 * #12084 for some bugs exposed by the test suite. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 737/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/MetaTesting.lean,scripts/noshake.json,test/MetaTesting.lean 5 20 ['adomani', 'eric-wieser', 'github-actions', 'joneugster', 'kim-em'] joneugster
assignee:joneugster
464-32990
1 year ago
677-5008
677 days ago
45-6051
45 days
5062 adomani
author:adomani
feat(Tactic/Prune + test/Prune): add `prune` tactic, for removing unnecessary hypotheses This tactic removes very conservatively all local declarations that 1. do not appear in the main goal, 2. do not appear in a declaration that appears in the main goal, 3. ... and so on recursively. The main motivation for this tactic is that all available variables in the current `namespace/section` appear in the goal state, not just the ones that are needed for the statement to type-check. Using `prune` mitigates this situation. The tactic also admits an optional natural number argument: `prune n` removes all variables that have not appeared at the `(n+1)`-st stage in the above list. Thus, `prune 0` only leaves the variables needed for the statement to type-check. Also, for sufficiently large `n`, `prune n` is a synonym for `prune`. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/substitute.20for.20.60include.2Fomit.60.3F) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict modifies-tactic-syntax awaiting-author t-meta 181/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Prune.lean,test/Prune.lean 4 5 ['adomani', 'j-loreaux', 'kmill'] nobody
464-297
1 year ago
884-72028
884 days ago
195-57118
195 days
21433 grunweg
author:grunweg
chore: change more lemmas to be about enorm instead of nnnorm --- - [x] depends on: #21782 - [x] depends on: #21783 (and this PR modifies the file split, and file splits are painful to merge over) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author carleson t-measure-probability 172/71 Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean 9 18 ['RemyDegenne', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-dependent-issues-bot'] nobody
462-51550
1 year ago
469-47615
469 days ago
2-37989
2 days
20454 urkud
author:urkud
chore(TangentCone): review names Also add some `@[simp]` attrs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis 201/139 Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/RestrictScalars.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/UniqueDifferential.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,Mathlib/MeasureTheory/Integral/FundThmCalculus.lean 25 3 ['github-actions', 'sgouezel', 'urkud'] nobody
458-11730
1 year ago
507-51493
507 days ago
4-8272
4 days
16550 awainverse
author:awainverse
feat(ModelTheory): A typeclass for languages expanding other languages Defines `L.Expands L'` to consist of a privileged injective inclusion, `L'.Inclusion L`, from `L'` to `L`, corresponding to one language being a subset of the other in set-theoretic foundations. Replaces `L.IsOrdered` with `L.Expands Language.order` and `L.OrderLHom` with `Language.order.Inclusion L` Redefines `leSymb` in terms of `Language.order.Inclusion L` Deletions: - `FirstOrder.Language.IsOrdered` - `FirstOrder.Language.OrderLHom` - `instance : IsOrdered Language.order` - `sum.instIsOrdered` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 97/43 Mathlib/ModelTheory/LanguageMap.lean,Mathlib/ModelTheory/Order.lean 2 9 ['YaelDillies', 'awainverse', 'github-actions'] nobody
457-50598
1 year ago
629-81829
629 days ago
0-61590
17 hours
10823 alexkeizer
author:alexkeizer
feat: convert curried type functions into uncurried type functions Adds a conversion `TypeFun.ofCurried : CurriedTypeFun.{u, v} n -> TypeFun.{u, v} n`, where `CurriedTypeFun.{u,v} n` is a (def-eq) abbreviation for `Type u -> ... -> Type u -> Type v`, i.e., the type of *curried* functions taking `n` arguments of type `Type u` to return an element of `Type v`, and `TypeFun.{u, v} n` is an abbreviation for `TypeVec.{u} n -> Type v`. It is generally more idiomatic to define type functions with multiple arguments in the curried style, but in the QPF development we use the uncurried equivalent `TypeVec n -> Type _`. Thus, having a canonical conversion from curried functions to uncurried gives us a canonical way to ask if a curried type function, say `Sum` is a QPF (namely, "is there an instance of `MvQPF (TypeFun.ofCurried Sum)`"). --- This is code ported from https://github.com/alexkeizer/QpfTypes, where this conversion is crucial in presenting a high-level interface, in terms of idiomatic, curried, type functions to users, while being built on QPFs (and thus, uncurried typefunctions) underneath. There is also a conversion in the other direction, from uncurried to curried, which I've decided to PR later, to keep this PR smaller and hopefully easier to review. - [x] depends on: #10818 (all changes to `Fin2.lean` are part of 10818, not the current PR) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 66/0 Mathlib.lean,Mathlib/Data/TypeFun.lean 2 9 ['YaelDillies', 'alexkeizer', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
454-63191
1 year ago
705-47791
705 days ago
15-9013
15 days
13648 urkud
author:urkud
feat(Topology/Module): generalize `ContinuousLinearMap.compSL` Generalize `ContinuousLinearMap.compSL` to topological vector spaces. --- - [ ] depends on: #15217 This PR is not polished yet, but the main statement is there. @ADedecker This answers a question I asked you on Zulip a few months ago. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict awaiting-author t-topology t-analysis
label:t-algebra$
23/18 Mathlib/Analysis/NormedSpace/OperatorNorm/Bilinear.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean 2 5 ['fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
452-86281
1 year ago
690-69208
690 days ago
28-69042
28 days
20636 eric-wieser
author:eric-wieser
feat: multiplication of intervals in rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra
label:t-algebra$
36/1 Mathlib/Algebra/Order/Interval/Basic.lean 1 16 ['Timeroot', 'YaelDillies', 'eric-wieser', 'github-actions'] nobody
451-58250
1 year ago
487-62027
487 days ago
17-17852
17 days
22340 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Beck-Chevalley Conditions) Building on top of the API of `ExponentiableMorphism` in #22321, we state and prove Beck-Chevalley conditions. This will be crucial for our development of polynomial functors along exponentiable morphisms. Co-authored-by: Emily Riehl --- - [ ] depends on: #22321 - [ ] depends on: #22319 - [ ] depends on: #21525 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory large-import merge-conflict 1144/24 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/BeckChevalley.lean,docs/references.bib 8 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
450-74832
1 year ago
457-56759
457 days ago
0-17
17 seconds
21959 BGuillemet
author:BGuillemet
feat(Topology/ContinuousMap): Stone-Weierstrass theorem for MvPolynomial Add the subalgebra of multivariate polynomials and prove it separates points, on the same model as `ContinuousMap/Polynomial.lean`. Prove the Stone-Weierstrass theorem and some variations for multivariate polynomials. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology new-contributor 285/1 Mathlib.lean,Mathlib/Topology/ContinuousMap/MvPolynomial.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 3 1 ['github-actions'] nobody
450-71174
1 year ago
450-71174
450 days ago
16-76141
16 days
18470 FR-vdash-bot
author:FR-vdash-bot
perf: lower the priority of `Normed*.to*` instances --- From #7873. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra t-analysis
label:t-algebra$
28/0 Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean 2 9 ['astrainfinita', 'github-actions', 'jcommelin', 'leanprover-bot'] nobody
446-42601
1 year ago
446-42601
446 days ago
129-16341
129 days
17368 Felix-Weilacher
author:Felix-Weilacher
feat(Topology/Baire/BaireMeasurable): add the Kuratowski-Ulam theorem Add the Kuratowski-Ulam theorem, which one can think of as a "Fubini" for Baire category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 187/1 Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/GDelta/Basic.lean 5 6 ['Felix-Weilacher', 'github-actions', 'urkud'] nobody
444-66670
1 year ago
581-78189
581 days ago
22-48725
22 days
8767 eric-wieser
author:eric-wieser
refactor(Cache): tidy lake-manifest parsing in Cache This now respects local copies of Mathlib dependencies (though in practice these invalidate the *online* cache because to point to local copies of Mathlib, the hash for `lakefile.lean` and `lake-manifest.json` is first invalidated). --- - [x] depends on: #11492 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 49/49 Cache/Hashing.lean,Cache/IO.lean,lake-manifest.json 3 8 ['digama0', 'eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
443-42333
1 year ago
625-8283
625 days ago
119-35643
119 days
15578 znssong
author:znssong
feat(Function): Fixed points of function `f` with `f(x) >= x` We added some lemmas of fixed points of function `f` with `f(x) >= x`, where `f : α → α` is a function on a finite type `α`. This will be needed in proof of Bondy-Chvátal theorem. --- See also branch `meow-sister/BondyChvatal`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis new-contributor 82/0 Mathlib.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Increasing.lean 3 32 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'urkud', 'vihdzp', 'znssong'] nobody
442-67000
1 year ago
625-70229
625 days ago
29-48368
29 days
22660 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: follow naming convention around Group.IsNilpotent --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
133/67 Mathlib/GroupTheory/Frattini.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean 3 1 ['github-actions'] nobody
439-7029
1 year ago
439-7029
439 days ago
10-48025
10 days
13999 adomani
author:adomani
feat: a linter to flag potential confusing conventions Currently, the linter flags all uses of * `a - b` where `a b : Nat`; * `a / b` where `a b : Nat` or `a b : Int`; * `a / 0` more or less whenever the type of `a` has a `0` and a division. This comes up often when starting to use Lean and hopefully the flag can help mitigate initial confusions. When the local context contains the relevant inequality/divisibility hypothesis, the linter is quiet. A recent [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/not.20understanding.20deliberate.20error.20with.20.60ring.60.20over.20.E2.84.95/near/445879310) --- To make sure that the linter does not produce errors, #14007 activates the linter on "all" of mathlib. The expectation is that no error is thrown, just warnings. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 251/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/Papercut.lean,MathlibTest/Papercut.lean 4 24 ['Julian', 'YaelDillies', 'adomani', 'eric-wieser', 'github-actions'] nobody
438-39063
1 year ago
699-16554
699 days ago
7-47589
7 days
19013 quangvdao
author:quangvdao
feat(Algebra/BigOperators/Fin): Add `finSigmaFinEquiv` This PR adds `finSigmaFinEquiv` which is the equivalence `(i : Fin m) × Fin (n i) ≃ Fin (∑ i, n i)`. This is the dependent version of `finProdFinEquiv`. CI should be passing, but there are two things I'd like feedback on: 1. When defining the mappings, I have to consider `m = 0` separately. Is there a more uniform definition? 2. I'm proving this as a step toward defining `Fin.join`, which is the analogue of `List.join`. I can now technically define `Fin.join` as: ``` variable {a : Fin n → ℕ} {α : (i : Fin n) → (j : Fin (a i)) → Sort*} def join (v : (i : Fin n) → (j : Fin (a i)) → α i j) (k : Fin (∑ i, a i)) : α (finSigmaFinEquiv.invFun k).1 (finSigmaFinEquiv.invFun k).2 := v (finSigmaFinEquiv.invFun k).1 (finSigmaFinEquiv.invFun k).2 ``` but this looks horrible. This highly motivates refactoring `invFun` as two new definitions: ``` def func1 {n : ℕ} (a : Fin n → ℕ) (k : Fin (∑ i, a i)) : Fin n := sorry def func2 {n : ℕ} (a : Fin n → ℕ) (k : Fin (∑ i, a i)) : Fin (a (func1 a k)) := sorry ``` I'm not sure what to call these functions. The analogues in the non-dependent case are `divNat` and `modNat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
92/16 Mathlib/Algebra/BigOperators/Fin.lean 1 14 ['YaelDillies', 'eric-wieser', 'github-actions', 'quangvdao'] nobody
436-61096
1 year ago
558-39024
558 days ago
3-28829
3 days
19227 adomani
author:adomani
fix(CI): unwrap `lake test` in problem matcher ... and also add a `#guard_msgs` in `AssertImported` test, so that `lake test` properly fails. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/CI.3A.20noisy.20.22test.20mathlib.22/near/483126955) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 9/20 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,MathlibTest/AssertImported.lean 5 2 ['bryangingechen', 'github-actions'] nobody
433-80132
1 year ago
534-34403
534 days ago
22-71271
22 days
15774 kkytola
author:kkytola
feat: Topology on `ENat` This PR may contain some results that are not in the PR that adds a toppology on `ENat`. --- The immediate motivation is to be able to make the right continuity statement of the extended floor function on `ENNReal`, when this floor function is made `ENat`valued as suggested in the PR review of #15269. The API here is modelled on the early parts of [the corresponding ENNReal file](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Instances/ENNReal.html#top), although much of this case is more trivial. - [x] depends on: #15380 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology t-order 161/9 Mathlib/Data/ENat/Basic.lean,Mathlib/Topology/Instances/ENat.lean 2 4 ['YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot'] nobody
429-37664
1 year ago
654-67207
654 days ago
0-6819
1 hour
20222 eric-wieser
author:eric-wieser
feat: generalize lemmas about derivatives Rather than creating a huge diff by shuffling things around, this generalizes everything in-place and swaps between `section`s for topological and normed vector spaces. The rationale for this approach is that: * we may further generalize the results of this file, and this avoids us jumbling up the order multiple times unnecessarily. * this greatly reduces the chance of merge conflicts --- - [ ] depends on: #21065 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-analysis 554/50 Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,MathlibTest/Recall.lean 3 8 ['adomani', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
425-7932
1 year ago
488-21174
488 days ago
7-27718
7 days
21018 markimunro
author:markimunro
feat(Data/Matrix): add file with key definitions and theorems about elementary row operations Prove that each elementary row operation is equivalent to a multiplication by an elementary matrix, has another row operation which inverts it, and that each elementary matrix has a left inverse. This is a very large PR and I understand it will take time. This is my first one and will likely have issues but I will be ready to answer questions/fix them as soon as possible. Co-authored-by: Christopher Lynch --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data enhancement new-contributor merge-conflict awaiting-author 1230/0 Mathlib.lean,Mathlib/Data/Matrix/ElementaryRowOperations.lean,Mathlib/Data/Matrix/GaussianElimination.lean,Mathlib/Data/Matrix/GaussianEliminationOld,Mathlib/Data/Matrix/oldnames,et --hard 18533caba32,lean-toolchain 7 17 ['chrisflav', 'eric-wieser', 'github-actions', 'j-loreaux', 'markimunro'] nobody
424-15999
1 year ago
449-44955
449 days ago
23-22681
23 days
23514 eric-wieser
author:eric-wieser
refactor: smooth over Lattice/LinearOrder inheritance This fixes the forgetful inheritance in `CompleteLinearOrder` and `ConditionallyCompleteLinearOrder`, which previously did not carry `compare` fields. (edit: moved to #23515) The following is the inheritance diagram before, where the dotted lines are manual instances. Note that every lattice typeclass that extends `LinearOrder` has to implement another dotted line edge, and remember to copy all the necessary data fields. ```mermaid graph TD LinearOrder --> Min,Max; LinearOrder --> PartialOrder; Lattice --> PartialOrder; CompleteLinearOrder --> Lattice; ConditionallyCompleteLinearOrder --> Lattice; LinearOrder-.-> Lattice; CompleteLinearOrder -.-> LinearOrder; ConditionallyCompleteLinearOrder -.-> LinearOrder; ``` This change introduces two new auxiliary typeclasses, to encapsulate these troublesome edges. `LinearOrderedLattice` can be thought of as `LinearOrder`, but with `sup`/`inf` instead of `min`/`max`. This is crucial, because it ensures the duplicate fields are merged in `extends CompleteLattice X, LinearOrderedLattice X`, which would not be the case for `extends CompleteLattice X, LinearOrder X`. The result is: ```mermaid graph TD LinearOrder --> Min,Max; LinearOrder --> LinearOrderBase; LinearOrderBase --> PartialOrder; Lattice --> PartialOrder; LinearOrderedLattice -.-> LinearOrder; LinearOrderedLattice --> LinearOrderBase; LinearOrderedLattice --> Lattice; CompleteLinearOrder --> LinearOrderedLattice; ConditionallyCompleteLinearOrder --> LinearOrderedLattice; ``` --- - [ ] depends on: #23515 - [ ] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 85/66 Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Order/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Lattice.lean 7 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
423-41829
1 year ago
424-46768
424 days ago
0-172
2 minutes
22810 pechersky
author:pechersky
feat(Counterexamples): metric space not induced by norm Because the distance is not homogeneous --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #22845 merge-conflict WIP t-topology t-analysis 202/1 Counterexamples.lean,Counterexamples/NotBoundedSMulMetricSpace.lean,Mathlib.lean,Mathlib/Analysis/Normed/PiNat.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/MetricSpace/Polish.lean 6 21 ['eric-wieser', 'github-actions', 'loefflerd', 'mathlib4-dependent-issues-bot', 'pechersky'] nobody
422-78291
1 year ago
438-25382
438 days ago
0-82394
22 hours
13124 FR-vdash-bot
author:FR-vdash-bot
chore: remove `CovariantClass` and `ContravariantClass` Lean cannot handle `CovariantClass` and `ContravariantClass` correctly - TC slowness - [Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/TC.20slowness) - https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1691792488 - It may also have made #6326 fail. - Needs a weird hack to find instance: #9252 --- - [x] depends on: #13154 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 602/486 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Group/Action.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/Subring/Pointwise.lean,Mathlib/Algebra/Ring/Subsemiring/Pointwise.lean,Mathlib/Analysis/SumOverResidueClass.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean 37 6 ['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] nobody
422-19868
1 year ago
unknown
0-0
0 seconds
15212 victorliu5296
author:victorliu5296
feat: Add fundamental theorem of calculus-2 for Banach spaces add the Mean Value Theorem for Banach spaces to the library and include reference for the theorem statement This theorem states that if `f : X → Y` is differentiable along the line segment from `a` to `b`, then the change in `f` equals the integral of its derivative along this path. This extends the mean value theorem to Banach spaces. This can be used for the eventual proof of the Newton-Kantorovich theorem with 1 constant contained inside the added reference. Here is the discussion on Zulipchat: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Contributing.20FTC-2.20for.20Banach.20spaces t-measure-probability new-contributor merge-conflict awaiting-author t-analysis 60/1 Mathlib/MeasureTheory/Integral/FundThmCalculus.lean 1 3 ['github-actions', 'hrmacbeth', 'victorliu5296'] nobody
419-10988
1 year ago
612-74759
612 days ago
51-85104
51 days
22888 plp127
author:plp127
perf: replace `Lean.Expr.swapBVars` with a better? implementation Replaces `Lean.Expr.swapBVars` with a version that traverses the expression. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 14/12 Mathlib/Tactic/FunProp/ToBatteries.lean 1 23 ['eric-wieser', 'github-actions', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127'] eric-wieser and joneugster
assignee:eric-wieser assignee:joneugster
418-4033
1 year ago
438-53873
438 days ago
4-80306
4 days
22579 kvanvels
author:kvanvels
doc(Topology/Defs/Induced): fix comments on three functions related to RestrictGenTopology --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology documentation awaiting-author 10/9 Mathlib/Topology/Defs/Induced.lean,Mathlib/Topology/RestrictGen.lean 2 4 ['github-actions', 'kvanvels', 'leanprover-community-bot-assistant', 'urkud'] nobody
416-17891
1 year ago
439-22268
439 days ago
12-18679
12 days
21488 imbrem
author:imbrem
feat(CategoryTheory/Monoidal): premonoidal categories Add support for premonoidal categories --- Still want to add support for: - Premonoidal braided/symmetric categories - The monoidal coherence theorem, which I've already ported in my `discretion` library - The `coherence` tactic, which should work fine for premonoidal categories too but wanted to get this in front of reviewers ASAP to make sure my general approach was alright [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory new-contributor 900/361 Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Localization/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,MathlibTest/StringDiagram.lean 21 9 ['YaelDillies', 'github-actions', 'grunweg', 'imbrem', 'kim-em', 'leanprover-community-bot-assistant'] nobody
415-79576
1 year ago
415-79577
415 days ago
58-6026
58 days
21525 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Prelim) This PR defines the basic preliminaries for defining locally cartesian closed categories (LCCCs). In particular, using the calculus of mates we define certain natural isomorphisms involving `Over.star` and `Over.pullback` which will be crucial in defining the right adjoint to the pullback functor in the development of LCCCs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory large-import 338/24 Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Galois/Examples.lean 3 13 ['b-mehta', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'sinhp'] nobody
415-79574
1 year ago
415-79576
415 days ago
36-69400
36 days
22319 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Sections Right Adjoint) we define the `Over.sections` functor in the file `CategoryTheory.Comma.Over.Sections` and prove that it is a right adjoint to the `Over.star`, thereby solving an existing TODO in `Over.pullback` file. The `sections` functor is used to define the right adjoint to the pullback functor `Over.pullback` in the development of LCCCs. Moreover, the rest of added lemmas and theorems to `CategoryTheory.Comma.Over.Pullback` are crucial for the development of LCCCs in the next PR. --- - [ ] depends on: #21525 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 547/24 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean 5 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
415-79047
1 year ago
457-83082
457 days ago
0-2084
34 minutes
22321 sinhp
author:sinhp
feat(CategoryTheory): Locally Cartesian Closed Categories (Definition) This PR defines locally cartesian closed categories in terms of existence of the pushforward functors (right adjoint to the pullback functor) for all morphisms. We develop basic API and prove the following: 1. Existence of the pushforward functors is equivalent to cartesian closed slices. 2. Any locally cartesian closed category with a terminal object is cartesian closed. 3. The slices of a locally cartesian closed category are locally cartesian closed. Some of the content is based on the project of formalization of polynomial functors at the Trimester "Prospect of Formal Mathematics" at the Hausdorff Institute (HIM) in Bonn. https://github.com/sinhp/Poly I found this implementation of locally cartesian closed categories amenable to polynomial functors formalization. Co-authored-by: Emily Riehl --- - [ ] depends on: #21525 - [ ] depends on: #22319 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory large-import 812/24 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean 6 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
415-79047
1 year ago
457-81823
457 days ago
0-336
5 minutes
19425 hrmacbeth
author:hrmacbeth
perf: gcongr forward-reasoning adjustment This PR changes the "forward-reasoning" component of `gcongr`, rendering it more efficient, particularly in problems with a large number of variables/hypotheses in the context. Previously `gcongr` attempted to match *every* `LocalDecl` against *every* node in the parse tree using *each* of the five implemented `@[gcongr_forward]` mini-tactics: matching directly, matching after applying `symm`, matching after applying `le_of_lt`, etc etc. The new algorithm filters out the non-Prop `LocalDecl`s, and also adjusts the `@[gcongr_forward]` extensions so that, rather than re-apply the relevant lemmas (`symm`, `le_of_lt`, etc) at every node in the parse tree, the lemmas are applied in advance to the `LocalDecl`s and the result (if successful) stored. The performance effect on mathlib as a whole is miniscule, but it speeds up the profiler's count of "tactic execution of Mathlib.Tactic.GCongr" in the newly-added test from 257 ms to 47 ms, and has a similar effect on real-life examples in an analysis project of mine. Co-authored-by: Mario Carneiro --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) (Note that Mario provided the ideas but not the code, so please review with appropriate diligence!) merge-conflict awaiting-author 130/59 Mathlib/Order/Lattice.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/ForwardAttr.lean,MathlibTest/GCongr/inequalities.lean 4 17 ['Vierkantor', 'github-actions', 'hrmacbeth', 'leanprover-bot', 'leanprover-community-bot-assistant'] Vierkantor
assignee:Vierkantor
415-5708
1 year ago
547-80525
547 days ago
1-41769
1 day
20873 vbeffara
author:vbeffara
feat(Topology/Covering): path lifting and homotopy lifting This proves the existence and uniqueness of path and homotopy lifts through covering maps. --- I tried to separate as much of the proof as possible into separate PRs (which are already in Mathlib now), but the proof here relies on a monolithic construction of an explicit lift along a well-chosen subdivision, in `partial_lift`, with associated definitions. Only one standalone lean file added. An older WIP PR #10084 by Junyan Xu @alreadydone proves similar results using a very similar construction for path lifting, with a different argument to obtain continuity for homotopy lifting. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology new-contributor 281/1 Mathlib.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/Covering/Lift.lean 3 9 ['alreadydone', 'github-actions', 'grunweg', 'vbeffara'] nobody
414-82304
1 year ago
489-75064
489 days ago
5-5648
5 days
22817 peabrainiac
author:peabrainiac
feat(CategoryTheory/Sites): local sites Defines local sites and shows that sheaves of types on them form a local topos, in that the global sections functor `Sheaf.Γ` has a right adjoint `Sheaf.codisc` that is fully faithful. --- - [x] depends on: #22816 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 263/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Shapes/Products.lean,Mathlib/CategoryTheory/Limits/Types.lean,Mathlib/CategoryTheory/Sites/GlobalSections.lean,Mathlib/CategoryTheory/Sites/LocalSite.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean 6 4 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
414-15913
1 year ago
445-17412
445 days ago
0-568
9 minutes
16314 FR-vdash-bot
author:FR-vdash-bot
chore(Data/Quot): deprecate `ind*'` APIs --- - [x] depends on: #16264 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 247/287 Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Computability/Reduce.lean,Mathlib/Computability/Tape.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Hom.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/PresentedGroup.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RepresentationTheory/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean,Mathlib/Topology/Separation/Basic.lean 65 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
410-18140
1 year ago
410-18142
410 days ago
55-52030
55 days
23509 eric-wieser
author:eric-wieser
refactor: Make ENNReal an abbrev The `Coe` instance becomes `CoeTC` to match what we do for `WithTop` (such that the priority kicks in) Probably we could have both copies and things would be ok. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This includes part of #23750 merge-conflict t-data 22/66 Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/BigOperators.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/Sub.lean,Mathlib/MeasureTheory/Measure/TightNormed.lean,Mathlib/Topology/MetricSpace/PartitionOfUnity.lean 7 22 ['eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mattrobball', 'urkud'] nobody
410-1793
1 year ago
411-72921
411 days ago
5-23475
5 days
11455 adomani
author:adomani
fix: unsqueeze simp, re Yaël's comments on #11259 This PR reverts/simplifies some of the "squeeze `simp`" changes in #11259. See #11259 for context. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 3/6 Mathlib/Algebra/Group/Conj.lean,Mathlib/Data/Seq/WSeq.lean 2 8 ['Ruben-VandeVelde', 'YaelDillies', 'grunweg', 'loefflerd', 'robertylewis', 'urkud'] nobody
409-49793
1 year ago
707-79700
707 days ago
93-60645
93 days
7325 eric-wieser
author:eric-wieser
chore: use preimageIso instead of defeq abuse for InducedCategory This makes a few things slightly more verbose, but the type casts are now explicit in those places. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory awaiting-CI 22/21 Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean 3 1 ['grunweg'] nobody
409-49672
1 year ago
unknown
0-0
0 seconds
7874 astrainfinita
author:astrainfinita
chore: make `IsScalarTower A A B` and `IsScalarTower A B B` higher priority --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra awaiting-CI
label:t-algebra$
10/9 Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/GroupTheory/GroupAction/Ring.lean 4 3 ['astrainfinita', 'grunweg', 'leanprover-bot'] nobody
409-49647
1 year ago
unknown
0-0
0 seconds
13038 adomani
author:adomani
feat: Mathlib weekly reports This PR introduces a weekly cron job that computes a "global" report on the evolution of Mathlib in the previous week. It consists of * a CI workflow with a cron job that runs at minight on Sunday (`.github/workflows/mathlib_stats.yaml`); * a Lean file extracting a categorized list of "all" the declarations in Mathlib (`scripts/count_decls.lean`); * a bash file computing Git-diff-related information and collating the data from the Lean file (`scripts/mathlib_stats.sh`); * a convenience CI workflow that is triggered on adding the `test-ci` label and results in posting on the PR and on Zulip the report (`.github/workflows/mathlib_stats_label.yaml`). The second CI workflow is intended to be removed just before/right after the PR is ready to merge. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113488-general) [Thread for the reports](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Mathlib.20weekly.20change.20report) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author CI t-meta 338/0 .github/workflows/mathlib_stats.yaml,.github/workflows/mathlib_stats_label.yaml,scripts/count_decls.lean,scripts/mathlib_stats.sh 4 10 ['adomani', 'github-actions', 'grunweg', 'kim-em', 'kmill'] nobody
409-49605
1 year ago
683-67485
683 days ago
57-4374
57 days
5952 eric-wieser
author:eric-wieser
feat: add Qq wrappers for ToExpr --- - [ ] depends on: #6699 (to appease the linter) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-CI t-meta 247/150 Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Tactic/DeriveToExpr.lean,Mathlib/Tactic/FBinop.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Util/Qq.lean,test/DeriveToExpr.lean,test/vec_notation.lean 9 7 ['eric-wieser', 'gebner', 'grunweg', 'leanprover-community-mathlib4-bot'] nobody
409-49473
1 year ago
1016-6336
1016 days ago
29-67421
29 days
15483 FR-vdash-bot
author:FR-vdash-bot
chore(GroupTheory/Coset): reduce defeq abuse --- - [x] depends on: #15482 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
114/60 Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/QuotientGroup.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/Topology/Algebra/Group/Compact.lean 6 14 ['astrainfinita', 'eric-wieser', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball', 'mergify', 'urkud'] nobody
409-49433
1 year ago
658-1363
658 days ago
4-79214
4 days
16594 FR-vdash-bot
author:FR-vdash-bot
perf: reorder `extends` and remove some instances in algebra hierarchy --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
240/92 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/Util/NoInstances.lean,scripts/noshake.json 50 8 ['astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot'] nobody
409-49209
1 year ago
614-2356
614 days ago
14-58900
14 days
19467 quangvdao
author:quangvdao
feat(MvPolynomial/Equiv): Add `MvPolynomial.finSuccEquivNth` This PR adds `MvPolynomial.finSuccEquivNth`, which is the algebra isomorphism between `MvPolynomial (Fin (n + 1)) R` and `Polynomial (MvPolynomial (Fin n) R)` by identifying the `p`-th variable as the indeterminate. This generalizes `MvPolynomial.finSuccEquiv` which is only for the `0`-th variable. The supporting theorems for the `Nth` version are identical to the current version, with the `Nth` version deduced from the former. These changes require new definitions in `Finsupp/Fin`, which is a separate PR. Co-authored-by: Yaël Dillies --- - [ ] depends on: #19315 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
541/163 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Finsupp/Fin.lean,scripts/nolints_prime_decls.txt 7 9 ['acmepjz', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody
407-53549
1 year ago
550-73515
550 days ago
0-790
13 minutes
20313 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Data/Complex/Exponential): prove some useful results about the complex exponential. This PR proves two basic results about the complex exponential: * `abs_exp_mul_I (x : ℂ) : abs (Complex.exp (I * x)) = Real.exp (-x.im)` * `one_sub_rexp_re_le_abs_one_sub_cexp (x : ℂ) : 1 - Real.exp x.re ≤ Complex.abs (1 - Complex.exp x)` Both results were proved as part of the sphere packing project. There's a chance they're too specific for mathlib, but I thought they were worth PRing anyway. Would it also be a good idea to tag `abs_exp_mul_I` with `simp`? Feedback/suggestions welcome. Note: `one_sub_rexp_re_le_abs_one_sub_cexp` was proved by Bhavik Mehta @b-mehta --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-analysis new-contributor 167/141 Mathlib.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/ERealExp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev.lean,Mathlib/Data/Complex/Exponential/Defs.lean,Mathlib/Data/Complex/Exponential/Lemmas.lean,Mathlib/Data/Complex/ExponentialBounds.lean,Mathlib/Tactic/FunProp.lean,MathlibTest/Recall.lean,MathlibTest/positivity.lean 10 12 ['b-mehta', 'github-actions', 'kim-em', 'thefundamentaltheor3m', 'trivial1711'] nobody
407-53502
1 year ago
490-64749
490 days ago
8-42257
8 days
22698 Kiolt
author:Kiolt
feat: notation for whisker(Left/Right)Iso From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory toric 175/113 Mathlib/Algebra/Homology/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Bicategory/Coherence.lean,Mathlib/CategoryTheory/Bicategory/Extension.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Strong.lean,Mathlib/CategoryTheory/Bicategory/SingleObj.lean,Mathlib/CategoryTheory/Closed/Functor.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/Enriched/FunctorCategory.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Reflection.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Monoidal/Preadditive.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/BicategoricalComp.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean 27 21 ['Kiolt', 'YaelDillies', 'b-mehta', 'github-actions', 'leanprover-bot'] nobody
407-53331
1 year ago
443-72688
443 days ago
3-29299
3 days
20730 kuotsanhsu
author:kuotsanhsu
feat(LinearAlgebra/Matrix/SchurTriangulation): prove Schur decomposition/triangulation `Matrix.schur_triangulation` shows that a matrix over an algebraically closed field is unitarily similar to an upper triangular matrix --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
317/2 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean,Mathlib/Logic/Equiv/Basic.lean 4 14 ['eric-wieser', 'github-actions', 'kim-em', 'kuotsanhsu'] nobody
407-49634
1 year ago
487-40607
487 days ago
13-56244
13 days
19117 eric-wieser
author:eric-wieser
feat: derivatives of matrix operations These are finally possible to state after #19108. However, a lot of bundled `ContinuousLinearMap`s are missing. --- - [x] depends on: #19108 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 336/22 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Matrix.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Matrix.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
405-72012
1 year ago
unknown
0-0
0 seconds
12605 FR-vdash-bot
author:FR-vdash-bot
chore: attribute [induction_eliminator] Add attribute [induction_eliminator] to `AdjoinRoot.induction_on` `ENat.recTopCoe` `ENNReal.recTopCoe` `Finset.induction` `Magma.AssocQuotient.induction_on` `ManyOneDegree.ind_on` `Module.Ray.ind` (and add `Orientation.ind` for `Orientation`, an abbrev of it. I wish that we do not need to add it in the future.) `Multiset.induction` `MvPolynomial.induction_on` `OnePoint.rec` `Opposite.rec'` `Ordinal.limitRecOn` `PartENat.casesOn` `Polynomial.induction_on'` `QuotientAddGroup.induction_on'` (and add `AddCircle.induction_on` for `AddCircle`, an abbrev of it. I wish that we do not need to add it in the future.) `QuotientGroup.induction_on'` (doesn't actually work) `Real.Angle.induction_on` `SimplexCategory.rec` `Trunc.induction_on` --- - [x] depends on: #13476 - [x] depends on: #13264 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 354/342 Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/BigOperators/Group/Multiset.lean,Mathlib/Algebra/BigOperators/Ring.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Eval.lean,Mathlib/Algebra/Polynomial/Induction.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/AlgebraicTopology/DoldKan/NCompGamma.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SplitSimplicialObject.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Asymptotics/Asymptotics.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/NormedSpace/Exponential.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/PolynomialExp.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SetFamily/Compression/Down.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SetFamily/HarrisKleitman.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/DFinsupp/Basic.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finset/Lattice.lean,Mathlib/Data/Finset/NAry.lean,Mathlib/Data/Fintype/Sum.lean,Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Fold.lean,Mathlib/Data/Multiset/Lattice.lean,Mathlib/Data/Multiset/Pi.lean,Mathlib/Data/Multiset/Powerset.lean,Mathlib/Data/Multiset/Sections.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Set/Pointwise/BigOperators.lean,Mathlib/FieldTheory/IntermediateField.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/RingedSpace/Basic.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/NoncommPiCoprod.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/FiniteDimensional.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Logic/Hydra.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue.lean,Mathlib/MeasureTheory/Integral/Marginal.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Measure/AddContent.lean 140 14 ['YaelDillies', 'astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
405-66627
1 year ago
738-11798
738 days ago
4-46495
4 days
23859 urkud
author:urkud
feat(Topology/../Order/Field): generalize to `Semifield` .. from a linear ordered field to a linear ordered semifield--- - [ ] depends on: #23857 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 245/219 Mathlib/Algebra/Order/Group/Pointwise/Interval.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Topology/Algebra/Order/Field.lean,Mathlib/Topology/Order/Basic.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
403-6050
1 year ago
416-16691
416 days ago
0-265
4 minutes
24219 Paul-Lez
author:Paul-Lez
feat: linear independence of the tensor product of two linearly independent families This is still WIP (the proofs are a little too long, and some lemmas need to be moved to other files!) From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra toric
label:t-algebra$
193/0 Mathlib/LinearAlgebra/LinearIndependent/Tprod.lean 1 1 ['github-actions'] nobody
402-71882
1 year ago
405-383
405 days ago
0-2221
37 minutes
23810 b-reinke
author:b-reinke
chore(Order/Interval): generalize succ/pred lemmas to partial orders Many lemmas in `Mathlib/Order/Interval/Set/SuccPred.lean`and `Mathlib/Order/Interval/Finset/SuccPred.lean` also work for partial orders. They are generalized in this PR by introducing different sections for `PartialOrder` and `LinearOrder` assumptions in the respective files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order 231/89 Mathlib/Order/Interval/Finset/SuccPred.lean,Mathlib/Order/Interval/Set/SuccPred.lean 2 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
400-69225
1 year ago
400-69227
400 days ago
16-29623
16 days
24285 madvorak
author:madvorak
chore(Algebra/*-{Category,Homology}): remove unnecessary universe variables Discussions: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Call.20for.20help.3A.20technical.2F.20organisational.20debt/with/513620128 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Algebra.20and.20.60Type*.60/with/513558902 https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Task.2026.3A.20Replace.20Type.20u.20by.20Type*.20wherever.20possible/with/513592993 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
542/916 Mathlib/Algebra/AddTorsor/Basic.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Central/Basic.lean,Mathlib/Algebra/Central/Defs.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/Algebra/CharP/Pi.lean,Mathlib/Algebra/CharP/Quotient.lean,Mathlib/Algebra/CharP/Subring.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/FreeNonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Finite.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Hom/End.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Invertible/Defs.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/TypeTags/Finite.lean,Mathlib/Algebra/Group/TypeTags/Hom.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Pi.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/NeZero.lean,Mathlib/Algebra/Lie/Abelian.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/CartanMatrix.lean,Mathlib/Algebra/Lie/CartanSubalgebra.lean,Mathlib/Algebra/Lie/Character.lean,Mathlib/Algebra/Lie/Classical.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/Ideal.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/Matrix.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TensorProduct.lean,Mathlib/Algebra/Lie/UniversalEnveloping.lean,Mathlib/Algebra/Module/Basic.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/Equiv/Opposite.lean,Mathlib/Algebra/Module/Lattice.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/MinimalAxioms.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/Opposite.lean,Mathlib/Algebra/Module/Pi.lean,Mathlib/Algebra/Module/Presentation/Differentials.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean 182 22 ['erdOne', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'madvorak', 'mattrobball'] nobody
400-57922
1 year ago
400-57923
400 days ago
2-11655
2 days
22583 imathwy
author:imathwy
feat: affinespace homeomorphism There exists a homeomorphism (a continuous bijection with a continuous inverse) between an affine subspace s of a vector space V over a field 𝕜 and its direction s.direction , given a chosen point z ∈ s . --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
64/2 Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/LinearAlgebra/AffineSpace/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/ConstMulAction.lean,Mathlib/Topology/Algebra/MulAction.lean 4 6 ['JovanGerb', 'eric-wieser', 'github-actions', 'grunweg'] nobody
398-68097
1 year ago
450-80118
450 days ago
0-18122
5 hours
23593 erdOne
author:erdOne
feat(AlgebraicGeometry): the tilde construction is functorial --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 95/38 Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean 2 4 ['chrisflav', 'github-actions', 'leanprover-community-bot-assistant'] nobody
396-85293
1 year ago
422-1907
422 days ago
0-71091
19 hours
21065 eric-wieser
author:eric-wieser
feat: generalize `tangentConeAt.lim_zero` to TVS ... and then adjust the `variable`s down the rest of the file to make use of the generality. There are two key lemmas that this does not generalize, which would probably unlock the rest of the file: * `subset_tangentCone_prod_left` (and `_right`) * `zero_mem_tangentCone` --- - [ ] depends on: #20859 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 55/28 Mathlib/Analysis/Calculus/TangentCone.lean 1 16 ['ADedecker', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] nobody
396-77697
1 year ago
464-27372
464 days ago
23-20072
23 days
22721 grunweg
author:grunweg
chore(MeasureTheory/Function/LpSeminorm/Basic): generalise more results to enorm classes Done for the Carleson project. --- - depends on #22708 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson t-measure-probability 134/10 Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
395-70365
1 year ago
447-56731
447 days ago
0-6
6 seconds
24549 grunweg
author:grunweg
feat: define embedded submanifolds, attempt 1 Not meant to be merged (I think a different design is better); opening this so I can find this more easily. --- - [ ] depends on: #23040 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 1445/2 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/EmbeddedSubmanifold.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/MSplits.lean,Mathlib/LinearAlgebra/Prod.lean 8 2 ['leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
392-14417
1 year ago
392-83740
392 days ago
0-1
1 second
22809 b-reinke
author:b-reinke
feat: Category algebras and path algebras This PR defines the category algebra of a linear category and path algebras of quivers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory new-contributor
label:t-algebra$
218/0 Mathlib/Algebra/Ring/Assoc.lean,Mathlib/CategoryTheory/Linear/CategoryAlgebra.lean,Mathlib/Combinatorics/Quiver/PathAlgebra.lean,Mathlib/Data/DFinsupp/BigOperators.lean 4 2 ['b-reinke', 'github-actions'] nobody
392-14073
1 year ago
unknown
0-0
0 seconds
14675 adomani
author:adomani
dev: the repeated variable linter --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-linter 71/0 Mathlib/Tactic/Linter/Lint.lean 1 1 ['github-actions'] nobody
392-13750
1 year ago
687-304
687 days ago
0-8
8 seconds
14330 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: split Mathlib.Algebra.Star.Basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 446/331 Mathlib.lean,Mathlib/Algebra/Module/LinearMap/Star.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Defs.lean,Mathlib/Algebra/Star/Lemmas.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Star/Pi.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Rat.lean,Mathlib/Algebra/Star/Regular.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/Analysis/NormedSpace/LinearIsometry.lean,Mathlib/Data/Complex/Basic.lean,scripts/noshake.json 15 3 ['github-actions', 'grunweg', 'j-loreaux'] nobody
392-13710
1 year ago
697-30055
697 days ago
0-45204
12 hours
8511 eric-wieser
author:eric-wieser
refactor(MeasureTheory/Measure/Haar/Basic): partially generalize to the affine case Without a `Mul` version of `AddTorsor`, this generalization can only go so far. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 52/46 Mathlib/MeasureTheory/Measure/Haar/Basic.lean 1 0 [] nobody
392-13341
1 year ago
922-71421
922 days ago
0-7
7 seconds
7994 ericrbg
author:ericrbg
chore: generalize `LieSubalgebra.mem_map_submodule` --- Not sure if we should rename to something like `mem_map_iff_mem_map_submodule` or not. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-algebra
label:t-algebra$
16/4 Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Subalgebra.lean 2 3 ['eric-wieser', 'ericrbg'] nobody
392-13329
1 year ago
945-8324
945 days ago
0-1
1 second
6317 eric-wieser
author:eric-wieser
refactor(Data/Finsupp/Defs): make Finsupp.single defeq to Pi.single By adding a `DecidableEq ι` argument to `Finsupp.single`, we remove the reference to `Classical.decEq ι` in the definition, which in turn means that when coerced to a function it is now defeq to `Pi.single`. This also brings it in line with `DFinsupp.single`. This does not go as far as making `Finsupp.single` computable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-data 269/226 Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Data/Finsupp/AList.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Fintype.lean,Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/ToDFinsupp.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/LinearAlgebra/Finsupp.lean 12 0 [] nobody
392-13323
1 year ago
unknown
0-0
0 seconds
11524 mcdoll
author:mcdoll
refactor: Introduce type-class for SchwartzMap --- There are a lot of other refactors to do (`seminormAux` should have a nicer name and gobble up more theorems from `seminorm`), then one can prove `integrable` and friends with only `SchwartzMapClass`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis 139/137 Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Fourier/PoissonSummation.lean,Mathlib/Topology/ContinuousFunction/ZeroAtInfty.lean 3 0 [] nobody
392-13237
1 year ago
unknown
0-0
0 seconds
11003 thorimur
author:thorimur
chore: migrate to `tfae` block tactic Migrates to the `tfae` block tactic syntax, eliminating uses of `tfae_have` and `tfae_finish`. --- - [ ] depends on: #11000 - [ ] depends on: #10991 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR t-meta 1267/1081 Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/ExactFunctor.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/CategoryTheory/Abelian/Exact.lean,Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/FieldTheory/Galois.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/LinearAlgebra/Eigenspace/Zero.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/Height.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/RingTheory/Bezout.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Flat/EquationalCriterion.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Tactic/TFAE.lean,Mathlib/Topology/Algebra/Group/SubmonoidClosure.lean,Mathlib/Topology/Category/CompHaus/EffectiveEpi.lean,Mathlib/Topology/Category/Profinite/EffectiveEpi.lean,Mathlib/Topology/Category/Stonean/EffectiveEpi.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/LocallyClosed.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Order/LeftRightNhds.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/UniformSpace/UniformConvergence.lean,scripts/noshake.json,test/tfae.lean 42 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
392-13233
1 year ago
620-61006
620 days ago
3-60883
3 days
22488 smmercuri
author:smmercuri
fix: lower priority for `UniformSpace.Completion.instSMul` Following the introduction of the `WithVal` type synonym in #22055 the following instance takes a long time to synthesise in FLT, and times out in the default heartbeats ```lean import Mathlib namespace IsDedekindDomain.HeightOneSpectrum variable (A K : Type*) [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] (v : HeightOneSpectrum A) #synth SMul (v.adicCompletionIntegers K) (v.adicCompletion K) ``` The issue is that `UniformSpace.Completion.instSMul (v.adicCompletionIntegers K) (v.adicCompletion K)` now fires during the start of instance search (because we now have `UniformSpace (WithVal (v.valuation K))` whereas previously this would be `UniformSpace K`, which was not automatic), and this takes a long time to fail (leading to ~1400 entries in the trace). The first few lines of the new trace is ```lean [Meta.synthInstance] [5.512418] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼ [] [0.000118] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000537] ✅️ apply UniformSpace.Completion.instSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.004411] ✅️ apply @WithVal.instSMul to SMul (↥(adicCompletionIntegers K v)) (WithVal (valuation K v)) ▶ [] [0.000765] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) K ▶ [] [0.000378] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) K ▶ ... [] 1339 more entries... ▶ ``` Lowering the priority of `UniformSpace.Completion.instSMul` fixes this particular issue, leading to a trace that matches that seen prior to the introduction of `WithVal`: ```lean [Meta.synthInstance] [0.016405] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼ [] [0.000119] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000491] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000403] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000134] ❌️ apply inst✝⁴ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000093] ❌️ apply inst✝⁵ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000077] ❌️ apply inst✝⁷ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000082] ❌️ apply inst✝⁹ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000075] ❌️ apply inst✝¹² to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.000220] ❌️ apply Algebra.id to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [] [0.001015] ✅️ apply @ValuationSubring.instAlgebraSubtypeMem to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [resume] [0.000038] propagating Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) to subgoal Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) of SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶ [check] [0.013358] ✅️ Algebra.toSMul [] result Algebra.toSMul ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-topology FLT 1/1 Mathlib/Topology/Algebra/UniformMulAction.lean 1 10 ['github-actions', 'leanprover-bot', 'smmercuri', 'urkud'] nobody
390-83287
1 year ago
397-25439
397 days ago
55-70108
55 days
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
389-46752
1 year ago
658-69937
658 days ago
0-179
2 minutes
19315 quangvdao
author:quangvdao
feat(Data/Finsupp/Fin): Add `Finsupp` operations on `Fin` tuple This PR adds more analogues of operations on `Fin` tuples to the `Finsupp` setting. Before, there were only `Finsupp.cons` and `Finsupp.tail`. Now there are also `Finsupp.snoc`, `Finsupp.insertNth`, `Finsupp.init`, and `Finsupp.removeNth`. These all come with supporting lemmas. I also removed the porting comment about `succAboveCases` in `Data/Fin/Basic`, and added a lemma about `succAbove` in `Data/Fin/Tuple/Basic`. --- - [x] depends on: #20361 - [x] depends on: #20771 - [x] depends on: #20770 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 193/16 Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,scripts/nolints_prime_decls.txt 6 44 ['YaelDillies', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'quangvdao'] nobody
388-48713
1 year ago
465-73736
465 days ago
43-80684
43 days
24155 eric-wieser
author:eric-wieser
feat: add a "rw_proc" for fin vectors This seems a little nicer than an elaborator, since it means I can use the default elaboration rules to handle my first few variables. Ideally there would be something like ```lean rw_procQ {A : Type u} {B : A -> Type v} (a : A) (b : B a) : b = ?rhs => do /-- Context: u v : Level A : Q(Type u) B : Q($A -> Type v) a : Q($A) b : Q($B $a) rhs : Q($B $a) -- metavariable to assign |- MetaM Q($b = ?rhs) -/ ``` or ```lean rw_proc {A : Type u} {B : A -> Type v} (a : A) (b : B a) : b = ?rhs => do /-- Context: u v : Level A B a b : Expr rhs : MVarId |- MetaM Expr -/ ``` which would generate the code I wrote here --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author RFC t-data t-meta 27/2 Mathlib/Data/Fin/Tuple/Reflection.lean 1 2 ['github-actions', 'urkud'] nobody
386-44593
1 year ago
386-44593
386 days ago
20-83091
20 days
21276 GabinKolly
author:GabinKolly
feat(ModelTheory/Substructures): define equivalences between equal substructures Define first-order equivalences between equal substructures, and prove related properties. --- This is some preparatory work for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-logic 62/0 Mathlib/ModelTheory/Substructures.lean 1 19 ['GabinKolly', 'YaelDillies', 'fpvandoorn', 'github-actions', 'grunweg'] nobody
385-66787
1 year ago
385-66787
385 days ago
46-55730
46 days
24008 meithecatte
author:meithecatte
chore(EpsilonNFA): replace manual lemmas with @[simps] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability awaiting-author new-contributor 2/24 Mathlib/Computability/EpsilonNFA.lean 1 2 ['YaelDillies', 'github-actions', 'urkud'] nobody
384-5931
1 year ago
384-5931
384 days ago
27-52316
27 days
24642 grunweg
author:grunweg
WIP-feat: add layercake formula for ENNReal-valued functions Not much to see here yet; some significant amount of work remains. --- - [ ] depends on: #24643 - [ ] depends on: #24640 (based on that PR for simplicity) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson t-analysis 189/24 Mathlib/Analysis/SpecialFunctions/Pow/Integral.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Integral/Layercake.lean 4 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
382-68712
1 year ago
unknown
0-0
0 seconds
21712 grunweg
author:grunweg
chore: generalise more lemmas to `ContinuousENorm` --- - [x] depends on: #21781 (minor drive-by clean-up) - [x] depends on: #21670 - [x] depends on: #22708 (extracted from this) - some parts depend on #21433 (or better: #22175); when the dependent PR has landed, I will re-assess whether to split these into a separate PR [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict carleson awaiting-CI t-measure-probability 76/31 Mathlib/Analysis/Normed/MulAction.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean 4 5 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
382-3996
1 year ago
unknown
0-0
0 seconds
21375 grunweg
author:grunweg
WIP: generalise lemmas to ENorm This work is part of (and a necessary pre-requisite for) the Carleson project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP awaiting-CI t-measure-probability carleson merge-conflict 471/221 Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/ChebyshevMarkov.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Trim.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/Probability/Independence/Integrable.lean 13 2 ['fpvandoorn', 'grunweg'] nobody
381-84771
1 year ago
unknown
0-0
0 seconds
24618 b-mehta
author:b-mehta
feat(Analysis): add Schur inequality and variants Add Schur inequality and some of its common variants. TODO: - [x] add reference to source: https://www.cip.ifi.lmu.de/~grinberg/VornicuS.pdf - [ ] add other generalisations - [ ] move some of the lemmas elsewhere --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis 145/0 Mathlib/Analysis/Convex/Schur.lean 1 16 ['b-mehta', 'eric-wieser', 'github-actions'] nobody
380-79864
1 year ago
389-59866
389 days ago
0-2
2 seconds
15115 kkytola
author:kkytola
feat: Generalize assumptions in liminf and limsup results in ENNReals In a [review comment](https://github.com/leanprover-community/mathlib4/pull/13938#discussion_r1649744441) it was pointed out that results about liminf and limsup in ENNReal hold under milder assumptions. This PR does the generalization. --- This PR is split off from #13938, where the review comment was made. The changes needed for the suggested generalization were of different kind than the simple PR's content, justifying a separate PR. - [x] depends on: #13938 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order merge-conflict help-wanted awaiting-author t-topology 215/27 Mathlib/MeasureTheory/Measure/Portmanteau.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Topology/Instances/ENNReal.lean 3 8 ['Ruben-VandeVelde', 'github-actions', 'grunweg', 'j-loreaux', 'kkytola', 'leanprover-community-mathlib4-bot'] nobody
379-81106
1 year ago
625-73924
625 days ago
21-25493
21 days
24957 eric-wieser
author:eric-wieser
feat: use ` binderNameHint` in sum_congr Zulip thread: [#new members > Choosing dummy variable inside summation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Choosing.20dummy.20variable.20inside.20summation/near/518492888) Co-authored-by: Joachim Breitner --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
23/16 Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/List/OfFn.lean,Mathlib/Data/Multiset/Count.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/Data/Sym/Sym2.lean 13 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
378-79008
1 year ago
378-80110
378 days ago
0-424
7 minutes
23349 BGuillemet
author:BGuillemet
feat: add LocallyLipschitzOn.lipschitzOnWith_of_isCompact and two small lemmas about Lipschitz functions Main feat (in Mathlib/Topology/EMetricSpace/Basic.lean): if a function `f` from an extended pseudometric space to a pseudometric space is locally Lipschitz on a compact subset `s`, then `f` is Lipschitz on `s`. The theorem is true only when the codomain of `f` is a pseudometric space, so it needs imports from Mathlib/Topology/MetricSpace. Other small feat (in Mathlib/Analysis/Calculus/ContDiff/RCLike.lean): a function that is continuously differentiable on an open subset is locally Lipschitz on this subset. --- - [ ] depends on: #22890 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology large-import new-contributor 59/4 Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean 2 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] PatrickMassot
assignee:PatrickMassot
367-64672
1 year ago
367-64674
367 days ago
35-30364
35 days
12438 jjaassoonn
author:jjaassoonn
feat: some APIs for flat modules Need horseshoe lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 1674/3 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Exact.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Horseshoe.lean,Mathlib/CategoryTheory/Abelian/LeftDerived.lean,Mathlib/RingTheory/Flat/Basic.lean 8 21 ['erdOne', 'github-actions', 'jjaassoonn', 'joelriou'] nobody
362-77298
11 months ago
764-40169
764 days ago
0-20
20 seconds
16020 adomani
author:adomani
feat: compare PR `olean`s size with `master` Adds two CI steps: * `print the sizes of the oleans` that prints the sizes of all the folders containing `Mathlib` `.olean`s; * `compare oleans` that compares the sizes of the previous step with the corresponding sizes on `master`. In the test runs, the two steps have taken at most 3 seconds combined (the first is virtually instantaneous, the second one depends on `curl` to find a job id and on `gh` to retrieve the logs of a previous CI run -- everything else appears to be negligible). This hopefully helps finding out if some PR is bloating up the `.olean`s. See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Error.3A.20No.20space.20left.20on.20device/near/463792355) for a PR of mine that prompted this check. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict CI 120/0 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh 5 50 ['Vtec234', 'YaelDillies', 'adomani', 'bryangingechen', 'github-actions', 'grunweg', 'kim-em', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
358-28279
11 months ago
555-75701
555 days ago
87-65841
87 days
16062 adomani
author:adomani
Test/ci olean size Tests for oleans --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author CI 114/0 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh 5 4 ['Parcly-Taxel', 'adomani', 'github-actions', 'leanprover-community-bot-assistant'] nobody
358-28279
11 months ago
646-2859
646 days ago
0-16
16 seconds
12799 jstoobysmith
author:jstoobysmith
feat(LinearAlgebra/UnitaryGroup): Add properties of Special Unitary Group Add properties of the special unitary group, mirroring the properties of found in Algebra/Star/Unitary.lean. In particular, I add an instance of `specialUnitaryGroup` as a `Group`, `Star`, `InvolutiveStar`, and `StarMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-algebra new-contributor merge-conflict awaiting-author
label:t-algebra$
78/0 Mathlib/LinearAlgebra/UnitaryGroup.lean 1 8 ['chrisflav', 'jcommelin', 'leanprover-community-bot-assistant'] nobody
357-36625
11 months ago
740-64278
740 days ago
9-22045
9 days
23709 plp127
author:plp127
feat: `Nat.findFrom` This PR adds `Nat.findFrom`, which is like `Nat.find`, but starting from an arbitrary `k` instead of `0`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 190/47 Mathlib/Data/Nat/Find.lean 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
357-1914
11 months ago
419-54087
419 days ago
0-943
15 minutes
25340 dupuisf
author:dupuisf
chore(Analysis/Convex): move files pertaining to convex/concave functions to their own folder This PR creates a new folder under `Analysis/Convex` called `Analysis/Convex/Function`, which includes files that are mostly or entirely about convex/concave functions (as opposed to convex sets). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-convex-geometry 4264/4155 Mathlib.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/Deriv.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Convex/Extrema.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Function/Basic.lean,Mathlib/Analysis/Convex/Function/Continuous.lean,Mathlib/Analysis/Convex/Function/Deriv.lean,Mathlib/Analysis/Convex/Function/Extrema.lean,Mathlib/Analysis/Convex/Function/Integral.lean,Mathlib/Analysis/Convex/Function/Jensen.lean,Mathlib/Analysis/Convex/Function/Mul.lean,Mathlib/Analysis/Convex/Function/Piecewise.lean,Mathlib/Analysis/Convex/Function/Quasiconvex.lean,Mathlib/Analysis/Convex/Function/Slope.lean,Mathlib/Analysis/Convex/Function/Strong.lean,Mathlib/Analysis/Convex/Integral.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Convex/Mul.lean,Mathlib/Analysis/Convex/Piecewise.lean,Mathlib/Analysis/Convex/Quasiconvex.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/Convex/Strong.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/Analysis/SpecialFunctions/Pochhammer.lean,Mathlib/MeasureTheory/Measure/Decomposition/IntegralRNDeriv.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean 34 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
357-1099
11 months ago
357-1101
357 days ago
6-38644
6 days
21734 adomani
author:adomani
fix(PR summary): checkout GITHUB_SHA This should make the version of the script that is used on PRs more stable. Suggested by Eric Wieser on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/messageFile.2Emd/near/498941855). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author CI 2/1 .github/workflows/PR_summary.yml 1 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
356-17766
11 months ago
472-54045
472 days ago
0-6023
1 hour
20334 miguelmarco
author:miguelmarco
feat: allow polyrith to use a local Singular/Sage install Try to call a local install of Singular (either standalone or inside Sage) to find the witness for polyrith before trying to call the online sage cell server. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-meta 171/48 Mathlib/Tactic/Polyrith.lean,scripts/polyrith_sage.py 2 16 ['eric-wieser', 'github-actions', 'hanwenzhu', 'kim-em', 'miguelmarco', 'mkoeppe'] nobody
350-29178
11 months ago
488-67159
488 days ago
27-61498
27 days
23953 b-reinke
author:b-reinke
feat(Data/Matroid/Tutte): define the Tutte polynomial of a matroid This PR defines the Tutte polynomial of a matroid and shows basic properties. - [x] depends on: #23926 - [ ] depends on #24336 - [ ] depends on: #23951 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-data 111/0 Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Matroid/Tutte/Basic.lean,Mathlib/Data/Set/Image.lean 3 7 ['apnelson1', 'b-reinke', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
347-70658
11 months ago
unknown
0-0
0 seconds
18771 joelriou
author:joelriou
feat(LinearAlgebra/ExteriorPower): exterior powers of free modules are free Co-authored-by: sophie.morel@ens-lyon.fr --- - [ ] depends on: #18662 - [x] depends on: #18534 - [x] depends on: #18651 - [x] depends on: #18590 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
1185/160 Mathlib.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basis.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/ExteriorPower/Pairing.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorAlgebra/ToTensorPower.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 19 3 ['alreadydone', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
345-7395
11 months ago
unknown
0-0
0 seconds
18441 ADedecker
author:ADedecker
refactor(AdicTopology): use new API for algebraic filter bases, and factor some code --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
847/159 Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 3 ['ADedecker', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79240
11 months ago
576-77139
576 days ago
0-679
11 minutes
18439 ADedecker
author:ADedecker
refactor: use new algebraic filter bases API in `FiniteAdeleRing` --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
699/21 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79238
11 months ago
576-78782
576 days ago
0-619
10 minutes
18438 ADedecker
author:ADedecker
refactor: adapt `KrullTopology` to the new algebraic filter bases API --- - [x] depends on: #18437 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology t-algebra
label:t-algebra$
771/168 Mathlib.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean 6 5 ['ADedecker', 'AntoineChambert-Loir', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
344-79237
11 months ago
576-79424
576 days ago
0-638
10 minutes
13964 pechersky
author:pechersky
feat(Data/DigitExpansion): begin defining variant of reals without rationals Based on a de Bruijn 1976 paper. This file is just the basic definition of a digit expansion. Will be followed up with further constructions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 518/0 Mathlib.lean,Mathlib/Data/DigitExpansion/Defs.lean,docs/references.bib 3 11 ['eric-wieser', 'github-actions', 'kim-em', 'pechersky'] dupuisf
assignee:dupuisf
341-61528
11 months ago
580-1344
580 days ago
129-57999
129 days
18662 joelriou
author:joelriou
feat(LinearAlgebra/ExteriorPower): generators of the exterior powers --- - [x] depends on: #18534 - [x] depends on: #18590 - [ ] depends on: #26464 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
818/158 Mathlib.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 15 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
337-13850
11 months ago
unknown
0-0
0 seconds
18735 joelriou
author:joelriou
feat(Algebra/Module): presentation of the exterior power Given a presentation of a `R`-module `M`, we obtain a presentation of `⋀[R]^n M`. --- (Still one sorry left.) - [ ] depends on: #18527 - [ ] depends on: #18432 - [ ] depends on: #26464 - [ ] depends on: #18534 - [ ] depends on: #18662 - [x] depends on: #18590 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra blocked-by-other-PR
label:t-algebra$
1856/157 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 20 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
337-9824
11 months ago
unknown
0-0
0 seconds
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
329-27101
10 months ago
600-61144
600 days ago
0-66650
18 hours
22928 javra
author:javra
feat(CategoryTheory): infrastructure for inclusion morphisms into products in categories with 0-morphisms --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 52/14 Mathlib/CategoryTheory/Limits/Shapes/BinaryBiproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/ZeroMorphisms.lean 3 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
329-26595
10 months ago
329-26596
329 days ago
112-51866
112 days
24710 chrisflav
author:chrisflav
chore(Data/Set): `tsum` version of `Set.encard_iUnion_of_finite` for non-finite types As requested here: https://github.com/leanprover-community/mathlib4/pull/23849#discussion_r2081070200 --- - [ ] depends on: #23849 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 163/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Set/Card/Arithmetic.lean,Mathlib/Data/Set/Card/InfiniteArithmetic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Instances/ENat/Lemmas.lean 7 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
329-26189
10 months ago
329-26189
329 days ago
1-80465
1 day
24823 eric-wieser
author:eric-wieser
refactor: add `hom` lemmas for the `MonoidalCategory` structure on `ModuleCat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
148/164 Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Closed.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Rep.lean 11 21 ['101damnations', 'YaelDillies', 'eric-wieser', 'github-actions', 'joelriou', 'kbuzzard', 'leanprover-community-bot-assistant'] 101damnations
assignee:101damnations
329-26188
10 months ago
329-26188
329 days ago
37-56728
37 days
25071 erdOne
author:erdOne
feat(EllipticCurve): basic API for singular cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry 320/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean 3 35 ['Multramate', 'acmepjz', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant'] nobody
329-25942
10 months ago
329-25943
329 days ago
45-4165
45 days
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
329-25939
10 months ago
362-1056
362 days ago
6-47693
6 days
25561 callesonne
author:callesonne
feat(Category/Grpd): define the bicategory of groupoids --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 179/25 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/Functor/Strict.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/Grpd.lean 6 6 ['callesonne', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'robin-carlier'] nobody
329-25924
10 months ago
345-63647
345 days ago
10-55201
10 days
20784 eric-wieser
author:eric-wieser
fix: prevent `exact?` recursing forever on `n = 55` Test case thanks to @llllvvuu: ```lean import Mathlib.SetTheory.Ordinal.Basic theorem natCast_inj {m n : ℕ} : (m : Ordinal) = n ↔ m = n := sorry example (n : Nat) : n = 55 := by exact? ``` This is surely a workaround for some unreported lean bug. The bug still exists for `n = 71` or higher, so we can still track down the bug after merging this patch. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 22/3 Mathlib/SetTheory/Ordinal/Basic.lean,MathlibTest/LibrarySearchRecDepth.lean 2 15 ['Command-Master', 'eric-wieser', 'github-actions', 'kbuzzard', 'kim-em', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
328-81024
10 months ago
466-53386
466 days ago
32-73698
32 days
26647 b-mehta
author:b-mehta
feat(Data/Sym/Sym2): lift commutative operations to sym2 While we have `Sym2.lift`, it's often useful to lift operations which are known to be commutative to the typeclass system. Indeed, the existing `Sym2.mul` witnesses this already. Thus, this PR can also be seen as generalising `Sym2.mul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-data 48/28 Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Sym/Sym2/Finsupp.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean 4 12 ['b-mehta', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] nobody
327-29220
10 months ago
327-48457
327 days ago
3-71897
3 days
25611 erdOne
author:erdOne
chore(RingTheory): add `Algebra (FractionRing R) (FractionRing S)` Co-authored-by: Yakov Pechersky --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
152/108 Mathlib.lean,Mathlib/Algebra/Algebra/NonZeroDivisors.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/FractionRingAlgebra.lean,Mathlib/RingTheory/Localization/Integral.lean 10 20 ['alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky'] nobody
318-82226
10 months ago
352-77912
352 days ago
2-26945
2 days
18230 digama0
author:digama0
feat(Tactic/ScopedNS): extend `scoped[NS]` to more commands refactor `ScopedNS` to remove error prone repetitiveness and extend it to other commands such as `syntax`, `macro`, `elab`, etc. Co-authored-by: Jon Eugster --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 201/26 Mathlib/Tactic/ScopedNS.lean,MathlibTest/scopedNS.lean 2 7 ['adomani', 'digama0', 'eric-wieser', 'github-actions', 'joneugster', 'kbuzzard'] nobody
317-2287
10 months ago
460-1792
460 days ago
41-32344
41 days
25284 alreadydone
author:alreadydone
feat(LinearAlgebra/Contraction): bijectivity of `dualTensorHom` + generalize to CommSemiring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
167/32 Mathlib/Data/Finsupp/Defs.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean 5 16 ['alreadydone', 'eric-wieser', 'github-actions', 'kckennylau', 'leanprover-bot', 'leanprover-community-bot-assistant'] nobody
311-46766
10 months ago
318-12533
318 days ago
45-36570
45 days
22749 joelriou
author:joelriou
feat(CategoryTheory/Abelian): the Gabriel-Popescu theorem as a localization with respect to a Serre class This PR introduces a structure `GabrielPopescuPackage C` which contains the information to say that the abelian category `C` is a localization of a category of modules with respect to a suitable Serre class. --- - [x] depends on: #26033 - [ ] depends on: #26663 - [x] depends on: #22733 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 202/6 Mathlib.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Abelian/SerreClass/Bousfield.lean,Mathlib/CategoryTheory/Abelian/SerreClass/MorphismProperty.lean,Mathlib/CategoryTheory/ObjectProperty/ContainsZero.lean 5 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
311-3652
10 months ago
330-75853
330 days ago
0-10614
2 hours
24668 robertmaxton42
author:robertmaxton42
feat(LinearAlgebra): add inductive principle for the free product of algebras * Add `FreeProduct.inductionOn` and `.asPowers.inductionOn`. - [ ] depends on: #24532 --- * `simp↓` on `empty_rel'_bot`: the LHS is indeed not in simp-normal form, but `simp` can't solve the full lemma (if only because `Function.onFun` isn't marked `@[simp]`) and the actual simp-normal form of `rel'` isn't terribly useful for humans. Since I do expect users to type `rel' R A` by hand, I claim this use of `simp↓` is justified. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
205/9 Mathlib/LinearAlgebra/FreeProduct/Basic.lean 1 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
308-34234
10 months ago
387-46443
387 days ago
0-229
3 minutes
13973 digama0
author:digama0
feat: lake exe refactor, initial framework This is the initial framework code for `lake exe refactor`. To use it, you add your refactoring to `Refactor/Main.lean` (note, you have to actually write some metaprogramming code here for the refactoring itself), and the harness will run it on specified files and apply the generated edits. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 139/0 Refactor/Main.lean,lakefile.lean 2 11 ['adomani', 'digama0', 'eric-wieser', 'github-actions', 'joneugster', 'leanprover-community-bot-assistant', 'mattrobball'] nobody
304-74225
10 months ago
653-77678
653 days ago
6-30547
6 days
10190 jstoobysmith
author:jstoobysmith
feat(AlgebraicTopology): add Augmented Simplex Category - Added the definition of the category FinLinOrd of finite linear ordered sets. - Added the definition of the augmented simplex category `AugmentedSimplexCategory`, and showed it is the Skeleton of FinLinOrd. - Showed that the category of augmented simplicial objects defined as a comma category is equivalent to the category of functors from `AugmentedSimplexCategory^\op` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology WIP t-category-theory new-contributor merge-conflict 720/0 Mathlib.lean,Mathlib/AlgebraicTopology/AugmentedSimplexCategory.lean,Mathlib/AlgebraicTopology/SimplicialObject.lean,Mathlib/Order/Category/FinLinOrd.lean 4 5 ['TwoFX', 'YaelDillies', 'joelriou', 'jstoobysmith'] nobody
302-84479
9 months ago
839-77405
839 days ago
7-63253
7 days
25914 eric-wieser
author:eric-wieser
feat: add an ext lemma for the opposite category This powers up `aesop_cat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory awaiting-CI 18/56 Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/CategoryTheory/Abelian/Opposite.lean,Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/CategoryTheory/GuitartExact/Opposite.lean,Mathlib/CategoryTheory/Limits/Opposites.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Functor.lean,Mathlib/Combinatorics/Quiver/Basic.lean 9 7 ['eric-wieser', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'robin-carlier'] nobody
302-82122
9 months ago
348-71538
348 days ago
0-523
8 minutes
20208 js2357
author:js2357
feat: Define the localization of a fractional ideal at a prime ideal Define the localization of a fractional ideal at a prime ideal, and prove some basic properties. --- Alternate version of #14237 generalized to use `IsLocalization` and `IsFractionRing` rather than `Localization.AtPrime` and `FractionRing` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
248/0 Mathlib.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean 2 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
302-67365
9 months ago
522-48466
522 days ago
0-21
21 seconds
24260 plp127
author:plp127
feat(Topology): add API for Hereditarily Lindelof spaces Copies the stuff about Lindelof spaces to Hereditarily Lindelof spaces. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 222/42 Mathlib/Topology/Compactness/Lindelof.lean 1 15 ['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'urkud'] urkud
assignee:urkud
302-36937
9 months ago
373-83977
373 days ago
29-42365
29 days
27225 eric-wieser
author:eric-wieser
refactor(Tactic/Lift): deprecate the third with argument We already have a number of tactics where the clearing happens all the time, and you have to opt out with `id h`. This also fixes a bug where `lift z to Nat with n hn this_is_unused` would silently ignore `this_is_unused`. --- - [ ] depends on: #27223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta merge-conflict 21/9 Mathlib/Tactic/Lift.lean,MathlibTest/lift.lean 2 9 ['JovanGerb', 'adomani', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'vihdzp'] JovanGerb
assignee:JovanGerb
300-32848
9 months ago
300-79748
300 days ago
15-64386
15 days
25238 Hagb
author:Hagb
feat(Tactic/ComputeDegree): add support for scalar multiplication with different types It would be able to deal with `a • (X : R[X])` where `a : S` is in a different type `S` with `[SMulZeroClass S R]`. --- - [x] depends on: #25237 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta new-contributor 17/5 Mathlib/Tactic/ComputeDegree.lean,MathlibTest/ComputeDegree.lean 2 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
299-4270
9 months ago
329-25939
329 days ago
38-26044
38 days
22909 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/Pure): pure submodules A submodule `N` of an `R`-module is *pure* if all maps `S ⊗[R] N → S ⊗[R] M` deduced by base change from the injection of `N` into `M` are injective, for all `R`-algebras `S`. This is expressed by the class `Submodule.IsPure`. For type theoretic reason, the definition of `Submodule.IsPure` only considers algebras `S` in the same universe as `R`, but `Submodule.IsPure.baseChange_injective` establishes the property for all universes. * `Submodule.IsComplemented.isPure` : a complemented submodule is pure. Co-authored with @mariainesdff --- - [ ] depends on: #22898 - [ ] depends on: #22908 - [x] depends on: #22911 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory blocked-by-other-PR 592/3 Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/Pure.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/Small.lean 11 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
298-6412
9 months ago
442-43618
442 days ago
0-1047
17 minutes
22908 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/Finiteness/Small): tensor product of the system of small submodules The directed limit of a tensor product for the directed system of small submodules. Co-authored with @mariainesdff --- - [ ] depends on: #22898 - [x] depends on: #22911 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory blocked-by-other-PR 624/2 Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/Small.lean 9 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
298-6364
9 months ago
442-43617
442 days ago
0-3552
59 minutes
22898 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/TensorProduct/DirectLimit/FG): direct limit of finitely generated submodules and tensor product --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-ring-theory 399/0 Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean 5 9 ['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'leanprover-community-bot-assistant'] nobody
298-6357
9 months ago
432-38858
432 days ago
10-44390
10 days
20431 erdOne
author:erdOne
feat(RingTheory/AdicCompletion): monotonicity of adic-completeness --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 206/16 Mathlib.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Mono.lean,Mathlib/RingTheory/Finiteness/Ideal.lean 7 13 ['chrisflav', 'erdOne', 'github-actions'] nobody
298-6313
9 months ago
474-5347
474 days ago
32-78180
32 days
19596 Command-Master
author:Command-Master
feat(RingTheory/Valuation/PrimeMultiplicity): define `WithTop ℤ`-valued prime multiplicity on a fraction field Moves: - `multiplicity_addValuation` -> `AddValuation.multiplicity` - `multiplicity_addValuation_apply` -> `AddValuation.multiplicity_apply` --- - [x] depends on: #19149 - [x] depends on: #18786 - [x] depends on: #19122 - [x] depends on: #18954 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory large-import 101/37 Mathlib/Data/ENat/Basic.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Valuation/PrimeMultiplicity.lean 3 11 ['ChrisHughes24', 'Command-Master', 'Vierkantor', 'faenuccio', 'github-actions', 'mathlib4-dependent-issues-bot'] nobody
298-6298
9 months ago
502-68632
502 days ago
8-2214
8 days
18646 jxjwan
author:jxjwan
feat(RingTheory): isotypic components --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory new-contributor 308/0 Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/RingTheory/Isotypic.lean,Mathlib/RingTheory/SimpleModule.lean 3 1 ['github-actions'] nobody
298-6291
9 months ago
550-86284
550 days ago
20-16585
20 days
17246 pechersky
author:pechersky
feat(RingTheory/PrimaryDecomposition): PIR of Noetherian under jacobson condition --- - [x] depends on: #17634 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 653/1 Mathlib.lean,Mathlib/NumberTheory/KummerDedekind.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Jacobson/Ideal.lean,Mathlib/RingTheory/PrimaryDecomposition.lean,docs/references.bib 8 8 ['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] erdOne
assignee:erdOne
298-6285
9 months ago
559-28178
559 days ago
13-7138
13 days
21474 erdOne
author:erdOne
feat(RingTheory): replace `Ring.DimensionLEOne` with `Ring.KrullDimLE` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory large-import 285/170 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Basic.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/KrullDimension/Basic.lean,Mathlib/RingTheory/KrullDimension/Localization.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean,Mathlib/RingTheory/KrullDimension/Quotient.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/Nilpotent/End.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/PID/Quotient.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Maximal/Localization.lean 16 1 ['github-actions'] nobody
298-6229
9 months ago
478-72666
478 days ago
0-81
1 minute
11212 shuxuezhuyi
author:shuxuezhuyi
feat(GroupTheory/GroupAction): instance `MulAction (β ⧸ H) α` We instance this naturally from `MulAction β α` when `H` is a normal subgroup and acts trivially on `α`. We also instance `IsometricSMul (M ⧸ N) X` in this way. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-group-theory large-import 53/1 Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean 2 6 ['YaelDillies', 'github-actions', 'grunweg', 'urkud'] eric-wieser
assignee:eric-wieser
298-6021
9 months ago
511-7360
511 days ago
193-73871
193 days
17469 joelriou
author:joelriou
feat(Algebra/ModuleCat/Differentials/Presheaf): the presheaf of relative differentials Given a functor `F : C ⥤ D`, presheaves of commutative rings `S`, `R` and a morphism `φ : S ⟶ F.op ⋙ R`, we show that derivations relative to `φ` are representable by a presheaf of `R`-modules. This is obtained by reducing to the case of absolute differentials. The construction shall allow to deduce the presheaf version of the cokernel sequence $$f^\star \Omega_{Y/S} ⟶ \Omega_{X/S} ⟶ \Omega_{X/Y} ⟶ 0$$ when `f : X ⟶ Y` and `g : Y ⟶ S` are morphisms of schemes. --- - [x] depends on: #17366 - [x] depends on: #19507 - [x] depends on: #17388 - [x] depends on: #16755 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory large-import merge-conflict t-algebraic-geometry 391/10 Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean 1 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
297-36972
9 months ago
600-80079
600 days ago
0-530
8 minutes
20671 thefundamentaltheor3m
author:thefundamentaltheor3m
feat(Analysis/Asymptotics/SpecificAsymptotics): Proving that 𝛔ₖ(n) = O(nᵏ⁺¹) This PR proves a result about the $\sigma_k(n)$ arithmetic function, namely, that it is $O\left(n^{k+1}\right)$. Main theorem: `theorem sigma_asymptotic (k : ℕ) : (fun n ↦ (σ k n : ℝ)) =O[atTop] (fun n ↦ (n ^ (k + 1) : ℝ))` This result was proved as part of the sphere packing project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor large-import merge-conflict awaiting-author 29/0 Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean 1 3 ['b-mehta', 'github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
293-9832
9 months ago
493-71047
493 days ago
9-59130
9 days
20267 joelriou
author:joelriou
feat(CategoryTheory): comma categories are accessible --- (I shall probably not work on this PR in the near future.) - [ ] depends on: #19937 - [ ] depends on: #19945 - [ ] depends on: #19959 - [ ] depends on: #20005 - [ ] depends on: #19955 - [x] depends on: #20263 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-category-theory 1513/7 Mathlib.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/Comma/CardinalArrow.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Comma.lean,Mathlib/CategoryTheory/Limits/TypesFiltered.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/CardinalFilteredPresentation.lean,Mathlib/CategoryTheory/Presentable/Comma.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Presentable/Limits.lean,Mathlib/CategoryTheory/Presentable/LocallyPresentable.lean,Mathlib/CategoryTheory/Presentable/ParallelMaps.lean,Mathlib/SetTheory/Cardinal/HasCardinalLT.lean,docs/references.bib 15 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
293-2799
9 months ago
unknown
0-0
0 seconds
24862 grunweg
author:grunweg
feat(LocallyIntegrable): generalise more to enorms --- Note: github's diff is very confused; it includes changes which very clearly are already on the master branch. I'll see which of the remaining changes after the dependencies have landed is already polished enough. - [x] depends on: #24352 - [x] depends on: #27457 (this half is settled already) - [ ] open question: filter lemmas; IsBoundedUnder is not the right condition as-is; need to think (or just not generalise) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP carleson t-measure-probability 171/88 Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean 3 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
291-67476
9 months ago
381-48835
381 days ago
0-1
1 second
27003 eric-wieser
author:eric-wieser
chore: use `Simp.ResultQ` more often Also uses `~q` in place of manual `isDefEq` matching. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 18/22 Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/ReduceModChar.lean 3 7 ['JovanGerb', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
290-1979
9 months ago
290-1980
290 days ago
32-70098
32 days
25401 digama0
author:digama0
feat(Util): SuppressSorry option See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 342/0 Mathlib.lean,Mathlib/Util/CommandElabHook.lean,Mathlib/Util/SuppressSorry.lean,MathlibTest/suppressSorry.lean 4 15 ['digama0', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] alexjbest
assignee:alexjbest
289-43175
9 months ago
289-43175
289 days ago
71-27957
71 days
5897 eric-wieser
author:eric-wieser
feat: add a `MonadError` instance for `ContT` We already have a `MonadExcept` instance; this promotes it to `MonadError`. Note the issue with the existing `MonadExcept` instance still applies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta 16/0 Mathlib/Control/Monad/Cont.lean 1 25 ['Vierkantor', 'YaelDillies', 'eric-wieser', 'github-actions', 'kmill'] nobody
285-330
9 months ago
711-13132
711 days ago
339-54818
339 days
24793 tristan-f-r
author:tristan-f-r
feat: trace of unitarily similar matrices adds a theorem relating trace to unitarily similar matrices used in the easy direction of specht's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
7/0 Mathlib/LinearAlgebra/UnitaryGroup.lean 1 4 ['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'tristan-f-r'] nobody
283-42294
9 months ago
381-73743
381 days ago
1-55872
1 day
19582 yu-yama
author:yu-yama
feat(GroupExtension/Abelian): define `OfMulDistribMulAction.equivH2` Mainly defines: - `structure GroupExtension.OfMulDistribMulAction N G [MulDistribMulAction G N]`: group extensions of `G` by `N` where the multiplicative action of `G` on `N` is the conjugation - `structure GroupExtension.OfMulDistribMulActionWithSection N G [MulDistribMulAction G N]`: group extensions with specific choices of sections - `def GroupExtension.OfMulDistribMulAction.equivH2`: a bijection between the equivalence classes of group extensions and $H^2 (G, N)$ --- - [x] depends on: #20802 (split PR: contains changes to the `Defs` file) - [x] depends on: #20998 (split PR: mainly adds the `Basic` file) - [ ] depends on: #26670 (split PR: adds the first part of the `Abelian` file) Here is a relevant TODO in Mathlib: https://github.com/leanprover-community/mathlib4/blob/4e9fa40d7c480937e09cd6e47a591bd6f3b8be42/Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean#L46-L48 I would appreciate your comments. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR new-contributor
label:t-algebra$
750/14 Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Abelian.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,docs/references.bib 4 5 ['YaelDillies', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
281-57836
9 months ago
504-28395
504 days ago
43-22586
43 days
7300 ah1112
author:ah1112
feat: synthetic geometry This is adding synthetic geometry using Avigad's axioms and formalizing Euclid Book I, through the Pythagorean theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted t-euclidean-geometry 2661/0 Mathlib.lean,Mathlib/Geometry/Synthetic/Avigad/Axioms.lean,Mathlib/Geometry/Synthetic/Avigad/EuclidBookI.lean,Mathlib/Geometry/Synthetic/Avigad/Tactics.lean 4 74 ['ah1112', 'alreadydone', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'plp127', 'tb65536', 'urkud'] nobody
281-34467
9 months ago
981-73352
981 days ago
0-84
1 minute
24719 madvorak
author:madvorak
feat(LinearAlgebra/Matrix/NonsingularInverse): inverting `Matrix` inverts its `LinearEquiv` --- Discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2324719.20cannot.20find.20home/with/517142655 awaiting-author t-algebra
label:t-algebra$
10/0 Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean 1 16 ['eric-wieser', 'github-actions', 'madvorak', 'ocfnash'] nobody
277-8947
9 months ago
298-77324
298 days ago
86-37603
86 days
25208 erdOne
author:erdOne
feat(LinearAlgebra): `tensor_induction` macro --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
87/116 Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/Finite.lean,Mathlib/RingTheory/Unramified/Finite.lean 8 8 ['chrisflav', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
270-24056
8 months ago
368-81903
368 days ago
0-600
10 minutes
13036 joelriou
author:joelriou
feat(CategoryTheory/Sites): under certain conditions, cover preserving functors preserve 1-hypercovers Previously, in order to show that a functor between Grothendieck sites was continuous, it was necessary to show that it was "cover preserving" and "compatible preserving". There were two lemmas which could be used in order to show that a functor was "compatible preserving". Since #13012, the better condition of "1-hypercover preserving" functor was introduced and it implies that the functor is continuous. In this PR, under the same assumptions as in the two lemmas mentionned above, we show that cover preserving functors are 1-hypercover preserving functors. This gives slightly better criteria in order to show that a functor is continuous. --- - [x] depends on: #13004 - [x] depends on: #13011 - [x] depends on: #13012 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 94/7 Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/Sieves.lean 4 3 ['github-actions', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] nobody
261-46004
8 months ago
740-84936
740 days ago
0-1
1 second
27335 eric-wieser
author:eric-wieser
chore(Data/List): use simp-normal-form for boolean equalities This replaces `¬(p x = true)` with `p x = false`. It also makes explicit some adjacent `h : p x` spellings for symmetry, but the `= true`s were already implied by the coercion. Zulip: [#lean4 > `h : ¬(b = true)` vs `h : b = false` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.60h.20.3A.20.C2.AC.28b.20.3D.20true.29.60.20vs.20.60h.20.3A.20b.20.3D.20false.60/near/529976237) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-data 38/32 Mathlib/Data/List/DropRight.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/TakeWhile.lean 3 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
261-29646
8 months ago
312-24831
312 days ago
0-19242
5 hours
22517 j-loreaux
author:j-loreaux
feat: `ℕ+` powers in semigroups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP large-import 275/28 Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/PNatPowAssoc.lean,Mathlib/Algebra/Group/PPow.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/ULift.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Tactic/ToAdditive/Frontend.lean 14 6 ['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mattrobball'] nobody
259-49987
8 months ago
452-51568
452 days ago
0-27
27 seconds
29615 eric-wieser
author:eric-wieser
chore: add a computable shortcut for `AddCommMonoid ℂ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 9/1 Mathlib/Analysis/Complex/Basic.lean 1 1 ['github-actions'] nobody
259-4446
8 months ago
259-4529
259 days ago
259-4491
259 days
25069 erdOne
author:erdOne
feat(EllipticCurve): rational points of singular nodal cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 251/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Node.lean 3 14 ['Multramate', 'acmepjz', 'chrisflav', 'erdOne', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
257-65188
8 months ago
274-10597
274 days ago
100-20892
100 days
25070 erdOne
author:erdOne
feat(EllipticCurve): rational points on singular cuspidal cubics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 123/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Cusp.lean 2 12 ['Multramate', 'acmepjz', 'adamtopaz', 'erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
257-65187
8 months ago
283-66151
283 days ago
90-52970
90 days
28580 kmill
author:kmill
refactor: simplify implementation of `filter_upwards` This PR makes a few changes to `filter_upwards`: - it uses `focus`, which prevents multiGoalLinter from ever blaming the tactics used inside its implementation - it constructs the whole proof syntax and elaborates it at once using `evalTactic` and `refine`, rather than using the lower-level TermElab API, which can lose track of goals - it's written in a way that doesn't require goals to be in some particular order This was motivated by some multiGoalLinter issues I ran into when working on https://github.com/leanprover/lean4/pull/9942 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-order t-meta 14/16 Mathlib/Order/Filter/Defs.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
256-77540
8 months ago
285-25205
285 days ago
0-8809
2 hours
7125 eric-wieser
author:eric-wieser
feat: additive monoid structure via biproducts I suspect I'm missing a trick with these transport lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory awaiting-CI 237/0 Mathlib/CategoryTheory/Limits/Skeleton.lean 1 3 ['alreadydone', 'eric-wieser', 'mathlib4-merge-conflict-bot'] nobody
254-50645
8 months ago
unknown
0-0
0 seconds
21950 erdOne
author:erdOne
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-number-theory 253/1 Mathlib.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroMulInt.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean 7 33 ['Ruben-VandeVelde', 'erdOne', 'faenuccio', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky', 'smmercuri', 'xroblot'] nobody
245-75631
8 months ago
326-75568
326 days ago
73-10873
73 days
23621 astrainfinita
author:astrainfinita
chore: deprecate `LinearOrderedComm{Monoid, Group}WithZero` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #20676 merge-conflict t-algebra t-order
label:t-algebra$
261/205 Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/NNRat/Lemmas.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ExtendToLocalization.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/Integral.lean,Mathlib/RingTheory/Valuation/Minpoly.lean,Mathlib/RingTheory/Valuation/Quotient.lean,Mathlib/RingTheory/Valuation/RankOne.lean,Mathlib/RingTheory/Valuation/ValExtension.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/UnitInterval.lean,MathlibTest/instance_diamonds.lean,scripts/noshake.json 44 24 ['YaelDillies', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] kbuzzard
assignee:kbuzzard
237-70055
7 months ago
408-42428
408 days ago
5-42380
5 days
16773 arulandu
author:arulandu
feat(Probability/Distributions): formalize Beta distribution Formalize Beta distribution, using Gamma distribution as a reference. Added real-valued beta wrapper, in the manner of gamma. Thanks to @EtienneC30 for help with casting real <-> complex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability 286/1 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Probability/Distributions/Beta.lean 3 50 ['EtienneC30', 'arulandu', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] arulandu
assignee:arulandu
231-65975
7 months ago
622-7124
622 days ago
1-21124
1 day
19616 adamtopaz
author:adamtopaz
fix: fix the definition of the absolute Galois group of a field Previously it was defined as the Galois group of the algebraic closure, as opposed to the separable closure. Also, this adds some missing instances for this group. Still missing is compactness, but that seems like a bigger project. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-number-theory
label:t-algebra$
23/8 Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/FieldTheory/KrullTopology.lean 2 4 ['acmepjz', 'alreadydone', 'github-actions'] nobody
224-12565
7 months ago
542-77461
542 days ago
3-64280
3 days
25225 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-combinatorics new-contributor 16/0 Mathlib/Combinatorics/SimpleGraph/Trails.lean 1 6 ['IvanRenison', 'github-actions', 'vlad902'] kmill
assignee:kmill
220-39757
7 months ago
220-39757
220 days ago
148-3286
148 days
24532 robertmaxton42
author:robertmaxton42
feat(LinearAlgebra/FreeProduct): fill out the `FreeProduct.asPowers` namespace * Replicate the existing API for `LinearAlgebra.FreeProduct` under `FreeProduct.asPowers`, for convenience when working primarily with the power algebra representation * Adds convenience lemmas for using the corresponding quotient relation `rel'` (used in the above). --- - [x] depends on: #24531 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
122/5 Mathlib/LinearAlgebra/FreeProduct/Basic.lean 1 26 ['YaelDillies', 'adomani', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robertmaxton42'] nobody
219-29607
7 months ago
384-17038
384 days ago
0-47665
13 hours
25692 Whysoserioushah
author:Whysoserioushah
feat(RingTheory/MatrixAlgebra): add a more general version of `matrixEquivTensor` This adds `tensorMatrixLinearEquiv : A ⊗[R] Matrix n n B ≃ₐ[S] Matrix n n (A ⊗[R] B)` which is a more general version of `matrixEquivTensor : Matrix n n A ≃ₐ[R] (A ⊗[R] Matrix n n R)`. The latter is then implemented as a trivial consequence of the former. Many internal implementation details are deleted without deprecation, although strictly these were not private. Co-authored-by: @erdOne Co-authored-by: Eric Wieser --- - [ ] depends on: #28367 - [ ] depends on: #28359 - [ ] depends on: #28368 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 129/110 Mathlib/RingTheory/MatrixAlgebra.lean 1 28 ['Whysoserioushah', 'chrisflav', 'eric-wieser', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mattrobball'] chrisflav
assignee:chrisflav
207-74456
6 months ago
284-10952
284 days ago
47-13209
47 days
25012 urkud
author:urkud
refactor(*): migrate from `Matrix.toLin'` to `Matrix.mulVecLin` or `Matrix.mulVec` whenever we don't need the `LinearEquiv.symm` part. See [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Matrix.2EtoLin'.20vs.20Matrix.2EmulVecLin/with/515188548). It makes sense to have only one normal form, and `Matrix.toLin'` has an extra `DecidableEq` assumption. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 165/126 Mathlib/Algebra/Lie/Matrix.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Minpoly.lean,Mathlib/LinearAlgebra/Matrix/Diagonal.lean,Mathlib/LinearAlgebra/Matrix/Gershgorin.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/ToLinearEquiv.lean,Mathlib/LinearAlgebra/UnitaryGroup.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean 19 4 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
207-56857
6 months ago
355-82335
355 days ago
14-81673
14 days
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
193-46800
6 months ago
612-74188
612 days ago
45-84611
45 days
12032 mcdoll
author:mcdoll
feat: delta distribution as a limit --- - [ ] depends on: #11496 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-analysis 58/0 Mathlib/Analysis/Distribution/DiracDelta.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
193-29774
6 months ago
780-74340
780 days ago
0-1
1 second
9693 madvorak
author:madvorak
feat: Linear programming in the standard form --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) - [x] depends on: #9652 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
86/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/LinearProgramming.lean 2 15 ['apurvanakade', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak', 'mathlib4-merge-conflict-bot'] nobody
192-80546
6 months ago
696-2138
696 days ago
168-78821
168 days
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
192-63041
6 months ago
538-26571
538 days ago
23-54870
23 days
5745 alexjbest
author:alexjbest
feat: a tactic to consume type annotations, and make constructor nicer During the copenhagen masterclass I found some situations where applying the constructor tactic left the goal in a difficult to read state when autoParams were present. We add a simple tactic to clean these up, and a macro for `constructor` to behave more like the constructor notation and do this automatically (constructor is in core) It seems that these things should be cleaned up by simp, but a simp lemma to remove these annotations is not accepted by lean as the types are too similar. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 41/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Consume.lean,test/consume.lean 4 5 ['alexjbest', 'digama0', 'kim-em', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
192-14500
6 months ago
1007-37362
1007 days ago
51-33889
51 days
5863 eric-wieser
author:eric-wieser
feat: add elaborators for concrete matrices --- - [x] depends on: #5866 - [ ] depends on: #5897 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict help-wanted blocked-by-other-PR t-meta 257/7 Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Matrix/Auto.lean,MathlibTest/matrix_auto.lean 3 8 ['eric-wieser', 'github-actions', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
192-14499
6 months ago
1051-80560
1051 days ago
0-1
1 second
5919 MithicSpirit
author:MithicSpirit
feat: implement orthogonality for AffineSubspace Define `AffineSubspace.orthogonal` and `AffineSubspace.IsOrtho`, as well as develop an API emulating that of `Submodule.orthogonal` and `Submodule.IsOrtho`, respectively. Additionally, provide some relevant lemmas exclusive to affine subspaces, which are mostly to do with the relationship between orthogonality and `AffineSubspace.Parallel`. Closes #5539 --- Still WIP as I need to add more docstrings as well as notations for the new definitions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor merge-conflict help-wanted t-analysis 287/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/AffineSubspace.lean 2 7 ['MithicSpirit', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] MithicSpirit
assignee:MithicSpirit
192-14498
6 months ago
875-39393
875 days ago
0-433
7 minutes
7386 madvorak
author:madvorak
feat: Define linear programs Linear programs over a general `Module` with constraints given in the form "aᵀx - b ≥ 0" and the objective function as an `AffineMap` to be minimized. --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
87/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean 2 64 ['Shreyas4991', 'YaelDillies', 'eric-wieser', 'github-actions', 'kim-em', 'madvorak', 'mathlib4-merge-conflict-bot'] nobody
192-14495
6 months ago
696-2126
696 days ago
232-74885
232 days
9352 chenyili0818
author:chenyili0818
feat: arithmetic lemmas for `gradient` This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties Co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-analysis 404/0 Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Lemmas.lean 2 31 ['chenyili0818', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sgouezel', 'winstonyin'] nobody
192-14370
6 months ago
829-79219
829 days ago
52-1358
52 days
9795 sinhp
author:sinhp
feat: the type `Fib` of fibre of a function at a point This is the most basic file of the theory of fibred categories developed here: https://github.com/sinhp/LeanFibredCategories/tree/master --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 74/0 Mathlib.lean,Mathlib/Data/Fiber.lean 2 18 ['adri326', 'joelriou', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody
192-14369
6 months ago
862-10540
862 days ago
2-35530
2 days
10660 eric-wieser
author:eric-wieser
feat(LinearAlgebra/CliffordAlgebra): construction from a basis This is adapted from https://github.com/eric-wieser/lftcm2023-clifford_algebra, which only worked for the special case of `Q = 0`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author t-algebra
label:t-algebra$
573/0 Mathlib.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basis.lean 2 16 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-14365
6 months ago
unknown
0-0
0 seconds
10977 grunweg
author:grunweg
feat: germs of smooth functions Define the space of germs of smooth functions (between manifolds). Endow it with a ring structure if the target manifold is a smooth ring (e.g., a Lie group or a field). From the sphere eversion project, rewritten by me. Co-authored-by: Patrick Massot ------- Particular questions for review - is the authorship/copyright information appropriate? (`PatrickMassot` created the file `SmoothGerm` which I adapted; I didn't trace this far back through sphere-eversion.) - is providing all the intermediate algebraic structures (such as, an additive subgroup) on the space of smooth germs useful in practice? (The sphere eversion project only needs a ring structure.) - any further particular API lemmas (e.g., around coercions) which would be good to add? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry merge-conflict awaiting-author t-topology t-analysis 150/0 Mathlib.lean,Mathlib/Geometry/Manifold/Algebra/SmoothGerm.lean 2 34 ['YaelDillies', 'github-actions', 'grunweg', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot', 'mcdoll'] fpvandoorn
assignee:fpvandoorn
192-14364
6 months ago
640-76399
640 days ago
144-63944
144 days
10998 hmonroe
author:hmonroe
feat(Logic): Arithmetization of partial recursive functions (toward Gödel's first incompleteness theorem) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 364/0 Mathlib.lean,Mathlib/Logic/Godel/PartArith.lean 2 4 ['Ruben-VandeVelde', 'YaelDillies', 'mathlib4-merge-conflict-bot'] nobody
192-14363
6 months ago
722-69291
722 days ago
99-83915
99 days
11890 adomani
author:adomani
feat: the terminal refine linter A linter that warns on usages of `refine` and `refine'` as a finishing tactic. See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Usage.20of.20refine'). ### Conclusion of the experiment Systematic replacements of terminal `refine` with `exact` leads to an overall slow-down. --- - [ ] depends on: #15616 (disable the linter in downstream projects) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 77/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TerminalRefineLinter.lean 3 15 ['adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
192-14239
6 months ago
654-48745
654 days ago
18-28993
18 days
12006 adomani
author:adomani
feat: the `suffa` tactic The `suffa` tactic. `suffa tac` runs the tactic sequence `tac` and returns a `Try this:` suggestion of the form `suffices [target_after_tac] by tac; assumption`. For example ```lean example {m n : Nat} (h : m = n) : 0 + m = n := by suffa rewrite [Nat.zero_add] assumption ``` suggests the replacement ```lean example {m n : Nat} (h : m = n) : 0 + m = n := by suffices m = n by rewrite [Nat.zero_add] assumption assumption ``` See [this thread](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Try.20this.3A.20suffices.20simpa) as well as [this message](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2311822.20flexible.20tactics.20linter/near/431895664). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 161/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Suffa.lean,test/Suffa.lean 4 4 ['MoritzBeroRoos', 'YaelDillies', 'mathlib4-merge-conflict-bot'] nobody
192-14236
6 months ago
722-86014
722 days ago
59-762
59 days
13442 dignissimus
author:dignissimus
feat: mabel tactic for multiplicative abelian groups Mabel tactic for multiplicative abelian groups (#10361) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor merge-conflict modifies-tactic-syntax awaiting-author help-wanted t-meta 439/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MAbel.lean,MathlibTest/mabel.lean 4 11 ['BoltonBailey', 'dignissimus', 'github-actions', 'joneugster', 'kbuzzard', 'mathlib4-merge-conflict-bot'] joneugster
assignee:joneugster
192-14234
6 months ago
642-6320
642 days ago
0-16
16 seconds
14237 js2357
author:js2357
feat: Define the localization of a fractional ideal at a prime ideal Define the localization of a fractional ideal at a prime ideal, and prove some basic properties. --- This PR is part 3 out of 4 of a proof of `isDedekindDomain_iff_isDedekindDomainDvr`. Part 4 is available here: #14242 - [x] depends on: #14099 Part 1 - [x] depends on: #14216 Part 2 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
230/0 Mathlib.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean,Mathlib/RingTheory/Localization/Basic.lean 3 22 ['Vierkantor', 'YaelDillies', 'github-actions', 'js2357', 'kbuzzard', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
192-14232
6 months ago
640-74455
640 days ago
6-3525
6 days
14345 digama0
author:digama0
feat: the Dialectica category is monoidal closed - [x] depends on: #14274 The monoidal closed structure of the Dialectica category. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 252/0 Mathlib.lean,Mathlib/CategoryTheory/Dialectica/Closed.lean 2 4 ['github-actions', 'kim-em', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] nobody
192-14109
6 months ago
683-66063
683 days ago
12-20456
12 days
14727 jjaassoonn
author:jjaassoonn
feat(RingTheory/Flat/CategoryTheory): a flat module has vanishing higher Tor groups [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 37/1 Mathlib/RingTheory/Flat/CategoryTheory.lean 1 4 ['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-14107
6 months ago
681-48108
681 days ago
3-28223
3 days
14733 jjaassoonn
author:jjaassoonn
feat(RingTheory/Flat/CategoryTheory): a module is flat iff tensoring preserves finite limits --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-ring-theory 99/1 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/RightExact.lean,Mathlib/RingTheory/Flat/CategoryTheory.lean 4 3 ['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-14105
6 months ago
678-59969
678 days ago
6-6256
6 days
15055 sinhp
author:sinhp
feat: the category of pointed objects of a concrete category This file defines the category of pointed objects of a concrete category. After this we will have the categories of pointed groups, pointed abelian groups, pointed groupoids, etc. To define `Pointed.functor`, we need to add the following "pullback" construction to the category of elements. ``` @[simps obj map] def pullback (F : D ⥤ Type w) (G : C ⥤ D) : (G ⋙ F).Elements ⥤ F.Elements where obj X := ⟨G.obj X.1, X.2⟩ map {X Y} f := ⟨G.map f.1, f.2⟩ ``` This is called pullback since the display map of `G ⋙ F` (i.e. `π (G ⋙ F)`) is a pullback of the display map of `F`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 185/0 Mathlib.lean,Mathlib/CategoryTheory/ConcreteCategory/Pointed.lean,Mathlib/CategoryTheory/Elements.lean 3 14 ['dagurtomas', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] nobody
192-14104
6 months ago
667-85846
667 days ago
7-80557
7 days
15224 AnthonyBordg
author:AnthonyBordg
feat(CategoryTheory/Sites): covering families and their associated Grothendieck topology Define covering families on a category and their associated Grothendieck topology by using the API for `Coverage`. Give an explicit characterization of the covering sieves of the said topology. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 112/0 Mathlib.lean,Mathlib/CategoryTheory/Sites/CoveringFamilies.lean 2 21 ['AnthonyBordg', 'adamtopaz', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] nobody
192-14103
6 months ago
667-66734
667 days ago
1-48443
1 day
16303 grunweg
author:grunweg
feat(CI): check for badly formatted titles or missing/contradictory labels --- The zulip workflow is entirely cargo-culted from #16296; please review carefully. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author CI 325/0 .github/build.in.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ValidatePRTitle.lean,MathlibTest/ValidatePRTitle.lean,lakefile.lean,scripts/README.md,scripts/check-title-labels.lean 8 45 ['Command-Master', 'adomani', 'bryangingechen', 'edegeltje', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] bryangingechen
assignee:bryangingechen
192-14099
6 months ago
510-49592
510 days ago
78-4556
78 days
18236 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat/Presheaf): the endofunctor of presheaves of modules induced by an oplax natural transformation An endomorphism of ` ModuleCat.restrictScalarsPseudofunctor`, i.e. a "compatible" family of functors `ModuleCat A ⥤ ModuleCat A` for all (commutative) rings `A` induces a functor `PresheafOfModules R ⥤ PresheafOfModules R` for any presheaf of (commutative) rings `R`. In #18262, this is applied to the construction of exterior powers of a presheaves of modules. --- - [x] depends on: #18197 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory awaiting-CI merge-conflict awaiting-author
label:t-algebra$
180/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/FunctorOfNatTrans.lean 2 6 ['github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13948
6 months ago
unknown
0-0
0 seconds
18749 GabinKolly
author:GabinKolly
feat(ModelTheory): preparatory work for the existence of Fraïsse limits Define the map of a PartialEquiv through an embedding, and related properties. Define embeddings and equivalences between equal structures or equal substructures, and related properties. Add miscellaneous lemmas which will be used to prove the existence of fraisse limits. --- This is preparation for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 308/5 Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean 5 10 ['GabinKolly', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] nobody
192-13945
6 months ago
494-62905
494 days ago
73-63475
73 days
18876 GabinKolly
author:GabinKolly
feat(ModelTheory/Fraisse): add proof that Fraïssé limits exist Fraïssé limits exist. --- All the preparatory work done in other files is contained in the pull request #18749, this pull request adds the work done in ModelTheory/Fraisse, the definition of the sequence of structures whose limit will be the Fraïssé limit, lemmas about this sequence, and then the proof that the limit is indeed a Fraïssé limit. - [ ] depends on: #18749 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-logic 666/5 Mathlib/ModelTheory/Bundled.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13943
6 months ago
564-71677
564 days ago
0-37
37 seconds
19323 madvorak
author:madvorak
feat: Function to Sum decomposition --- Discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Function.20to.20Sum.20decomposition merge-conflict WIP t-data 50/0 Mathlib.lean,Mathlib/Data/Sum/Decompose.lean 2 3 ['github-actions', 'madvorak', 'mathlib4-merge-conflict-bot'] nobody
192-13942
6 months ago
511-80575
511 days ago
43-18002
43 days
19378 adamtopaz
author:adamtopaz
feat: Explanation widgets This adds some simple widgets, wrapped in a tactic, term and command elaborator, for displaying markdown explanations in the infoview. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 101/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Widget/Explain.lean 3 9 ['adamtopaz', 'eric-wieser', 'github-actions', 'joneugster', 'kmill', 'mathlib4-merge-conflict-bot'] nobody
192-13941
6 months ago
503-71312
503 days ago
49-76666
49 days
19456 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Data/Finsupp/MonomialOrder/DegRevLex): homogeneous reverse lexicographic order Definition of the homogeneous reverse lexicographic order --- - [x] depends on: #19453 - [x] depends on: #19455 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-order t-data merge-conflict t-algebraic-geometry 362/0 Mathlib.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Finsupp/MonomialOrder/DegRevLex.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13940
6 months ago
551-5116
551 days ago
0-27
27 seconds
20051 Timeroot
author:Timeroot
feat: `Clone` and some instances Defines clones (`Clone`). And there is a file, `Instances.lean`, that gives several most important examples of Clones. In particular, it has all of the clones (in an appropriately general form) that occur in [Post's Lattice](https://en.wikipedia.org/wiki/Post%27s_lattice), and [later proving](https://github.com/leanprover-community/mathlib4/pull/24744) the completeness of Post's Lattice is why I'm making this PR. (Edit: Used to also say "Defined operads (`Operad`), symmetric operads (`SymmOperad`), and clones ... There is a proof that all clones have a natural operad structure.". This has been scrapped.) --- - [x] depends on: #20133 [basics and notations] - [x] depends on: #20134 [permutations] - [x] depends on: #20138 [operad] - [x] depends on: #20141 [clone] - [x] depends on: #23459 [defs] - [ ] depends on: #23460 [basic] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra blocked-by-other-PR
label:t-algebra$
623/0 Mathlib.lean,Mathlib/Algebra/Clone/Basic.lean,Mathlib/Algebra/Clone/Defs.lean,Mathlib/Algebra/Clone/Instances.lean,Mathlib/Data/Fin/Basic.lean 5 33 ['Timeroot', 'YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'kbuzzard', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'wmacmil'] nobody
192-13812
6 months ago
unknown
0-0
0 seconds
20466 MohanadAhmed
author:MohanadAhmed
feat: Sherman Morrison formula for rank 1 update of the matrix inverse Provides the Sherman Morrison rank 1 update of the matrix inverse https://en.wikipedia.org/wiki/Sherman%E2%80%93Morrison_formula. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 37/0 Mathlib/Data/Matrix/Invertible.lean 1 5 ['eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13810
6 months ago
487-73994
487 days ago
23-30652
23 days
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
192-13809
6 months ago
389-46738
389 days ago
75-77754
75 days
20649 GabinKolly
author:GabinKolly
feat(ModelTheory/Graph): prove characterization of the fraisse limit of finite simple graphs Prove that a countable graph with the extension property must be the Fraisse limit of finite simple graphs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP large-import merge-conflict t-combinatorics t-logic 175/0 Mathlib/ModelTheory/Graph.lean,Mathlib/ModelTheory/Substructures.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13807
6 months ago
unknown
0-0
0 seconds
20652 jjaassoonn
author:jjaassoonn
feat: categorical description of center of a ring We show the isomorphism between `Z(R)` and `End(1 Mod-R)` --- - [x] depends on:#20721 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra t-category-theory
label:t-algebra$
212/21 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/Ring/Center.lean,Mathlib/CategoryTheory/Conj.lean,Mathlib/CategoryTheory/Endomorphism.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Preadditive/Basic.lean 7 42 ['alreadydone', 'github-actions', 'jcommelin', 'jjaassoonn', 'kbuzzard', 'mathlib4-merge-conflict-bot', 'qawbecrdtey'] nobody
192-13806
6 months ago
480-11236
480 days ago
5-77051
5 days
20924 tomaz1502
author:tomaz1502
feat(Computability/QueryComplexity): Oracle-based computation This PR adds the types and lemmas for oracle-based computation. In this model, computations are run on a monad which also counts the number of oracle queries executed. With it, it becomes possible to reason about the upper bound of the query complexity of algorithms. In the future, we could extend this work to include the necessary bits from information theory and probability to also reason about lower bounds on query complexity, like the work in https://github.com/girving/debate. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2318629.20runtime.20complexity.20of.20sorting.20a.20list Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability 305/0 Mathlib.lean,Mathlib/Computability/QueryComplexity/Basic.lean,Mathlib/Computability/QueryComplexity/Defs.lean 3 60 ['eric-wieser', 'girving', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao', 'tomaz1502'] nobody
192-13805
6 months ago
461-35100
461 days ago
27-32630
27 days
20956 tomaz1502
author:tomaz1502
feat(Computability/QueryComplexity/Sort.lean): Formalization of upper bound of queries for merge sort This PR builds on top of #20924 to prove that merge sort (as defined in Lean's library) never executes more than `3 * n * ceil_log2 n` comparisons, where `n` is the size of the input list and `ceil_log2` is the ceil of the logarithm in base 2, which is defined in this PR. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2318629.20runtime.20complexity.20of.20sorting.20a.20list - [ ] depends on: #20924 Co-authored-by: Geoffrey Irving --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability blocked-by-other-PR 676/0 Mathlib.lean,Mathlib/Computability/QueryComplexity/Basic.lean,Mathlib/Computability/QueryComplexity/Defs.lean,Mathlib/Computability/QueryComplexity/Sort.lean 4 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13803
6 months ago
492-68764
492 days ago
0-41
41 seconds
21270 GabinKolly
author:GabinKolly
feat(ModelTheory/Bundled): first-order embeddings and equivalences from equalities Add first-order embeddings and equivalences from equalities between bundled structures. --- Add two definitions to get embeddings and equivalences from equalities between bundled structures, and simple properties. This is some preparatory work for #18876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author large-import t-logic 102/0 Mathlib/ModelTheory/Bundled.lean 1 27 ['GabinKolly', 'Vierkantor', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13801
6 months ago
411-15614
411 days ago
50-58472
50 days
21277 GabinKolly
author:GabinKolly
feat(ModelTheory/PartialEquiv): Define the mapping of a self-partialEquiv through an embedding Define the mapping of a self-partialEquiv through an embedding and the notion of fully extendable partialEquiv. --- This is some preparatory work for #18876 - [ ] depends on: #21276 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-logic 215/5 Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13799
6 months ago
484-50177
484 days ago
0-668
11 minutes
21616 peabrainiac
author:peabrainiac
feat(Topology): concatenating countably many paths Adds `Path.countableConcat`, the concatenation of a sequence of paths leading up to some point `x`. --- - [x] depends on: #21591 - [x] depends on: #21607 This work is a prerequisite to #20248, where it is used to show that the topology of first-countable locally path-connected spaces is coinduced by all the paths in that space. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 229/0 Mathlib.lean,Mathlib/Topology/Path/CountableConcat.lean 2 31 ['YaelDillies', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac'] nobody
192-13796
6 months ago
405-13177
405 days ago
56-56728
56 days
21624 sinhp
author:sinhp
feat(CategoryTheory): The (closed) monoidal structure on the product category of families of (closed) monoidal categories Given a family of closed monoidal categories, we show that the product of these categories is a closed monoidal category with the pointwise monoidal structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 144/0 Mathlib.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Pi/Monoidal.lean,Mathlib/CategoryTheory/Pi/MonoidalClosed.lean 4 20 ['TwoFX', 'YaelDillies', 'b-mehta', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sinhp'] nobody
192-13795
6 months ago
417-28037
417 days ago
50-48893
50 days
21829 Whysoserioushah
author:Whysoserioushah
feat(LinearAlgebra/TensorProduct/HomTensor): Add TensorProduct of Hom-modules Co-authored-by: Andrew Yang --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
174/0 Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/HomTensor.lean 2 27 ['Whysoserioushah', 'YaelDillies', 'erdOne', 'github-actions', 'kbuzzard', 'mathlib4-merge-conflict-bot'] nobody
192-13793
6 months ago
424-8468
424 days ago
46-53039
46 days
21903 yhtq
author:yhtq
feat: add from/toList between `FreeSemigroup` and `List` with relative theorems Add from/toList between `FreeSemigroup` and `List` with relative theorems, as well as an incidental definition of lexicographic order on `FreeSemigroup`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor awaiting-CI large-import merge-conflict
label:t-algebra$
169/0 Mathlib/Algebra/Free.lean 1 12 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13669
6 months ago
418-84024
418 days ago
50-9294
50 days
22159 shetzl
author:shetzl
feat: add definition of pushdown automata Add the definition of pushdown automata and their two acceptance conditions: acceptance based on empty stack and acceptance based on final state. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 70/0 Mathlib.lean,Mathlib/Computability/PDA.lean 2 35 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody
192-13663
6 months ago
439-7676
439 days ago
20-81245
20 days
22231 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion` initial defns --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra awaiting-author t-topology
label:t-algebra$
299/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 8 ['Thmoas-Guan', 'github-actions', 'grunweg', 'jcommelin', 'mathlib4-merge-conflict-bot'] jcommelin
assignee:jcommelin
192-13659
6 months ago
270-83340
270 days ago
158-37126
158 days
22232 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion.apprUpto` --- - [ ] depends on: #22231 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR 399/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13657
6 months ago
460-29950
460 days ago
0-414
6 minutes
22233 pechersky
author:pechersky
feat(Algebra/Valued): `AdicExpansion.evalAt` --- - [ ] depends on: #22231 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology blocked-by-other-PR 488/0 Mathlib.lean,Mathlib/Topology/Algebra/Valued/AdicExpansion.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13656
6 months ago
460-29951
460 days ago
0-412
6 minutes
22302 658060
author:658060
feat: add `CategoryTheory.Topos.Power` This is a continuation of #21281 with the end goal of defining topoi in Mathlib. It introduces the notion of a power object in a category with a subobject classifier, which is a special case of an internal hom. The definition `HasPowerObjects C` contained in this PR is all that remains before `IsTopos C` can be defined. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 312/0 Mathlib.lean,Mathlib/CategoryTheory/Topos/Power.lean 2 3 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
192-13654
6 months ago
458-47656
458 days ago
0-1528
25 minutes
22662 plp127
author:plp127
feat: Localization.Away.lift (computably) This PR adds `Localization.Away.lift'` and `Localization.Away.lift`, computable alternatives to `Localization.awayLift`. --- - [x] depends on: #24791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
74/0 Mathlib/RingTheory/Localization/Away/Basic.lean 1 18 ['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] kim-em
assignee:kim-em
192-13647
6 months ago
192-13648
192 days ago
257-28368
257 days
22790 mhk119
author:mhk119
feat: Extend `taylor_mean_remainder_lagrange` to `x < x_0` The `taylor_mean_remainder_lagrange` theorem has the assumption that $x_0 < x$. In many applications, we need $x < x_0$ and one cannot use the current version to obtain this (see [zulip](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Taylor's.20theorem)). This PR introduces a set of theorems that push negations through Taylor expansions so that one can extend `taylor_mean_remainder_lagrange` to the case when $x < x_0$. These theorems should also be useful elsewhere since they are quite general. merge-conflict awaiting-author t-analysis new-contributor 111/1 Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/Taylor.lean 3 13 ['Paul-Lez', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'mhk119'] nobody
192-13641
6 months ago
420-28758
420 days ago
23-16830
23 days
22861 eric-wieser
author:eric-wieser
feat: add the trace of a bilinear form Following the steps at [#Is there code for X? > Laplacian @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Laplacian/near/450834505). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Some questions: * Does this generalize to multilinear maps? * Is there an `RCLike` generalization? * Does this generalize to `BilinMap` instead of just `BilinForm`? Perhaps the approach in [#mathlib4 > Stating Schrodinger's equation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Stating.20Schrodinger's.20equation/near/500409890) of using `ContinuousLinearMap.adjoint'` is better. merge-conflict awaiting-author t-algebra
label:t-algebra$
100/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/Trace.lean 2 4 ['github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot'] nobody
192-13639
6 months ago
420-78187
420 days ago
23-44995
23 days
22919 plp127
author:plp127
feat(Data/Fintype/Pi): Make `Fintype` instance for `RelHom`s computable Makes the `Fintype` instance for rel homs computable. See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Classical.20vs.20constructive.20logic.20in.20computation/near/496220816) message. --- - [x] depends on: #24748 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data 178/44 Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Data/Fintype/CardEmbedding.lean,Mathlib/Data/Fintype/Pi.lean 5 31 ['IvanRenison', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] b-mehta
assignee:b-mehta
192-13637
6 months ago
366-26908
366 days ago
71-41637
71 days
22954 eric-wieser
author:eric-wieser
feat(RingTheory/Congruence/Hom): copy from GroupTheory This was motivated in review of #22355, but I no longer recall why. It also helps with #29357. Either way, this captures a definition that was inlined in a later file. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 214/16 Mathlib/Algebra/RingQuot.lean,Mathlib/GroupTheory/Congruence/Hom.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Hom.lean,Mathlib/RingTheory/TwoSidedIdeal/Kernel.lean 5 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
192-13636
6 months ago
440-81750
440 days ago
0-135
2 minutes
23285 AntoineChambert-Loir
author:AntoineChambert-Loir
refactor: directed systems in terms of functors This is a WIP aiming to refactor the work on directed systems using the category theory library. But there are universes nightmares. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra t-category-theory large-import merge-conflict
label:t-algebra$
111/45 Mathlib/Order/DirectedInverseSystem.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13630
6 months ago
431-45758
431 days ago
0-24
24 seconds
23460 Timeroot
author:Timeroot
feat: Definition of `Clone` Basics about Clones. Part of #20051 --- - [ ] depends on: #26329 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
326/0 Mathlib.lean,Mathlib/Algebra/Clone/Basic.lean,Mathlib/Algebra/Clone/Defs.lean,Mathlib/Data/Fin/Basic.lean 4 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
192-13628
6 months ago
274-62400
274 days ago
65-54502
65 days
23503 apnelson1
author:apnelson1
feat(Topology/Instances/ENat): ENat and tsum We give API for the interactions between `tsum` and `ENat`. The type is especially nice, because every function is summable, and there are simplifying lemmas like the statement that a sum is infinite iff either some term is infinite, or the support is infinite. This provides one of the missing pieces for working painlessly with discrete objects, 'propositional' finiteness and cardinality. For instance, one can sum a function `f : a -> ENat` over an arbitrary set with the term `∑' a : s, 1`, and it will be provable that `∑' a : s, 1 = s.encard` and `(support f).encard ≤ ∑' a, f a` without ever having to split into finite/infinite cases. As is pointed out in the module docstring for `Data.ENat`, there are strong analogies between `ENat` and `ENNReal`, and the API runs parallel to the API for `tsum`/`ENNReal`. One could call it 'duplication', but I have yet to find a common generalization of the two that saves work, or a third example of a natural type with these same properties. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology large-import 205/2 Mathlib/Data/ENat/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Topology/Instances/ENat.lean 3 3 ['eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
192-13626
6 months ago
410-54579
410 days ago
14-6036
14 days
23585 plp127
author:plp127
feat: `Filter.atMax` and `Filter.atMin` Adds `atMax` and `atMin`, filters. Making an analogy, `atMax` : `atTop` :: `IsMax` : `IsTop`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 148/0 Mathlib.lean,Mathlib/Order/Filter/AtMaxMin.lean 2 5 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'urkud'] nobody
192-13625
6 months ago
unknown
0-0
0 seconds
23758 erdOne
author:erdOne
feat(Topology/Algebra): linearly topologized iff non-archimedean ...for topological modules over compact rings or `ℤ`-finite rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import merge-conflict awaiting-author t-topology
label:t-algebra$
138/3 Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Topology/Algebra/LinearTopology.lean 2 22 ['ADedecker', 'AntoineChambert-Loir', 'erdOne', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] ADedecker and AntoineChambert-Loir
assignee:AntoineChambert-Loir assignee:ADedecker
192-13623
6 months ago
293-24488
293 days ago
124-78308
124 days
24333 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): cycle graph implementation for generic vertex types The existing `cycleGraph` implementation under Combinatorics/SimpleGraph/Circulant.lean only operates over `Fin n`. This PR implements a cycle graph implementation over any generic vertex type. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics new-contributor 187/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean 2 42 ['IvanRenison', 'github-actions', 'mathlib4-merge-conflict-bot', 'vlad902'] kmill
assignee:kmill
192-13488
6 months ago
278-12069
278 days ago
123-18878
123 days
24540 robertmaxton42
author:robertmaxton42
feat(Quiv): add the empty, vertex, point, interval, and walking quivers Add: * The empty quiver * The vertex quiver (one vertex, and no edges) and the point quiver (one vertex, one self-edge) * The interval quiver (two vertices with an edge between them) * The walking quiver (vertices `0` and `1` with two edges both `0 -> 1`. Functors from the walking quiver to `Type` define quivers, by interpreting `F.obj 0` as the type of vertices, `F.obj 1` as the type of edges, using one of the two edges to label the source of every edge and using the other to label the target.) - [x] depends on: #24538 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory 370/0 Mathlib.lean,Mathlib/CategoryTheory/Category/Quiv/Shapes.lean,Mathlib/CategoryTheory/Category/Quiv/WalkingQuiver.lean,Mathlib/Logic/Small/Defs.lean 4 14 ['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robertmaxton42', 'robin-carlier'] nobody
192-13483
6 months ago
386-45064
386 days ago
0-6849
1 hour
24850 pechersky
author:pechersky
feat(Topology/UniformSpace/Ultra): uniform spaces induced by pseudometrics are ultra if system is ultra Any uniform space has a natural system of pseudometrics definable on it, comprised of those pseudometrics constructed from a descending chain of equivalence relation entourages. In a nonarchimedean uniformity, this pseudometric system induces the uniformity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #23111 merge-conflict t-topology 509/1 Mathlib.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Ultra/Pseudometrizable.lean 3 9 ['ADedecker', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] urkud
assignee:urkud
192-13475
6 months ago
192-13476
192 days ago
177-43034
177 days
25324 eric-wieser
author:eric-wieser
feat: more functorial results about DFinsupp We have these already for Finsupp. The `DFinsupp` statements need some extra casts in some places. --- - [ ] depends on: #27182 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) [#mathlib4 > Equiv.cast for structures @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Equiv.2Ecast.20for.20structures/near/521390935) merge-conflict awaiting-author t-algebra t-data
label:t-algebra$
137/16 Mathlib/Data/DFinsupp/Defs.lean,Mathlib/LinearAlgebra/DFinsupp.lean 2 13 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] pechersky
assignee:pechersky
192-13470
6 months ago
242-33741
242 days ago
19-26510
19 days
25585 Paul-Lez
author:Paul-Lez
feat(Tactic/Linters/DeprecatedSimpLemma): lint for deprecated simp lemmas The deprecated simp lemma linter flags declarations that have both the `deprecated` and `simp` attributes. See Zulip discussion: [#mathlib4 > Help with Mathlib.Order.Interval.Finset.Defs @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Help.20with.20Mathlib.2EOrder.2EInterval.2EFinset.2EDefs/near/505994843) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author 105/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/DeprecatedSimpLemma.lean,MathlibTest/DeprecatedSimpLemmaTest.lean 4 8 ['adomani', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] nobody
192-13343
6 months ago
355-85438
355 days ago
0-87
1 minute
26648 eric-wieser
author:eric-wieser
chore(TensorProduct): remove more `suppress_compilation`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-core-PR t-algebra
label:t-algebra$
3/7 Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean 3 5 ['eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
192-12976
6 months ago
328-15011
328 days ago
3-19989
3 days
28316 eric-wieser
author:eric-wieser
feat(Tactic/NormNum): better trace nodes Comparing the infoview on the first example in the test file | Before | After | |---|---| | image | image| In the after version, the extension names are all clickable. Similar to #21450. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-meta 136/5 Mathlib.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Util/Trace.lean,MathlibTest/norm_num_trace.lean 4 20 ['JovanGerb', 'eric-wieser', 'github-actions', 'kmill', 'leanprover-bot', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'plp127'] JovanGerb
assignee:JovanGerb
192-12642
6 months ago
274-55929
274 days ago
15-76174
15 days
6268 eric-wieser
author:eric-wieser
fix: fixups to #3838 This is an attempt to make #3838 universe polymorphic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) * Depends on #6271 * Depends on #8876 merge-conflict WIP 186/107 Mathlib/Control/Random.lean,Mathlib/Tactic/SlimCheck.lean,Mathlib/Testing/SlimCheck/Functions.lean,Mathlib/Testing/SlimCheck/Gen.lean,Mathlib/Testing/SlimCheck/Sampleable.lean,Mathlib/Testing/SlimCheck/Testable.lean,test/slim_check.lean 7 10 ['github-actions', 'kim-em'] nobody
191-72219
6 months ago
unknown
0-0
0 seconds
6859 MohanadAhmed
author:MohanadAhmed
feat: TryLean4Bundle: Windows Bundle Creator # `TryLean4Bundle`: Windows Bundle Creator A Windows batch script and a CI yml file that create an self extracting archive. The user should 1. just download the archive, 2. double click the archive to expand 3. double click the `RunLean.bat` script in the expanded archive. The script currently downloads 7 dependencies into CI then unpacks them in the appropriate locations and finally packs them back. To try a bundle created using these scripts but from a different repo see (https://github.com/MohanadAhmed/TryLean4Bundle/releases) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP help-wanted CI 114/0 .github/workflows/mk_windows_bundle.yml,scripts/windowsBundle.bat 2 0 [] nobody
191-72211
6 months ago
1004-40924
1004 days ago
0-434
7 minutes
6993 jjaassoonn
author:jjaassoonn
feat: lemmas about `AddMonoidAlgebra.{divOf, modOf}` --- - [x] depends on: #7582 - [x] depends on: #8975 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra
label:t-algebra$
147/3 Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/MvPolynomial/Basic.lean,Mathlib/Data/MvPolynomial/CommRing.lean,Mathlib/Data/MvPolynomial/Division.lean 5 42 ['YaelDillies', 'alreadydone', 'digama0', 'eric-wieser', 'github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
191-72206
6 months ago
861-76959
861 days ago
103-330
103 days
7427 MohanadAhmed
author:MohanadAhmed
feat: eigenvalues sorted in ascending/descending order In the file `Analysis.InnerProductSpace.Spectrum` todo notes were left saying: > TODO Postcompose with a permutation so that these eigenvectors are listed in increasing order of eigenvalue. > TODO Postcompose with a permutation so that these eigenvalues are listed in increasing order. - This is a start in that direction --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 162/4 Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/NormedSpace/PiLp.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean 3 0 [] nobody
191-72174
6 months ago
unknown
0-0
0 seconds
9339 FMLJohn
author:FMLJohn
feat(RingTheory/GradedAlgebra/HomogeneousIdeal): given a finitely generated homogeneous ideal of a graded semiring, construct a finite spanning set for the ideal which only contains homogeneous elements --- - [ ] depends on: #8187 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 402/4 Mathlib.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousIdeal.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean 8 11 ['FMLJohn', 'github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] nobody
191-72159
6 months ago
875-77137
875 days ago
6-63597
6 days
9564 AntoineChambert-Loir
author:AntoineChambert-Loir
chore: weaken commutativity assumptions for AdjoinRoot.lift and AdjoinRoot.liftHom I weaken a commutativity assumption for docs#AdjoinRoot.liftHom that the target algebra be commutative. It is only assumed to be a Semiring. For that, I need to generalize docs#AdjoinRoot.lift which takes `i : R ->+* S`, `a : S` with `f.eval₂ i a = 0` and defines `AdjoinRoot f ->+* S` that extends `i ` and sends `AdjoinRoot.root f` to `a`. --- The initial version of the PR was to define `AdjoinRoot.lift'` where `S` is only a Semiring, with the additional assumption `hcomm : ∀ r, Commute (i r) a` that the element `a` commutes with the image of `i`. @jcommelin suggested to provide this argument as an `autoParam`, filled in by an ad hoc `commutativity` tactic. However, such an argument cannot be made implicit and a first version required to have this argument given each time, most of the time by `_`, even for all subsequent lemmas, `AdjoinRoot.lift_mk`, etc. To avoid this, I tried to make this assumption a `⦃hcomm : ∀ r, Commute (i r) a⦄`. This appears to have some side effects that proofs using an `exact` tactic or in term mode do not work well, but one can resort on `by simp […]`. Maybe @eric-wieser or @Vierkantor will have opinions on that. In some cases one can still give the argument as `(hcomm := by commutativity)`. (There are 3 options : - separate lemmas for the fully commutative case and for the case where a proof is needed - using the `commutativity` tactic, but with an argument `_` sometimes - using the optional argument.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
146/30 Mathlib.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Commutativity.lean,Mathlib/Tactic/Commutativity/Init.lean 8 14 ['AntoineChambert-Loir', 'Vierkantor', 'eric-wieser', 'jcommelin'] nobody
191-72153
6 months ago
788-64459
788 days ago
16-71959
16 days
10026 madvorak
author:madvorak
feat: linear programming according to Antoine Chambert-Loir's book --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
86/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean 2 10 ['eric-wieser', 'madvorak', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] nobody
191-72147
6 months ago
696-8556
696 days ago
154-48765
154 days
10159 madvorak
author:madvorak
feat: linear programming according to Antoine Chambert-Loir's book — affine version --- Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming Four PRs incompatible with each other: https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints) https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form) https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear) https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra RFC
label:t-algebra$
83/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean 2 8 ['eric-wieser', 'madvorak', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] nobody
191-72140
6 months ago
696-8539
696 days ago
152-72231
152 days
10349 Shamrock-Frost
author:Shamrock-Frost
refactor(CategoryTheory/MorphismProperty): some clean-ups We make explicit some of the galois connections/closure operators in the existing MorphismProperty file, rewrite some proofs to take advantage of these structures, and change map/inverseImage by (1) swapping their argument order, for consistency with Set.range and Set.preimage and (2) making "map" perform the strict, evil map while "essMap" (previously called map) forms the closure of the image under isomorphisms. Finally we add `IsMultiplicative` instances for isos/epis/monos, with an eye towards constructing the wide subcategory on these classes of maps. --- - [x] depends on: #10347 - [x] depends on: #10348 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-category-theory 474/318 Mathlib/CategoryTheory/Localization/Composition.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean,Mathlib/CategoryTheory/MorphismProperty.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Order/Closure.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Order/RelIso/Basic.lean 8 1 ['leanprover-community-mathlib4-bot'] nobody
191-72117
6 months ago
842-40861
842 days ago
0-418
6 minutes
11021 jstoobysmith
author:jstoobysmith
feat(AlgebraicTopology): add join of augmented SSets This pull-request adds the definition of the join of augmented SSets defined as contravariant functors from `WithInitial SimplexCategory` to `Type u`. In addition it shows that the join of two standard augmented SSets is again an augmented SSets. From this the definition of the join of simplicial sets should follow easily. To aid the above theory, an api for `WithInitial SimplexCategory` has been created, with the notion of the `join` and `split` (forming a sort of inverse to join) of objects in this category are defined. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebraic-topology new-contributor 2137/1 .gitignore,Mathlib.lean,Mathlib/AlgebraicTopology/Join.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SimplexCategoryWithInitial.lean,Mathlib/AlgebraicTopology/SimplicialSet.lean 6 47 ['github-actions', 'jcommelin'] nobody
191-72109
6 months ago
821-39554
821 days ago
1-20227
1 day
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
191-72075
6 months ago
667-5957
667 days ago
123-25636
123 days
12087 JADekker
author:JADekker
feat: complete API for K-Lindelöf spaces --- - [ ] depends on: #11800 (which is now awaiting a design decision) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict t-topology blocked-by-other-PR 789/17 Mathlib.lean,Mathlib/Order/Filter/CardinalInter.lean,Mathlib/Topology/Compactness/KLindelof.lean,Mathlib/Topology/Compactness/Lindelof.lean 4 2 ['github-actions', 'leanprover-community-mathlib4-bot'] nobody
191-72068
6 months ago
667-5832
667 days ago
99-11243
99 days
12251 ScottCarnahan
author:ScottCarnahan
refactor(RingTheory/HahnSeries): several generalizations This PR is a container for several smaller PRs that refactor and generalize the existing Hahn series theory. It is (I think) all we need from Hahn series to get a palatable theory of vertex algebras off the ground (other prerequisites from Lie algebras will eventually come in a different PR). Major changes include: - equivalence between iterated Hahn series and Hahn series on Lex products. - introduce `orderTop` and `leadingCoeff` functions. Here, `orderTop` is a `WithTop Γ`-valued version of `order` that does not need `[Zero Γ]` and `leadingCoeff` returns the coefficient of the minimal element of support (or zero if empty). - introduce ordered and cancellative vector addition classes together with some basic theory e.g., finiteness of antidiagonals for partially well-ordered sets. - `HahnSeries Γ R`-module structure on `HahnModule Γ' R V`, when `Γ` is an `OrderedCancelAddCommMonoid`, `Γ'` is a `PartialOrder` with `OrderedCancelVAdd Γ Γ'`, `R` is a semiring, and `V` is an `R`-module. - Move `AddVal` to a separate file - the underlying function is just `orderTop`, but the description of the valuation needs an additional import and an `IsDomain` hypothesis. Results that depended on `AddVal` are changed to use `orderTop` and generalized. --- - [x] depends on: #10781 [HahnSeries on Lex product] - [x] depends on: #10846 [HahnModule] - [x] depends on: #11965 [orderTop] - [x] depends on: #11979 [OrderedVAdd] - [x] depends on: #12996 [leadingTerm] - [x] depends on: #16649 - [x] depends on: #16701 - [x] depends on: #17004 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra t-order
label:t-algebra$
1059/97 Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 3 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
191-72053
6 months ago
677-38200
677 days ago
42-37118
42 days
12394 JADekker
author:JADekker
feat: define pre-tight and tight measures Define tight measures (by first defining separable and pre-tight measures). Define some api for all three concepts Prove Ulam's tightness theorem and a strengthened version of this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt merge-conflict awaiting-author t-measure-probability 503/0 Mathlib.lean,Mathlib/MeasureTheory/Measure/Tight.lean 2 34 ['EtienneC30', 'JADekker', 'github-actions', 'sgouezel'] nobody
191-72048
6 months ago
753-80099
753 days ago
2-24297
2 days
12452 JADekker
author:JADekker
feat(Cocardinal): add some more api Just a small PR to add a bit more API for cocardinal filters. Not everything seems to generalise nicely from cofinite, so I didn't include such results. Currently the file has one `sorry`, I'm not sure how to complete this proof. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology awaiting-CI 75/0 Mathlib/Order/Filter/Cocardinal.lean 1 0 [] nobody
191-72044
6 months ago
763-68324
763 days ago
0-2075
34 minutes
14426 adomani
author:adomani
feat: `#min_imps` command (development branch) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 142/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinImports.lean,test/MinImports.lean 4 2 ['adomani', 'github-actions'] nobody
191-72015
6 months ago
694-51496
694 days ago
0-31
31 seconds
14686 smorel394
author:smorel394
feat(AlgebraicGeometry/Grassmannian): define the Grassmannian scheme # The Grassmannian scheme Define the Grassmannian scheme by gluing affine charts. We fix a commutative ring `K`, a free `K`-module of finite type `V` and two natural numbers `r` and `c`. The scheme we define should parametrize surjective `K`-linear maps `V →ₗ[K] (Fin r → K)`, assuming that `V` is of rank `r + c`. We actually define the scheme without assuming the condition on the rank of `V`, but it is empty unless the rank of `V` is `r + c`. Main definitions: * `Grassmannian.glueData K V r c`: the `AlgebraicGeometry.Scheme.GlueData` defining the Grassmannian scheme. * `Grassmannian K V r c`: the Grassmannian scheme, defined as `(Grassmannian.glueData K V r c).glued`. * `Grassmannian.structMorphism K V r c`: the structural morphism from `Grassmannian K V r c` to `Spec K`. # Implementation We use as index type for the charts the type `Basis (Fin (r + c)) K V` (so this is empty unless `V` is free of rank `r + c`). All the charts are the same and equal to the affine space with coordinates indexed by `Fin c × Fin r`, that is, to `Spec (MvPolynomial (Fin c × Fin r) K)`. The idea is that, for `i` in `Basis (Fin (r + c)) K V`, the corresponding chart will parametrize all surjective `K`-linear maps `φ : V →ₗ[K] (Fin r → K)` that become isomorphisms when restricted to the `K`-submodule generated by the first `r` vectors of the basis `i`. To get the point of the chart corresponding to `φ`, we take the matrix of `φ` in the basis `i` of `V` and the canonical basis of `Fin r → K`, we divide it on the right by its top `r × r` square submatrix (which is invertible by assumption), and we taken the botton `c × r` submatrix. This is almost the usual description of the Grassmannian by charts, with three differences: * We consider the Grassmannian parametrizing `r`-dimensional quotients of `V` instead of `r`-dimensional subspaces of `V`, because this is more natural when working over a general ring (or scheme). * In the usual description, we fix a basis of `V` and index the chart by its subsets `I` of cardinality `r`. Here, to avoid making a choice, we instead index charts by the set of bases of `V` and always choose the subset `I` to consist of the first `r` vectors. * Instead of working with `FiniteDimensional.finrank K V - r`, which would cause technical trouble because of the way subtraction works on `ℕ`, we introduce the codimension `c` as an auxiliary variable, and our constructions are only interesting when `r + c` is equal to `FiniteDimensional.finrank K V`. # Why is this a WIP * There a bunch of lemmas in the file `AlgebraicGeometry/Grassmannian/Lemmas.lean` that either should not be necessary or should be put in another PR for some other part of mathlib. * The proofs in `AlgebraicGeometry/Grassmannian/Basic.lean` are probably too complicated, and the names suck. # Notes. This contribution was created as part of the AIM workshop "Formalizing algebraic geometry" in June 2024. --- - [x] depends on: #14711 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt WIP workshop-AIM-AG-2024 merge-conflict t-algebraic-geometry 1002/0 Mathlib.lean,Mathlib/AlgebraicGeometry/Grassmannian/Basic.lean,Mathlib/AlgebraicGeometry/Grassmannian/Lemmas.lean 3 15 ['erdOne', 'github-actions', 'joelriou', 'leanprover-community-mathlib4-bot', 'smorel394'] nobody
191-72004
6 months ago
686-58011
686 days ago
0-201
3 minutes
17071 ScottCarnahan
author:ScottCarnahan
feat(LinearAlgebra/RootSystem): separation, base, cartanMatrix This PR defines an abstract separation structure for roots, together with the associated base and Cartan Matrix. In general, the good properties will follow from additional order hypotheses on the base ring (implemented in a future PR). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
111/0 Mathlib.lean,Mathlib/LinearAlgebra/RootSystem/Separation.lean 2 1 ['github-actions'] nobody
191-71969
6 months ago
592-62429
592 days ago
20-56416
20 days
17471 joelriou
author:joelriou
feat(Algebra/ModuleCat/Differentials/Sheaf): the sheaf of relative differentials --- - [ ] depends on: #17366 - [x] depends on: #17388 - [x] depends on: #16755 - [ ] depends on: #17469 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP blocked-by-other-PR t-category-theory large-import merge-conflict t-algebraic-geometry 740/10 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Sheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/AlgebraicGeometry/Modules/Differentials.lean,Mathlib/Geometry/RingedSpace/SheafedSpace.lean 9 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
191-71962
6 months ago
unknown
0-0
0 seconds
18626 hannahfechtner
author:hannahfechtner
feat: define Artin braid groups Define the Artin braid group on infinitely many strands. Includes a toGroup function which defines a function out of the braid group to any other group (given a function which satisfies the braid relations) (more to come in this file; next up: Artin braid groups on finitely many strands) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra new-contributor
label:t-algebra$
91/0 Mathlib.lean,Mathlib/GroupTheory/SpecificGroups/BraidGroup/Basic.lean 2 22 ['github-actions', 'hannahfechtner', 'jcommelin', 'joelriou'] nobody
191-71956
6 months ago
554-78835
554 days ago
15-38478
15 days
18784 erdOne
author:erdOne
feat(AlgebraicGeometry): use `addMorphismPropertyInstances` --- - [ ] depends on: #18785 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-geometry blocked-by-other-PR 435/91 Mathlib.lean,Mathlib/AlgebraicGeometry/Cover/Open.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/FinitePresentation.lean,Mathlib/AlgebraicGeometry/Morphisms/FiniteType.lean,Mathlib/AlgebraicGeometry/Morphisms/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyClosed.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/CategoryTheory/MorphismProperty/Composition.lean,Mathlib/CategoryTheory/MorphismProperty/Limits.lean,Mathlib/CategoryTheory/MorphismProperty/Tactic.lean,MathlibTest/AddMorphismPropertyInstances.lean 18 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
191-71947
6 months ago
567-8752
567 days ago
0-1869
31 minutes
19062 hannahfechtner
author:hannahfechtner
feat(Algebra/PresentedMonoid/Basic): facts about rel Add in a number of useful theorems (reflexivity, closure under multiplication) and lemmas about when the PresentedMonoid.rel holds as an API for users --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra
label:t-algebra$
38/0 Mathlib/GroupTheory/Congruence/Defs.lean 1 8 ['github-actions', 'hannahfechtner', 'kbuzzard', 'riccardobrasca'] nobody
191-71942
6 months ago
458-82902
458 days ago
87-64575
87 days
19607 madvorak
author:madvorak
feat: block matrices are totally unimodular --- Discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/TU.20block.20matrix.20.2319607 - [ ] depends on: #19323 - [ ] depends on: #20428 - [ ] depends on: #20433 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP blocked-by-other-PR 156/0 Mathlib.lean,Mathlib/Data/Sum/Decompose.lean,Mathlib/LinearAlgebra/Matrix/Determinant/TotallyUnimodular.lean 3 11 ['github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'madvorak', 'mathlib4-dependent-issues-bot'] nobody
191-71932
6 months ago
unknown
0-0
0 seconds
20029 FrederickPu
author:FrederickPu
feat(Tactic/simps): allow for Config attributes to be set directly Allow for Config attributes to be set directly when using initialize_simp_projection as per issue #19895 Basically modified initialize_simp_projection so that the user has the option of specifying a tuple of config option values. Ex: ``` initialize_simp_projection MulEquiv (toFun → apply, invFun → symm_apply) (fullyApplied := false) ``` These config options are then converted into projections.  --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP new-contributor t-meta 34/4 Mathlib/Tactic/Simps/Basic.lean 1 11 ['FrederickPu', 'YaelDillies', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant'] nobody
191-71893
6 months ago
528-2742
528 days ago
0-34081
9 hours
21269 658060
author:658060
feat(CategoryTheory/Topos): basic definitions and results in topos theory This code contains basic definitions and results in topos theory, including the definition of a subobject classifier, power objects, and topoi. It is proved that every topos has exponential objects, i.e. "internal homs". The mathematical content follows chapter IV sections 1-2 of Mac Lane and Moerdijk's text "Sheaves in Geometry and Logic". --- - [x] depends on: #21281 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory new-contributor merge-conflict awaiting-author 1269/0 Mathlib.lean,Mathlib/CategoryTheory/Topos/Basic.lean,Mathlib/CategoryTheory/Topos/Classifier.lean,Mathlib/CategoryTheory/Topos/Exponentials.lean,Mathlib/CategoryTheory/Topos/Power.lean 5 10 ['658060', 'gio256', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
191-71866
6 months ago
484-50680
484 days ago
0-13879
3 hours
22805 ScottCarnahan
author:ScottCarnahan
feat(FieldTheory/Finite): fixed points of Frobenius automorphism This PR identifies the prime field with the fixed points of frobenius. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra
label:t-algebra$
325/7 Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/GaloisField.lean 4 1 ['github-actions'] nobody
191-71854
6 months ago
unknown
0-0
0 seconds
23990 robertmaxton42
author:robertmaxton42
feat(Types.Colimits): Quot is functorial and colimitEquivQuot is natural Add `Functor.quotFunctor` to parallel `Functor.sectionsFunctor`, witnessing that `Quot` is functorial; add `colimNatIsoQuotFunctor` to parallel `limNatIsoSectionsFunctor`, witnessing that `colimitEquivQuot` is natural in the diagram $F$. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-category-theory new-contributor 33/0 Mathlib/CategoryTheory/Limits/Types/Colimits.lean 1 5 ['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'robertmaxton42'] nobody
191-71749
6 months ago
403-70684
403 days ago
8-27136
8 days
24533 robertmaxton42
author:robertmaxton42
feat(ULift): conjugation by ULift.up/down, misc cast/heq lemmas * Adds the convenience def `ULift.conj x := `down (f (up x))`, and corresponding basic lemmas * Adds lemmas showing that `ULift.up` and `.down` commute with casts and preserve `HEq`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data 31/0 Mathlib/Data/ULift.lean 1 23 ['eric-wieser', 'github-actions', 'grunweg', 'robertmaxton42'] nobody
191-71745
6 months ago
275-13133
275 days ago
118-2181
118 days
24690 ScottCarnahan
author:ScottCarnahan
feat(Data.Prod): reverse lexicographic order This PR implements the type synonym RevLex as a one-field structure, defines an order on products, and proves an order isomorphism with the Lex product with factors switched. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 141/0 Mathlib.lean,Mathlib/Data/Prod/RevLex.lean 2 5 ['ScottCarnahan', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71735
6 months ago
367-30860
367 days ago
19-33859
19 days
24692 ScottCarnahan
author:ScottCarnahan
feat(RingTheory/HahnSeries/Basic): isomorphism of Hahn series induced by order isomorphism This PR introduces an isomorphism of Hahn series induced by an order isomorphism on the exponent posets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-order 35/0 Mathlib/RingTheory/HahnSeries/Basic.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
191-71729
6 months ago
355-15784
355 days ago
31-47622
31 days
25034 ScottCarnahan
author:ScottCarnahan
feat(Algebra/Module/Equiv/Basic): Restriction of scalars from a semilinear equivalence to a linear equivalence If `M` and `M₂` are both `R`-modules and modules for `S` and `S₂`, respectively, then for any ring isomorphism `e` between `S` and `S₂` and any `e`-semilinear equivalence between `M` and `M₂` that respects the `R`-action, we obtain an `R`-linear equivalence between `M` and `M₂`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra
label:t-algebra$
28/0 Mathlib/Algebra/Module/Equiv/Basic.lean 1 1 ['github-actions'] nobody
191-71722
6 months ago
355-15746
355 days ago
20-11468
20 days
24627 pechersky
author:pechersky
feat(Topology/Algebra/Valued): `IsLinearTopology 𝒪[K] K` and `𝒪[K] 𝒪[K]` as well as `IsLinearTopology ℤ_[p] ℤ_[p]` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26829 merge-conflict awaiting-author t-topology 219/26 Mathlib.lean,Mathlib/NumberTheory/Padics/LinearTopology.lean,Mathlib/Topology/Algebra/Valued/LinearTopology.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean 5 55 ['ADedecker', 'erdOne', 'faenuccio', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'loefflerd', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] jcommelin
assignee:jcommelin
186-84487
6 months ago
192-13483
192 days ago
36-378
36 days
24016 plp127
author:plp127
feat: fine uniformity Adds the fine uniformity, and proves some properties. --- - [ ] depends on: #24096 for showing the induced topology is equal on completely regular spaces [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-topology 283/0 Mathlib.lean,Mathlib/Topology/UniformSpace/FineUniformity.lean,Mathlib/Topology/UniformSpace/Uniformizable.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
186-31876
6 months ago
408-40626
408 days ago
2-85308
2 days
24514 b-mehta
author:b-mehta
chore(Int/GCD): use fuel in xgcd Modify the definition of xgcd to use fuel recursion, to allow it to be reduced in the kernel. As a consequence, this means the evaluation of field operations in ZMod p become provable by `rfl` and `decide`. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/opaque.20recursion.20definitions.20break.20mergeSort.20decidability --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-data merge-conflict 44/22 Mathlib/Data/Int/GCD.lean 1 6 ['astrainfinita', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'nomeata', 'urkud'] nobody
184-895
6 months ago
335-40773
335 days ago
58-34020
58 days
24441 MrSumato
author:MrSumato
feat(Data/List): add Lyndon-Schutzenberger theorem on list commutativity Add Lyndon-Schutzenberger theorem on list commutativity. Included definition for List.repeatSelf that returns list repeated n times. --- This is my first mathlib PR, so any comments are highly appreciated. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-data new-contributor 129/1 Mathlib.lean,Mathlib/Data/List/Commutativity.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Lemmas.lean 4 38 ['MrSumato', 'github-actions', 'grunweg', 'madvorak', 'mathlib4-merge-conflict-bot', 'plp127'] grunweg
assignee:grunweg
175-54396
5 months ago
357-80740
357 days ago
29-59355
29 days
32473 mattrobball
author:mattrobball
chore(Kaehler.JacobiZariski): remove egregious local instance hack This code looks terrible and is no longer strictly necessary. Local timings give `lake build Mathlib/RingTheory/Kaehler/JacobiZariski.lean 39.77s user 1.07s system 263% cpu 15.482 total` after removal and `lake build Mathlib/RingTheory/Kaehler/JacobiZariski.lean 36.93s user 1.01s system 251% cpu 15.113 total` before the removal. So the preformance impact of removal is small. One could argue that keeping is a remainder that everything here needs to be seriously changed but the miminmal performance difference suggests that these local instances would be a red herring in that regard. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-author merge-conflict 0/4 Mathlib/RingTheory/Kaehler/JacobiZariski.lean 1 14 ['chrisflav', 'erdOne', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'mattrobball'] nobody
174-78019
5 months ago
174-78019
174 days ago
1-301
1 day
23040 grunweg
author:grunweg
feat: define immersions and smooth embeddings in infinite dimensions Sadly, we cannot prove most nice things about them yet, as we don't have the inverse function theorem yet. TODO: prove the few things we can already say --- - [ ] depends on: #28796 - [x] depends on: #28853 - [x] depends on: #23175 (preliminaries) - [x] depends on: #23186 - [ ] depends on: another PR, about `MSplitAt` (to be filed) - and perhaps some prerequisites about products of complemented modules etc. - [x] depends on: #23219 (preliminaries about local diffeomorphisms) - [x] depends on: #8738 - in fact, #9273 is not a strict pre-requisite for this. It suffices to know "extended charts have invertible differentials", which [isInvertible_mfderiv_extChartAt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Geometry/Manifold/MFDeriv/Atlas.html#isInvertible_mfderiv_extChartAt) mostly proves. (There's nothing wrong with completing that PR, for all interior points.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 967/0 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/MSplits.lean 5 4 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
170-79786
5 months ago
unknown
0-0
0 seconds
6633 adomani
author:adomani
feat(..Polynomial..): `MvPolynomial`s have no zero divisors This PR continues #6627, placing the `NoZeroDivisors` instance on `MvPolynomial`s and removing auxiliary intermediate results that are no longer needed. Affected files: ``` Data/MvPolynomial/Basic.lean Data/Polynomial/RingDivision.lean RingTheory/Polynomial/Basic.lean ``` --- - [x] depends on: #6227 for the `NoZeroDivisors` instance on `AddMonoidAlgebra`s [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebra
label:t-algebra$
143/57 Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Data/MvPolynomial/Basic.lean,Mathlib/Data/Polynomial/RingDivision.lean,Mathlib/RingTheory/Polynomial/Basic.lean 4 6 ['SnirBroshi', 'YaelDillies', 'adomani', 'eric-wieser'] nobody
169-73556
5 months ago
1016-57898
1016 days ago
0-19485
5 hours
21447 erdOne
author:erdOne
feat(AlgebraicGeometry): the split algebraic torus --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-algebraic-geometry 419/0 Mathlib.lean,Mathlib/AlgebraicGeometry/Torus.lean 2 6 ['erdOne', 'github-actions', 'jcommelin', 'joelriou', 'mathlib4-merge-conflict-bot'] nobody
163-11321
5 months ago
476-49891
476 days ago
2-69252
2 days
21495 alreadydone
author:alreadydone
experiment: reducible HasQuotient.quotient' --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 2/0 Mathlib/Algebra/Quotient.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
161-62118
5 months ago
477-84948
477 days ago
0-200
3 minutes
5934 eric-wieser
author:eric-wieser
feat: port Data.Rat.MetaDefs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This needs some eyes from people familiar with Qq merge-conflict help-wanted mathlib-port t-meta 183/0 Mathlib.lean,Mathlib/Data/Rat/MetaDefs.lean,test/rat.lean 3 5 ['eric-wieser', 'gebner', 'vihdzp'] nobody
154-59537
5 months ago
unknown
0-0
0 seconds
4960 eric-wieser
author:eric-wieser
chore: use `open scoped` Earlier versions of mathport did not know about this. This was done by searching for all `open` commands referencing: * `Classical` * `BigOperators` * `Topology` * `Pointwise` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-CI 1026/981 Mathlib/Algebra/AddTorsor.lean,Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/BigOperators/Order.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BigOperators/Ring.lean,Mathlib/Algebra/BigOperators/RingEquiv.lean,Mathlib/Algebra/Bounds.lean,Mathlib/Algebra/Category/GroupCat/Biproducts.lean,Mathlib/Algebra/Category/GroupCat/FilteredColimits.lean,Mathlib/Algebra/Category/GroupCat/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/Mon/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/FilteredColimits.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/GCDMonoid/Div.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Commute.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/Homology.lean,Mathlib/Algebra/Homology/Homotopy.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean,Mathlib/Algebra/Homology/ImageToKernel.lean,Mathlib/Algebra/IndicatorFunction.lean,Mathlib/Algebra/LinearRecurrence.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/Algebra/Module/PointwisePi.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Chebyshev.lean,Mathlib/Algebra/Order/Module.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Algebra/Order/SMul.lean,Mathlib/Algebra/Order/UpperLower.lean,Mathlib/Algebra/Periodic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/GroupRingAction.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Algebra/Support.lean,Mathlib/Algebra/TrivSqZeroExt.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Maximal.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/AlgebraicTopology/ExtraDegeneracy.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Asymptotics.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Filter.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/BoxIntegral/Partition/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/Partition/Tagged.lean,Mathlib/Analysis/Calculus/ContDiffDef.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean 788 1 ['vihdzp'] nobody
154-59434
5 months ago
1084-44164
1084 days ago
0-753
12 minutes
4127 kmill
author:kmill
refactor: create HasAdj class, define Digraph, and generalize some SimpleGraph API --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-combinatorics 1403/551 Mathlib.lean,Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Graph/Classes.lean,Mathlib/Combinatorics/Graph/Dart.lean,Mathlib/Combinatorics/Graph/Hom.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Finsubgraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 18 2 ['SnirBroshi', 'vihdzp'] nobody
154-55409
5 months ago
1097-75250
1097 days ago
8-43930
8 days
14444 digama0
author:digama0
fix(GeneralizeProofs): unreachable! bug As [reported on Zulip](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Unreachable.20code.20reached.20in.20Lean.204.2E8.2E0/near/449286780). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 1/1 Mathlib/Tactic/GeneralizeProofs.lean 1 6 ['github-actions', 'jcommelin', 'kmill', 'mathlib4-merge-conflict-bot', 'plby'] nobody
152-33825
5 months ago
683-49229
683 days ago
10-36842
10 days
25138 chrisflav
author:chrisflav
chore(RingTheory/Ideal): make `RingHom.ker` take a `RingHom` instead of `RingHomClass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author merge-conflict
label:t-algebra$
317/309 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Hom/Rat.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Module/AEval.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/PurelyInseparable/Tower.lean,Mathlib/LinearAlgebra/Semisimple.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Embeddings.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/Adjoin/Tower.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Congruence/Hom.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Extension/Cotangent/Basis.lean,Mathlib/RingTheory/Extension/Cotangent/LocalizationAway.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FiniteStability.lean,Mathlib/RingTheory/Finiteness/NilpotentKer.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean,Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/MvPowerSeries/Evaluation.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Nullstellensatz.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/UniqueFactorization.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean,Mathlib/RingTheory/Smooth/AdicCompletion.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Flat.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/Smooth/NoetherianDescent.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/RingTheory/Unramified/Finite.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/ContinuousMap/Ideals.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean 68 8 ['chrisflav', 'erdOne', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] nobody
152-21233
5 months ago
371-38761
371 days ago
0-3642
1 hour
24665 Komyyy
author:Komyyy
feat(Mathlib/Topology/Metrizable/Uniformity): every uniform space is generated by a family of pseudometrics --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-topology merge-conflict 54/0 Mathlib/Topology/Metrizable/Uniformity.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
150-50357
4 months ago
387-57299
387 days ago
0-1
1 second
33462 eric-wieser
author:eric-wieser
feat: teach `fun_prop` about `ContinousMultilinearMap.compContinuousLinearMap` For now I've omitted the curried version --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 46/0 Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean 1 3 ['github-actions', 'sgouezel'] nobody
148-51591
4 months ago
148-64829
148 days ago
148-64791
148 days
25500 eric-wieser
author:eric-wieser
feat: delaborators for metadata Being able to see these is very important when debugging tactic failures. Probably these could be upstreamed, but I don't think that's a reason not to merge them here first. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict awaiting-author delegated t-meta 75/3 Mathlib/Util/Delaborators.lean,Mathlib/Util/PPOptions.lean,MathlibTest/delaborators.lean 3 19 ['JovanGerb', 'Rob23oba', 'eric-wieser', 'github-actions', 'kmill', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'plp127'] nobody
147-36248
4 months ago
274-66761
274 days ago
83-68773
83 days
21344 kbuzzard
author:kbuzzard
chore: attempt to avoid diamond in OreLocalization --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) please-adopt t-algebra
label:t-algebra$
16/5 Mathlib/RingTheory/OreLocalization/Basic.lean 1 6 ['erdOne', 'github-actions', 'kbuzzard'] nobody
145-48225
4 months ago
480-45920
480 days ago
1-35979
1 day
17176 arulandu
author:arulandu
feat: integrals and integrability with .re Lemmas for swapping order of .re and integration/integrability. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author new-contributor t-measure-probability please-adopt 49/0 Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean 4 32 ['EtienneC30', 'arulandu', 'github-actions', 'loefflerd'] nobody
144-55640
4 months ago
592-16477
592 days ago
9-73631
9 days
24010 grunweg
author:grunweg
feat(Counterexamples): a non-negative function, not a.e. zero, with vanishing lowe… …r Lebesgue integral. Came up in #23707, let's document this while we're at it. --- - [ ] depends on: #20722 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict please-adopt WIP blocked-by-other-PR t-measure-probability 110/0 Counterexamples.lean,Counterexamples/LIntegralZero.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
141-80270
4 months ago
411-55315
411 days ago
0-22
22 seconds
33669 eric-wieser
author:eric-wieser
chore(Data/Nat/Digits): refactor to use List.rightpad --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import merge-conflict 32/12 Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Data/List/Lemmas.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Nat/Digits/Lemmas.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'xroblot'] nobody
140-11595
4 months ago
143-66685
143 days ago
0-237
3 minutes
13158 erdOne
author:erdOne
refactor(RingTheory/OreLocalization/Module): remove `LocalizedModule.mk`. --- - [x] depends on: #13151 - [ ] depends on: #13156 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebra blocked-by-other-PR
label:t-algebra$
49/48 Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean 2 2 ['urkud'] nobody
138-26041
4 months ago
723-109
723 days ago
9-15083
9 days
12934 grunweg
author:grunweg
chore: replace more uses of > or ≥ by < or ≤ These were flagged by the linter in https://github.com/leanprover-community/mathlib4/pull/12879: it is easy to simple avoid > or ≥ in hypotheses or haves. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author help-wanted 41/42 Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Tactic/Linarith/Datatypes.lean,test/cancel_denoms.lean,test/congr.lean,test/interval_cases.lean,test/observe.lean 15 12 ['YaelDillies', 'adomani', 'github-actions', 'grunweg', 'jcommelin', 'urkud'] nobody
138-25948
4 months ago
742-81773
742 days ago
1-73101
1 day
20719 gio256
author:gio256
feat(AlgebraicTopology): delaborators for truncated simplicial notations We add delaborators for the following notations, introduced in #20688: - `⦋m⦌ₙ`, which denotes the `m`-dimensional simplex in the `n`-truncated simplex category. - `X _⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated simplicial object `X`. - `X ^⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated cosimplicial object `X`. If `pp.proofs` is set to `true`, we also pretty-print the proof `p : m ≤ n` for all three notations as `⦋m, p⦌ₙ`, `X _⦋m, p⦌ₙ`, and `X ^⦋m, p⦌ₙ`, respectively. Credit to @kmill for one piece of code and much metaprogramming inspiration. --- - [x] depends on: #20688 - [x] depends on: #23018 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-algebraic-topology infinity-cosmos t-meta please-adopt will-close-soon 525/33 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimplexCategory.lean,Mathlib/Util/Superscript.lean,MathlibTest/SimplexCategory.lean,MathlibTest/SimplicialObject.lean,MathlibTest/superscript.lean,scripts/noshake.json 11 24 ['eric-wieser', 'gio256', 'github-actions', 'joneugster', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
133-75299
4 months ago
313-52439
313 days ago
88-84229
88 days
31348 PatrickMassot
author:PatrickMassot
chore: fix a docstring typo --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation awaiting-author t-analysis 1/1 Mathlib/Analysis/Calculus/Darboux.lean 1 3 ['ADedecker', 'dopamine333', 'github-actions'] nobody
133-71242
4 months ago
203-77714
203 days ago
0-21655
6 hours
10991 thorimur
author:thorimur
feat: `tfae` block tactic This PR introduces `tfae` block tactic syntax: ```lean tfae 1 → 2 := /- proof of `P₁ → P₂` -/ 2 → 3 := /- proof of `P₂ → P₃` -/ 3 → 1 := /- proof of `P₃ → P₁` -/ ``` Like the recent change to `tfae_have`, this syntax also supports all sorts of matching that `have` itself supports: ```lean tfae 2 → 3 | h₂ => /- proof of `P₃` -/ 3 → 1 -- given `P₁ := ∀(a : A), (b : B), (c : C), X`: | h₃, a, b, c => /- proof of `X` -/ ⟨h_mp, h_mpr⟩ : 1 ↔ 2 := /- proof of `P₁ ↔ P₂`; puts `h_mp : P₁ → P₂`, `h_mpr : P₂ → P₁` in the lctx -/ ``` This initial implementation is currently very simple, and relies on `tfae_have` and `tfae_finish`. Although we intend to migrate away from that syntax, this PR does not remove support for it or deprecate `tfae_have`/`tfae_finish` in any way; migration (but not deprecation) is done in #11003. --- - [x] depends on: #10653 - [x] depends on: #10994 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP modifies-tactic-syntax t-meta 392/124 Mathlib/Tactic/TFAE.lean,scripts/noshake.json,test/tfae.lean 3 5 ['github-actions', 'joneugster', 'mathlib4-dependent-issues-bot', 'thorimur'] joneugster
assignee:joneugster
133-61172
4 months ago
617-25041
617 days ago
7-13967
7 days
34195 eric-wieser
author:eric-wieser
feat: continuous bundled actions These are `Continuous` versions of existing definitions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-algebra large-import
label:t-algebra$
59/0 Mathlib/Topology/Algebra/ContinuousMonoidHom.lean 1 1 ['github-actions'] nobody
129-10323
4 months ago
72-56848
72 days ago
0-1929
32 minutes
21476 grunweg
author:grunweg
feat(lint-style): enable running on downstream projects Enable lint-style to run on downstream projects, by making the following modifications: - allow passing an explicit list of libraries to lint: if nothing is passed, it lints `Mathlib`, `Archive` and `Counterexamples` (as before); otherwise, it lints precisely the passed modules - only check init imports, undocumented scripts and the errors from `lint-style.py` when linting Mathlib - make the style exceptions file configurable and optional: using the `nolints-file` flag, the exceptions file can be configured. If the flag is omitted, we try to find a file at `scripts/nolints-style.txt` --- and otherwise proceed with no style exceptions. This means mathlib can continue unchanged, and downstream projects can either add an explicit exceptions file, or proceed without any exceptions. After this PR, one should be able to run lint-style on a downstream project by `lake exe lint-style ProjectName`. Prompted by [this zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/lint-style.20for.20downstream.20libraries). --- - [x] depends on: #24570 - [x] depends on: #24953 (I did not test the last part.) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter awaiting-author please-adopt 58/19 Mathlib/Tactic/Linter/TextBased.lean,scripts/lint-style.lean 2 21 ['Vierkantor', 'adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] nobody
127-8634
4 months ago
378-69367
378 days ago
43-17409
43 days
12879 grunweg
author:grunweg
feat: port ge_or_gt linter from mathlib3 Code works and is essentially green: next step is to split up into separate PRs. Feedback welcome on whether: - all the test changes are good, or I should simply allow it in more cases - if calc blocks need to be explicitly exempt --- - [ ] depends on: #12933 - [ ] depends on: #12934 - [ ] depends on: #12931 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter tech debt blocked-by-other-PR 736/319 Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/NormedSpace/MStructure.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Int/Lemmas.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Nat/Upto.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/GroupTheory/Coxeter/Length.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/NumberTheory/LegendreSymbol/JacobiSymbol.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Rayleigh.lean,Mathlib/Order/Filter/AtTopBot.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/RingTheory/Adjoin/Basic.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linter/GeOrGt.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/MetricSpace/Cauchy.lean,Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sequences.lean,scripts/lint-style.py,test/Explode.lean,test/GCongr/inequalities.lean,test/GeOrGt.lean,test/LibrarySearch/IsCompact.lean,test/LibrarySearch/basic.lean,test/Recall.lean,test/Rify.lean,test/Use.lean,test/cancel_denoms.lean,test/congr.lean,test/delabLinearIndependent.lean,test/delaborators.lean,test/interval_cases.lean,test/linarith.lean 109 4 ['github-actions', 'grunweg', 'urkud'] nobody
123-52615
4 months ago
744-53609
744 days ago
0-15256
4 hours
8608 eric-wieser
author:eric-wieser
feat: multiplicativize `AddTorsor` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-algebra please-adopt
label:t-algebra$
268/199 Mathlib/Algebra/AddTorsor.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Data/Set/Pointwise/SMul.lean,Mathlib/Tactic/ToAdditive.lean 4 2 ['alreadydone'] nobody
122-39493
4 months ago
unknown
0-0
0 seconds
24100 eric-wieser
author:eric-wieser
feat: restore some explicit binders from Lean 3 Part of #24099 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author tech debt t-topology t-algebra
label:t-algebra$
39/42 Mathlib/Data/FinEnum.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Compactness/CompactlyGeneratedSpace.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/Metrizable/CompletelyMetrizable.lean,Mathlib/Topology/Metrizable/Uniformity.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean 10 3 ['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] nobody
118-48680
3 months ago
409-40283
409 days ago
0-954
15 minutes
25474 adomani
author:adomani
test for .lean/.md check A test PR for #25473. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-linter file-removed WIP 10/1 .github/workflows/lint_and_suggest_pr.yml,Mathlib.lean,Mathlib/NumberTheory/NumberField/CMField.Lean 3 2 ['github-actions', 'leanprover-community-bot-assistant'] nobody
117-79831
3 months ago
359-5477
359 days ago
0-907
15 minutes
33991 grunweg
author:grunweg
test: pretty-printing of class abbrev Lake build fails with an error in batteries: what am I doing wrong? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict file-removed large-import WIP 118/303 .github/workflows/daily.yml,Mathlib.lean,Mathlib/Algebra/Group/Action/TransferInstance.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Notation/Lemmas.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Notation/Prod.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/Unbundled/Basic.lean,Mathlib/CategoryTheory/Limits/Yoneda.lean,Mathlib/Data/Finite/Defs.lean,Mathlib/Data/Int/Cast/Pi.lean,Mathlib/Data/Int/Init.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/GetD.lean,Mathlib/Data/List/Indexes.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Init.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/Lean/Meta/Simp.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/GaloisConnection/Defs.lean,Mathlib/Order/Monotone/Defs.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Push/Attr.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,Mathlib/Topology/Defs/Basic.lean,Mathlib/Util/AssertExists.lean,MathlibTest/AssertExists.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/DeprecatedSyntaxLinter.lean,MathlibTest/DirectoryDependencyLinter/Test.lean,MathlibTest/EmptyLine.lean,MathlibTest/ExtractGoal.lean,MathlibTest/HaveLetLinter.lean,MathlibTest/LibrarySearch/IsCompact.lean,MathlibTest/LintStyle.lean,MathlibTest/TacticAnalysis.lean,MathlibTest/UnusedInstancesInType.lean,MathlibTest/Util/PrintSorries.lean,MathlibTest/WhitespaceLinter.lean,MathlibTest/aesop_cat.lean,MathlibTest/eqns.lean,MathlibTest/fast_instance.lean,MathlibTest/globalAttributeIn.lean,MathlibTest/hintAll.lean,MathlibTest/jacobiSym.lean,MathlibTest/slim_check.lean,MathlibTest/toAdditive.lean,lake-manifest.json,lakefile.lean,lean-toolchain 61 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
117-79774
3 months ago
135-8059
135 days ago
0-111
1 minute
31110 bryangingechen
author:bryangingechen
ci: don't delete merged branches This will only affect PRs that are not from forks (e.g. this one). The motivation is that #30913 was closed automatically due to its target branch deleted after #30912 was merged. See also [#PR reviews > #30913 feat(Computability/Language):add subtraction notation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2330913.20feat.28Computability.2FLanguage.29.3Aadd.20subtraction.20notation/near/548052556). Looking at the history, it looks like this option hasn't been changed since we added bors to mathlib3: https://github.com/leanprover-community/mathlib3/pull/2322 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author CI merge-conflict 1/1 bors.toml 1 5 ['bryangingechen', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] nobody
117-79518
3 months ago
210-61533
210 days ago
0-64677
17 hours
9820 jjaassoonn
author:jjaassoonn
feat(RingTheory/GradedAlgebra/HomogeneousIdeal): generalize to homogeneous submodule The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to a homogeneous submodules. So say $R$ is a ring and $M \cong \bigoplus_{i} M_i$ is an $R$-module. Then a homogeneous $R$-submodule of $M$ is an $R$-submodule $N$ such that for all $i$ and $n \in N$, $n_i \in N$. Note that this notion doesn't actually require $R$ to be graded and $M$ is a graded module. But for more interesting lemmas, we do need that $M$ is graded $R$-module. We bake the fact $R$ is graded into the definition of homogeneous submodule, otherwise, `CompleteLattice HomogeneousSubmodule` cannot find the order of synthesis (the proof depends on that $R$ is graded) All definitions/constructions/theorems have a copy for ideals as well, this is to make sure dot notation still works. The motivation of this generalization is graded quotient module --- - [x] depends on:#18728 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-ring-theory 516/185 Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,scripts/nolints_prime_decls.txt 7 3 ['github-actions', 'leanprover-community-bot-assistant'] nobody
110-6334
3 months ago
329-29575
329 days ago
52-59768
52 days
14501 jjaassoonn
author:jjaassoonn
feat: module structure of filtered colimit of abelian groups over filtered colimit of rings This helps defining the module structure of stalks This contribution was inspired by the AIM workshop "Formalizing algebraic geometry" in June 2024. --- - [x] depends on: #15315 [I am going to move the result in the new file] [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra workshop-AIM-AG-2024 t-category-theory merge-conflict awaiting-author
label:t-algebra$
439/2 Mathlib/CategoryTheory/Limits/ConcreteCategory/Basic.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory/WithAlgebraicStructures.lean 2 49 ['YaelDillies', 'adamtopaz', 'alreadydone', 'erdOne', 'github-actions', 'jjaassoonn', 'joelriou', 'kbuzzard'] joelriou
assignee:joelriou
108-85315
3 months ago
549-73583
549 days ago
64-30806
64 days
25035 ScottCarnahan
author:ScottCarnahan
feat(Algebra/Module/Equiv/Defs): linear equivalence between linear hom and semilinear hom Given a ring homomorphism `σ₂ : R →+* R₂`, an `R`-module `M`, and a module `M₂` for both `R` and `R₂` satisfying `SMulCommClass R R₂ M₂` and `(σ₂ r) • x = r • x`, we produce an `R₂`-linear equivalence between `M →ₗ[R] M₂` and `M →ₛₗ[σ₂] M₂`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra merge-conflict
label:t-algebra$
21/0 Mathlib/Algebra/Module/Equiv/Defs.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
108-52213
3 months ago
355-15771
355 days ago
20-7584
20 days
34931 eric-wieser
author:eric-wieser
perf: make TensorProduct.lift irreducible with a unification hint --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
6/2 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 7 ['eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] erdOne
assignee:erdOne
106-60754
3 months ago
106-60755
106 days ago
5-66655
5 days
23042 joneugster
author:joneugster
feat(CategoryTheory/Enriched/Limits): add HasConicalLimitsOfSize.shrink --- Note: I've marked this "WIP" because I'm not yet sure when this will be needed and I'd probably put the PR on the queue once I've created some follow-up needing it. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-category-theory infinity-cosmos please-adopt 22/1 Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean 1 1 ['github-actions'] nobody
104-29443
3 months ago
438-5943
438 days ago
0-1
1 second
23142 joneugster
author:joneugster
feat(CategoryTheory/Enriched/Limits): add API for HasConicalLimit --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-category-theory infinity-cosmos please-adopt 52/9 Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean 1 2 ['github-actions', 'joelriou'] nobody
104-29443
3 months ago
435-8934
435 days ago
0-67788
18 hours
23145 joneugster
author:joneugster
feat(CategoryTheory/Enriched/Limits): add IsConicalLimits --- - [ ] depends on: #23142 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict blocked-by-other-PR t-category-theory infinity-cosmos please-adopt 221/9 Mathlib.lean,Mathlib/CategoryTheory/Enriched/Limits/HasConicalLimits.lean,Mathlib/CategoryTheory/Enriched/Limits/IsConicalLimit.lean 3 3 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] nobody
104-29442
3 months ago
435-76444
435 days ago
0-370
6 minutes
20401 RemyDegenne
author:RemyDegenne
feat: add sigmaFinite_iUnion ```lean lemma sigmaFinite_iUnion (μ : Measure α) {s : ℕ → Set α} (h_meas : MeasurableSet (⋃ n, s n)) [∀ n, SigmaFinite (μ.restrict (s n))] : SigmaFinite (μ.restrict (⋃ n, s n)) ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-measure-probability 37/28 Mathlib/MeasureTheory/Decomposition/Exhaustion.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean 2 6 ['RemyDegenne', 'github-actions', 'sgouezel', 'urkud'] nobody
104-12514
3 months ago
512-30
511 days ago
0-73190
20 hours
11500 mcdoll
author:mcdoll
refactor(Topology/Algebra/Module/WeakDual): Clean up - Move `Dual` and `dualPairing` lower in the import-hierachy - deduplicate `dualPairing` - Bundle continuity statements to `CLM`s. - Make `WeakDual` and `WeakSpace` reducible - Remove `refine'` in favor of `refine` --- Cleaning up `Analysis/NormedSpace/WeakDual` will be done in a second PR [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-topology 227/179 Mathlib.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/NormedSpace/Dual.lean,Mathlib/Analysis/NormedSpace/WeakDual.lean,Mathlib/Analysis/VonNeumannAlgebra/Basic.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Dual.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,docs/overview.yaml,docs/undergrad.yaml 15 16 ['ADedecker', 'grunweg', 'j-loreaux', 'kkytola', 'mathlib-bors', 'mcdoll', 'urkud'] nobody
103-76301
3 months ago
752-75501
752 days ago
46-5571
46 days
20428 madvorak
author:madvorak
feat(Data/Sign): lemmas about `∈ Set.range SignType.cast` --- Perhaps `in_set_range_singType_cast_iff_abs` needs to be moved somewhere downstream. merge-conflict WIP t-data 40/0 Mathlib/Data/Sign.lean 1 13 ['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak', 'urkud'] nobody
103-76129
3 months ago
unknown
0-0
0 seconds
16553 grunweg
author:grunweg
WIP: tinkering with orientable manifolds - wait for #33307 to get merged - PR the "normed space" part separately - WIP: a linear isomorphism on a connected set is either orientation-preserving or orientation-preserving: some form of this was merged into mathlib recently; TODO update this PR accordingly! - [ ] depends on: #33307 - [x] depends on: #8738 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-differential-geometry blocked-by-other-PR 287/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/Orientable.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
102-44596
3 months ago
unknown
0-0
0 seconds
24965 erdOne
author:erdOne
refactor: Make `IsLocalHom` take unbundled map Under the current definition, `IsLocalHom f` and `IsLocalHom f.toMonoidHom` are not defeq, which causes quite some annoyances. We also have a consensus to not use `*HomClass` in definitions. As a result, we change `IsLocalHom` to take an unbundled function instead of a funlike. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated merge-conflict
label:t-algebra$
18/9 Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean 5 15 ['adomani', 'alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] mattrobball
assignee:mattrobball
101-42732
3 months ago
193-8501
193 days ago
24-84527
24 days
25622 eric-wieser
author:eric-wieser
refactor: overhaul instances on LocalizedModule This: * Generalizes the `SMul`, `Module`, and `Algebra` instances via appropriate compatibility conditions * Generalizes the `Mul` instance to the non-unital setting * Fixes instances diamonds for the `Nat`- and `Int`-actions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra merge-conflict
label:t-algebra$
214/100 Mathlib/Algebra/Module/LocalizedModule/Basic.lean 1 6 ['erdOne', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib-merge-conflicts'] nobody
101-42729
3 months ago
unknown
0-0
0 seconds
34075 eric-wieser
author:eric-wieser
feat: add a typeclass for the continuum hypothesis This allows a proof from the Archive to be promoted to mathlib itself. The proof strategy of `iff_exists_sierpinski_pathological_pred` was written almost entirely with public Gemini 3 Thinking, and then manually corrected. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory merge-conflict awaiting-author 200/58 Counterexamples/Phillips.lean,Mathlib.lean,Mathlib/SetTheory/Cardinal/ContinuumHypothesis.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 27 ['b-mehta', 'eric-wieser', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] nobody
101-19055
3 months ago
49-44234
49 days ago
0-44643
12 hours
12933 grunweg
author:grunweg
chore: replace some use of > or ≥ by < or ≤ These were flagged by the linter in #12879: it is easy to simple avoid > or ≥ in hypotheses or `have`s. --- - [x] depends on: #35346 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author 123/123 Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2019Q4.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Nat/Dist.lean,Mathlib/Data/Nat/Lattice.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Ordmap/Ordset.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/GroupTheory/Coxeter/Length.lean,Mathlib/MeasureTheory/Constructions/Polish.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/NumberTheory/LegendreSymbol/JacobiSymbol.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean,Mathlib/NumberTheory/PellMatiyasevic.lean,Mathlib/NumberTheory/Rayleigh.lean,Mathlib/Probability/Process/Stopping.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/MetricSpace/CauSeqFilter.lean,Mathlib/Topology/Sequences.lean,test/LibrarySearch/basic.lean,test/Use.lean,test/cancel_denoms.lean,test/linarith.lean,test/norm_cast.lean 64 7 ['YaelDillies', 'github-actions', 'grunweg', 'mathlib-dependent-issues'] nobody
97-24081
3 months ago
744-7960
744 days ago
0-55656
15 hours
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
93-7043
3 months ago
438-71382
438 days ago
48-67492
48 days
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
93-7027
3 months ago
389-75321
389 days ago
39-60525
39 days
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
92-27056
3 months ago
356-56355
356 days ago
34-10092
34 days
8102 miguelmarco
author:miguelmarco
feat(Tactic): add `unify_denoms` and `collect_signs` tactics This PR adds four new tactics: - `unify_denoms` tries to put expressions with several divisions in a form with only one division. In the case of fields, it works similarly to `field_simp`, but if the hypothesis about denominators being nonzero are not present, it assumes them, and leaves them as new goals to prove. In that sense, it is an "unsafe" tactic (but can be useful nevertheless, for example when you can't find which exact hypothesis is missing). It also works with expressions of naturals and Euclidean domains, assuming the corresponding hypothesis about the denominators dividing the numerators. - `unify_denoms!` extends `unify_denoms` to work with (in)equalities, assuming also that the denominators, once in normal form, are positive. - `collect_signs` works similarly with expressions using sums and substractions: it tries to put them in a form of one sum minus other sum. In the case of working with naturals, it assumes that we never substract a bigger number from a smaller one. Both are implemented essentially as a macro that combines several rewriting rules. Some new lemmas with the corresponding rules are added. --- please-adopt new-contributor merge-conflict modifies-tactic-syntax good first issue t-meta 407/0 Mathlib.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CollectSigns.lean,Mathlib/Tactic/UnifyDenoms.lean,MathlibTest/unify_denoms.lean,scripts/noshake.json 7 55 ['Paul-Lez', 'YaelDillies', 'github-actions', 'joneugster', 'kbuzzard', 'mathlib4-merge-conflict-bot', 'miguelmarco'] nobody
91-77754
3 months ago
380-60226
380 days ago
17-14109
17 days
15355 adomani
author:adomani
feat: MiM PR report --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP merge-conflict 193/0 .github/workflows/monthly_pr_report.yaml,scripts/README.md,scripts/find_labels.sh 3 18 ['YaelDillies', 'adomani', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
88-63123
2 months ago
unknown
0-0
0 seconds
22464 adomani
author:adomani
feat(CI): declarations diff in Lean Rewrites the `declaration_diff` script in Lean. You can see the effect of the new script in the testing branch #22497. The new CI step runs in approximately 5mins, but is separate from the `build` step. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author CI merge-conflict 151/0 .github/workflows/PR_summary_lean.yml,scripts/README.md,scripts/declarations_diff.lean,scripts/declarations_diff_lean_shell_glue.sh 4 8 ['bryangingechen', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] nobody
88-61528
2 months ago
305-42794
305 days ago
146-23496
146 days
35547 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: tidy various files --- As usual, `simp`s didn't seem slow. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author merge-conflict 83/117 Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/LinearRecurrence.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/ZariskisMainTheorem.lean,Mathlib/Analysis/Complex/CoveringMap.lean,Mathlib/Analysis/Complex/MeanValue.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/JordanChevalley.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/SubFinite.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Indexed.lean,Mathlib/Probability/Distributions/Cauchy.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Polynomial/Subring.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/UniqueFactorizationDomain/ClassGroup.lean,Mathlib/RingTheory/Unramified/LocalStructure.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Majorized.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/MulAction.lean 32 14 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'vihdzp'] nobody
85-41038
2 months ago
98-68215
98 days ago
0-67842
18 hours
34501 eric-wieser
author:eric-wieser
chore(Data/Fintype/Induction): add a workaround for a bug in `induction` This works around leanprover/lean4#4246, as Zulip threads frequently run up against this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-meta please-adopt 15/1 Mathlib/Data/Fintype/Option.lean 1 3 ['github-actions', 'joneugster'] joneugster
assignee:joneugster
85-7551
2 months ago
119-74294
119 days ago
2-59629
2 days
8479 alexjbest
author:alexjbest
feat: use leaff in CI [Leaff](https://github.com/alexjbest/leaff) is an experimental lean-diff tool, this PR is to experiment with adding it as a CI step. --- I'm not sure yet if it is best to have this always run or only run on request (like bench). If it is always run should it post a comment or simply leave its output it the actions log (maybe as a summary object) the current iteration runs and updates a sticky comment with the latest result [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP awaiting-author 340/0 .github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml 4 13 ['alexjbest', 'fpvandoorn', 'github-actions', 'grunweg', 'kim-em', 'mathlib-bors', 'urkud'] nobody
84-83495
2 months ago
924-60869
924 days ago
0-26
26 seconds
13483 adomani
author:adomani
feat: automatically replace deprecations This PR introduces `lake exe update_deprecations` that uses the cache to automatically replace deprecated declarations with the corresponding un-deprecated one. The script handles namespacing, replacing a possibly non-fully-qualified, deprecated name with the fully-qualified non-deprecated name. It is also possible to use ```bash lake exe update_deprecations --mods One.Two.Three,Dd.Ee.Ff ``` to limit the scope of the replacements to the modules `One.Two.Three` and `Dd.Ee.Ff`. This is intended to be a first step in automating updates: combining this with a linter that emits appropriate warnings, the functionality of `lake exe update_deprecations` can be extended to perform more complicated updates. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-meta 306/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/UpdateDeprecations.lean,MathlibTest/UpdateDeprecations.lean,lakefile.lean,scripts/README.md,scripts/update_deprecations.lean 7 18 ['YaelDillies', 'adomani', 'fpvandoorn', 'github-actions', 'j-loreaux', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib-bors', 'sgouezel'] joneugster
assignee:joneugster
84-83467
2 months ago
564-74573
564 days ago
34-80803
34 days
14313 grhkm21
author:grhkm21
feat(RepresentationTheory/FdRep): FdRep is a full subcategory of Rep ``` /-- Equivalence between `FDRep` and the full subcategory of finite dimensional `Rep`. -/ def equivFiniteDimensional : FDRep k G ≌ FullSubcategory (fun V : Rep k G ↦ FiniteDimensional k V) ``` merge-conflict t-algebra t-category-theory new-contributor
label:t-algebra$
47/8 Mathlib/RepresentationTheory/FDRep.lean 1 21 ['fpvandoorn', 'github-actions', 'grhkm21', 'joelriou', 'kim-em', 'mathlib-bors'] nobody
84-83444
2 months ago
677-49468
677 days ago
4-83177
4 days
14712 astrainfinita
author:astrainfinita
perf: change instance priority and order about `OfNat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra
label:t-algebra$
49/20 Mathlib/Algebra/Group/Nat.lean,Mathlib/Algebra/Group/ZeroOne.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/UInt.lean,Mathlib/NumberTheory/ArithmeticFunction.lean 9 26 ['MichaelStollBayreuth', 'astrainfinita', 'eric-wieser', 'fpvandoorn', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mathlib-bors'] nobody
84-83425
2 months ago
659-61595
659 days ago
20-15089
20 days
17627 hrmacbeth
author:hrmacbeth
feat: universal properties of vector bundle constructions Characterizations for the smoothness of maps into the total spaces of (1) the direct sum of two vector bundles; (2) the pullback of a vector bundle. This gap in the library was exposed by #17358. --- - [x] depends on: #22804 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-differential-geometry 311/9 Mathlib/Data/Bundle.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/Pullback.lean,Mathlib/Topology/FiberBundle/Constructions.lean 4 26 ['PatrickMassot', 'fpvandoorn', 'github-actions', 'grunweg', 'hrmacbeth', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'sgouezel'] grunweg
assignee:grunweg
84-83413
2 months ago
344-83152
344 days ago
91-68302
91 days
19275 eric-wieser
author:eric-wieser
fix: if nolint files change, do a full rebuild Otherwise CI will succeed when removing entries from the file, but fail later when someone changes something unrelated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 8/0 lakefile.lean 1 22 ['YaelDillies', 'adomani', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'mathlib-bors'] nobody
84-83396
2 months ago
556-37631
556 days ago
0-214
3 minutes
24434 joelriou
author:joelriou
feat(CategoryTheory): effectiveness of descent (This is very much a draft, it will be split in multiple PRs later.) Co-authored-by: Christian Merten [christian@merten.dev](mailto:christian@merten.dev) --- - [ ] depends on: #35452 - [ ] depends on: #35393 - [ ] depends on: #35396 - [ ] depends on: #35401 - [x] depends on: #24411 - [x] depends on: #24382 - [x] depends on: #25971 - [x] depends on: #13539 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-category-theory 4052/66 Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Adj.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/BaseChange.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Mate.lean,Mathlib/CategoryTheory/Bicategory/Functor/Cat.lean,Mathlib/CategoryTheory/Bicategory/Functor/LocallyDiscrete.lean,Mathlib/CategoryTheory/Bicategory/Functor/Strict.lean,Mathlib/CategoryTheory/Bicategory/Opposite.lean,Mathlib/CategoryTheory/CommSq.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/CommSq.lean,Mathlib/CategoryTheory/Sites/Descent/DescentData.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataAsCoalgebra.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataDoublePrime.lean,Mathlib/CategoryTheory/Sites/Descent/DescentDataPrime.lean,Mathlib/CategoryTheory/Sites/Descent/IsPrestack.lean,Mathlib/CategoryTheory/Sites/Descent/IsStack.lean,Mathlib/CategoryTheory/Sites/Descent/ModuleCat.lean,Mathlib/CategoryTheory/Sites/Descent/PullbackStruct.lean 19 23 ['alreadydone', 'callesonne', 'chrisflav', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'yuma-mizuno'] nobody
84-64454
2 months ago
unknown
0-0
0 seconds
22366 kim-em
author:kim-em
feat: `check_equalities` tactic for diagnosing defeq problems The `check_equalities` tactic, which checks the typing of equalities in the goal, reporting discrepancies between the implicit type argument of the equality, and the inferred types of the left and right hand sides, at "instances and reducible" transparency. Reports from this tactic do not necessarily indicate a problem, although typically `simp` should reduce rather than increase the reported discrepancies. `check_equalities` may be useful in diagnosing uses of `erw`. t-meta please-adopt WIP 123/4 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/CheckEqualities.lean,Mathlib/Tactic/Common.lean,MathlibTest/check_equalities.lean 7 21 ['adomani', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'kim-em', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
81-37701
2 months ago
67-85558
67 days ago
32-12136
32 days
35588 eric-wieser
author:eric-wieser
chore(Util/Qq): remove `meta` These are wrappers of existing functions on `Expr`s which are also not marked `meta`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta awaiting-CI delegated 7/7 Mathlib/Data/Multiset/Sort.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Order/ToInt.lean,Mathlib/Tactic/Simproc/Divisors.lean,Mathlib/Tactic/Simproc/FinsetInterval.lean,Mathlib/Util/Qq.lean 7 3 ['Vierkantor', 'github-actions', 'mathlib-bors'] nobody
80-15387
2 months ago
98-13323
98 days ago
0-35325
9 hours
14603 awueth
author:awueth
feat: degree is invariant under graph isomorphism --- Mathlib has the definition `SimpleGraph.Iso.mapNeighborSet` which is an equivalence between neighbor sets induced by an isomorphism. Would it be beneficial to add the same equivalence for `neighborFinset`? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-combinatorics new-contributor 24/0 Mathlib/Combinatorics/SimpleGraph/Map/Finite.lean 1 12 ['SnirBroshi', 'awueth', 'github-actions', 'jcommelin', 'kim-em', 'urkud'] nobody
79-23928
2 months ago
655-70767
655 days ago
31-44440
31 days
9605 davikrehalt
author:davikrehalt
feat(Data/Finset & List): Add Lemmas for Sorting and Filtering This PR includes several useful lemmas to the Data/Finset and Data/List modules in Lean's mathlib: 1. `toFinset_filter` (List): Shows that filtering commutes with toFinset. 2. `toFinset_is_singleton_implies_replicate` (List): Shows a list with a singleton toFinset is a List.replicate. 3. `filter_sort_commute` (Finset): Sorting and filtering can be interchanged in Finsets. 4. `Sorted.filter` (List): A sorted list stays sorted after filtering. 5. `Sorted.append_largest` (List): Appending the largest element keeps a list sorted. 6. `sort_monotone_map` (Finset): Relates sorting of a Finset after mapping to sorting of a list. 7. `sort_insert_largest` (Finset): Sorting a Finset with an inserted largest element. 8. `sort_range` (Finset): Sorting a range in a Finset equals the corresponding range list. 9. ~~`filter_eval_true` (List): Filtering a list with a predicate always true keeps the list unchanged.~~ 10. ~~`filter_eval_false` (List): Filtering with an always-false predicate gives an empty list.~~ 11. ~~`pairwise_concat` (List): Iff condition for Pairwise relation in concatenated lists (similar to pairwise_join).~~ 12. `list_map_toFinset` (Finset): toFinset commutes with map under injection --- - [x] depends on: #15952 This is my first PR to mathlib, so I'm not too familiar with etiquette's and more specifically there are two proofs in the PR which uses aesop, and I am not sure if it's frowned upon. I kept the aesop in there for now as I couldn't construct very short proofs otherwise. The sort_range function proof was suggested in https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Computing.20Finset.20sort.20of.20Finset.20range/near/410346731 by Ruben Van de Velde. Thanks for your time for improving this PR. please-adopt t-data new-contributor merge-conflict awaiting-author 71/0 Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/List/Sort.lean 4 30 ['YaelDillies', 'davikrehalt', 'eric-wieser', 'github-actions', 'jcommelin', 'urkud', 'vihdzp'] nobody
79-6821
2 months ago
858-64709
858 days ago
12-48883
12 days
10332 adri326
author:adri326
feat(Topology/Sets): define regular open sets and their boolean algebra Introduces a new module, `Mathlib.Topology.Sets.RegularOpens`, which defines the `IsRegularOpen s` predicate (`interior (closure s) = s`) and `TopologicalSpace.RegularOpens`, the type of bundled regular open sets (defined as `Heyting.Regular (Opens X)`). A few properties of regular open sets (bundled and unbundled) and `interior (closure s)` are proven, and a pointwise instance of `MulAction` is provided for regular open sets. --- This PR belongs to my series of PRs around my formalization of Rubin's theorem. There are two possible ways to implement `RegularOpens`: - either construct them by hand and show that they form a boolean algebra (better def-eq but more boilerplate code required) - or use `Heyting.Regular` on the heyting algebra of `Opens` inherited from the `Frame` instance on them I first chose to use the former approach, but using the latter cuts the length of the construction of the boolean algebra of regular open sets by 100 lines of code, and allows us to inherit all of the helper lemmas defined for `Heyting.Regular`. The big downside, though, is that an element of `RegularOpens` isn't defined as a bundled regular open set anymore, but rather as an `Opens` set `s` for which `Opens.interior ↑(Opens.interior ↑sᶜ)ᶜ = s`, so I added an alternative constructor `RegularOpens.of` that instead accepts any set `s` for which `IsRegularOpen s` holds. Another minor downside is that coercion to a set takes two coercions instead of one. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-topology 434/0 Mathlib.lean,Mathlib/Data/Set/Pointwise/SMul.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/Sets/RegularOpens.lean,docs/references.bib 5 1 ['adri326'] nobody
79-6788
2 months ago
842-76629
842 days ago
0-1135
18 minutes
16801 awainverse
author:awainverse
feat(ModelTheory/Equivalence): The quotient type of formulas modulo a theory Defines `FirstOrder.Language.Theory.Formula`: `T.Formula α` is the quotient of `L.Formula α` by equivalence modulo a theory `T`. Puts a boolean algebra instance on `T.Formula α`, with `≤` corresponding to implication. --- - [x] depends on: #16799 - [x] depends on: #16800 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict awaiting-author t-logic 174/60 Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/Equivalence.lean,Mathlib/ModelTheory/Types.lean 3 30 ['YaelDillies', 'awainverse', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'metinersin'] nobody
76-68195
2 months ago
575-2426
575 days ago
29-26213
29 days
22314 shetzl
author:shetzl
feat: add leftmost derivations for context-free grammars Leftmost derivations are often easier to reason about than arbitrary derivations. This PR adds leftmost variants of Rewrites, Produces and Derives to the existing definition of context-free grammars and proves that a string of terminals can be derived iff it can be leftmost derived. Co-authored-by: Tobias Leichtfried --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-computability awaiting-author new-contributor 383/0 Mathlib.lean,Mathlib/Computability/LeftmostDerivation.lean 2 55 ['YaelDillies', 'github-actions', 'madvorak', 'mathlib4-merge-conflict-bot', 'shetzl'] nobody
76-68171
2 months ago
386-5067
386 days ago
72-2714
72 days
37232 mathlib-splicebot
author:mathlib-splicebot
chore(Algebra/Order): bound on `|n / m|ₘ` and `|n - m|` This PR was automatically created from PR #34722 by @GrigorenkoPV via a [review comment](https://github.com/leanprover-community/mathlib4/pull/34722#discussion_r2996870566) by @Vierkantor. t-algebra delegated
label:t-algebra$
5/0 Mathlib/Algebra/Order/Group/Unbundled/Abs.lean 1 6 ['Vierkantor', 'bryangingechen', 'github-actions', 'mathlib-bors'] nobody
64-48373
2 months ago
64-60806
64 days ago
0-588
9 minutes
37432 mariainesdff
author:mariainesdff
feat(Algebra/BigOperators/NatAntidiagonal): add ofAdd_antidiagonal Co-authored by: @xgenereux. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra awaiting-author
label:t-algebra$
27/0 Mathlib/Algebra/BigOperators/NatAntidiagonal.lean 1 2 ['dagurtomas', 'github-actions'] dagurtomas
assignee:dagurtomas
39-10427
1 month ago
50-58185
50 days ago
9-25258
9 days
18551 joelriou
author:joelriou
feat(AlgebraicGeometry): the algebraic De Rham complex If `B` is an `A`-algebra, we construct the algebraic De Rham complex of `B` over `A`: it is a cochain complex of `A`-modules. --- - [ ] depends on: #18735 - [ ] depends on: #18662 - [ ] depends on: #26464 - [ ] depends on: #26465 - [x] depends on: #18534 - [x] depends on: #18440 - [x] depends on: #18432 - [x] depends on: #18408 - [x] depends on: #18389 - [x] depends on: #18374 - [x] depends on: #18359 - [x] depends on: #18332 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP t-algebra blocked-by-other-PR merge-conflict t-algebraic-geometry
label:t-algebra$
2836/156 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/Cokernel.lean,Mathlib/Algebra/Module/Presentation/Differentials.lean,Mathlib/Algebra/Module/Presentation/DirectSum.lean,Mathlib/Algebra/Module/Presentation/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Algebra/Module/Presentation/RestrictScalars.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/DeRham/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean 26 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
17-64838
17 days ago
unknown
0-0
0 seconds
32305 faenuccio
author:faenuccio
feat: define Sobolev Spaces Nothing to see yet. --- - [x] depends on: #32250 - [x] depends on: #31809 - [ ] depends on: #39217 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP t-analysis large-import 2487/53 Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Distribution/WeakDeriv.lean,Mathlib/Analysis/FunctionalSpaces/Sobolev/Basic.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean 7 8 ['ADedecker', 'faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] nobody
17-42360
17 days ago
179-80675
179 days ago
0-2
2 seconds
39371 fpvandoorn
author:fpvandoorn
feat: tag lemmas with compactness and closedness --- - [ ] depends on: #39370 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 190/11 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean 13 2 ['github-actions', 'mathlib-dependent-issues'] nobody
15-57143
15 days ago
15-71414
15 days ago
0-1
1 second
39382 fpvandoorn
author:fpvandoorn
feat: add some lemmas that closures of some sets are compact * Also tag them with `closedness`/`compactness`. * This can be refactored to use `RelativelyCompact` once we define that notion. * Note: this is only equivalent to `IsBounded` in `ProperSpace`. It is equivalent to `@IsBounded _ (inCompact X) s` in a T2-space, but the latter thing is cumbersome to write. --- - [ ] depends on: #39371 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 265/11 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean 14 2 ['github-actions', 'mathlib-dependent-issues'] nobody
15-53054
15 days ago
15-67154
15 days ago
0-359
5 minutes
22925 ggranberry
author:ggranberry
feat(Mathlib/PlaceHolder/ToeplitzHausdorff): Toeplitz-Hausdorff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) WIP new-contributor will-close-soon awaiting-author help-wanted t-analysis 411/0 Mathlib/PlaceHolder/ToeplitzHausdorff.lean,Mathlib/PlaceHolder/ToeplitzHausdorff_v2.lean 2 16 ['AntoineChambert-Loir', 'faenuccio', 'ggranberry', 'github-actions', 'vihdzp'] faenuccio
assignee:faenuccio
14-80565
14 days ago
438-72074
438 days ago
3-8649
3 days
39325 mcdoll
author:mcdoll
feat(FunProp): tag integrableOn Add tags so that `fun_prop` can prove `IntegrableOn` Done at 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/) t-measure-probability awaiting-author 108/12 Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,MathlibTest/FunProp.lean 3 4 ['fpvandoorn', 'github-actions'] nobody
14-41321
14 days ago
14-56387
14 days ago
0-1567
26 minutes
7873 astrainfinita
author:astrainfinita
perf: reorder `extends` and change instance priority in algebra hierarchy There are no strict rules, but in general `Cancel` is dropped first, then `Comm`, then `Neg / Inv`, then `Assoc`. Not sure if there's a better way. An important goal is to search for `Zero/One/Add/Mul` instances first along `Zero/One/Add/Mul` -> ... -> `Ring` -> `CommRing` -> `Field`. --- - [ ] depends on: #14712 - [x] depends on: #16638 - [ ] depends on: #18464 - [ ] depends on: #18468 - [ ] depends on: #18470 - [ ] depends on: #18472 - [ ] depends on: #18474 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict slow-typeclass-synthesis t-algebra blocked-by-other-PR
label:t-algebra$
494/204 Archive/Imo/Imo1998Q2.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Associated.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/GroupWithZero/Semiconj.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Multiplier.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/CategoryTheory/Preadditive/SingleObj.lean,Mathlib/CategoryTheory/Triangulated/Functor.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Rat/Denumerable.lean,Mathlib/Data/Real/ENatENNReal.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/Init/ZeroOne.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean,Mathlib/MeasureTheory/Decomposition/Jordan.lean,Mathlib/MeasureTheory/Decomposition/SignedLebesgue.lean,Mathlib/NumberTheory/ArithmeticFunction.lean,Mathlib/NumberTheory/LegendreSymbol/GaussEisensteinLemmas.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/NumberTheory/Zsqrtd/QuadraticReciprocity.lean,Mathlib/Order/Filter/Germ.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/Ideal/IsPrincipal.lean,Mathlib/RingTheory/Ideal/LocalRing.lean,Mathlib/RingTheory/Ideal/Norm.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/MvPolynomial/Symmetric.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Tactic/Positivity/Core.lean 104 84 ['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'kim-em', 'leanprover-bot', 'mattrobball'] nobody
13-50866
13 days ago
685-64477
685 days ago
3-36575
3 days
39370 fpvandoorn
author:fpvandoorn
feat: add specialized grind sets This adds two grind attributes for specialized tactics. See module doc for more information and motivation. This PR does not tag any lemmas yet. [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/small.20specialized.20grind.20sets/with/595132109) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 113/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean 4 5 ['chenson2018', 'fpvandoorn', 'github-actions'] dwrensha
assignee:dwrensha
11-72783
11 days ago
15-71459
15 days ago
15-71421
15 days
31587 JovanGerb
author:JovanGerb
Lean pr testing 11156 Testing the performance improvement given by not deleting cache so often when modifying the environment. cf. https://github.com/leanprover/lean4/pull/11156 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict WIP 5932/1306 .github/workflows/build_template.yml,Archive/Examples/IfNormalization/Result.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2024Q6.lean,Cache/IO.lean,Counterexamples/Phillips.lean,Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/AlgCat/Limits.lean,Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/Grp/AB.lean,Mathlib/Algebra/Category/Grp/Adjunctions.lean,Mathlib/Algebra/Category/Grp/Biproducts.lean,Mathlib/Algebra/Category/Grp/Colimits.lean,Mathlib/Algebra/Category/Grp/LargeColimits.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Category/Grp/Yoneda.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Biproducts.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/LeftResolution.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Adjunction.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafification.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/Category/ModuleCat/Stalk.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/MonCat/Yoneda.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Category/Ring/Under/Basic.lean,Mathlib/Algebra/Category/Ring/Under/Limits.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Nat/Even.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/Algebra/Homology/Additive.lean,Mathlib/Algebra/Homology/AlternatingConst.lean,Mathlib/Algebra/Homology/Augment.lean,Mathlib/Algebra/Homology/Bifunctor.lean,Mathlib/Algebra/Homology/BifunctorAssociator.lean,Mathlib/Algebra/Homology/BifunctorHomotopy.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/CochainComplexOpposite.lean,Mathlib/Algebra/Homology/CochainComplexPlus.lean,Mathlib/Algebra/Homology/CommSq.lean,Mathlib/Algebra/Homology/ComplexShape.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/ExactFunctor.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughInjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExactSequences.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/ExtClass.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/HomologySequence.lean,Mathlib/Algebra/Homology/DerivedCategory/KInjective.lean,Mathlib/Algebra/Homology/DerivedCategory/KProjective.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/DerivedCategory/TStructure.lean 1425 5 ['JovanGerb', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] nobody
11-37814
11 days ago
197-71802
197 days ago
0-13411
3 hours
39383 fpvandoorn
author:fpvandoorn
fix: use notation3 more * `notation3` is better at generating delaborators in the presence of implicit arguments, other notation and some other complications. * I explicitly tested that each change was not correctly pretty-printed before, but now is. * Add spaces around the global notation `^+` (that maybe shouldn't be global at all?) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) delegated 21/21 Mathlib/Algebra/Ring/Action/Submonoid.lean,Mathlib/Analysis/RCLike/Inner.lean,Mathlib/Data/Sum/Order.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/Marginal.lean,Mathlib/MeasureTheory/OuterMeasure/AE.lean,Mathlib/Order/InitialSeg.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 10 4 ['github-actions', 'j-loreaux', 'mathlib-bors'] nobody
10-57119
10 days ago
10-57119
10 days ago
5-8227
5 days
36709 kim-em
author:kim-em
feat(DefEqAbuse): suggest minimal @[implicit_reducible] workaround This PR extends `#defeq_abuse` to suggest a minimal set of `@[implicit_reducible]` annotations that would make the failing tactic or command succeed with `backward.isDefEq.respectTransparency true`. When `#defeq_abuse` detects a failure, it now runs a greedy minimisation over semireducible definitions reachable from the goal/command, finding a (possibly non-unique) minimal subset that, when temporarily marked `@[implicit_reducible]`, fixes the issue. The result is reported as an `info` message: ``` info: Workaround: the following @[implicit_reducible] annotations (a possibly non-unique minimal set) would paper over this problem, but the real issue is likely a leaky instance somewhere. set_option allowUnsafeReducibility true attribute [implicit_reducible] MyPred ``` This is a workaround, not a fix — the real cause is usually a leaky instance (which `#check_instance` from https://github.com/leanprover-community/mathlib4/pull/36706 can diagnose). But it can be useful for quick debugging. New helpers: `collectCandidates`, `markImplicitReducible`, `withTempImplicitReducible`, `withTempImplicitReducibleCmd`, `suggestAnnotationsTac`, `suggestAnnotationsCmd`, `formatAnnotations`, `logAnnotationSuggestions`. 🤖 Prepared with Claude Code t-meta LLM-generated 187/17 Mathlib/Tactic/DefEqAbuse.lean,MathlibTest/DefEqAbuse.lean 2 6 ['github-actions', 'kim-em', 'mathlib-merge-conflicts', 'thorimur'] JovanGerb
assignee:JovanGerb
9-36109
9 days ago
32-2129
32 days ago
49-302
49 days
29855 eric-wieser
author:eric-wieser
chore(Data/Finset/Sort): lemmas about `0 : Fin _` and `Fin.last _` We already had these for `⟨0, ⋯⟩` and `⟨k - 1, ⋯⟩`. Moves: - `Finset.orderEmbOfFin_zero` -> `Finset.orderEmbOfFin_mk_zero` - `Finset.orderEmbOfFin_last` -> `Finset.orderEmbOfFin_mk_last` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-order delegated easy merge-conflict 17/7 Mathlib/Combinatorics/Enumerative/Composition.lean,Mathlib/Data/Finset/Sort.lean 2 5 ['eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] nobody
6-85707
6 days ago
247-3033
247 days ago
3-79002
3 days
16074 Rida-Hamadani
author:Rida-Hamadani
feat: combinatorial maps and planar graphs We define combinatorial maps, then we define planar graph using combinatorial maps. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict t-combinatorics 243/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Planar.lean,Mathlib/Data/CombinatorialMap.lean 3 30 ['MrBrain295', 'Parcly-Taxel', 'Rida-Hamadani', 'github-actions', 'lambda-fairy', 'leanprover-community-bot-assistant'] kmill
assignee:kmill
4-30671
4 days ago
329-27104
329 days ago
72-50365
72 days
37073 kim-em
author:kim-em
feat: add wrap_instance% using core's wrapInstance This PR adds a new `wrap_instance%` term elaborator that delegates to Lean core's `wrapInstance` (from https://github.com/leanprover/lean4/pull/12897), and replaces ~53 `fast_instance%` call sites where the replacement is safe. `wrap_instance%` is a thin wrapper (~15 lines) around `Lean.Meta.wrapInstance`. Like `fast_instance%`, it reduces instances to constructor applications and reuses canonical sub-instances. Unlike `fast_instance%`, it works at `instances` transparency and delegates all normalization logic to core. The replaced sites cover: - Equiv/type-alias transfers (WithAbs, WithConv, WithVal, WithLp, TransferInstance) - Surjective constructors (Con, RingCon quotients, module congruences) - DFunLike leaf instances (MultilinearMap, ContinuousMultilinearMap, AlternatingMap, Intertwining) - Quotient instances (LinearAlgebra/Quotient/Defs) - inferInstanceAs% sites (StandardPart, Presentation/Core) - Miscellaneous (InfiniteAdeleRing, ZMod) This PR *doesn't* attempt to replace all `fast_instance%`; it gets more complicated! 🤖 Prepared with Claude Code 88/59 Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/Algebra/WithConv.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/Tactic/FastInstance.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 16 8 ['JovanGerb', 'github-actions', 'kim-em', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-60051
2 days ago
2-60088
2 days ago
32-49788
32 days
36706 kim-em
author:kim-em
feat(Tactic/FastInstance): warn when a synthesized sub-instance has leaky binder types This PR adds a warning to `fast_instance%` and `inferInstanceAs%` when they encounter a synthesized sub-instance that has leaky data-field binder types. When `fast_instance%` recursively normalizes a class instance, it uses `trySynthInstance` to find canonical sub-instances. If a found sub-instance is not canonical at instances transparency (i.e., its internal lambda binder types reference an unexpanded type alias instead of the target carrier), the tool now emits a warning: ``` fast_instance%: 'leakySub' (for SubClass MyNat) has leaky data-field binder types, which may cause `isDefEq` failures at instances transparency (e.g. in `grind`). Consider redefining it with `fast_instance%` or `inferInstanceAs%`. To suppress: `set_option Elab.fast_instance.warnLeakySubInstances false` ``` The leakiness check uses `withDisabledInstance` to temporarily evict the sub-instance from the discrimination tree (preventing trivial self-match via `trySynthInstance`), then compares against the canonical form at instances transparency. A `warnLeaky` parameter propagates through recursive calls to prevent nested warnings. The warning is suppressed via `set_option Elab.fast_instance.warnLeakySubInstances false`. - [ ] depends on: #36701 🤖 Prepared with Claude Code t-meta blocked-by-other-PR LLM-generated 410/20 Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/Basic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/DefEqAbuse.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/CheckInstance.lean,MathlibTest/DefEqAbuse.lean,MathlibTest/InferInstanceAsPercent.lean 10 9 ['Vierkantor', 'eric-wieser', 'github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] Vierkantor
assignee:Vierkantor
2-57122
2 days ago
75-30429
75 days ago
0-1003
16 minutes
39155 mathlib-nolints
author:mathlib-nolints
chore: lake shake --add-public --keep-implied --keep-prefix --fix I am happy to shake some imports for you! **398 files changed** · +441 imports added · -368 imports removed --- [workflow run for this PR](https://github.com/leanprover-community/mathlib4/actions/runs/26372005521) [explain.txt](https://github.com/leanprover-community/mathlib4/actions/runs/26372005521/artifacts/7188182767) large-import merge-conflict 441/368 Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/Category/MonCat/Colimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Submonoid/Saturation.lean,Mathlib/Algebra/Group/Submonoid/Support.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/MapBijective.lean,Mathlib/Algebra/Homology/HomologicalComplexAbelian.lean,Mathlib/Algebra/Homology/ModelCategory/Injective.lean,Mathlib/Algebra/Homology/ModelCategory/Lifting.lean,Mathlib/Algebra/Lie/CartanCriterion.lean,Mathlib/Algebra/LinearRecurrence.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/Algebra/Module/Submodule/Invariant.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MvPolynomial/Cardinal.lean,Mathlib/Algebra/MvPolynomial/Division.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/NonAssoc/PreLie/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/Algebra/Order/Archimedean/Submonoid.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Field/Pointwise.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Order/SuccPred.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Regular/Defs.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/Finite.lean,Mathlib/AlgebraicGeometry/Morphisms/FlatRank.lean,Mathlib/AlgebraicGeometry/Morphisms/SchemeTheoreticallyDominant.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyClosed.lean,Mathlib/AlgebraicGeometry/Morphisms/WeaklyEtale.lean,Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicGeometry/RationalMap.lean,Mathlib/AlgebraicGeometry/Sites/AffineEtale.lean,Mathlib/AlgebraicTopology/SimplicialCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/CStarAlgebra/Projection.lean,Mathlib/Analysis/Calculus/DerivativeTest.lean,Mathlib/Analysis/Calculus/FDeriv/Affine.lean,Mathlib/Analysis/Calculus/FDeriv/OfCompLeft.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/FDeriv.lean,Mathlib/Analysis/Calculus/LogDeriv.lean,Mathlib/Analysis/Complex/CanonicalDecomposition.lean,Mathlib/Analysis/Complex/Harmonic/Liouville.lean,Mathlib/Analysis/Complex/Harmonic/Poisson.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/RiemannMapping.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Manifold.lean,Mathlib/Analysis/ConstantSpeed.lean,Mathlib/Analysis/Convex/Approximation.lean,Mathlib/Analysis/Convex/FunctionTopology.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/Normed/Module/Complemented.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/RCLike/ContinuousMap.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/PoissonSummation.lean,Mathlib/Analysis/SpecialFunctions/Integrals/LogTrigonometric.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/ChebyshevGauss.lean,Mathlib/Analysis/SpecificLimits/RCLike.lean,Mathlib/CategoryTheory/Abelian/Preradical/Colon.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Widesubcategory.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Jointly.lean,Mathlib/CategoryTheory/Limits/Constructions/WidePullbackOfTerminal.lean 398 31 ['JovanGerb', 'MichaelStollBayreuth', 'bryangingechen', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-33518
2 days ago
5-50645
5 days ago
5-74717
5 days
36701 kim-em
author:kim-em
feat(DefEqAbuse): detect and report leaky instance binder types This PR adds `#check_instance` and `checkInstance` to `Mathlib/Tactic/FastInstance.lean` to diagnose individual instances for leaky data-field binder types, and integrates this into `#defeq_abuse` so it automatically reports leaky instances. A new `withDisabledInstance` helper temporarily evicts an instance from the discrimination tree (via `Attribute.erase` + `withoutModifyingEnv`), allowing `makeFastInstance` to compute the canonical form without `trySynthInstance` trivially finding the instance being checked. `#defeq_abuse` now checks instances used in the failing goal/command for leakiness and reports them alongside the isDefEq failure diagnostics. **Example: `#check_instance`** ```lean def MyNat := ℕ -- Without fast_instance%, the `add` field has binder type ℕ rather than MyNat. instance leakyAdd : Add MyNat := ⟨Nat.add⟩ #check_instance leakyAdd -- ❌ 'leakyAdd': leaky binder types detected. -- The data field `add` has binder type ℕ where MyNat is expected. -- The `fast_instance%` elaborator may be useful as a repair or band-aid: -- `instance : ... := fast_instance% ` instance fixedAdd : Add MyNat := fast_instance% ⟨Nat.add⟩ #check_instance fixedAdd -- ✅ 'fixedAdd': canonical (re-inferred form agrees at instances transparency) ``` 🤖 Prepared with Claude Code LLM-generated awaiting-author t-meta 305/16 Mathlib/Tactic/DefEqAbuse.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/CheckInstance.lean,MathlibTest/DefEqAbuse.lean 4 55 ['JovanGerb', 'Vierkantor', 'eric-wieser', 'github-actions', 'kim-em', 'mathlib-merge-conflicts', 'ocfnash'] Vierkantor
assignee:Vierkantor
2-4225
2 days ago
67-63092
67 days ago
6-60386
6 days
20459 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: fix names of roots_C_mul_X_{add,sub}_C_of_IsUnit --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-author t-algebra merge-conflict
label:t-algebra$
11/5 Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Roots.lean 2 3 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
1-52389
1 day ago
506-67277
506 days ago
4-64422
4 days
39475 ADedecker
author:ADedecker
feat: define LinearMap.QuasiInverse If the name "QuasiInverse" is considered too vague, I am open to suggestions. This was written by @PatrickMassot and @CoolRmal at the May 2026 ICERM workshop as part of the project on Fredholm operators. --- - [x] depends on: #39468 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra delegated
label:t-algebra$
158/1 Mathlib/Algebra/Module/LinearMap/FiniteRange.lean 1 4 ['ADedecker', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'ocfnash'] nobody
1-3797
1 day ago
1-5157
1 day ago
3-62679
3 days
25473 adomani
author:adomani
feat(CI): check that Mathlib files have lean or md extension Twice recently there have been files with an "intended" `.lean` extension in `Mathlib/`: * #24942, ending in `;lean`; * #25457, ending in `.Lean`. `mk_all` does not add these files to `Mathlib.lean`, since they do not end in `.lean` and this later causes problems. This CI step checks that all files in `Mathlib/` end with `.lean` or `.md`. See #25474 for a test where the new step [correctly fails](https://github.com/leanprover-community/mathlib4/actions/runs/15464097783/job/43532018379?pr=25474). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI delegated 10/0 .github/workflows/lint_and_suggest_pr.yml 1 10 ['adomani', 'bryangingechen', 'github-actions', 'grunweg', 'mathlib-bors'] nobody
0-83911
23 hours ago
358-82130
358 days ago
0-10728
2 hours
39770 mathlib-splicebot
author:mathlib-splicebot
feat: atoms of a countably generated measurable space This PR adds a definition for the atoms in a countably generated measurable space, expressed with `natGeneratingSequence`. We also show that the atoms are measurable sets. --- This PR was automatically created from PR #39739 by @RemyDegenne via a [review comment](https://github.com/leanprover-community/mathlib4/pull/39739#discussion_r3294476245) by @RemyDegenne. t-measure-probability 121/0 Mathlib/MeasureTheory/MeasurableSpace/CountablyGenerated.lean 1 4 ['RemyDegenne', 'gaetanserre', 'github-actions'] EtienneC30
assignee:EtienneC30
0-36338
10 hours ago
5-82866
5 days ago
5-82828
5 days
39819 mathlib-splicebot
author:mathlib-splicebot
feat: variants of lemmas in CondJensen with a.e. inequalities for the trimmed measure This PR was automatically created from PR #35349 by @RemyDegenne via a [review comment](https://github.com/leanprover-community/mathlib4/pull/35349#discussion_r3298163528) by @RemyDegenne. t-measure-probability 34/0 Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean 1 1 ['github-actions'] EtienneC30
assignee:EtienneC30
0-36337
10 hours ago
4-82334
4 days ago
4-82296
4 days
39753 mathlib-splicebot
author:mathlib-splicebot
feat: the sigma-algebra generated by the constant indicator of a set is smaller than the one generated by the set This PR was automatically created from PR #37259 by @EtienneC30 via a [review comment](https://github.com/leanprover-community/mathlib4/pull/37259#discussion_r3292960152) by @EtienneC30. t-measure-probability 6/0 Mathlib/MeasureTheory/MeasurableSpace/MeasurablyGenerated.lean 1 2 ['EtienneC30', 'github-actions'] nobody
0-17546
4 hours ago
6-73862
6 days ago
6-74275
6 days
39771 kim-em
author:kim-em
feat(GroupTheory/PCore): define the `p`-core of a subgroup This PR adds `Subgroup.pCore p H`, the largest normal `p`-subgroup of a subgroup `H : Subgroup G` (classically `O_p(H)`), defined as the supremum of all normal `p`-subgroups. Even without finiteness or primality hypotheses, this is itself a normal `p`-group (the family of normal `p`-subgroups is directed under `≤`, so every element of the supremum lies in some specific summand). For the classical `O_p(G)`, take `pCore p (⊤ : Subgroup G)`. API covers the universal-property characterisations (`le_pCore`, `normal_le_pCore`, `mem_pCore_iff`, `pCore_eq_bot_iff`, `pCore_eq_top_iff`, `pCore_zero`, `pCore_one`), the Sylow alignment `pCore p H = ⨅ P : Sylow p H, (P : Subgroup H)`, and behaviour under group homomorphisms via `MonoidHom.subgroupMap` and `MonoidHom.subgroupComap` (`map_pCore_le_pCore`, `comap_pCore_eq_pCore` and friends, `MulEquiv.map_pCore`). Also adds `Subgroup.normal_iSup_normal` in `Mathlib/Algebra/Group/Subgroup/Pointwise.lean` (the supremum of a family of normal subgroups is normal) as the sibling of the existing `normal_iInf_normal`, and `ker_subgroupComap` in `Mathlib/Algebra/Group/Subgroup/Ker.lean` alongside the existing `ker_subgroupMap`. Both marked `@[to_additive]`. Used downstream in [leanprover/lean-eval#311](https://github.com/leanprover/lean-eval/pull/311) to state the Baer-Suzuki theorem as a [lean-eval](https://lean-lang.org/eval) problem. 🤖 Prepared with Claude Code t-group-theory 272/0 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/GroupTheory/PCore.lean 4 15 ['SnirBroshi', 'Whysoserioushah', 'adomani', 'github-actions', 'kim-em', 'tb65536'] tb65536
assignee:tb65536
0-1689
28 minutes ago
5-1038
5 days ago
5-3767
5 days
39888 adomani
author:adomani
ci(decls-diff): post-build workflow that emits a Lean-aware diff into the step summary Stage 2 of the Lean-aware declarations-diff feature. Stage 1 (#39880) made the producer side write `decls.txt` + `imports.json` into the `import-graph` artifact; this PR adds the consumer. ## What this PR adds A new `.github/workflows/decls-diff.yml` workflow that fires on `workflow_run` completion of the `ci` workflow (PR builds only), and: 1. Resolves the new commit's SHA and the merge-base against master. 2. Downloads the `import-graph` artifact from both sides — the triggering PR run, and the most recent master `ci` run at the merge-base. 3. Sparse-checks-out mathlib's local actions from `${{ github.workflow_sha }}` (the trusted base-branch ref), invokes `get-mathlib-ci`, and then calls leanprover-community/mathlib-ci's [`decls-diff` composite action](https://github.com/leanprover-community/mathlib-ci/pull/43) to compute the diff and render a Markdown body. 4. Writes the rendered diff to that run's `$GITHUB_STEP_SUMMARY`. If the master-side artifact isn't found for the merge-base (a bors-batch-intermediate cache miss), the step summary gets an explanatory message instead and no further work runs. ## Stage-2 scope: step summary only There's no `### PR summary` comment patching here. That behaviour ships in stage 3 along with the patcher script. Stage 2 lets reviewers evaluate the rendering quality without us touching PR comments under the bot's identity. ## Security notes * `Checkout local actions` sparse-checks-out `.github/actions/` from `${{ github.workflow_sha }}` into `workflow-actions/`, so `Get mathlib-ci` resolves against the trusted base-branch copy of the action rather than the PR-branch copy. Same pattern as `build_template.yml`'s `build` job and the `post_steps` `Get mathlib-ci` step added to #39880. * Cross-repo `decls-diff` action is SHA-pinned to the mathlib-ci PR's branch HEAD (`5802cc4c1d`); `update_dependencies.yml` will roll it forward to the merged-master SHA once leanprover-community/mathlib-ci#43 lands. * `permissions:` is read-only (`contents: read` for the checkout, `actions: read` for cross-workflow artifact downloads); no write tokens flow to consumers. * Artifact contents are treated as data — fed to `comm`/`sort`/`sed`/`printf` and emitted verbatim into the step summary. Never executed, never path-interpreted. ## Dependencies * leanprover-community/mathlib-ci#43 (companion PR; adds the action this workflow invokes). 🤖 Generated with [Claude Code](https://claude.com/claude-code) CI LLM-generated 122/0 .github/workflows/decls-diff.yml 1 3 ['bryangingechen', 'github-actions'] nobody
0-688
11 minutes ago
3-49271
3 days ago
3-49233
3 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 awaiting-author 10/0 .github/workflows/build_template.yml 1 3 ['adomani', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
0-225
3 minutes ago
0-83177
23 hours ago
2-54813
2 days

PRs with non-conforming titles

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
36503 Mrigna01
author:Mrigna01
Add false theorem test file --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 135/0 Mathlib/FalseBench/FalseTheorems.lean 1 3 ['github-actions'] nobody
79-42530
2 months ago
79-42620
79 days ago
79-42582
79 days
37281 AltSoKoly
author:AltSoKoly
Update EdgeConnectivity.lean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor awaiting-author 123/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Data/Int/GCD.lean 2 5 ['github-actions', 'grunweg', 'themathqueen'] nobody
51-74807
1 month ago
63-65570
63 days ago
0-432
7 minutes
37556 edwin1729
author:edwin1729
feat(Topology/Order): Locale.localePointOfSpacePoint if we have a Scott Topology from an Algebraic DCPO (3/4) in a series of PRs proving that "Scott Topologies over Algebraic DCPOs are Sober" We prove here that the unit of the adjunction from `TopCat` to `Locale` defined in `Topology/Order/Category/FrameAdjunction.lean` is a surjective mapping, under the following condition: The underlying TopologicalSpace must be a Scott Topology generated with an underlying Algebraic DCPO structure. - [ ] depends on: #37445 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor blocked-by-other-PR merge-conflict 393/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
32-42789
1 month ago
57-67289
57 days ago
0-1300
21 minutes
39229 grunweg
author:grunweg
dev: towards `fun_prop` on manifolds --- - [ ] depends on: #39226 Rebased version of #31580. Meant to be a prototype that demonstrate how this could possibly work. Not functional yet; waiting on cache to continue. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta merge-conflict 305/1 Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Tactic/FunProp/Core.lean,MathlibTest/DifferentialGeometry/FunPropM.lean,MathlibTest/fun_prop_dev.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
14-21110
14 days ago
18-34682
18 days ago
0-12
12 seconds
37010 pion2024
author:pion2024
`Sl2`update: add theorem `finrank_weightSpace_eq_one_of_isIrreducible` # Background: I am a 2nd year undergrad student in mathematics currently self-teaching Lie algebra and representation theory. Before starting the formalization, I searched for related keywords on Zulip and in the GitHub issues and commits. As far as I could tell, there were no existing results or ongoing attempts before I started. All feedback is welcome. Even a quick check on the statement design/an idea on the generalization (cf Limitations below) would be incredibly helpful. # Overview In this PR, I added the new section `IsAlgClosedIrreducible` which formalizes the well-known theorem `finrank_weightSpace_eq_one_of_isIrreducible` for the Lie algebra $\mathfrak{sl}_2$ step by step. It proves that for a finite-dimensional irreducible representation of $\mathfrak{sl}_2$ over an algebraically closed field $K$ of characteristic zero, every non-trivial weight space has a dimension of exactly 1. # Formalization Structure : Instead of relying on explicit finite sums (`Finset.sum`) and manipulating coefficients, I heavily leverage Mathlib's abstractions in Submodule Lattice Theory and Coordinate-free Linear Algebra. The formalization proceeds in the following logic: 1. Existence of a Primitive Vector (`exists_primitiveVector`): I construct a primitive (highest-weight) vector by showing that repeated applications of the raising operator $e$ must eventually yield zero due to the finite-dimensionality of $M$ and the linear independence of eigenvectors corresponding to distinct eigenvalues. 2. The span of $f$-Tower as a Lie Submodule equals to the whole space (`fTowerLieSubmodule_eq_top`): I define the $f$-tower submodule as the $K$-span of $\{f^k m \mid k \in \mathbb{N}\}$. By proving its closure under the action of $f, h$, and $e$, I establish it as a Lie submodule. Since $M$ is irreducible, this submodule must be the entire space ($\top$). 3. Submodule Lattice Operations (`exists_mem_fTower_of_weightSpace_ne_bot`): To prove that every weight in $M$ is of the form $\mu_0 - 2k$, I use lattice operations (iSup, inf, and Disjoint) to avoid element-wise tracking. Since the $f$-tower spans $M$, the supremum of its weight spaces is $\top$. By leveraging `Module.End.eigenspaces_iSupIndep`, I show that any arbitrary non-trivial weight space would have a trivial intersection with $\top$ if its weight didn't belong to the sequence, yielding a contradiction. 4. Dimension Calculation via Basis Equivalence (`finrank_weightSpace_eq_one_of_isIrreducible`): Finally, I construct a basis from the non-zero elements of the $f$-tower. To show the weight space is 1-dimensional, I use `Basis.equivFun` to compare coefficients algebraically. This avoids heavy manual indexing and index-shifting, proving that any vector in the weight space $\mu_0 - 2k$ is merely a scalar multiple of $f^k m$. # Use of AI: I used Gemini 3.1 Pro for tactics, theorems, improvement suggestions, and error explanations. I fully understand and can vouch for all the modifications I have made to the file. # Limitations: I only managed to formalize the finite-dimensional version, although the theorem also holds in the infinite-dimensional case. In the infinite case the existence of a primitive vector is not guaranteed. A quick search suggests that we might need heavy tools like Casimir operators and the universal enveloping algebra, which are totally beyond my current level. I am looking into it, but since there is a significant mathematical gap, I thought it would be best to get this finite-dimensional version merged first. new-contributor t-algebra large-import awaiting-author merge-conflict
label:t-algebra$
336/0 Mathlib/Algebra/Lie/Sl2.lean 1 11 ['github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash', 'pion2024'] ocfnash
assignee:ocfnash
12-3663
12 days ago
58-70700
58 days ago
2-57577
2 days
39605 Qinghev
author:Qinghev
Add docstrings for reversed range telescoping lemmas This PR adds docstrings for two existing Finset telescoping lemmas and their additive versions generated by `to_additive`: * `Finset.prod_range_div'` / `Finset.sum_range_sub'` * `Finset.eq_prod_range_div` / `Finset.eq_sum_range_sub` The goal is a small documentation-only contribution that makes the reversed range telescoping API easier to discover from search and hover docs. Local checks: * `git diff --check -- Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean` * Attempted `lake env lean Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean`, but local validation is currently blocked by downloading the `leanprover/lean4:v4.30.0-rc2` toolchain from GitHub timing out/connection-resetting on this machine. Opened as draft until the toolchain/network check can be completed or CI confirms the documentation-only change. t-algebra new-contributor
label:t-algebra$
8/2 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean 1 2 ['github-actions'] nobody
9-85645
9 days ago
9-85645
9 days ago
9-85607
9 days
39820 samuelchassot
author:samuelchassot
Add proof of the existence of an Eulerian walk if all vertices have even degree or if exactly vertices have odd degree As per the TODO open in `Trails.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 671/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Eulerian.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean 3 8 ['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions'] nobody
4-81047
4 days ago
4-82278
4 days ago
4-82240
4 days
38596 JJYYY-JJY
author:JJYYY-JJY
Add basic row-equivalence and echelon-form API for matrices This PR adds the first foundational slice of `Mathlib.LinearAlgebra.Matrix.Echelon`, a theorem-oriented API for elementary row operations, row-equivalence, and echelon-form predicates for matrices. The main additions are: * elementary row-scaling matrices and their `GL` versions; * `Matrix.RowEquivalent` for the left action of `GL m R` on rectangular matrices; * row-zero, pivot, echelon, and reduced-echelon predicates; * semantic representative predicates `Matrix.IsEchelonFormOf` and `Matrix.IsReducedEchelonFormOf`. This intentionally stops before row-space characterizations, existence and uniqueness of reduced echelon representatives, and the noncomputable canonical representative `Matrix.rref`; those are planned for later PRs. Co-authored-by: Joseph Qian Co-authored-by: Veer Shukla Co-authored-by: Dhruv Bhatia Co-authored-by: Zheng Wu <1036819072@qq.com> --- This update trims the original full row-reduction API in response to reviewer feedback that the PR was too large. It keeps only the foundation needed by later row-reduction and `rref` PRs. t-algebra new-contributor
label:t-algebra$
312/6 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Echelon.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean 3 10 ['JJYYY-JJY', 'SnirBroshi', 'copilot-pull-request-reviewer', 'dagurtomas', 'github-actions', 'wwylele'] nobody
2-16711
2 days ago
16-42637
16 days ago
24-18022
24 days
40020 kbuzzard
author:kbuzzard
wip --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
38/27 Mathlib/Algebra/Group/Pi/Basic.lean 1 4 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
0-68203
18 hours ago
0-69047
19 hours ago
0-69009
19 hours

PRs without an area label

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
35991 xroblot
author:xroblot
feat(RamificationInertia): decomposition field and inertia field of compositum --- - [ ] depends on: #35808 - [x] depends on: #35493 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict large-import 645/36 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean 9 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
79-47822
2 months ago
88-67223
88 days ago
0-316
5 minutes
34911 smmercuri
author:smmercuri
feat: idelic product formula --- - [x] depends on: #34915 - [x] depends on: #34918 - [x] depends on: #36184 - [x] depends on: #36204 - [ ] depends on: #36275 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 262/2 Mathlib.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 8 7 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
76-70159
2 months ago
113-435
113 days ago
0-10
10 seconds
36404 smmercuri
author:smmercuri
feat: the adele ring of a number field is locally compact --- - [ ] depends on: #30579 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import merge-conflict 539/113 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/LiesOverInstances.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/RamificationInertia/Valuation.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 10 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
70-10216
2 months ago
81-63766
81 days ago
0-264
4 minutes
36733 xroblot
author:xroblot
feat(RamificationInertia): decomposition field and inertia field of subfields If `D` (resp. `E`) is the decomposition (resp. inertia) field of `P` in `L/K` and `F` is a subextension, then the decomposition (resp. inertia) field of the prime of `F` below `P` in `F/K` is` D ⊓ F` (resp. `E ⊓ F`). --- - [ ] depends on: #36544 - [ ] depends on: #35991 - [x] depends on: #36391. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 818/31 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/NumberTheory/RamificationInertia/Inertia.lean,Mathlib/NumberTheory/RamificationInertia/Ramification.lean,Mathlib/RingTheory/Ideal/Galois.lean 13 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
49-47365
1 month ago
74-75780
74 days ago
0-48
48 seconds
38193 Jun2M
author:Jun2M
feat(Topology/Algebra/InfiniteSum): Deprecate generalized ENNReal lemmas Following the PR #38489, this PR add deprecated tags to the original `ENNReal` lemmas and change the transitive children files to use the generalized lemmas rather than the deprecated lemmas. Related Zulip thread: [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/588756615) --- - [ ] depends on: #38489 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 483/329 Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/Measure/Content.lean,Mathlib/MeasureTheory/Measure/Count.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasuredSets.lean,Mathlib/MeasureTheory/Measure/MutuallySingular.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/RegularityCompacts.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/Measure/Tight.lean,Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/MeasureTheory/OuterMeasure/Caratheodory.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/MeasureTheory/OuterMeasure/OfAddContent.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/NumberTheory/Transcendental/Liouville/Measure.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Kernel/WithDensity.lean,Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Constructions.lean,Mathlib/Probability/ProbabilityMassFunction/Monad.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Semicontinuity/Basic.lean 52 4 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
33-59685
1 month ago
35-40329
35 days ago
6-13863
6 days
38316 tannerduve
author:tannerduve
feat(Order/OmegaCompletePartialOrder): least fixed point and Scott induction Adds `ContinuousHom.lfp` for endomorphisms on an ωCPO with `⊥`, as the `ωSup` of the iterate chain from `⊥`, together with `map_lfp`, `isFixedPt_lfp`, `lfp_le_fixed`, `isLeast_lfp`, and the Scott induction theorem `lfp_induction` (specialized from a more general seed-based `ωSup_iterate_induction`). For `Part.fix`, adds: * `Part.exists_mem_approx_of_mem_fix`: if `y ∈ Part.fix g x`, some finite approximation of `g` already contains `y`. * `Part.Fix.approx_eq_iterate_bot` and `Part.Fix.approxChain_eq_iterateChain`: bridges between `Fix.approx`/`approxChain` and `f^[n] ⊥`/`iterateChain`. * `Part.fix_eq_lfp`: `Part.fix g = ContinuousHom.lfp (.ofFun g hc)` when `g` is ω-Scott continuous. * `Part.fix_scott_induction`: Scott induction specialized to `Part.fix`. * `Part.fix_induction_mem`: membership induction on `Part.fix`, derived from `fix_scott_induction`. new-contributor 114/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
27-62062
27 days ago
39-38164
39 days ago
39-38652
39 days
37023 xroblot
author:xroblot
feat(NumberTheory/NumberField): linear disjointness from coprime discriminants The key new result is `dvd_discr_iff_dvd_discr_normalClosure`: a prime `p` divides `discr K` if and only if it divides the discriminant of the normal closure of `K` over `ℚ`. Thanks to this result, we generalize `linearDisjoint_of_isGalois_isCoprime_discr` by removing the Galois hypothesis: if K₁ and K₂ are number fields with coprime discriminants, then they are linearly disjoint over ℚ. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #36843 - [ ] depends on: #30666 merge-conflict blocked-by-other-PR 1575/57 Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/TransferInstance.lean,Mathlib/Algebra/Ring/Int/Field.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/FieldTheory/IntermediateField/ExtendTop.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Ideal/Galois.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean 24 1 ['mathlib-dependent-issues'] nobody
22-59657
22 days ago
68-10506
68 days ago
0-83
1 minute
38489 Jun2M
author:Jun2M
feat(Topology/Algebra/InfiniteSum): Generalize ENNReal lemmas This PR generalizes many theorems in Topology/Algebra/InfiniteSum/ENNReal.lean from `ENNREal` to any type that satisfies a list of order-related instances, mostly `[CommMonoid α] [CompleteLattice α] [CanonicallyOrderedMul α] [TopologicalSpace α] [SupConvergenceClass α]` Deprecation of the original `ENNReal` lemmas are done in the next PR: #38193. Related Zulip thread: [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/588756615) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 261/3 Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 4 7 ['Jun2M', 'SnirBroshi', 'github-actions', 'wwylele'] nobody
19-49043
19 days ago
19-49120
19 days ago
35-39127
35 days
39163 j-loreaux
author:j-loreaux
feat: `star` structures on `ContinuousLinearMapWOT` In particular, with these instances it makes sense to consider the `StarSubalgebra.topologicalClosure` of some `S : StarSubalgebra 𝕜 (F →WOT[𝕜] F)`. --- - [ ] depends on: #37914 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 157/4 Mathlib.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/TransferInstance.lean,Mathlib/Analysis/InnerProductSpace/WeakOperatorTopology.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] nobody
19-27811
19 days ago
19-27811
19 days ago
0-405
6 minutes
39157 vihdzp
author:vihdzp
feat: `Nat.cast` commutes with addition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 26/9 Mathlib/Data/Nat/Cast/Commute.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean 2 2 ['github-actions', 'plp127'] nobody
18-76725
18 days ago
19-51790
19 days ago
19-51752
19 days
38606 dennj
author:dennj
feat: preparation for Vanishing Sum of Roots of Unity Adds the Mathlib API extensions needed for an upcoming formalization of the Lam-style classification theorem for vanishing sums of roots of unity. * Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean + `exists_eq_const_of_sum_smul_eq_zero_of_sum_eq_zero_of_linearIndependent`: if `∑ vᵢ = 0` and the first `n-1` of `n` vectors are linearly independent, every linear relation has constant coefficients. * Mathlib/RingTheory/Radical/NatInt.lean + `Nat.totient_eq_div_radical_mul_totient_radical`: Euler's totient splits as `φ(n) = (n / rad n) * φ(rad n)`. * Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean + `IsPrimitiveRoot.sum_range_pow_mul_div_eq_zero_of_dvd`: the `d` evenly-spaced powers of a primitive `k`-th root sum to zero, for `d ∣ k` and `1 < d`. * Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean (new) + `IsPrimitiveRoot.linearDisjoint_adjoin_pow_of_coprime`: cyclotomic subfields of coprime orders are linearly disjoint over `ℚ`. * Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean (new) + `IsPrimitiveRoot.coeffs_eq_of_sum_pow_eq_zero_prime_coprime`: in the cyclotomic field of order `p * m` with `p` prime coprime to `m`, any `ℚ⟮ζ^p⟯`-linear relation among powers of `ζ^m` has all coefficients equal. --- I need these as preparation to start formalizing the theorem: Let k be a positive integer. If a finite family of complex k-th roots of unity sums to zero, then the size of the family is a non-negative integer combination of the prime divisors of k. --- Human-made PR with AI used for golfing and documentation new-contributor 219/0 Mathlib.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean,Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean,Mathlib/RingTheory/Radical/Totient.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean 6 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
16-72457
16 days ago
16-50626
16 days ago
8-31594
8 days
39279 jayscambler
author:jayscambler
feat(Cryptography/Sigma): Schnorr sigma protocol and signature scheme Adds `Mathlib/Cryptography/Sigma/Schnorr.lean`. New file in a new top-level directory; mathlib currently has no `Mathlib/Cryptography/`, so I've taken `Mathlib/Cryptography/Sigma/` as the natural home for sigma-protocol formalizations. The file proves the three defining properties of Schnorr's identification scheme as a sigma protocol: - `Schnorr.correct`: completeness. Honest verifier accepts honest signer's transcript. - `Schnorr.specialSoundness`: from two accepting transcripts sharing the commitment but using different challenges `c, c'`, the witness `x = (s - s') / (c - c')` is recovered. Needs `q` prime so `c - c'` is invertible in `ZMod q`. - `Schnorr.hvzkAccepts`: the HVZK simulator `g^s · (y^c)⁻¹` always yields accepting transcripts. This is the structural-correctness half of HVZK only; the distributional indistinguishability statement is a separate result and not in this PR. On top of the sigma protocol there's `Schnorr.Signature.{keyGen, sign, verify, correct}` wrapping it as a Fiat-Shamir signature scheme; `Schnorr.Signature.correct` is a one-line corollary of `Schnorr.correct`. Two auxiliary lemmas, `Schnorr.gpow_sub` and `Schnorr.gpow_mul`, bridge `ZMod q` arithmetic and group exponentiation under `Fintype.card G = q`. They're local to this file for now because the surrounding `gpow` API is itself cryptography-specific; if a general `ZMod q`-graded group action framework lands in mathlib later, both lemmas would become instances of it. There's also a small `example` instantiating everything on `Multiplicative (ZMod q)` for `Fact q.Prime` to show the API typechecks. That instantiation is a toy (DLOG is trivial in that group), but it confirms the abstraction is usable. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 352/0 Mathlib.lean,Mathlib/Cryptography/Sigma/Schnorr.lean 2 2 ['github-actions'] nobody
16-69809
16 days ago
16-69888
16 days ago
16-70340
16 days
38472 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): The Weil divisor associated to an element of the function field on a locally Noetherian integral scheme In this PR we define and provide some basic API for principal Weil divisors, i.e. the Weil divisor associated to an element of the function field of a locally noetherian, integral scheme. - [ ] depends on: #29774 - [ ] depends on: #37985 - [ ] depends on: #37901 - [ ] depends on: #38002 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 713/0 Mathlib.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Principal.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Minimal.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/LocallyFinsupp/Pushforward.lean,Mathlib/Topology/Sober.lean 11 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
16-8082
16 days ago
35-71232
35 days ago
0-1194
19 minutes
39371 fpvandoorn
author:fpvandoorn
feat: tag lemmas with compactness and closedness --- - [ ] depends on: #39370 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 190/11 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean 13 2 ['github-actions', 'mathlib-dependent-issues'] nobody
15-57143
15 days ago
15-71414
15 days ago
0-1
1 second
39382 fpvandoorn
author:fpvandoorn
feat: add some lemmas that closures of some sets are compact * Also tag them with `closedness`/`compactness`. * This can be refactored to use `RelativelyCompact` once we define that notion. * Note: this is only equivalent to `IsBounded` in `ProperSpace`. It is equivalent to `@IsBounded _ (inCompact X) s` in a T2-space, but the latter thing is cumbersome to write. --- - [ ] depends on: #39371 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 265/11 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/GrindAttrs.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/Order/Compact.lean,Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean,MathlibTest/Compactness.lean 14 2 ['github-actions', 'mathlib-dependent-issues'] nobody
15-53054
15 days ago
15-67154
15 days ago
0-359
5 minutes
39392 jayscambler
author:jayscambler
feat(Cryptography): one-time pad and Shannon perfect secrecy Adds `Mathlib/Cryptography/OTP.lean`. One-time pad over an arbitrary finite abelian group `G`: - `OTP.encrypt k m := m + k`, `OTP.decrypt k c := c - k`. - `OTP.correct`: `decrypt k (encrypt k m) = m`, by `abel`. - `OTP.perfect_secrecy`: for any `m₀, m₁`, the distributions of `encrypt k m₀` and `encrypt k m₁` over uniform `k` are equal; both reduce to `PMF.uniformOfFintype G`. Proof goes via `Equiv.addLeft`. Independent of the Schnorr PR (#39279); no shared definitions. Unlike everything else likely to live under `Mathlib/Cryptography/`, the security guarantee here is information-theoretic, not computational. **AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) new-contributor LLM-generated 76/0 Mathlib.lean,Mathlib/Cryptography/OTP.lean 2 3 ['MrBrain295', 'github-actions'] nobody
15-32361
15 days ago
15-54835
15 days ago
15-54797
15 days
35790 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory/AlgebraicGeometry): Flasque Sheaves have vanishing cohomology Proves cohomology vanishing for flasque sheaves. --- - [x] depends on: #34742 - [x] depends on: #34267 - [x] depends on: #35785 - [ ] depends on: #36218 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 367/2 Mathlib.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean,Mathlib/Topology/Sheaves/AddCommGrpCat.lean,Mathlib/Topology/Sheaves/Flasque.lean,Mathlib/Topology/Sheaves/Sheaf.lean 8 10 ['Brian-Nugent', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'smorel394'] dagurtomas
assignee:dagurtomas
9-62869
9 days ago
93-37546
93 days ago
0-23
23 seconds
38036 JovanGerb
author:JovanGerb
feat: `NSMul`/`NPow` type class This PR is adds `NSMul`, `NPow`, `ZSMul` and `ZPow` classes for the `nsmul`, `npow`, `zsmul`, `zpow` data fields. This has a few advantages: - If you first declare a `SMul` instance, then you don't need to manually write `nsmul := (· • ·)` and `zsmul := (· • ·)` . For `Pow`, the extra benefit is that inferring the instance is preferred over the default field `npowRecAuto`. So this helps avoid accidental diamonds. - If you first declare a `SMul` instance on a type synonym, then `inferInstanceAs` will infer the `nsmul` field from the `SMul` instance. This makes it easier to avoid diamonds on type synonyms like `Matrix` and `MonoidAlgebra`. - The not-yet-merged instance diamond linter will be able to detect cases where the `NSMul` and `SMul` classes do not agree. In the process of making this PR, I have identified two existing `NPow` diamonds: - In `Mathlib.Algebra.Order.Positive.Field`, there were two conflicting `NPow` instances. - For `Fin`, there are two conflicting `NPow` instances. I have overwritten the one in core lean with the one from mathlib that is more computationally efficient. TODO: the same for `QSMul` and `NNQSMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) merge-conflict 276/273 Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Group/Action/Opposite.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Opposite.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/MinimalAxioms.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/ZPow.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,MathlibTest/instance_diamonds.lean 41 17 ['JovanGerb', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-merge-conflicts', 'vihdzp'] nobody
9-40164
9 days ago
9-40165
9 days ago
29-38312
29 days
39205 ooovi
author:ooovi
feat(Geometry/Convex): Bundled convex set Add a bundled version of `IsConvexSet`. --- Once the dependencies are merged, this PR only changes `Mathlib.Geometry.Convex.Set` and `Mathlib.Geometry.Convex.Hull`, at the bottom of the file, adding `ConvexSet` and everything in the corresponding namespace. - [ ] depends on: #38934 - [ ] depends on: #38905 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR merge-conflict 989/172 Mathlib.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/Hull.lean,Mathlib/Geometry/Convex/README.md,Mathlib/Geometry/Convex/Set.lean 8 6 ['github-actions', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
9-2548
9 days ago
unknown
0-0
0 seconds
36275 smmercuri
author:smmercuri
feat: norm for the finite adele ring of a number field --- - [x] depends on: #35820 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 137/1 Mathlib.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
8-2378
8 days ago
8-2451
8 days ago
8-3673
8 days
39697 sorrachai
author:sorrachai
feat(Data/Tree/Basic): add Membership instance, new notation, rename Tree Summary: 1. [Rename]([#CSLib > Splay tree PR: BinaryTree vs Tree @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR.3A.20BinaryTree.20vs.20Tree/near/596482765)) from Tree to BinaryTree, which propagates the changes to other files that use it. 2. Add membership instance, prove decidability of membership. 3. Add toListInOrder, toListPreOrder, toListPostOrder Suggestion based on the discussion in the cslib [thread](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391)[#CSLib > Splay tree PR @ 💬](https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Splay.20tree.20PR/near/596568391). --- * depends on: #39707 new-contributor 187/75 Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Tree/Get.lean,Mathlib/Data/Tree/Traversable.lean,Mathlib/Tactic/CancelDenoms/Core.lean,docs/overview.yaml 7 4 ['eric-wieser', 'github-actions', 'sorrachai'] nobody
7-45814
7 days ago
7-77374
7 days ago
7-79391
7 days
35560 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): Corollaries of Cohen Structure Theorem Corollaries of Cohen structure theorem, saying that complete local ring can be represented as quotient of regular local ring. --- - [ ] depends on: #28683 - [ ] depends on: #35561 - [ ] depends on: #39289 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import 3018/22 Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean,Mathlib/RingTheory/AdicCompletion/LocalRing.lean,Mathlib/RingTheory/AdicCompletion/Noetherian.lean,Mathlib/RingTheory/CohenStructureTheorem.lean,Mathlib/RingTheory/Flat/Extension.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean,Mathlib/RingTheory/Smooth/Field.lean 15 11 ['BryceT233', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
6-10881
6 days ago
99-15667
99 days ago
0-8
8 seconds
39788 Hagb
author:Hagb
feat(Data/Finsupp/MonomialOrder): monomial order is well-founded if the index type is finite Given `m : MonomialOrder σ` and `Finite σ`, `m.syn` is well-founded under the definition in #39214 (which removes the requirement of well-foundedness from `MonomialOrder`). --- - [ ] depends on: #39787 - [ ] depends on: #39214 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR 42/13 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Order/WellQuasiOrder.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] nobody
5-20397
5 days ago
5-51757
5 days ago
0-1704
28 minutes
39139 or4nge19
author:or4nge19
feat(LinearAlgebra): Schur triangulation Adds Schur triangulation API for algebraically closed `RCLike`, proved by triangularizing an endomorphism, aiming at a more mathlib idiomatic approach than the original one in #20730 as it now (better) specializes the existing triangularization API and generalizes supporting lemmas in more natural places. A prerequisite for porting `Matrix.det_exp` proof from physlib. It also proves half of existing TODO in Eigenspace.Triangularizable. It may need a split into 2 PRs and coordination with #37006 . See [this](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Contribute.20Schur.20decomposition/with/532385359) and [this](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/.28Matrix.20and.20NormedSpace.2Eexp.29.20.7C.20det.20.28exp.20A.29.20.3D.20exp.20.28trace.20A.29/with/581264603) zulip discussions. Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import awaiting-author 687/75 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/Triangularizable.lean,Mathlib/LinearAlgebra/Basis/Fin.lean,Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Basic.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean 10 5 ['dagurtomas', 'github-actions', 'or4nge19', 'wwylele'] nobody
4-69449
4 days ago
15-65315
15 days ago
4-23931
4 days
39837 or4nge19
author:or4nge19
feat(LinearAlgebra): unitary block-triangular Schur triangulation Part 3/3 of (and improves on) #39139. - `InnerProductSpace.Triangularizable`: Gram–Schmidt preserves `Basis.flag`; orthonormal triangularizing basis; block-upper-triangular matrix in an orthonormal `finrank`-indexed basis. - `Matrix.SchurTriangulation`: `exists_unitaryGroup_blockTriangular` - [ ] depends on: #39834 [Part 2/3 of https://github.com/leanprover-community/mathlib4/pull/39139. ] - [ ] depends on: #39829 [Part 1/3 of https://github.com/leanprover-community/mathlib4/pull/39139. ] Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) [learningstud@gmail.com](mailto:learningstud@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 577/76 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Triangularizable.lean,Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/LinearAlgebra/Matrix/SchurTriangulation.lean 6 2 ['github-actions', 'mathlib-dependent-issues'] nobody
4-66783
4 days ago
4-66784
4 days ago
0-2882
48 minutes
39874 mkaratarakis
author:mkaratarakis
feat(GelfondSchneider): add MainAlg Siegel matrix setup Add `GelfondSchneider.MainAlg`, setting up the scaled Siegel matrix and house-norm bounds used in the Gelfond–Schneider proof. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [ ] depends on: #39872 - [ ] depends on: #39873 - [ ] depends on: #39875 Supersedes #35733. blocked-by-other-PR 837/48 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/RingTheory/Algebraic/NatDenominator.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Basic.lean 5 3 ['github-actions', 'mathlib-dependent-issues'] nobody
3-72300
3 days ago
3-75748
3 days ago
0-304
5 minutes
37073 kim-em
author:kim-em
feat: add wrap_instance% using core's wrapInstance This PR adds a new `wrap_instance%` term elaborator that delegates to Lean core's `wrapInstance` (from https://github.com/leanprover/lean4/pull/12897), and replaces ~53 `fast_instance%` call sites where the replacement is safe. `wrap_instance%` is a thin wrapper (~15 lines) around `Lean.Meta.wrapInstance`. Like `fast_instance%`, it reduces instances to constructor applications and reuses canonical sub-instances. Unlike `fast_instance%`, it works at `instances` transparency and delegates all normalization logic to core. The replaced sites cover: - Equiv/type-alias transfers (WithAbs, WithConv, WithVal, WithLp, TransferInstance) - Surjective constructors (Con, RingCon quotients, module congruences) - DFunLike leaf instances (MultilinearMap, ContinuousMultilinearMap, AlternatingMap, Intertwining) - Quotient instances (LinearAlgebra/Quotient/Defs) - inferInstanceAs% sites (StandardPart, Presentation/Core) - Miscellaneous (InfiniteAdeleRing, ZMod) This PR *doesn't* attempt to replace all `fast_instance%`; it gets more complicated! 🤖 Prepared with Claude Code 88/59 Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/Algebra/WithConv.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/Tactic/FastInstance.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 16 8 ['JovanGerb', 'github-actions', 'kim-em', 'leanprover-radar', 'mathlib-merge-conflicts'] nobody
2-60051
2 days ago
2-60088
2 days ago
32-49788
32 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
2-555
2 days ago
18-75236
18 days ago
18-75362
18 days
37910 wwylele
author:wwylele
feat(Geometry/Euclidean): volume of a simplex This defines the volume of a simplex in Euclidean geometry, and shows that it agrees with measure theory. It also adds the basic set of lemmas (base-and-height formula, reindex, positivity, map, and restrict). Further properties of the volume will be in future PRs. Three new file s are introduced and organized in the following dependency chain: Def.lean -> MeasureSimplex.Lean -> Basic.lean The Def.lean file has the definition only. MeasureSimplex.lean pulls in measure theory. Basic.lean publicly imports Def.lean, and privately imports MeasureSimplex.lean. When a downstream file imports Basic.lean, the measure theory part is not exposed and all properties of the volume is provided. --- - [ ] depends on: #36018 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR large-import 480/1 Mathlib.lean,Mathlib/Geometry/Euclidean/Volume/Basic.lean,Mathlib/Geometry/Euclidean/Volume/Def.lean,Mathlib/Geometry/Euclidean/Volume/MeasureSimplex.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 6 11 ['copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-28121
1 day ago
49-45846
49 days ago
0-473
7 minutes
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
0-63830
17 hours ago
17-71508
17 days ago
0-7302
2 hours
39989 Brian-Nugent
author:Brian-Nugent
feat(AlgebraicGeometry/Sheaves/Sites): The pullback of a quasicoherent sheaf is quasicoherent The main contribution of this PR is a natural isomorphism `SheafOfModules.PullbackRestrictIso` that shows that pullback commutes with restriction to the over category. This is then applied to show that for a morphism of schemes `f : X ⟶ Y`, the pullback of a quasicoherent `Y.Module` is quasicoherent and the pullback of a locally free `Y.Module` is locally free. --- - [ ] depends on: #39553 - [ ] depends on: #39993 - [ ] depends on: #39994 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import blocked-by-other-PR 672/28 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/LocallyFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackRestrict.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Quasicoherent.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Preserves/Lattice.lean,Mathlib/CategoryTheory/Limits/Preserves/Over.lean,Mathlib/CategoryTheory/Sites/CoproductSheafCondition.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/CoversTop/Basic.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Sheaves/Presheaf.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean 17 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-54176
15 hours ago
unknown
0-0
0 seconds
38567 dagurtomas
author:dagurtomas
feat(CategoryTheory/Monoidal): autogenerate some lemmas instead of stating them explicitly --- - [ ] depends on: #38482 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) blocked-by-other-PR merge-conflict 928/166 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Limits/HasLimits.lean,Mathlib/CategoryTheory/Monoidal/Limits/Shapes/Pullback.lean,Mathlib/CategoryTheory/Monoidal/PushoutProduct.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,Mathlib/Tactic/CategoryTheory/Op.lean,Mathlib/Tactic/CategoryTheory/SpecializeMap.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean,MathlibTest/CategoryTheory/Op.lean,MathlibTest/CategoryTheory/SpecializeMap.lean 12 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-36732
10 hours ago
33-23862
33 days ago
0-512
8 minutes
39867 JovanGerb
author:JovanGerb
feat: `to_dual` for `Adjunction` This PR uses the new capability of `to_dual` to deal with universe reorderings to tag `Adjunction`. `Adjunction.ext_counit` is added as the dual of `Adjunction.ext`. This PR introduces 4 uses of `erw` to deal with defeq abuse. See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.5Bto_app.5D.20and.20associators.2Funitors/near/597924260 Note: there is a bug in the implementation that I'll have to fix which stops me from being able to tag `Adjunction.comp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 45/47 Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/FullyFaithful.lean,Mathlib/CategoryTheory/Sites/Sheafification.lean 3 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-12771
3 hours ago
0-12810
3 hours ago
3-55765
3 days

PRs with contradictory labels

There are currently no PRs with contradictory labels. Congratulations!