Would you like to help out at a PR, differently from reviewing? Here are some ideas:
| 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 |
| 8961 |
eric-wieser author:eric-wieser |
refactor: use the coinduced topology on ULift |
---
- [x] depends on: #8958
[](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 |
593-71357 1 year ago |
827-16787 827 days ago |
0-1 1 second |
| 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`.
---
[](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 |
593-71357 1 year ago |
unknown |
0-0 0 seconds |
| 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.
---
[](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 |
593-71356 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.
[](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 |
593-71356 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.
[](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 |
586-59333 1 year ago |
unknown |
0-0 0 seconds |
| 9973 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: polynomials formed by lists |
From https://github.com/leanprover-community/mathlib/pull/15476
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
merge-conflict
t-data
|
311/0 |
Mathlib.lean,Mathlib/Data/Polynomial/OfList.lean |
2 |
0 |
[] |
nobody |
579-64433 1 year ago |
unknown |
0-0 0 seconds |
| 9444 |
erdOne author:erdOne |
feat: Various instances regarding `𝓞 K`. |
---
[](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 |
578-61109 1 year ago |
800-60536 800 days ago |
1-62292 1 day |
| 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.
[](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 |
424-69133 1 year ago |
unknown |
0-0 0 seconds |
| 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
---
[](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 |
410-26554 1 year ago |
439-38833 439 days ago |
101-64856 101 days |
| 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.
[](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 |
317-73032 10 months ago |
870-68027 870 days ago |
0-1 1 second |
| 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
[](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 |
305-54409 10 months ago |
551-47227 551 days ago |
21-25493 21 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`.
---
[](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 |
283-9928 9 months ago |
666-37581 666 days ago |
9-22045 9 days |
| 22925 |
ggranberry author:ggranberry |
feat(Mathlib/PlaceHolder/ToeplitzHausdorff): Toeplitz-Hausdorff |
---
[](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 |
11 |
['faenuccio', 'ggranberry', 'github-actions'] |
faenuccio assignee:faenuccio |
215-61405 7 months ago |
363-46287 363 days ago |
0-1302 21 minutes |
| 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.
---
[](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 |
207-7770 6 months ago |
907-46655 907 days ago |
0-84 1 minute |
| 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 |
136-63499 4 months ago |
271-54301 271 days ago |
0-74 1 minute |
| 5863 |
eric-wieser author:eric-wieser |
feat: add elaborators for concrete matrices |
---
- [x] depends on: #5866
- [ ] depends on: #5897
[](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 |
117-74202 3 months ago |
977-53863 977 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.
[](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 |
117-74201 3 months ago |
801-12696 801 days ago |
0-433 7 minutes |
| 13442 |
dignissimus author:dignissimus |
feat: mabel tactic for multiplicative abelian groups |
Mabel tactic for multiplicative abelian groups (#10361)
---
[](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 |
117-73937 3 months ago |
567-66023 567 days ago |
0-16 16 seconds |
| 26398 |
ChrisHughes24 author:ChrisHughes24 |
feat(ModelTheory): definable functions |
---
Possibly this should be generalized to partial functions.
I migrated the PR by hand instead of using the script.
- [x] depends on: #20166
- [x] depends on: #20161
- [x] depends on: #20115
- [x] depends on: #20174
- [x] depends on: #20175
- [x] depends on: #21948
[](https://gitpod.io/from-referrer/)
|
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 |
117-72813 3 months ago |
139-62278 139 days ago |
87-77407 87 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.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
help-wanted
t-data
|
198/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Wolstenholme.lean |
2 |
4 |
['github-actions', 'mathlib4-merge-conflict-bot', 'yury-harmonic'] |
nobody |
117-71589 3 months ago |
182-49322 182 days ago |
0-93 1 minute |
| 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)
---
[](https://gitpod.io/from-referrer/)
|
WIP
help-wanted
CI
|
114/0 |
.github/workflows/mk_windows_bundle.yml,scripts/windowsBundle.bat |
2 |
0 |
[] |
nobody |
117-45514 3 months ago |
930-14227 930 days ago |
0-434 7 minutes |
| 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.
---
[](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 |
117-45378 3 months ago |
592-65660 592 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)
[](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 |
117-45371 3 months ago |
592-65535 592 days ago |
99-11243 99 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.
---
[](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 |
117-45351 3 months ago |
679-53402 679 days ago |
2-24297 2 days |
| 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
[](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 |
117-45307 3 months ago |
612-31314 612 days ago |
0-201 3 minutes |
| 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!
---
[](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 |
111-58823 3 months ago |
111-58864 111 days ago |
0-8 8 seconds |
| 5934 |
eric-wieser author:eric-wieser |
feat: port Data.Rat.MetaDefs |
---
[](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 |
80-32840 2 months ago |
unknown |
0-0 0 seconds |
| 6042 |
MohanadAhmed author:MohanadAhmed |
feat(LinearAlgebra/Matrix/SVD): Singular Value Decomposition of R or C Matrices |
This file provides proves the SVD theorem which decomposes a real/complex matrix into left eigenvectors, singular values block diagonal matrix and right eigenvectors.
Any matrix A (M × N) with rank r = A.rank and with elements in ℝ or ℂ fields can be decompsed into the product of three matrices:
$$A = USV$$
* The three matrices are defined as
- $U$: an M × M matrix containing the left eigenvectors of the matrix
- $S$: an M × N matrix with an r × r block in the upper left corner with nonzero singular values
- $V$: an N × N matrix containing the right eigenvectors of the matrix
Note that
* $S$ is a block matrix $S = [S₁₁, S₁₂; S₂₁, S₂₂]$ with
- $S₁₁$: a diagonal r × r matrix and
- $S₁₂$ : r × (N - r) zero matrix, S₂₁ : (M - r) × r zero matrix and
- $S₂₂$: (M - r) × (N - r) zero matrix
* $U$ is a block column matrix U = [U₁ U₂] with
- $U₁$ : a M × r containing left eigenvectors with nonzero singular values.
- $U₂$ : a M × (M - r) containing left eigenvectors with zero singular values.
* $V$ is a block column matrix V = [V₁ V₂] with
- $V₁$ : a N × r containing right eigenvectors with nonzero singular values.
- $V₂$ : a M × (M - r) containing right eigenvectors with zero singular values.
Since in mathlib the eigenvalues of hermitian matrices are defined in an "arbitrary" undetermined order, we begin by partition the singular values into zero and non-zero values. We partition the corresponding eigenvectors from AᴴA and AAᴴ using similar rearrangements. These are included in `SVD.svdReindex`. The basic API for Column and Row partitioned matrices is from `ColumnRowPartitioned`.
We then proceed to transfer some of the lemmas we need about eigenvector matrices (for example that they are unitary: i.e. inverse is conjugate transpose.). Note that since invertibility in mathlib is defined for square matrices while our matrices are partitioned i.e. N × (N₁ ⊕ N₂) and N ≃ (N ⊕ N₂), Lean cannot apply the Invertible definition. We workaround this were necessary.
Lemma `reduced_spectral_theorem` (`reduced_spectral_theorem'`) shows that AᴴA and AAᴴ, can be reduced to products containing only the non-zero singular eigenvectors. This is later used in proving the main SVD theroem. A few lemmas are provided about the invertibility of the non-zero singular values matrix: `svdσ_inv`, `σ_inv_μ_σ_inv_eq_one`, `IsUnit_det_svdσ`, `IsUnit_det_svdσ_mapK` and `svdσ_inv_mapK`.
To make relating left eigenvectors to right eigenvectors easier we define U₁ = AV₁σ⁻¹ while U₂ is obtained from the eigenvectors of (AAᴴ). This avoid a lengthy reindexing operation with many proofs. The vectors in U₂ have no such issue since they are multiplied by zero singular values anyway.
Co-authored-by: Mohanad Ahmed
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
WIP
t-algebra
merge-conflict
label:t-algebra$ |
588/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/SVD/Defs.lean,Mathlib/LinearAlgebra/Matrix/SVD/Reindex.lean |
3 |
116 |
['MohanadAhmed', 'Vierkantor', 'alexjbest', 'eric-wieser', 'j-loreaux', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sgouezel', 'vihdzp'] |
nobody |
80-32367 2 months ago |
762-32655 762 days ago |
197-21527 197 days |
| 21344 |
kbuzzard author:kbuzzard |
chore: attempt to avoid diamond in OreLocalization |
---
[](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 |
71-21528 2 months ago |
406-18051 406 days ago |
0-2312 38 minutes |
| 17176 |
arulandu author:arulandu |
feat: integrals and integrability with .re |
Lemmas for swapping order of .re and integration/integrability.
---
[](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 |
70-28943 2 months ago |
517-76180 517 days ago |
9-73631 9 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 |
5 |
['Vierkantor', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
68-14718 2 months ago |
201-67308 201 days ago |
0-2565 42 minutes |
| 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
[](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 |
67-53573 2 months ago |
337-28618 337 days ago |
0-22 22 seconds |
| 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 |
65-17836 2 months ago |
191-46215 191 days ago |
82-7527 82 days |
| 25907 |
mans0954 author:mans0954 |
feat: low order roots of unity |
This PR continues the work from #25470.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25470 |
t-algebra
please-adopt
label:t-algebra$ |
182/0 |
Mathlib/Algebra/CharP/Invertible.lean,Mathlib/RingTheory/RootsOfUnity/Complex.lean |
2 |
3 |
['github-actions', 'mans0954', 'urkud'] |
jcommelin assignee:jcommelin |
65-17819 2 months ago |
117-31404 117 days ago |
157-25048 157 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 |
65-17797 2 months ago |
265-74246 265 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 |
65-17781 2 months ago |
257-23443 257 days ago |
0-4698 1 hour |
| 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 |
65-17550 2 months ago |
265-74848 265 days ago |
0-259 4 minutes |
| 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 |
65-12346 2 months ago |
265-73474 265 days ago |
0-562 9 minutes |
| 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 |
65-12323 2 months ago |
117-72821 117 days ago |
142-46248 142 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 |
65-12279 2 months ago |
260-30624 260 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 |
65-12270 2 months ago |
265-73565 265 days ago |
0-72 1 minute |
| 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
[](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 |
65-12237 2 months ago |
162-36494 162 days ago |
0-23671 6 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
[](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 |
65-12204 2 months ago |
117-71558 117 days ago |
41-47583 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
[](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 |
65-12185 2 months ago |
191-35876 191 days ago |
0-645 10 minutes |
| 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
[](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 |
65-12025 2 months ago |
153-1926 153 days ago |
0-14664 4 hours |
| 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.
---
[](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 |
63-85651 2 months ago |
668-55076 668 days ago |
1-73101 1 day |
| 34131 |
Ruben-VandeVelde author:Ruben-VandeVelde |
fix: update create_deprecated_modules.lean |
---
This is a wip; I'm hoping someone can pick it up and make sure CI builds it going forward. @adomani @kim-em any takers?
[](https://gitpod.io/from-referrer/)
|
please-adopt
WIP
CI
|
26/22 |
scripts/create_deprecated_modules.lean |
1 |
2 |
['adomani', 'github-actions'] |
nobody |
55-71009 1 month ago |
56-59489 56 days ago |
0-1 1 second |
| 8608 |
eric-wieser author:eric-wieser |
feat: multiplicativize `AddTorsor` |
---
[](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 |
48-12796 1 month 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.
[](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 |
30-2746 1 month ago |
363-65646 363 days ago |
0-1 1 second |
| 23142 |
joneugster author:joneugster |
feat(CategoryTheory/Enriched/Limits): add API for HasConicalLimit |
---
[](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 |
30-2746 1 month ago |
360-68637 360 days ago |
0-67928 18 hours |
| 23145 |
joneugster author:joneugster |
feat(CategoryTheory/Enriched/Limits): add IsConicalLimits |
---
- [ ] depends on: #23142
[](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 |
30-2745 1 month ago |
361-49311 361 days ago |
0-801 13 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).
---
[](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 |
29-59516 1 month ago |
29-59584 29 days ago |
0-12 12 seconds |
| 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?
[](https://gitpod.io/from-referrer/)
|
please-adopt
t-linter
|
54/3 |
Mathlib/Tactic/Linter/Style.lean,MathlibTest/LintStyle.lean |
2 |
2 |
['github-actions'] |
nobody |
29-29315 1 month ago |
29-57951 29 days ago |
0-118 1 minute |
| 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.
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
t-linter
RFC
|
4/0 |
MathlibTest/DeprecatedSyntaxLinter.lean,MathlibTest/Monotonicity.lean |
2 |
2 |
['github-actions', 'grunweg'] |
nobody |
29-28935 1 month ago |
29-56051 29 days ago |
0-13 13 seconds |
| 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 |
merge-conflict
awaiting-author
t-analysis
large-import
please-adopt
|
322/64 |
Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Bipolar.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Topology/Algebra/Module/LinearSpan.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakBilin.lean |
7 |
116 |
['JonBannon', 'eric-wieser', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'leanprover-community-bot-assistant', 'mans0954', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mcdoll', 'vihdzp'] |
faenuccio and j-loreaux assignee:j-loreaux assignee:faenuccio |
27-69304 27 days ago |
167-41978 167 days ago |
17-41764 17 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 |
17-51057 17 days ago |
306-33529 306 days ago |
17-16443 17 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 |
4-66524 4 days ago |
784-38012 784 days ago |
12-48883 12 days |
| 29856 |
mans0954 author:mans0954 |
feat(Analysis/Normed/Ring/Basic): Add NonUnitalNonAssocSeminormedRing and NonUnitalNonAssocNormedRing |
Adds the classes `NonUnitalNonAssocSeminormedRing` and `NonUnitalNonAssocNormedRing` and relaxes the `NonUnitalSeminormedRing` section to `NonUnitalNonAssocSeminormedRing`.
Examples of non-unital non-associative normed rings include non-untial JB-algebras and non-unital JB*-algebras.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
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 |
4-2409 4 days ago |
118-21596 118 days ago |
57-16569 57 days |
| 36678 |
YaelDillies author:YaelDillies |
refactor(Algebra/MvPolynomial): turn into an `abbrev` |
There is no semantic difference between `MvPolynomial` and `AddMonoidAlgebra`. A multivariate polynomial *is* an element of some add monoid algebra, while eg an element of an add monoid algebra *can be represented as* a finitely supported function.
---
I have no idea why code related to `AlgebraicClosure` suddenly stops working. Help wanted!
[](https://gitpod.io/from-referrer/)
|
help-wanted
t-ring-theory
t-algebra
label:t-algebra$ |
77/95 |
Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/FieldTheory/PurelyInseparable/Tower.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Matrix/Adjugate.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/Finiteness/Descent.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/RingTheory/Trace/Basic.lean |
14 |
1 |
['github-actions'] |
nobody |
1-57591 1 day ago |
1-57708 1 day ago |
0-27 27 seconds |
| 33466 |
Shreyas4991 author:Shreyas4991 |
refactor(Combinatorics/Digraph): add vertex sets |
---
[](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 |
1-54993 1 day ago |
3-79104 3 days ago |
27-58977 27 days |
| 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
[](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 |
593-71358 1 year ago |
643-49760 643 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
[](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 |
593-71357 1 year ago |
833-61253 833 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')
```
[](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 |
36 |
['adomani', 'alreadydone', 'digama0', 'eric-wieser', 'ericrbg', 'jcommelin', 'leanprover-bot', 'sgouezel'] |
nobody |
593-71356 1 year ago |
868-36853 868 days ago |
35-63136 35 days |
| 7875 |
astrainfinita author:astrainfinita |
chore: make `SMulCommClass A A B` and `SMulCommClass A B B` higher priority |
---
[](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 |
593-71356 1 year ago |
648-1464 648 days ago |
1-47913 1 day |
| 6491 |
eric-wieser author:eric-wieser |
chore(Mathlib/Algebra/Hom/GroupAction): add `SMulHomClass.comp_smul` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
24/10 |
Mathlib/Algebra/Hom/GroupAction.lean |
1 |
0 |
[] |
nobody |
593-71355 1 year ago |
865-57355 865 days ago |
83-76369 83 days |
| 10629 |
madvorak author:madvorak |
feat: List.cons_sublist_append_iff_right |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
11/0 |
Mathlib/Data/List/Basic.lean |
1 |
1 |
['eric-wieser'] |
nobody |
579-64900 1 year ago |
705-73737 705 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`.
---
[](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 |
575-27745 1 year ago |
639-17331 639 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.
---
- [ ] depends on: #11947
[](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', 'leanprover-community-mathlib4-bot'] |
nobody |
575-27604 1 year ago |
703-44545 703 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`.
[](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 |
575-27503 1 year ago |
661-37487 661 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`.
---
[](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 |
574-48657 1 year ago |
609-54879 609 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
[](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 |
572-50931 1 year ago |
691-42559 691 days ago |
19-74546 19 days |
| 17127 |
astrainfinita author:astrainfinita |
chore: remove global `Quotient.mk` `⟦·⟧` notation |
---
Merge this PR when we are ready to migrate to `QuotLike` API (#16421).
[](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 |
532-85996 1 year ago |
532-85996 532 days ago |
4-72805 4 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]`.
[](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 |
495-81462 1 year ago |
495-81462 495 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.
[](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 |
475-58217 1 year ago |
475-58217 475 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.
---
[](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 |
473-34294 1 year ago |
473-34294 473 days ago |
3-72207 3 days |
| 18756 |
astrainfinita author:astrainfinita |
refactor: deprecate `DistribMulActionSemiHomClass` `MulSemiringActionSemiHomClass` |
---
[](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 |
461-86363 1 year ago |
461-86363 461 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
---
[](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 |
434-16137 1 year ago |
434-16137 434 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.
---
[](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 |
427-47169 1 year ago |
427-47169 427 days ago |
6-66637 6 days |
| 18474 |
astrainfinita author:astrainfinita |
perf: lower the priority of `*WithOne.to*` instances |
---
From #7873.
[](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 |
425-34199 1 year ago |
425-34199 425 days ago |
76-67978 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`)
[](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 |
412-58456 1 year ago |
412-58456 412 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.
---
[](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 |
376-44477 1 year ago |
376-44477 376 days ago |
16-76141 16 days |
| 18470 |
astrainfinita author:astrainfinita |
perf: lower the priority of `Normed*.to*` instances |
---
From #7873.
[](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 |
372-15904 1 year ago |
372-15904 372 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
[](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 |
369-15636 1 year ago |
550-67986 550 days ago |
119-35643 119 days |
| 22660 |
Ruben-VandeVelde author:Ruben-VandeVelde |
chore: follow naming convention around Group.IsNilpotent |
---
[](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 |
364-66732 11 months ago |
364-66732 364 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
[](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 |
341-52879 11 months ago |
341-52880 341 days ago |
57-47357 57 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.
---
[](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 |
341-52877 11 months ago |
341-52879 341 days ago |
36-69400 36 days |
| 16314 |
astrainfinita author:astrainfinita |
chore(Data/Quot): deprecate `ind*'` APIs |
---
- [x] depends on: #16264
[](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 |
335-77843 11 months ago |
335-77845 335 days ago |
55-36935 55 days |
| 15483 |
astrainfinita author:astrainfinita |
chore(GroupTheory/Coset): reduce defeq abuse |
---
- [x] depends on: #15482
[](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 |
335-22736 11 months ago |
583-61066 583 days ago |
4-79214 4 days |
| 16594 |
astrainfinita author:astrainfinita |
perf: reorder `extends` and remove some instances in algebra hierarchy |
---
[](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 |
335-22512 11 months ago |
539-62059 539 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
[](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 |
328-65753 10 months ago |
341-76394 341 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.
---
[](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 |
326-42528 10 months ago |
326-42530 326 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
---
[](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 |
326-31225 10 months ago |
326-31226 326 days ago |
2-12017 2 days |
| 13649 |
astrainfinita author:astrainfinita |
chore: redefine `Nat.div2` `Nat.bodd` |
The new definitions are faster than the old ones. `Nat.binaryRec` will be moved to batteries (https://github.com/leanprover-community/batteries/pull/799) or core (https://github.com/leanprover/lean4/pull/3756), so relevant contents are moved to a new file temporarily.
---
- [x] depends on: #15567
- [x] depends on: #19666
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
63/88 |
Mathlib/Computability/Primrec.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Logic/Denumerable.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Nat.lean |
8 |
15 |
['astrainfinita', 'digama0', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
digama0 assignee:digama0 |
318-14775 10 months ago |
318-14777 318 days ago |
87-49908 87 days |
| 23546 |
JovanGerb author:JovanGerb |
feat(LinearAlgebra/AffineSpace/AffineSubspace): rename `AffineSubspace.mk'` to `Submodule.shift` |
In addition to renaming, I've refactored the code a bit:
- `mem_mk'_iff_vsub_mem` was obsolete since it was the same as `mem_mk'`, so I removed it (this is due to a change in the definition I made recently)
- I added a nonempty instance for `shift`
- I added a simp lemma that `shift` isn't equal to `⊥` (the empty affine subspace). I need this for the next point.
- Edit: I'll leave this for a later PR.
~I proved a simp lemma that a `shift` is parallel to a `shift` if and only if the linear subspaces are the same.~
- I renamed `mk'_eq` to `shift_direction_eq_self `.
- I renamed `eq_or_eq_secondInter_of_mem_mk'_span_singleton_iff_mem` to `eq_or_eq_secondInter_iff_mem_of_mem_shift_span_singleton`. I think it is better to put the `of_mem_mk'_span_singleton` at the end of the name.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-euclidean-geometry
|
128/99 |
Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/MongePoint.lean,Mathlib/Geometry/Euclidean/PerpBisector.lean,Mathlib/Geometry/Euclidean/Sphere/SecondInter.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean |
7 |
4 |
['JovanGerb', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
316-47757 10 months ago |
323-24790 323 days ago |
26-22460 26 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
[](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 |
293-37975 9 months ago |
293-37977 293 days ago |
35-30364 35 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).
---
[](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 |
282-60802 9 months ago |
282-60804 282 days ago |
6-39812 6 days |
| 18441 |
ADedecker author:ADedecker |
refactor(AdicTopology): use new API for algebraic filter bases, and factor some code |
---
- [x] depends on: #18437
[](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 |
270-52543 8 months ago |
502-50442 502 days ago |
0-679 11 minutes |
| 18439 |
ADedecker author:ADedecker |
refactor: use new algebraic filter bases API in `FiniteAdeleRing` |
---
- [x] depends on: #18437
[](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 |
270-52541 8 months ago |
502-52085 502 days ago |
0-619 10 minutes |
| 18438 |
ADedecker author:ADedecker |
refactor: adapt `KrullTopology` to the new algebraic filter bases API |
---
- [x] depends on: #18437
[](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 |
270-52540 8 months ago |
502-52727 502 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.
---
[](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 |
267-34831 8 months ago |
505-61047 505 days ago |
129-57999 129 days |
| 24823 |
eric-wieser author:eric-wieser |
refactor: add `hom` lemmas for the `MonoidalCategory` structure on `ModuleCat` |
---
[](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 |
254-85891 8 months ago |
254-85891 254 days ago |
40-60910 40 days |
| 25071 |
erdOne author:erdOne |
feat(EllipticCurve): basic API for singular cubics |
---
[](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 |
254-85645 8 months ago |
254-85646 254 days ago |
45-4562 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 |
254-85333 8 months ago |
254-85333 254 days ago |
18-21880 18 days |
| 24405 |
mcdoll author:mcdoll |
refactor(Topology/Algebra/Module/WeakDual): Clean up |
- Move `Dual` and `dualPairing` lower in the import-hierachy
- deduplicate `dualPairing`
- Make `WeakDual` and `WeakSpace` reducible
---
New version of #11500
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
large-import
|
146/162 |
Mathlib.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Analysis/VonNeumannAlgebra/Basic.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/Topology/Algebra/Module/Dual.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,docs/overview.yaml,docs/undergrad.yaml |
14 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
253-50762 8 months ago |
253-50763 253 days ago |
69-52361 69 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.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
18/0 |
Mathlib/Topology/StoneCech.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
251-66711 8 months ago |
251-66711 251 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
[](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 |
224-63973 7 months ago |
254-85642 254 days ago |
38-26044 38 days |
| 26200 |
adomani author:adomani |
fix: add label when landrun fails |
Adds the `permission-denied` label on PRs that get blocked by landrun.
---
[](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 |
223-14926 7 months ago |
223-14926 223 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.*
---
[](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 |
217-47429 7 months ago |
217-47430 217 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.
[](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 |
217-47058 7 months ago |
217-47059 217 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.
---
[](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 |
215-61682 7 months ago |
215-61683 215 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.
---
[](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 |
215-16478 7 months ago |
215-16478 215 days ago |
71-28496 71 days |
| 28622 |
alreadydone author:alreadydone |
chore(Mathlib): replace `=>` by `↦` |
---
[](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 |
209-19958 6 months ago |
209-19959 209 days ago |
0-66771 18 hours |
| 28626 |
alreadydone author:alreadydone |
chore(Archive, Counterexamples): replace => by ↦ |
---
[](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 |
207-49084 6 months ago |
207-49085 207 days ago |
2-47570 2 days |
| 13795 |
astrainfinita author:astrainfinita |
perf(Algebra/{Group, GroupWithZero, Ring}/InjSurj): reduce everything |
---
- [ ] depends on: #15192
- [ ] depends on: #15476
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
340/194 |
Mathlib/Algebra/Equiv/TransferInstance.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/End.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Ring/InjSurj.lean,scripts/noshake.json |
9 |
37 |
['MichaelStollBayreuth', 'astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mattrobball'] |
nobody |
206-55155 6 months ago |
335-70160 335 days ago |
47-81764 47 days |
| 28150 |
Equilibris author:Equilibris |
chore: clean up proofs typevec proofs |
While adding variable universe corecs I found a lot of theorems in typevec that could do with a bit of a clean-up
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
new-contributor
|
24/26 |
Mathlib/Data/TypeVec.lean |
1 |
7 |
['Equilibris', 'alexkeizer', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
206-16400 6 months ago |
206-16401 206 days ago |
13-49738 13 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)
---
[](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 |
205-82120 6 months ago |
228-58042 228 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.
[](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 |
205-82074 6 months ago |
215-47118 215 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.
---
[](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 |
205-43952 6 months ago |
228-58043 228 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]
```
---
[](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 |
201-886 6 months ago |
201-887 201 days ago |
13-2028 13 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
[](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 |
189-47232 6 months ago |
189-47233 189 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
[](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 |
189-42271 6 months ago |
244-71966 244 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
[](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 |
188-56122 6 months ago |
245-77434 245 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 |
188-49983 6 months ago |
188-49984 188 days ago |
10-61840 10 days |
| 27933 |
grunweg author:grunweg |
chore(OrdNode): format code example in code blocks |
Wrap them in code blocks (and unindent them; that indentation is not needed any more).
This also avoids warnings from the linter in #27898.
-------
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
459/212 |
Mathlib/Data/Ordmap/Ordnode.lean |
1 |
4 |
['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
185-616 6 months ago |
185-617 185 days ago |
39-69478 39 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 |
182-62227 6 months ago |
182-62228 182 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.
---
[](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 |
173-73824 5 months ago |
173-73825 173 days ago |
19-81030 19 days |
| 21950 |
erdOne author:erdOne |
feat(NumberTheory/Padics): the completion of `ℚ` at a finite place is `ℚ_[p]` |
---
[](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 |
171-48934 5 months ago |
252-48871 252 days ago |
73-13048 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
[](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 |
168-39016 5 months ago |
168-39017 168 days ago |
0-4775 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
[](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 |
167-58418 5 months ago |
262-65702 262 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
[](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 |
166-61643 5 months ago |
258-70815 258 days ago |
0-625 10 minutes |
| 23621 |
astrainfinita author:astrainfinita |
chore: deprecate `LinearOrderedComm{Monoid, Group}WithZero` |
---
[](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 |
163-43358 5 months ago |
334-15731 334 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.
---
[](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 |
155-45489 5 months ago |
155-45490 155 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.
---
[](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 |
132-22087 4 months ago |
132-22088 132 days ago |
80-71575 80 days |
| 26827 |
pechersky author:pechersky |
feat(Analysis/Normed/ValuativeRel): helper instance for NormedField |
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #26713
- [x] depends on: #26826
|
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 |
124-50691 4 months ago |
124-50691 124 days ago |
122-67006 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
[](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 |
117-73350 3 months ago |
117-73351 117 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.
---
[](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 |
117-73178 3 months ago |
117-73179 117 days ago |
177-42245 177 days |
| 25974 |
scholzhannah author:scholzhannah |
feat(Topology/Compactness/CompactlyCoherentSpace): compact coherentification (k-ification) |
This PR defines the notion of turning an arbitrary topological space into a compactly coherent space. Compactly coherent spaces are commonly referred to as "compactly generated spaces" or "k-spaces" in the literature while the operation of turning a space into such as space is called the "k-ification". There are however three different notions that are described with this name. To disambiguate we use the names "compactly coherent space" and "compactcoherentification" here. See [this wikipedia page](https://en.wikipedia.org/wiki/Compactly_generated_space) for an explanation of these notions.
This PR continues the work from #25318.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25318
Co-authored-by: Floris van Doorn |
merge-conflict
t-topology
large-import
|
174/5 |
Mathlib/Topology/Compactness/CompactlyCoherentSpace.lean |
1 |
5 |
['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'scholzhannah'] |
ADedecker assignee:ADedecker |
117-73010 3 months ago |
117-73011 117 days ago |
147-64645 147 days |
| 26914 |
quangvdao author:quangvdao |
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` |
This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence.
We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute
Some things I'm not clear on:
- I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level?
- Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation.
- Need a double-check on the priority of notation.
Some future definitions to add:
- Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`.
- Definitions of Lenses and Charts (each of them will be a file or even a folder)
- Exponential objects (corresponding to both `prod` and `tensor`)
---
[](https://gitpod.io/from-referrer/)
|
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 |
117-72656 3 months ago |
117-72657 117 days ago |
133-24576 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 |
117-72351 3 months ago |
117-72352 117 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
---
[](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 |
117-72198 3 months ago |
117-72199 117 days ago |
71-37436 71 days |
| 29526 |
llllvvuu author:llllvvuu |
feat: `Multiset.map f` identifies `f` up to permutation |
Motivation: Reason about `Fintype`-indexed families via `Multiset` equality.
Example use case 1:
```lean
theorem Matrix.IsHermitian.cfc_eigenvalues {d : Type*} [Fintype d] [DecidableEq d]
{M : Matrix d d 𝕜} (hM : M.IsHermitian) (f : ℝ → ℝ)
(hcfc : Matrix.IsHermitian (cfc f M) := cfc_predicate f M) :
∃ (e : d ≃ d), hcfc.eigenvalues = f ∘ hM.eigenvalues ∘ e := by
have := hcfc.roots_charpoly_eq_eigenvalues.symm
rw [hM.charpoly_cfc_eq f, Polynomial.roots_prod] at this; swap
· simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero]
simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this
have he := (Multiset.compTriple_equivOfMapUnivEq this).comp_eq
simp_rw [← Function.comp_def RCLike.ofReal, ← Function.comp_def f, Function.comp_assoc] at he
exact ⟨_, RCLike.ofReal_injective.comp_left he.symm⟩
```
Example use case 2 (on top of https://github.com/leanprover-community/mathlib4/pull/29610):
```lean
theorem LinearMap.Eigenbasis.μ_equiv {ι ι' R G : Type*} [Fintype ι] [Fintype ι']
[CommRing R] [IsDomain R] [AddCommGroup G] [Module R G] [Module.Free R G] [Module.Finite R G]
{f : Module.End R G} (B₁ : f.Eigenbasis ι) (B₂ : f.Eigenbasis ι') :
∃ e : ι ≃ ι', B₁.μ = B₂.μ ∘ e := by
classical
have := congr(Polynomial.roots $(B₁.charpoly_eq.symm.trans B₂.charpoly_eq))
rw [Polynomial.roots_prod, Polynomial.roots_prod] at this; rotate_left
· simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero]
· simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero]
simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this
exact ⟨Multiset.equivOfMapUnivEq this, (Multiset.compTriple_equivOfMapUnivEq this).comp_eq.symm⟩
```
Co-authored-by: Aristotle Harmonic
---
[](https://gitpod.io/from-referrer/)
|
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 |
117-72160 3 months ago |
117-72161 117 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)
---
[](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 |
117-71564 3 months ago |
117-71565 117 days ago |
54-85998 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
-/
```
---
[](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 |
117-66585 3 months ago |
117-66586 117 days ago |
11-62509 11 days |
| 6993 |
jjaassoonn author:jjaassoonn |
feat: lemmas about `AddMonoidAlgebra.{divOf, modOf}` |
---
- [x] depends on: #7582
- [x] depends on: #8975
[](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 |
117-45509 3 months ago |
787-50262 787 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
[](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 |
117-45462 3 months ago |
801-50440 801 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
[](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 |
117-45420 3 months ago |
768-14164 768 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
[](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 |
117-44812 3 months ago |
251-69821 251 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
[](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 |
112-5179 3 months ago |
334-13929 334 days ago |
2-85335 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
---
[](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 |
91-17963 3 months ago |
112-53912 112 days ago |
60-67125 60 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
[](https://gitpod.io/from-referrer/)
|
t-category-theory
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 |
9 |
['Jlh18', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sinhp'] |
nobody |
70-39364 2 months ago |
158-45660 158 days ago |
0-2073 34 minutes |
| 33561 |
kbuzzard author:kbuzzard |
chore: cont -> continuous_toFun |
This field is sometimes called `cont` and sometimes `continuous_toFun`. I noticed that the `continuity` tactic sometimes takes a lot longer to prove `cont` even if `continuous_toFun` is available so I thought I'd change them all to see if this speed up mathlib.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
171/149 |
Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/DerivNotation.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/Analysis/Fourier/LpSpace.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/LocallyConvex/Barrelled.lean,Mathlib/Analysis/LocallyConvex/PointwiseConvergence.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Module/Alternating/Basic.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Analysis/Normed/Operator/Banach.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,Mathlib/Analysis/Normed/Operator/Extend.lean,Mathlib/Analysis/RCLike/Extend.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/MFDeriv/Atlas.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/Bochner/L1.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/NumberTheory/ModularForms/JacobiTheta/TwoVariable.lean,Mathlib/Probability/Distributions/Fernique.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/Topology/Algebra/AffineSubspace.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/ContinuousAffineMap.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Alternating/Topology.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean,Mathlib/Topology/Algebra/Module/PointwiseConvergence.lean,Mathlib/Topology/Algebra/Module/Star.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,Mathlib/Topology/ContinuousMap/Algebra.lean,Mathlib/Topology/ContinuousMap/Ideals.lean,Mathlib/Topology/Instances/TrivSqZeroExt.lean,Mathlib/Topology/VectorBundle/Basic.lean |
66 |
5 |
['eric-wieser', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib4-merge-conflict-bot'] |
nobody |
68-20038 2 months ago |
68-20039 68 days ago |
2-81715 2 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
merge-conflict
|
311/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/ArcLengthReparametrization.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib,lake-manifest.json |
5 |
53 |
['SnirBroshi', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'michael-novak-math'] |
j-loreaux assignee:j-loreaux |
68-9898 2 months ago |
68-9899 68 days ago |
6-71429 6 days |
| 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
- [ ] depends on: #26332
[](https://gitpod.io/from-referrer/)
|
merge-conflict
large-import
t-logic
|
529/8 |
Mathlib/Data/Rel.lean,Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean,scripts/noshake.json |
5 |
8 |
['Timeroot', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'staroperator'] |
nobody |
67-47284 2 months ago |
205-25237 205 days ago |
3-3620 3 days |
| 33435 |
astrainfinita author:astrainfinita |
feat: algebra automorphisms of monoid algebras |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
53/3 |
Mathlib/Algebra/MonoidAlgebra/Basic.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
kbuzzard assignee:kbuzzard |
62-29951 2 months ago |
62-29952 62 days ago |
13-16290 13 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`.
---
[](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 |
59-48815 2 months ago |
59-48816 59 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
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebraic-topology
infinity-cosmos
t-meta
|
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 |
23 |
['eric-wieser', 'gio256', 'github-actions', 'joneugster', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
joneugster assignee:joneugster |
59-48602 2 months ago |
239-25742 239 days ago |
88-84229 88 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.
---
[](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 |
57-60384 1 month ago |
159-65288 159 days ago |
25-78230 25 days |
| 32546 |
anishrajeev author:anishrajeev |
feat(ModelTheory): Prove compactness of the type space |
Define the space of types and prove various topological properties of it (zero dimensional, totally separated, compact, baire).
The goal is to formalize the proof of the Omitting Types Theorem
- [ ] depends on: #32215 |
merge-conflict
t-logic
new-contributor
|
127/1 |
Mathlib.lean,Mathlib/ModelTheory/Topology/Types.lean,Mathlib/ModelTheory/Types.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
6 |
['NoneMore', 'anishrajeev', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
fpvandoorn assignee:fpvandoorn |
55-39763 1 month ago |
95-42459 95 days ago |
3-84208 3 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 |
53-39608 1 month ago |
127-4653 127 days ago |
74-62390 74 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.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-combinatorics
|
243/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Planar.lean,Mathlib/Data/CombinatorialMap.lean |
3 |
29 |
['MrBrain295', 'Parcly-Taxel', 'Rida-Hamadani', 'github-actions', 'lambda-fairy', 'leanprover-community-bot-assistant'] |
kmill assignee:kmill |
45-2183 1 month ago |
255-407 255 days ago |
72-50365 72 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
[](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 |
35-66037 1 month ago |
255-2878 255 days ago |
52-61657 52 days |
| 34931 |
eric-wieser author:eric-wieser |
perf: make TensorProduct.lift irreducible with a unification hint |
---
[](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 |
32-34057 1 month ago |
32-34058 32 days ago |
5-66655 5 days |
| 33020 |
FormulaRabbit81 author:FormulaRabbit81 |
chore(Topology): Deprecate file |
---
- [x] depends on: #30851 deprecation
[](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 |
30-10668 1 month ago |
88-84457 88 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
[](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 |
29-65862 1 month ago |
81-33687 81 days ago |
0-2872 47 minutes |
| 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`
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
2/3 |
Mathlib/Data/Fin/Embedding.lean |
1 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
29-46053 1 month ago |
176-54521 176 days ago |
18-38918 18 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 |
29-41779 1 month ago |
29-41779 29 days ago |
0-2935 48 minutes |
| 16215 |
adomasbaliuka author:adomasbaliuka |
feat(Tactic/Linter): lint unwanted unicode |
Add a text-based style linter that checks all unicode characters.
- Only allow whitelisted characters, with a suggestion to add the flagged character to the whitelist
- Some characters are specified to use emoji-variant or text-variant. The linter ensures these variant-selectors only appear in the correct places and provides an auto-fix to clean them up.
---
Discussed at [Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Whitelist.20for.20Unicode.3F/near/448721083)
The current proposal checks each character against a whitelist. There is also the question of what the whitelist should contain.
A reasonable whitelist might be "all unicode currently in Mathlib" ∪ [Wikipedia/Mathematical_operators_and_symbols_in_Unicode](https://en.wikipedia.org/wiki/Mathematical_operators_and_symbols_in_Unicode) ∪ [EdAyers/mathlib3/docs/unicode.md](https://github.com/EdAyers/mathlib/blob/fb5c2ffe917049959597b0a93b872e91f4004922/docs/unicode.md). Currently implemented is a subset of this list closer to what's currently present in mathlib.
- [x] depends on: #17068
- [x] depends on: #17116
- [x] depends on: #17129 (part 1 of this PR)
- ~depends on #34719 (part 1 of this PR)~
- ~depends on: #17131 (part 2 of this PR)~ (obsolete)
- [x] depends on: #34022 (part 2 of this PR)
- Future note: @adomasbaliuka says: "we might add something to the Mathlib 4 docs about this as well?"
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
|
462/15 |
Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/UnicodeLinter.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,Mathlib/Topology/ContinuousFunction/Weierstrass.lean,test/LintStyle.lean |
9 |
51 |
['adomasbaliuka', 'eric-wieser', 'github-actions', 'grunweg', 'joneugster', 'mathlib-dependent-issues'] |
joneugster assignee:joneugster |
28-38294 1 month ago |
537-61202 537 days ago |
1-19055 1 day |
| 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'] |
RemyDegenne assignee:RemyDegenne |
28-35961 1 month ago |
70-28346 70 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 |
27-15907 27 days ago |
27-15908 27 days ago |
5-13758 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 |
27-15906 27 days ago |
27-15906 27 days ago |
4-79090 4 days |
| 33795 |
alreadydone author:alreadydone |
feat(Topology/Sheaves): LocalPredicate prerequisite for étalé spaces |
---
[](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 |
26-79940 26 days ago |
26-79941 26 days ago |
34-16498 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 |
26-59810 26 days ago |
26-59811 26 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.
---
[](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 |
21-76708 21 days ago |
21-76708 21 days ago |
30-23357 30 days |
| 35555 |
JovanGerb author:JovanGerb |
perf: add `AddMonoid` shortcut instance for linear maps |
The hierarchy of classes is such that `AddCommMonoid` is not a direct parent of `AddCommGroup`. This means that when unifying an instance that comes from `AddCommMonoid` with one that comes from `AddCommGroup`, we end up having to go through the shared parent `AddMonoid`. Hence, it can be beneficial to have a separately defined `AddMonoid` instance.
It might be worth it to try to switch up the order of the parents of `AddCommGroup`/`CommGroup` in the `extends` clause, and see if that has beneficial effects. Though this will affect many things, and in particular won't interact well with the `backward.respectTransparency` mess that is going on at the moment.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
23/7 |
Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean |
4 |
5 |
['JovanGerb', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
robin-carlier assignee:robin-carlier |
20-61829 20 days ago |
20-61830 20 days ago |
4-32369 4 days |
| 34854 |
GrigorenkoPV author:GrigorenkoPV |
chore(Combinatorics/Enumerative/Catalan): split into `Basic` & `Tree` |
---
Split off from #34853
[](https://gitpod.io/from-referrer/)
|
new-contributor
merge-conflict
|
228/195 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean |
6 |
5 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
thorimur assignee:thorimur |
20-17963 20 days ago |
20-17964 20 days ago |
19-76299 19 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.
[](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 |
17-27042 17 days ago |
17-27042 17 days ago |
38-12430 38 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
---
[](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 |
14-57623 14 days ago |
214-43033 214 days ago |
10-67838 10 days |
| 36107 |
sgouezel author:sgouezel |
chore: mark definitions outputting classes as `implicit_reducible` |
Definitions outputting classes are here to be used as instances somewhere. If they are not implicit-reducible, then this use as instance is likely to encounter issues for defeq at instance reducibility. This PR marks all class returning definitions of the library as implicit_reducible, using the linter of #36031 and iteration of a python script with manual tweaking.
Marking setoids as implicit_reducible creates a performance issue (why is setoid a class, by the way?) so I kept some of them unchanged.
I'm not sure that it makes sense to mark all class returning defs as implicit_reducible (setoids are a counterexample, but Fintype is also probably not very sensible).
On a side note, many many things in category theory are classes but have defs that construct them, so many many changes of the PR are in category theory. I have no opinion on whether this is desirable as I don't know the design decisions in this corner of the library.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
760/515 |
Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Category/AlgCat/Symmetric.lean,Mathlib/Algebra/Category/FGModuleCat/Colimits.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/Category/Grp/Abelian.lean,Mathlib/Algebra/Category/HopfAlgCat/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Abelian.lean,Mathlib/Algebra/Category/ModuleCat/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Sheafify.lean,Mathlib/Algebra/Category/Ring/LinearAlgebra.lean,Mathlib/Algebra/CharP/Invertible.lean,Mathlib/Algebra/CharP/MixedCharZero.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/Field/Equiv.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/Functor.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/Classical.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/NonUnitalNonAssocAlgebra.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/RingQuot.lean,Mathlib/AlgebraicGeometry/Artinian.lean,Mathlib/AlgebraicGeometry/Cover/Directed.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/Geometrically/Basic.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/LimitsOver.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Finite.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Morphisms/SchemeTheoreticallyDominant.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyOpen.lean,Mathlib/AlgebraicGeometry/Normalization.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicTopology/ModelCategory/Basic.lean,Mathlib/Analysis/AbsoluteValue/Equivalence.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Range.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/LogDeriv.lean,Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/SmoothSeries.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Metric.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/InnerProductSpace/Defs.lean,Mathlib/Analysis/InnerProductSpace/OfNorm.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Matrix/LDL.lean,Mathlib/Analysis/Matrix/Order.lean,Mathlib/Analysis/Matrix/PosDef.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/QuaternionExponential.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/Analysis/Normed/Module/MultipliableUniformlyOn.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/CategoryTheory/Abelian/Basic.lean |
472 |
5 |
['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'sgouezel'] |
nobody |
11-14318 11 days ago |
11-69949 11 days ago |
12-29530 12 days |
| 14712 |
astrainfinita author:astrainfinita |
perf: change instance priority and order about `OfNat` |
---
[](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 |
10-56728 10 days ago |
585-34898 585 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
[](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 |
10-56716 10 days ago |
270-56455 270 days ago |
91-69159 91 days |
| 35900 |
matthewjasper author:matthewjasper |
chore: Fix non-defeq diamonds on OrderDual |
This only makes changes to fix the diamonds, rather than the general defeq abuse with `OrderDual`.
---
- [x] depends on: #35995
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
merge-conflict
|
213/116 |
Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Action/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Synonym.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Module/Synonym.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Order/Ring/Synonym.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Data/Nat/Cast/Synonym.lean,Mathlib/Order/Lattice.lean |
13 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
10-49938 10 days ago |
14-11956 14 days ago |
15-84640 15 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.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory
merge-conflict
|
384/0 |
Mathlib.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/DeltaSystem.lean,Mathlib/SetTheory/Cardinal/Pigeonhole.lean,docs/references.bib |
6 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
7-27158 7 days ago |
22-35752 22 days ago |
22-36542 22 days |
| 35435 |
WenrongZou author:WenrongZou |
feat(RingTheory/MvPowerSeries): toMvPowerSeries and rename |
---
Some APIs about `rename` and `toMvPowerSeries`. This follows the inspiration in `Polynomial.toMvPolynomial` and `MvPolynomial.rename`. I will add more theorems related to these in the next PR.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
merge-conflict
|
325/4 |
Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean |
4 |
7 |
['BryceT233', 'WenrongZou', 'github-actions', 'mariainesdff', 'mathlib-merge-conflicts'] |
mariainesdff assignee:mariainesdff |
5-78953 5 days ago |
27-72396 27 days ago |
27-72720 27 days |
| 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.
---
- [ ] depends on: #36013
[](https://gitpod.io/from-referrer/)
|
brownian
merge-conflict
|
313/0 |
Mathlib.lean,Mathlib/Data/Set/Accumulate.lean,Mathlib/Data/Set/Dissipate.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/Topology/Compactness/CompactSystem.lean |
5 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
5-78941 5 days ago |
11-21554 11 days ago |
11-21445 11 days |
| 36575 |
dagurtomas author:dagurtomas |
modifications to #35871 |
---
So this doesn't appear on the queue:
- [ ] depends on: #35871
[](https://gitpod.io/from-referrer/)
|
t-category-theory
merge-conflict
|
47/51 |
Mathlib/AlgebraicGeometry/Morphisms/Finite.lean,Mathlib/AlgebraicGeometry/Morphisms/FlatDescent.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/Limits.lean |
5 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
3-48473 3 days ago |
4-5667 4 days ago |
0-11 11 seconds |
| 27534 |
PierreQuinton author:PierreQuinton |
feat: a typeclass for `sSup`/`sInf` to be lawful |
Adds lawful infima and suprema type classes.
A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set.
A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set.
---
[](https://gitpod.io/from-referrer/)
|
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 |
2-41419 2 days ago |
117-72494 117 days ago |
114-38193 114 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.
---
[](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 |
0-69964 19 hours ago |
23-63490 23 days ago |
27-57859 27 days |
| 36316 |
JovanGerb author:JovanGerb |
chore: import `Type*` in `Mathlib.Init` |
The implementation of `Type*` is very short, so I've put its minimal dependencies in the same file, `Mathlib.Tactic.TypeStar`, and imported this in `Mathlib.Init`. This allows us to get rid of many explicit imports of this file, and lets it be available everywhere in mathlib.
---
[](https://gitpod.io/from-referrer/)
|
large-import
maintainer-merge
merge-conflict
|
58/87 |
Mathlib/Algebra/Notation.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Notation/Lemmas.lean,Mathlib/Control/Functor.lean,Mathlib/Data/Bool/AllAny.lean,Mathlib/Data/Bracket.lean,Mathlib/Data/Int/Cast/Pi.lean,Mathlib/Data/Int/Init.lean,Mathlib/Data/List/Lookmap.lean,Mathlib/Data/List/ModifyLast.lean,Mathlib/Data/List/TFAE.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Num/Basic.lean,Mathlib/Data/Option/Defs.lean,Mathlib/Data/Option/NAry.lean,Mathlib/Data/Ordering/Basic.lean,Mathlib/Data/Prod/PProd.lean,Mathlib/Data/Rat/Init.lean,Mathlib/Data/Tree/Basic.lean,Mathlib/Data/Vector3.lean,Mathlib/Init.lean,Mathlib/Lean/Elab/Term.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/Nonempty.lean,Mathlib/Logic/Nontrivial/Defs.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Notation.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/CategoryTheory/CategoryStar.lean,Mathlib/Tactic/FunProp/Mor.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/Inhabit.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/MkIffOfInductiveProp.lean,Mathlib/Tactic/TypeStar.lean,MathlibTest/BasicFiles/Init.lean,MathlibTest/BasicFiles/TacticBasic.lean,MathlibTest/ImplicitUniverses.lean |
44 |
5 |
['SnirBroshi', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] |
j-loreaux assignee:j-loreaux |
0-69958 19 hours ago |
9-47064 9 days ago |
9-50323 9 days |
| 35518 |
kim-em author:kim-em |
chore: forbid prime (') in filenames, rename LinearCombination' |
This PR renames `Mathlib/Tactic/LinearCombination'.lean` to `LinearCombinationPrime.lean` (and the corresponding test file), and adds a lint check to `modulesOSForbidden` to prevent future files with prime/apostrophe characters in their names.
The `'` character in filenames causes shell escaping issues in scripts (any `find ... -name '*.lean'` or similar pattern needs careful quoting to handle these files correctly).
🤖 Prepared with Claude Code |
file-removed
t-meta
merge-conflict
LLM-generated
|
13/8 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LinearCombinationPrime.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,MathlibTest/linear_combination_prime.lean |
6 |
7 |
['eric-wieser', 'euprunin', 'github-actions', 'kim-em', 'mathlib-merge-conflicts'] |
adamtopaz assignee:adamtopaz |
0-46304 12 hours ago |
23-67417 23 days ago |
23-70494 23 days |
| 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.
---
[](https://gitpod.io/from-referrer/)
|
t-data
merge-conflict
|
433/475 |
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/PartENat.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/Deprecated/Estimator.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 |
82 |
30 |
['JovanGerb', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
vihdzp assignee:vihdzp |
0-20523 5 hours ago |
1-3488 1 day ago |
9-77706 9 days |
| 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.
---
[](https://gitpod.io/from-referrer/)
|
tech debt
merge-conflict
|
253/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/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,Mathlib/Order/CompleteLattice/Basic.lean |
139 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-20516 5 hours ago |
0-47397 13 hours ago |
0-47331 13 hours |
| 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)`
[](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 |
578-63748 1 year ago |
609-24330 609 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`.
---
[](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 |
574-48657 1 year ago |
609-54879 609 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`.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
new-contributor
|
90/0 |
Mathlib/Data/Nat/PartENat.lean |
1 |
3 |
['erdOne', 'github-actions', 'urkud'] |
nobody |
561-60547 1 year ago |
612-68069 612 days ago |
0-6775 1 hour |
| 15121 |
Eloitor author:Eloitor |
feat: iff theorems for IsSplitEpi and IsSplitMono in opposite category |
---
[](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 |
561-23492 1 year ago |
592-69151 592 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
---
[](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 |
538-34551 1 year ago |
626-23498 626 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
[](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 |
530-30529 1 year ago |
545-58603 545 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
[](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 |
530-30529 1 year ago |
545-58604 545 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
[](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 |
530-30528 1 year ago |
545-54354 545 days ago |
0-613 10 minutes |
| 14619 |
Command-Master author:Command-Master |
chore: Merge `Trunc` to `Squash` |
Remove `Trunc` and use `Squash` instead
---
[](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 |
520-77079 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
[](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 |
512-53186 1 year ago |
661-35284 661 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]`.
[](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 |
495-81462 1 year ago |
495-81462 495 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
[](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 |
493-37583 1 year ago |
529-26895 529 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 |
488-76415 1 year ago |
502-62603 502 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
---
[](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 |
459-12432 1 year ago |
485-60214 485 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
---
[](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 |
425-34444 1 year ago |
518-26014 518 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 |
424-53530 1 year ago |
545-64691 545 days ago |
9-13962 9 days |
| 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
---
[](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 |
424-19449 1 year ago |
464-19062 464 days ago |
33-8818 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
---
[](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 |
420-67029 1 year ago |
420-67029 420 days ago |
69-24210 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
[](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 |
419-41108 1 year ago |
425-8509 425 days ago |
27-52347 27 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`)
[](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 |
412-58456 1 year ago |
412-58456 412 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.
[](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 |
400-15766 1 year ago |
406-66683 406 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
---
[](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 |
395-49865 1 year ago |
402-61487 402 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.
---
[](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 |
390-18636 1 year ago |
390-18636 390 days ago |
13-33168 13 days |
| 14060 |
YnirPaz author:YnirPaz |
feat(SetTheory/Ordinal/Clubs): define club sets and prove basic properties |
Create a file where club sets are defined and their basic properties are proven.
I also created a new recursion principle for ordinals, bounded recursion.
---
- [ ] depends on: #19189
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
new-contributor
t-logic
|
315/3 |
Mathlib.lean,Mathlib/Order/SuccPred/Limit.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Club.lean,Mathlib/SetTheory/Ordinal/Topology.lean |
6 |
93 |
['YaelDillies', 'YnirPaz', 'alreadydone', 'dupuisf', 'github-actions', 'mathlib4-dependent-issues-bot', 'vihdzp', 'zeramorphic'] |
nobody |
378-887 1 year ago |
436-23371 436 days ago |
93-453 93 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.
---
[](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 |
376-44477 1 year ago |
376-44477 376 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`.
[](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 |
368-40303 1 year ago |
551-43532 551 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
---
[](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 |
349-75702 11 months ago |
375-18258 375 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 |
344-70691 11 months ago |
538-48062 538 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
[](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 |
341-56611 11 months 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
[](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 |
341-52879 11 months ago |
341-52880 341 days ago |
57-47357 57 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.
[](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 |
340-55607 11 months ago |
415-47807 415 days ago |
5-6208 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
---
[](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 |
333-26805 10 months ago |
416-37273 416 days ago |
8-45680 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
---
[](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 |
333-22937 10 months ago |
413-13910 413 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.
---
[](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 |
317-73776 10 months 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
[](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 |
315-20055 10 months ago |
584-43240 584 days ago |
0-179 2 minutes |
| 24008 |
meithecatte author:meithecatte |
chore(EpsilonNFA): replace manual lemmas with @[simps] |
---
[](https://gitpod.io/from-referrer/)
|
t-computability
awaiting-author
new-contributor
|
2/24 |
Mathlib/Computability/EpsilonNFA.lean |
1 |
2 |
['YaelDillies', 'github-actions', 'urkud'] |
nobody |
309-65634 10 months ago |
309-65634 309 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
[](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 |
293-37975 9 months ago |
293-37977 293 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`.
---
[](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 |
283-9928 9 months ago |
666-37581 666 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.
---
[](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 |
276-2481 9 months ago |
414-40462 414 days ago |
27-62333 27 days |
| 25218 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): Tate normal form of elliptic curves |
---
[](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 |
254-85642 8 months ago |
287-60759 287 days ago |
6-44784 6 days |
| 10541 |
xgenereux author:xgenereux |
feat(Algebra/SkewMonoidAlgebra/Basic): add SkewMonoidAlgebra |
# Skew Monoid algebras
This file presents a skewed version of `Mathlib.Algebra.MonoidAlgebra.Basic`.
## Definition
We define `SkewMonoidAlgebra k G := G →₀ k` attached with a skewed convolution product.
Here, the product of two elements `f g : SkewMonoidAlgebra k G` is the finitely supported
function whose value at `a` is the sum of `f x * (x • g y)` over all pairs `x, y`
such that `x * y = a`.
This will be used in a later PR to define skew polynomial rings.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
- [x] depends on: #15878
- [x] depends on: #19084
- [x] depends on: #22078
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
new-contributor
label:t-algebra$ |
1624/0 |
Mathlib.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean |
4 |
105 |
['AntoineChambert-Loir', 'YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions', 'mariainesdff', 'mathlib4-dependent-issues-bot', 'mattrobball', 'xgenereux'] |
AntoineChambert-Loir assignee:AntoineChambert-Loir |
250-54720 8 months ago |
577-58286 577 days ago |
179-14511 179 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`
---
[](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 |
228-57782 7 months ago |
765-50708 765 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
[](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 |
224-63973 7 months ago |
254-85642 254 days ago |
38-26044 38 days |
| 18646 |
jxjwan author:jxjwan |
feat(RingTheory): isotypic components |
---
[](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 |
223-65994 7 months ago |
496-74563 496 days ago |
0-1609 26 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.
---
[](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 |
218-69535 7 months ago |
419-44350 419 days ago |
9-59130 9 days |
| 22925 |
ggranberry author:ggranberry |
feat(Mathlib/PlaceHolder/ToeplitzHausdorff): Toeplitz-Hausdorff |
---
[](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 |
11 |
['faenuccio', 'ggranberry', 'github-actions'] |
faenuccio assignee:faenuccio |
215-61405 7 months ago |
363-46287 363 days ago |
0-1302 21 minutes |
| 20722 |
ctchou author:ctchou |
feat(Counterexamples): the Vitali set is non-measurable |
---
[](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 |
212-59219 7 months ago |
426-51189 426 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 |
209-81031 6 months ago |
212-66560 212 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.
[](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 |
207-31139 6 months ago |
430-1698 430 days ago |
43-22586 43 days |
| 28095 |
Equilibris author:Equilibris |
Univ generic corec |
Draft PR: Adding variable universe corecursor for PFunctor
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
new-contributor
|
321/70 |
Mathlib/Data/PFunctor/Multivariate/Basic.lean,Mathlib/Data/PFunctor/Multivariate/M.lean,Mathlib/Data/TypeVec.lean |
3 |
7 |
['Equilibris', 'alexkeizer', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
206-16401 6 months ago |
unknown |
0-0 0 seconds |
| 28150 |
Equilibris author:Equilibris |
chore: clean up proofs typevec proofs |
While adding variable universe corecs I found a lot of theorems in typevec that could do with a bit of a clean-up
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
new-contributor
|
24/26 |
Mathlib/Data/TypeVec.lean |
1 |
7 |
['Equilibris', 'alexkeizer', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
206-16400 6 months ago |
206-16401 206 days ago |
13-49738 13 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)
---
[](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 |
205-82120 6 months ago |
228-58042 228 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.
---
[](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 |
205-43952 6 months ago |
228-58043 228 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.
---
[](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 |
205-43713 6 months ago |
234-41410 234 days ago |
0-237 3 minutes |
| 28279 |
Equilibris author:Equilibris |
feat: univ generic W |
A simple change making `W.ind`'s motive universe generic.
---
A theorem `w_ind_eq` will now be needed, but this will depend on getting `dcongr_heq` merged, and hence I will do this in a separate PR.
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
16/21 |
Mathlib/Data/PFunctor/Multivariate/W.lean |
1 |
8 |
['Equilibris', 'alexkeizer', 'github-actions'] |
nobody |
197-28922 6 months ago |
unknown |
0-0 0 seconds |
| 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!
[](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 |
189-15081 6 months ago |
189-46184 189 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 |
188-49983 6 months ago |
188-49984 188 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.
---
[](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 |
186-45705 6 months ago |
277-53543 277 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 |
173-49183 5 months ago |
185-53546 185 days ago |
0-1498 24 minutes |
| 29657 |
jcreinhold author:jcreinhold |
feat(CategoryTheory/MarkovCategory): add Markov categories |
This PR adds Markov categories to the category theory library. A Markov category is a symmetric monoidal category where every object has canonical copy and delete morphisms that form commutative comonoids.
## What this gives mathlib
In a Markov category, morphisms model probabilistic processes. The copy morphism `X → X ⊗ X` creates perfect correlation (both outputs always equal). The delete morphism `X → I` marginalizes (sums/integrates out variables).
This structure captures probability theory categorically. The same theorem proves results for:
- Finite probability (stochastic matrices)
- Measure theory (Markov kernels)
- Kleisli categories of probability monads
Fritz (2020) used this to prove categorical versions of Fisher-Neyman, Basu's theorem, and other core statistics results.
## Implementation
- `MarkovCategory`: Extends `SymmetricCategory` with canonical comonoid structure
- `copyMor X : X ⟶ X ⊗ X` and `delMor X : X ⟶ I` for each object
- Coherence axioms: commutativity, counitality, coassociativity
- Compatibility with tensor products
Key design point: The comonoid structure is canonical (fields of the typeclass), not chosen. This matches the probability interpretation where there's exactly one way to copy/marginalize.
## Examples included
1. Cartesian categories: Every cartesian monoidal category forms a Markov category where copy is the diagonal `x ↦ (x,x)` and delete is the terminal morphism. All morphisms are deterministic.
2. FinStoch: Objects are finite types. Morphisms are stochastic matrices (rows sum to 1). This models finite probability spaces with the usual matrix multiplication for composition.
## Scope and review notes
This PR provides the basic structure only. Future PRs would add:
- Conditional independence
- Sufficient statistics
- Connection to measure-theoretic probability
- More examples (Kleisli categories, Gaussian categories)
I'm neither an expert in this material nor in Lean; I've only read a few papers on Markov categories and have gone through tutorial material in Lean. Please review for mathematical correctness and idiomatic Lean. I kept this PR small to check if mathlib wants this addition and to ensure it meets repository standards.
## Why add this now
Markov categories provide a useful abstraction level for probability in type theory. Adding it to mathlib enables future work on categorical probability and statistics. In particular, I'm working on a probabilistic programming library and would like to write some proofs using these constructs.
## References
- Fritz, T. (2020). [A synthetic approach to Markov kernels, conditional independence and theorems on sufficient statistics](https://arxiv.org/abs/1908.07021). *Advances in Mathematics*, 370, 107239.
- Cho, K., & Jacobs, B. (2019). [Disintegration and Bayesian inversion via string diagrams](https://arxiv.org/abs/1709.00322). *Mathematical Structures in Computer Science*, 29(7), 938-971.
---
All definitions include docstrings. The PR has tests for the core functionality.
[](https://gitpod.io/from-referrer/) |
merge-conflict
awaiting-author
t-category-theory
new-contributor
|
2414/7 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Monad/Basic.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Basic.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Deterministic.lean,Mathlib/CategoryTheory/MarkovCategory/Basic.lean,Mathlib/CategoryTheory/MarkovCategory/Cartesian.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/Basic.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/Braided.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/CopyDiscard.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/Markov.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Bimon_.lean,Mathlib/CategoryTheory/Monoidal/CommComon_.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,MathlibTest/CategoryTheory/MarkovCategory.lean,docs/references.bib |
16 |
28 |
['github-actions', 'jcreinhold', 'joelriou', 'mathlib4-merge-conflict-bot'] |
nobody |
172-50014 5 months ago |
177-56138 177 days ago |
0-10638 2 hours |
| 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.
---
[](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 |
168-64227 5 months ago |
269-73627 269 days ago |
0-47289 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)
---
[](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 |
163-29973 5 months ago |
163-29973 163 days ago |
46-26438 46 days |
| 29926 |
jcreinhold author:jcreinhold |
feat(CategoryTheory/MarkovCategory): add basic finite stochastic matrices definitions to Markov category |
This PR introduces FinStoch, the category of finite stochastic matrices, as a concrete example of a Markov category.
This PR builds on #29925, #29939, and #29919 and was split up from #29657.
## Main additions
### 1. Core definitions (`FinStoch/Basic.lean`)
- `StochasticMatrix m n`: Matrices where rows sum to 1, representing conditional probabilities P(j|i)
- `FinStoch`: The category with finite types as objects and stochastic matrices as morphisms
- `DetMorphism`: Deterministic matrices (exactly one 1 per row) with their underlying functions
- Composition: Matrix multiplication preserves row-stochasticity via the Chapman-Kolmogorov equation
Key design choices:
- Row-stochastic convention: entry (i,j) is P(output=j | input=i)
- Deterministic morphisms tracked separately for structural isomorphisms
### 2. Monoidal structure (`FinStoch/Monoidal.lean`)
Implements tensor products modeling independent parallel processes:
- Tensor on objects: Cartesian product of finite types
- Tensor on morphisms: Kronecker product P((j₁,j₂)|(i₁,i₂)) = P(j₁|i₁) × P(j₂|i₂)
- Structural morphisms: Associator, unitors use deterministic permutations
- Coherence**: Pentagon and triangle identities verified computationally
## Mathematical significance
FinStoch provides the canonical example of a Markov category:
- Morphisms: Stochastic matrices/Markov chains
- Composition: Chapman-Kolmogorov equation for multi-step transitions
- Tensor: Independent parallel processes
This models finite probability spaces categorically, where:
- Objects represent sample spaces
- Morphisms represent probabilistic transitions
- Tensor products model independence
## References
Fritz (2020)
- [ ] depends on: #29925 |
merge-conflict
t-category-theory
new-contributor
|
1437/0 |
Mathlib.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Basic.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Deterministic.lean,Mathlib/CategoryTheory/MarkovCategory/Basic.lean,Mathlib/CategoryTheory/MarkovCategory/Cartesian.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/Basic.lean,Mathlib/CategoryTheory/MarkovCategory/FinStoch/Monoidal.lean,MathlibTest/CategoryTheory/MarkovCategory.lean,docs/references.bib |
9 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
157-40428 5 months ago |
unknown |
0-0 0 seconds |
| 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.
---
[](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 |
157-39278 5 months ago |
547-66827 547 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
---
[](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 |
147-49528 4 months ago |
147-49528 147 days ago |
8-8414 8 days |
| 25225 |
xcloudyunx author:xcloudyunx |
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices |
---
[](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 |
146-13060 4 months ago |
146-13060 146 days ago |
148-3338 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`).
---
[](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 |
144-36492 4 months ago |
144-36560 144 days ago |
0-83 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!
[](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 |
139-68931 4 months ago |
155-43607 155 days ago |
47-58551 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
---
[](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 |
139-60661 4 months ago |
160-43290 160 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
[](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 |
139-60659 4 months ago |
160-41159 160 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`.
---
---
[](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 |
133-60182 4 months ago |
133-60182 133 days ago |
41-53612 41 days |
| 30158 |
nicolaviolette author:nicolaviolette |
feat: combinatorics simplegraph basic |
---
[](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 |
132-79712 4 months ago |
132-79712 132 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 |
130-39980 4 months ago |
251-41350 251 days ago |
0-267 4 minutes |
| 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`
[](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 |
124-2971 4 months ago |
163-68037 163 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
---
[](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 |
119-20103 3 months ago |
538-47491 538 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]
[](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 |
118-36344 3 months ago |
463-86274 463 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.
[](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 |
117-74201 3 months ago |
801-12696 801 days ago |
0-433 7 minutes |
| 13442 |
dignissimus author:dignissimus |
feat: mabel tactic for multiplicative abelian groups |
Mabel tactic for multiplicative abelian groups (#10361)
---
[](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 |
117-73937 3 months ago |
567-66023 567 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
[](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 |
117-73935 3 months ago |
538-49071 538 days ago |
26-40037 26 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.
---
[](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 |
117-73806 3 months ago |
593-40037 593 days ago |
1-48443 1 day |
| 17587 |
kmill author:kmill |
feat: Sym2-as-Finset theory |
---
[](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 |
117-73652 3 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
---
[](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 |
117-73650 3 months ago |
496-39053 496 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
[](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 |
117-73512 3 months ago |
315-20041 315 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`.
---
[](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 |
117-73372 3 months ago |
344-57327 344 days ago |
50-8745 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
---
[](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 |
117-73366 3 months ago |
364-67379 364 days ago |
20-81771 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.
---
[](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 |
117-73357 3 months ago |
384-20959 384 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 |
117-73344 3 months ago |
340-55858 340 days ago |
28-59574 28 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.
---
[](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 |
117-73191 3 months ago |
203-71772 203 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 |
117-73042 3 months ago |
260-10205 260 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 `variation μ = μ`.
Co-authored-by: @yoh-tanimoto
- [ ] depends on: #26160
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
new-contributor
t-measure-probability
|
467/0 |
Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Lemmas.lean |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
117-72853 3 months ago |
254-67808 254 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
[](https://gitpod.io/from-referrer/)
|
WIP
new-contributor
merge-conflict
awaiting-author
t-analysis
|
468/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Partial.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean |
3 |
21 |
['YaelDillies', 'agjftucker', 'github-actions', 'igorkhavkine', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] |
sgouezel assignee:sgouezel |
117-72830 3 months ago |
214-34820 214 days ago |
44-77065 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 |
117-72682 3 months ago |
233-30040 233 days ago |
25-5689 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
---
[](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 |
117-72677 3 months ago |
146-61487 146 days ago |
62-14616 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.
---
[](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 |
117-72640 3 months ago |
244-60249 244 days ago |
0-287 4 minutes |
| 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
[](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 |
117-72485 3 months ago |
228-43648 228 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.
---
[](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 |
117-72483 3 months ago |
227-18310 227 days ago |
0-5814 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 |
117-72351 3 months ago |
117-72352 117 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 |
117-72337 3 months ago |
212-26165 212 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
---
[](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 |
117-72198 3 months ago |
117-72199 117 days ago |
71-37436 71 days |
| 29947 |
JaafarTanoukhi author:JaafarTanoukhi |
feat(Combinatorics/Digraph): Maps |
Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771)
---
[](https://gitpod.io/from-referrer/)
|
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 |
117-71564 3 months ago |
117-71565 117 days ago |
54-85998 54 days |
| 30230 |
CoolRmal author:CoolRmal |
feat(MeasureTheory): Basic properties of the integral against a vector measure with a bilinear form. |
Create a folder named Integral in the folder about vector measures. Define the integral of a function against a vector measure with a bilinear form, and prove that integral is a linear operator on functions, bilinear forms, and vector measures, respectively. Several useful lemmas are added into the file about variations of a vector measure (e.g. triangle inequality).
---
- [ ] depends on: #28499
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
new-contributor
t-measure-probability
|
1353/0 |
Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Integral/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Integral/L1.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Lemmas.lean |
6 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
117-71395 3 months ago |
unknown |
0-0 0 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
[](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 |
117-68396 3 months ago |
561-61510 561 days ago |
48-65595 48 days |
| 31590 |
SuccessMoses author:SuccessMoses |
chore: tag `commutatorElement_def` with `simp` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebra
new-contributor
label:t-algebra$ |
1/0 |
Mathlib/Algebra/Group/Commutator.lean |
1 |
2 |
['github-actions', 'grunweg'] |
nobody |
117-46271 3 months ago |
123-52722 123 days ago |
0-1762 29 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.
---
[](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 |
117-45412 3 months ago |
747-12857 747 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)
---
[](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 |
117-45259 3 months ago |
480-52138 480 days ago |
15-38473 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.
---
[](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 |
117-45196 3 months ago |
453-62445 453 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
[](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 |
117-45169 3 months ago |
410-23983 410 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$.
---
[](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 |
117-45052 3 months ago |
329-43987 329 days ago |
8-27909 8 days |
| 26881 |
emo916math author:emo916math |
feat(Analysis/Calculus/Deriv/Star): a formula for `deriv (conj ∘ f ∘ conj)` |
Added a lemma that `deriv (conj ∘ f ∘ conj) = conj ∘ deriv f ∘ conj`, proved by cases on whether the derivative mathematically exists or not. This PR replaces [#26805](https://github.com/leanprover-community/mathlib4/pull/26805); see discussion there.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-analysis
new-contributor
|
50/2 |
Mathlib/Analysis/Calculus/Deriv/Star.lean |
1 |
15 |
['emo916math', 'github-actions', 'j-loreaux', 'kckennylau'] |
j-loreaux assignee:j-loreaux |
117-44818 3 months ago |
220-44566 220 days ago |
31-70575 31 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.
---
[](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 |
117-44735 3 months ago |
146-31870 146 days ago |
74-62001 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
-->
[](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 |
117-44714 3 months ago |
217-83781 217 days ago |
0-454 7 minutes |
| 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.
---
[](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 |
117-44603 3 months ago |
184-45673 184 days ago |
0-1063 17 minutes |
| 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 |
117-44515 3 months ago |
208-19018 208 days ago |
0-581 9 minutes |
| 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 |
117-30911 3 months ago |
117-30911 117 days ago |
138-3922 138 days |
| 29434 |
ntapiam author:ntapiam |
feat(NonAssoc/LieAdmissible): prove every ring/algebra is LieAdmissible |
-awaiting-author |
t-algebra
new-contributor
label:t-algebra$ |
27/6 |
Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
115-29221 3 months ago |
115-28373 115 days ago |
0-1498 24 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
---
[](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 |
114-53060 3 months ago |
114-52649 114 days ago |
31-49241 31 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.
---
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
23/0 |
Mathlib/Data/EReal/Operations.lean |
1 |
4 |
['JovanGerb', 'LLaurance', 'dobronx1325', 'github-actions'] |
nobody |
111-702 3 months ago |
111-56114 111 days ago |
6-25774 6 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$.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
awaiting-author
|
14/0 |
Mathlib/Analysis/Convolution.lean |
1 |
3 |
['github-actions', 'urkud'] |
nobody |
108-73482 3 months ago |
108-73482 108 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
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-analysis
new-contributor
|
331/0 |
Mathlib/Analysis/Normed/Operator/SingularValues.lean |
1 |
2 |
['github-actions', 'nielsvoss'] |
nobody |
108-24623 3 months ago |
unknown |
0-0 0 seconds |
| 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
|
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 |
64 |
['YaelDillies', 'github-actions', 'kckennylau', 'ntapiam'] |
nobody |
101-45459 3 months ago |
114-12272 114 days ago |
0-34649 9 hours |
| 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 |
101-32221 3 months ago |
109-75764 109 days ago |
39-49182 39 days |
| 31113 |
515801431 author:515801431 |
feat(Mathlib/Combinatorics/Enumerative/Polya.lean): Add additional theorem in `Polya.lean` |
---
- [ ] depends on: #30525
---
[](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 |
101-32097 3 months ago |
110-54523 110 days ago |
16-82714 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.
[](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 |
101-27699 3 months ago |
283-54043 283 days ago |
29-59355 29 days |
| 29744 |
espottesmith author:espottesmith |
feat(Combinatorics): define directed hypergraphs |
This PR defines directed hypergraphs:
```
@[ext]
structure DiHypergraph (α : Type*) where
/-- The vertex set -/
vertexSet : Set α
/-- The edge set -/
edgeSet : Set ((Set α) × (Set α))
/-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/
edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet
```
Additional definitions:
- tail/head stars and negative/positive stars
- some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty)
- Vertex and (hyper)edge adjacency
- isolated vertices
- empty and nonempty dihypergraphs
The design employed here is based off of #28613, but this PR does not depend on that one.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
391/0 |
Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
b-mehta assignee:b-mehta |
98-55136 3 months ago |
98-55089 98 days ago |
57-69412 57 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
[](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 |
98-52932 3 months ago |
98-52932 98 days ago |
18-38983 18 days |
| 28613 |
espottesmith author:espottesmith |
feat(Combinatorics): define undirected hypergraphs |
This PR defines undirected hypergraphs:
```
@[ext]
structure Hypergraph (α : Type*) where
/-- The vertex set -/
vertexSet : Set α
/-- The hyperedge set -/
hyperedgeSet : Set (Set α)
/-- All hyperedges must be subsets of the vertex set -/
hyperedge_isSubset_vertexSet : ∀ ⦃e⦄, e ∈ hyperedgeSet → e ⊆ vertexSet
```
In addition to the main definition, some additional definitions and related lemmas are provided:
- vertex adjacency
- hyperedge adjacency
- vertex "stars"
- special cases (loops, empty hypergraphs, trivial hypergraphs, complete hypergraphs, simple hypergraphs, k-uniform hypergraphs, and d-regular hypergraphs)
- (some) hypergraph cardinality
- subhypergraphs, induced subhypergraphs, and partial hypergraphs
This implementation is certainly bare-bones. I'm submitting this PR at this point, rather than when my developments are more fleshed out, because there has been some interest in others contributing to hypergraph formalization in mathlib.
In the near future, goals include:
- defining incidence matrices (i.e., conversion from `Hypergraph α` to `Matrix α (Set α) β`
- coersion/generalization of graph as 2-uniform hypergraph
- conversion of a hypergraph into its associated clique graph/two-section graph
- constructing the dual of a hypergraph (note: on first blush, this appears somewhat challenging, given that we define hyperedges as `Set α` rather than some other type `β`)
- rank and co-rank
- walks, paths, cycles, etc. on hypergraphs
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
merge-conflict
|
375/0 |
Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean |
2 |
54 |
['b-mehta', 'espottesmith', 'github-actions', 'jt496', 'lauramonk', 'mathlib4-merge-conflict-bot'] |
b-mehta assignee:b-mehta |
96-72545 3 months ago |
98-55087 98 days ago |
76-58243 76 days |
| 32869 |
felixpernegger author:felixpernegger |
feat(RingTheory): lemmas around ```Ring.choose``` |
Various small lemmas around Ring.choose.
In particular this should cover all statements from .Data.Nat.Choose.Basic which have a meaningful generalization to arbitrary rings. |
new-contributor
t-ring-theory
|
170/0 |
Mathlib/RingTheory/Binomial.lean,Mathlib/RingTheory/Polynomial/Pochhammer.lean |
2 |
1 |
['github-actions'] |
nobody |
92-67797 3 months ago |
92-77332 92 days ago |
0-1503 25 minutes |
| 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
---
[](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 |
92-45038 3 months ago |
92-45038 92 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 |
87-68440 2 months ago |
87-68480 87 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 |
87-16809 2 months ago |
87-16809 87 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
---
[](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 |
86-49006 2 months ago |
146-13574 146 days ago |
54-75088 54 days |
| 26923 |
oliver-butterley author:oliver-butterley |
feat(Dynamics/BirkhoffSum): add the pointwise ergodic theorem (Birkhoff's) |
The Pointwise Ergodic Theorem, also known as Birkhoff's Ergodic Theorem.
Co-authored-by: Lua Viana Reis
- [x] depends on: #26074
- [x] depends on: #26807
- [x] depends on: #26810
- [x] depends on: #26840
- [x] depends on: #26842
- [x] depends on: #26848
- [x] depends on: #26851
- [x] depends on: #26852
- [x] depends on: #26853
- [x] depends on: #27008
- [x] depends on: #28901
Zulip: [PR thread](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2326923.20The.20pointwise.20ergodic.20theorem.20.28Birkhoff's.29/with/527835158)
---
[](https://gitpod.io/from-referrer/)
|
t-dynamics
new-contributor
awaiting-author
|
398/0 |
Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Pointwise.lean |
2 |
31 |
['D-Thomine', 'github-actions', 'leanprover-community-bot-assistant', 'lua-vr', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel', 'urkud'] |
sgouezel assignee:sgouezel |
84-71429 2 months ago |
90-29347 90 days ago |
98-51478 98 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 |
83-81671 2 months ago |
84-556 84 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 |
83-81563 2 months ago |
84-330 84 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 |
83-81479 2 months ago |
84-142 84 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 |
83-79151 2 months ago |
83-79152 83 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 |
83-79149 2 months ago |
83-79150 83 days ago |
0-1431 23 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 |
83-79148 2 months ago |
83-79149 83 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 |
83-79146 2 months ago |
83-79147 83 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 |
83-79143 2 months ago |
83-79146 83 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 |
83-79142 2 months ago |
83-79143 83 days ago |
0-2387 39 minutes |
| 33178 |
gw90 author:gw90 |
feat(Analysis/CStarAlgebra/Spectrum): Adding lemmas that the CStarAlgebra norm equals the square root of the spectral radius of star a * a |
Adds lemmas that the ||a||^2_A=sqrt(spectralRadius C (star a * a)). I think it would be helpful to have these lemmas available in Mathlib. It'll help with some of the other things I'm working on. Feel free to move them to a different file or rename them as you see fit. |
new-contributor
t-analysis
awaiting-author
|
24/0 |
Mathlib/Analysis/CStarAlgebra/Spectrum.lean |
1 |
15 |
['github-actions', 'gw90', 'themathqueen', 'vihdzp'] |
nobody |
83-31010 2 months ago |
85-6629 85 days ago |
0-15209 4 hours |
| 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.
[](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 |
80-21228 2 months ago |
103-24685 103 days ago |
3-49892 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.
---
[](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 |
79-37880 2 months ago |
79-37880 79 days ago |
10-12739 10 days |
| 33163 |
Aaron1011 author:Aaron1011 |
feat: prove subgroup of (M -> Z) is finitely generated |
---
[](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 |
79-30830 2 months ago |
79-30830 79 days ago |
5-82139 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 |
73-59021 2 months ago |
73-59021 73 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)
---
[](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 |
72-25945 2 months ago |
72-25946 72 days ago |
0-60133 16 hours |
| 22657 |
Xmask19 author:Xmask19 |
feat: a graph is maximally acyclic iff it is a tree |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-combinatorics
new-contributor
|
86/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean |
1 |
8 |
['Rida-Hamadani', 'SnirBroshi', 'b-mehta', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
b-mehta assignee:b-mehta |
72-19038 2 months ago |
342-48357 342 days ago |
21-77121 21 days |
| 17176 |
arulandu author:arulandu |
feat: integrals and integrability with .re |
Lemmas for swapping order of .re and integration/integrability.
---
[](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 |
70-28943 2 months ago |
517-76180 517 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
merge-conflict
|
311/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/ArcLengthReparametrization.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,docs/references.bib,lake-manifest.json |
5 |
53 |
['SnirBroshi', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'michael-novak-math'] |
j-loreaux assignee:j-loreaux |
68-9898 2 months ago |
68-9899 68 days ago |
6-71429 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.
---
[](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 |
67-47443 2 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).
---
[](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 |
67-39249 2 months ago |
67-39249 67 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
[ ] depends on: #30141
---
[](https://gitpod.io/from-referrer/)
|
t-topology
new-contributor
merge-conflict
|
83/1 |
Mathlib/Topology/Baire/NonMeagre.lean,Mathlib/Topology/GDelta/Basic.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
66-48933 2 months ago |
165-20360 165 days ago |
0-1020 17 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 |
28 |
['0xTerencePrime', 'ADedecker', 'github-actions', 'j-loreaux'] |
ADedecker assignee:ADedecker |
63-32017 2 months ago |
63-32238 63 days ago |
22-22665 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.
---
[](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 |
61-83002 2 months ago |
61-79630 61 days ago |
0-3444 57 minutes |
| 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 |
59-50348 2 months ago |
59-58870 59 days ago |
93-10641 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]
---
[](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 |
57-60428 1 month ago |
195-5812 195 days ago |
0-396 6 minutes |
| 32039 |
HugLycan author:HugLycan |
feat(Tactic/Positivity): handle non-zeroness in non-orders |
---
WIP...
[](https://gitpod.io/from-referrer/)
|
WIP
new-contributor
t-meta
merge-conflict
|
618/163 |
Mathlib/Algebra/Order/AbsoluteValue/Basic.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/Module/Algebra.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Tactic/Positivity/test_Basic.lean |
10 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
56-66882 1 month ago |
112-67654 112 days ago |
0-16 16 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).
---
[](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'] |
dagurtomas assignee:dagurtomas |
56-46294 1 month ago |
63-25824 63 days ago |
16-55121 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
blocked-by-other-PR
merge-conflict
new-contributor
|
160/1 |
Mathlib.lean,Mathlib/ModelTheory/Topology/Types.lean,Mathlib/ModelTheory/Types.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
8 |
['NoneMore', 'anishrajeev', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] |
nobody |
55-39813 1 month ago |
63-53637 63 days ago |
10-38484 10 days |
| 32546 |
anishrajeev author:anishrajeev |
feat(ModelTheory): Prove compactness of the type space |
Define the space of types and prove various topological properties of it (zero dimensional, totally separated, compact, baire).
The goal is to formalize the proof of the Omitting Types Theorem
- [ ] depends on: #32215 |
merge-conflict
t-logic
new-contributor
|
127/1 |
Mathlib.lean,Mathlib/ModelTheory/Topology/Types.lean,Mathlib/ModelTheory/Types.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
6 |
['NoneMore', 'anishrajeev', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
fpvandoorn assignee:fpvandoorn |
55-39763 1 month ago |
95-42459 95 days ago |
3-84208 3 days |
| 31092 |
FlAmmmmING author:FlAmmmmING |
feat(Algebra/Group/ForwardDiff.lean): Add theorem `sum_shift_eq_fwdDiff_iter`. |
---
[](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'] |
dagurtomas assignee:dagurtomas |
53-47313 1 month ago |
53-47313 53 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 |
53-43571 1 month ago |
55-25007 55 days ago |
1-23617 1 day |
| 34129 |
idontgetoutmuch author:idontgetoutmuch |
feat: define Ehresmann connections |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-differential-geometry
new-contributor
|
90/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/EhresmannConnection.lean |
2 |
5 |
['github-actions', 'grunweg', 'idontgetoutmuch', 'metakunt'] |
nobody |
52-65121 1 month ago |
56-44007 56 days ago |
0-1188 19 minutes |
| 29953 |
slashbade author:slashbade |
feat: add reap for experiment |
---
[](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 |
48-36096 1 month 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).
---
[](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 |
47-25669 1 month ago |
108-42634 108 days ago |
8-14810 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)
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
awaiting-zulip
|
531/0 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/EulerComb.lean |
2 |
5 |
['chiyunhsu', 'github-actions', 'tb65536', 'vihdzp'] |
b-mehta assignee:b-mehta |
46-49190 1 month ago |
46-49190 46 days ago |
42-22427 42 days |
| 33817 |
FlAmmmmING author:FlAmmmmING |
fix(Combinatorics/Enumerative/Schroder.lean): Fix the definition and theorem of smallSchroder. |
In the previous definition, the small Schröder numbers were defined as
```LaTeX
s_0 = 1, s_1 = 1, s_2 = 1, s_3 = 3...
```
, which does not match the sequence listed in OEIS A006318. Moreover, this definition makes it difficult to correctly write the generating function for the small Schröder numbers. This PR fixes this issue.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
|
61/39 |
Mathlib/Combinatorics/Enumerative/Schroder.lean |
1 |
19 |
['FlAmmmmING', 'github-actions', 'vihdzp'] |
awainverse assignee:awainverse |
46-10884 1 month ago |
61-160 61 days ago |
65-51508 65 days |
| 34227 |
stepan2698-cpu author:stepan2698-cpu |
feat: If sum of densities is at least one, the sumset covers the naturals |
Proves an outstanding TODO item from Mathlib.Combinatorics.Schnirelmann : shows that if the sum of two densities is at least one, the sumset covers the positive naturals.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
51/1 |
Mathlib/Combinatorics/Schnirelmann.lean |
1 |
3 |
['github-actions', 'grunweg', 'kbuzzard'] |
awainverse assignee:awainverse |
46-10881 1 month ago |
54-17256 54 days ago |
54-31250 54 days |
| 34130 |
FlAmmmmING author:FlAmmmmING |
feat(Combinatorics/SimpleGraph/Acyclic): Add new theorem `isTree_iff_uniqueShortest_path` |
---
[](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 |
45-71597 1 month ago |
54-55612 54 days ago |
2-6824 2 days |
| 34028 |
floor-licker author:floor-licker |
feat(SimpleGraph): add max-flow/min-cut weak duality |
This PR introduces a basic s–t flow setup for undirected SimpleGraphs and proves the standard weak-duality
inequality: for any feasible flow f and any s–t cut S, value f ≤ cutCapacity S.
This is a small, self-contained lemma I extracted while working on larger graph-theoretic formalizations, in particular, results that will ultimately rely on a full max-flow/min-cut theorem. The full MFMC equality/existence statement is not included here. This is the weak-duality direction (∀ f S, value f ≤ cutCapacity S).
|
t-combinatorics
new-contributor
|
169/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/MaxFlowMinCut.lean |
2 |
13 |
['SnirBroshi', 'floor-licker', 'github-actions'] |
kmill assignee:kmill |
45-10891 1 month ago |
58-28580 58 days ago |
58-31682 58 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
[](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 |
44-23002 1 month ago |
98-23440 98 days ago |
0-2004 33 minutes |
| 33520 |
NoneMore author:NoneMore |
feat(ModelTheory/ElementarySubstructures): add a variant of Tarski-Vaught test taking sets as input |
There should exist an `ElementarySubstructure.copy` such that we can directly bundle the set itself instaed of its closure as an elementary substructure.
The other direction depends on #33458.
---
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
55/0 |
Mathlib/ModelTheory/ElementarySubstructures.lean |
1 |
3 |
['Citronhat', 'NoneMore', 'github-actions'] |
awainverse assignee:awainverse |
44-10842 1 month ago |
72-60463 72 days ago |
72-60354 72 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
[](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 |
43-61833 1 month ago |
162-12402 162 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
[](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 |
43-61826 1 month ago |
162-18055 162 days ago |
0-241 4 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
[](https://gitpod.io/from-referrer/)
|
new-contributor
awaiting-zulip
t-algebra
label:t-algebra$ |
300/2 |
Mathlib.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Set.lean |
3 |
28 |
['PrParadoxy', 'dagurtomas', 'eric-wieser', 'github-actions', 'goliath-klein', 'leanprover-radar', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
dagurtomas assignee:dagurtomas |
43-61795 1 month ago |
84-38697 84 days ago |
10-66980 10 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).
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
awaiting-zulip
t-measure-probability
|
4/0 |
Mathlib/MeasureTheory/Constructions/Polish/Basic.lean |
1 |
9 |
['ADedecker', 'LTolDe', 'dupuisf', 'github-actions', 'jcommelin'] |
PatrickMassot assignee:PatrickMassot |
43-61600 1 month ago |
69-45732 69 days ago |
11-7507 11 days |
| 33109 |
felixpernegger author:felixpernegger |
feat(Data/Nat/Choose): Binomial inversion |
This PR adds binomial inversion (also called binomial transform), which is a useful method for proving binomial identities.
It is tricky to find direct references to binomial inversion, but for example [this](https://en.wikipedia.org/wiki/Binomial_transform#Binomial_convolution) Wikipedia article mentions it ("The formula").
The first theorem ```alternating_sum_choose_mul_of_alternating_sum_choose_mul``` could be refined (we only need the hypothesis ```h``` up to some point), but this seems to needlessly complicate it. |
awaiting-author
new-contributor
t-data
|
107/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Inversion.lean |
2 |
6 |
['dagurtomas', 'felixpernegger', 'github-actions', 'thomaskwaring', 'wwylele'] |
dagurtomas assignee:dagurtomas |
43-61469 1 month ago |
53-42691 53 days ago |
33-35408 33 days |
| 30121 |
idontgetoutmuch author:idontgetoutmuch |
feat(Mathlib/Geometry/Manifold): principal fiber bundle core |
A structure capturing what it means to be a principal fibre bundle.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-differential-geometry
new-contributor
|
227/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/PrincipalFiberBundle/PrincipalGBundle.lean |
2 |
8 |
['github-actions', 'grunweg', 'idontgetoutmuch', 'mathlib4-merge-conflict-bot'] |
hrmacbeth assignee:hrmacbeth |
43-53541 1 month ago |
140-44987 140 days ago |
25-16284 25 days |
| 31102 |
JOSHCLUNE author:JOSHCLUNE |
feat: require LeanHammer |
Experimenting with adding LeanHammer as a mathlib dependency
---
[](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 |
43-52308 1 month ago |
119-9111 119 days ago |
0-150 2 minutes |
| 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
|
186/1 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean |
1 |
5 |
['NickAdfor', 'github-actions', 'jcommelin'] |
kmill assignee:kmill |
43-52040 1 month ago |
45-52937 45 days ago |
26-1427 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 `R`-modules `M` and `N` and a set `s` in `M`, `Submodule.dual p s` is the submodule in `N` consisting of all points `y` such that `0 = p x y` for all `x ∈ s`.
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.
---
[](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 |
5 |
['github-actions', 'joelriou', 'martinwintermath'] |
joelriou assignee:joelriou |
43-48077 1 month ago |
45-30536 45 days ago |
14-81375 14 days |
| 34703 |
martinwintermath author:martinwintermath |
Generalizing orthogonalBilin |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
49/25 |
Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
43-15580 1 month ago |
unknown |
0-0 0 seconds |
| 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 |
41-30561 1 month ago |
unknown |
0-0 0 seconds |
| 32570 |
ksenono author:ksenono |
feat(Combinatorics/SimpleGraph): bipartite subgraphs and vertex-disjoint graphs for Konig's theorem |
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
22/0 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
2 |
19 |
['SnirBroshi', 'github-actions', 'jcommelin', 'ksenono', 'vlad902'] |
kmill assignee:kmill |
41-20651 1 month ago |
41-20651 41 days ago |
93-56745 93 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 |
41-3337 1 month ago |
41-40190 41 days ago |
14-69133 14 days |
| 33601 |
nielstron author:nielstron |
feat(Computability/ContextFreeGrammar): Concatenation of CFGs is CFG |
---
- [ ] depends on: #33599
- [ ] depends on: #33592
[](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 |
40-67450 1 month ago |
70-51313 70 days ago |
0-412 6 minutes |
| 34191 |
IlPreteRosso author:IlPreteRosso |
feat(Topology/Algebra/InfiniteSum): Discrete Convolution API 1st PR |
Defines the very basics of the discrete convolution API. In analogy with [MeasureTheory.Convolution](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Convolution.html#MeasureTheory.convolution).
Main definitions include
- `mulFiber`, `convolution`, `ConvolutionExists`, `ConvolutionExists.add_distrib`, `ConvolutionExistsAt.smul_convolution`, `mulFiber_swapEquiv`, `convolution_comm`
RM:
- The main docstring is *as is*
- Next step is triple sum intrastrcutre + `assoc` theorems for convolution (long)
Continues the work from #33411 and #33410 (splitting into shorter PRs, carries over the modifications from previous reviews) |
t-topology
new-contributor
|
277/0 |
Mathlib.lean,Mathlib/Topology/Algebra/InfiniteSum/DiscreteConvolution.lean |
2 |
18 |
['IlPreteRosso', 'github-actions', 'j-loreaux'] |
PatrickMassot assignee:PatrickMassot |
40-39757 1 month ago |
40-39952 40 days ago |
49-41526 49 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
[](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 |
39-26475 1 month ago |
42-44615 42 days ago |
0-2854 47 minutes |
| 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 |
38-59812 1 month ago |
38-59812 38 days ago |
12-25418 12 days |
| 34182 |
IlPreteRosso author:IlPreteRosso |
feat(Data/Finsupp/Single, Data/Finsupp/Indicator): Add set_indicator_singleton, indicator_singleton; golfed single_eq_set_indicator, single_eq_indicator |
[Mathlib.Data.Finsupp.Single](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Single.html#Finsupp.single)
- Add `set_indicator_singleton`, golfed `single_eq_set_indicator`
[Mathlib.Data.Finsupp.Indicator](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finsupp/Indicator.html#Finsupp.indicator_apply)
- Add `indicator_singleton`, golfed `single_eq_indicator`
Continues the work from #34095 |
large-import
t-data
new-contributor
|
17/17 |
Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Single.lean |
2 |
29 |
['IlPreteRosso', 'eric-wieser', 'github-actions', 'mathlib-bors', 'urkud'] |
eric-wieser and urkud assignee:urkud assignee:eric-wieser |
38-40668 1 month ago |
54-85685 54 days ago |
55-7169 55 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.
---
[](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 |
37-9651 1 month ago |
37-9651 37 days ago |
35-16104 35 days |
| 34815 |
Deep0Thinking author:Deep0Thinking |
feat(Analysis/SpecialFunctions/ImproperIntegrals): Frullani integral |
- [ ] 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`
---
[](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/IntegralEqImproper.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean,Mathlib/Order/Interval/Set/LinearOrder.lean,Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Monoid.lean |
6 |
6 |
['CoolRmal', 'Deep0Thinking', 'github-actions', 'mathlib-dependent-issues', 'sgouezel'] |
nobody |
36-79766 1 month ago |
39-54949 39 days ago |
1-43880 1 day |
| 34093 |
YellPika author:YellPika |
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `Option` with basic `ωScottContinuous` lemmas |
---
- [x] depends on: #33941
[](https://gitpod.io/from-referrer/)
|
t-order
new-contributor
|
297/0 |
Mathlib.lean,Mathlib/Data/Option/Order.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean |
4 |
5 |
['YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
pechersky assignee:pechersky |
36-10961 1 month ago |
40-79697 40 days ago |
40-82552 40 days |
| 26985 |
agjftucker author:agjftucker |
feat(Analysis/Calculus/ImplicitFunction): define implicitFunctionOfProdDomain |
This PR continues the work from #16743.
Original PR: https://github.com/leanprover-community/mathlib4/pull/16743
---
- [x] depends on: #28352
[](https://gitpod.io/from-referrer/) |
t-analysis
new-contributor
|
269/157 |
Mathlib.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean,Mathlib/Analysis/Calculus/ImplicitFunction/ProdDomain.lean |
4 |
27 |
['agjftucker', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'winstonyin'] |
hrmacbeth assignee:hrmacbeth |
34-72820 1 month ago |
34-72820 34 days ago |
103-4763 103 days |
| 32744 |
NoneMore author:NoneMore |
feat(ModelTheory/Definablity): add `DefinableFun` definition and lemmas |
This PR adds two basic shapes of definable sets and `DefinableFun` definition with relevant lemmas.
The main result is `Set.Definable.preimage_of_map` asserting that the preimage of a definable set under a definable map is definable.
There are also some tool lemmas derived by the preimage lemma.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-logic
|
147/0 |
Mathlib/ModelTheory/Definability.lean |
1 |
59 |
['NoneMore', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator'] |
awainverse assignee:awainverse |
34-66856 1 month ago |
66-76576 66 days ago |
94-28731 94 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 |
34-44525 1 month ago |
67-67393 67 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
- [ ] depends on: #26165
---
[](https://gitpod.io/from-referrer/)
|
blocked-by-other-PR
new-contributor
t-measure-probability
merge-conflict
|
916/0 |
Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Defs.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Equiv.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Lemmas.lean |
5 |
4 |
['github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
34-25514 1 month ago |
254-67781 254 days ago |
15-65390 15 days |
| 33463 |
khwilson author:khwilson |
feat(Mathlib/Analysis/Polynomial/MahlerMeasure): Mahler Measure for other rings |
Define `mahlerMeasure'` which allows you specify a norm preserving map `v` from any `NormedRing A` (or more general) to `ℂ`. Also provide wrappers around the main `mahlerMeasure` lemmas that are used for estimation.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
awaiting-author
|
97/3 |
Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/NumberTheory/MahlerMeasure.lean |
2 |
21 |
['github-actions', 'j-loreaux', 'khwilson', 'plp127', 'vlad902'] |
nobody |
34-21856 1 month ago |
34-24079 34 days ago |
0-5062 1 hour |
| 34481 |
DAE123456 author:DAE123456 |
feat: Ore's Theorem |
Ore Theorem : Let G be a graph of order n ≥ 3 that satisfies the Ore property. Then G has a Hamilton cycle. |
t-combinatorics
new-contributor
|
3372/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Ore.lean |
2 |
25 |
['DAE123456', 'LLaurance', 'Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'kim-em', 'tb65536', 'vlad902'] |
b-mehta assignee:b-mehta |
34-10807 1 month ago |
42-65822 42 days ago |
46-30827 46 days |
| 34722 |
GrigorenkoPV author:GrigorenkoPV |
feat(Data/Finset/RangeDistance): add |
---
Rebase of https://github.com/leanprover-community/mathlib4/pull/26347
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-data
|
34/0 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean |
3 |
4 |
['GrigorenkoPV', 'github-actions', 'joneugster', 'plp127'] |
TwoFX assignee:TwoFX |
34-10803 1 month ago |
42-51614 42 days ago |
42-53410 42 days |
| 35122 |
Marygold-Dusk author:Marygold-Dusk |
feat: define C^n submersions |
This PR defines submersions between C^n manifolds. In the infinite-dimensional setting, submersions are defined via local normal forms rather than surjectivity of the mfderiv. A map f is a submersion at x if, in suitable charts around x and f x, it has the form (u, v) ↦ u after identifying the model space with a product.
We prove a few basic properties:
- being a submersion is a local property,
- products of submersions are submersions,
- the set of submersed points is open
Future PRs will prove that submersions are C^n and deduce equivalence with the standard definition in finite dimensions. From the path towards the regular value theorem.
This file was developed under the supervision of Michael Rothgang.
Co-authored-by: Michael Rothgang
---
Most of the design is analogues to submersions.
|
t-differential-geometry
new-contributor
|
596/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Submersion.lean |
2 |
2 |
['github-actions'] |
grunweg assignee:grunweg |
33-47223 1 month ago |
33-48997 33 days ago |
33-50303 33 days |
| 32845 |
jonasvanderschaaf author:jonasvanderschaaf |
feat(CategoryTheory): `GrothendieckTopology.yoneda` preserves certain (co)limits |
We prove that if every `J`-sheaf preserves limits of shape `Kᵒᵖ`, then `J.yoneda` preserves colimits of shape `K`, and the dual statement. We specialize to the case of finite products, and deduce that the inclusion of light profinite sets in light condensed sets preserves finite coproducts
From [LeanCondensed](https://github.com/dagurtomas/LeanCondensed)
---
Co-authored-by: Dagur Asgeirsson
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
t-condensed
large-import
awaiting-author
|
107/5 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Products.lean,Mathlib/CategoryTheory/Sites/PreservesLimits.lean,Mathlib/Condensed/Functors.lean,Mathlib/Condensed/Light/Functors.lean |
5 |
5 |
['github-actions', 'jonasvanderschaaf', 'robin-carlier'] |
nobody |
33-40188 1 month ago |
45-67620 45 days ago |
8-53205 8 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
[](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 |
33-27875 1 month ago |
61-42979 61 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 |
32-56408 1 month ago |
77-48955 77 days ago |
5-47362 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
[](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 |
32-21098 1 month ago |
37-10418 37 days ago |
5-38408 5 days |
| 33032 |
ksenono author:ksenono |
feat(Combinatorics/SimpleGraph): Konig’s theorem on bipartite graphs |
---
[](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 |
8 |
['SnirBroshi', 'github-actions', 'ksenono', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] |
nobody |
32-5008 1 month ago |
88-74064 88 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 |
31-55175 1 month ago |
32-16004 32 days ago |
7-49555 7 days |
| 32807 |
WilliamCoram author:WilliamCoram |
feat: Define the Gauss norm for MvPowerSeries |
We adjust the current definition for Gauss norm on power series to work for multivariate power series.
If this seems acceptable I can refactor the single variable case.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
124/0 |
Mathlib.lean,Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean |
2 |
25 |
['WilliamCoram', 'erdOne', 'fbarroero', 'github-actions', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
alreadydone assignee:alreadydone |
31-51241 1 month ago |
31-51307 31 days ago |
44-59060 44 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
---
[](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 |
30-37555 1 month ago |
40-56812 40 days ago |
6-49759 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
[](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 |
30-24619 1 month ago |
38-47992 38 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?
[](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 |
30-23194 1 month ago |
38-46182 38 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 |
5 |
['erdOne', 'github-actions', 'urkud'] |
erdOne assignee:erdOne |
30-10775 1 month ago |
79-25171 79 days ago |
4-57005 4 days |
| 23791 |
SEU-Prime author:SEU-Prime |
Create AmiceTrans.lean |
---
[](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 |
30-9839 1 month ago |
343-42505 343 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
[](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 |
29-65862 1 month ago |
81-33687 81 days ago |
0-2872 47 minutes |
| 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]
---
[](https://gitpod.io/from-referrer/)
|
WIP
blocked-by-other-PR
new-contributor
awaiting-author
t-analysis
merge-conflict
|
237/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 |
29-35047 1 month ago |
179-46823 179 days ago |
0-634 10 minutes |
| 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" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> 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]
-->
[](https://gitpod.io/from-referrer/)
|
awaiting-author
new-contributor
large-import
t-analysis
merge-conflict
|
70/1 |
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 |
29-30670 1 month ago |
176-64498 176 days ago |
20-70133 20 days |
| 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'] |
RemyDegenne assignee:RemyDegenne |
28-35961 1 month ago |
70-28346 70 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
- [ ] depends on: #29186
- [ ] depends on: #35043
[](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 |
27-63496 27 days ago |
259-49282 259 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 |
27-45792 27 days ago |
27-45892 27 days ago |
39-79348 39 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.
mkdir 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
|
219/0 |
Mathlib.lean,Mathlib/Analysis/Matrix/Jacobian.lean |
2 |
11 |
['erdOne', 'github-actions', 'jcommelin'] |
sgouezel assignee:sgouezel |
27-45440 27 days ago |
27-46194 27 days ago |
39-33072 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.
---
[](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 |
27-44301 27 days ago |
27-45499 27 days ago |
1-24662 1 day |
| 35448 |
mathlib-splicebot author:mathlib-splicebot |
chore(Mathlib/Tactic/Linter/GlobalSyntax.lean): automated extraction |
This PR was automatically created from a review comment on PR #34019. |
t-linter
new-contributor
|
138/0 |
Mathlib/Tactic/Linter/GlobalSyntax.lean |
1 |
2 |
['github-actions'] |
nobody |
27-41951 27 days ago |
27-41619 27 days ago |
0-403 6 minutes |
| 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
---
[](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 |
27-40058 27 days ago |
27-40264 27 days ago |
39-9588 39 days |
| 34851 |
dennj author:dennj |
feat(Data/Matrix/Mul): add diagonal and transpose lemmas for vector operations |
This adds three lemmas for matrix-vector operations that serve as foundational support for future ML formalization:
- `vecMul_diagonal_dotProduct`: weighted inner product `x ᵥ* diagonal d ⬝ᵥ y = ∑ i, d i * x i * y i`
- `dotProduct_transpose_mulVec`: bilinear form symmetry `x ⬝ᵥ Aᵀ *ᵥ y = y ⬝ᵥ A *ᵥ x`
- `mul_diagonal_mulVec`: column-weighted sum `(A * diagonal d) *ᵥ x = ∑ i, (d i * x i) • A.col i`
These are basic linear algebra identities involving diagonal matrices and vector operations that appear frequently in machine learning contexts (weighted inner products, attention mechanisms, feature scaling, diagonal preconditioning). |
t-data
new-contributor
|
22/0 |
Mathlib/Data/Matrix/Mul.lean |
1 |
5 |
['dennj', 'eric-wieser', 'github-actions', 'themathqueen'] |
pechersky assignee:pechersky |
27-16985 27 days ago |
40-26461 40 days ago |
40-26352 40 days |
| 28546 |
Sfgangloff author:Sfgangloff |
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… |
This PR adds a **group-generic** foundation for symbolic dynamics over an arbitrary group `G`, together with convenient specializations for `ℤ` and `ℤ^d`.
Summary of additions:
- **Full shift and shift action**
- `abbrev FullShift (A G) := G → A` (inherits product topology from the Π-type).
- Right shift `shift g x` with convention `(shift g x) h = x (h * g)`.
- **Cylinders and topology**
- `cylinder U x : Set (G → A)` for finite `U : Finset G`.
- Cylinders are open under `[DiscreteTopology A]`; with a finite alphabet they are also closed.
- Equality with dependent products:
`cylinder U x = Set.pi (↑U) (fun i => ({x i} : Set A))`, enabling use of the `Set.pi` API.
- **Patterns, occurrences, and subshifts**
- `Pattern A G` with finite `support : Finset G` and `data : support → A`.
- `Pattern.occursIn p x g` (occurrence at translate `g`) and the expected shift law.
- `forbids F` and `Subshift A G` (closed, shift-invariant subsets).
- `FixedSupport A G U` with an equivalence to `(U → A)` to obtain finiteness.
- **Language on finite shapes and counting**
- `languageOn X U`, `languageCardOn X U`, and `patternCountOn Y U`.
- **Entropy along a shape sequence**
- `limsupAtTop` (as an `sInf` of eventual upper bounds).
- `entropyAlong X F hF := limsup (log (patternCountOn X (F n) + 1) / |F n|)`
for any nonempty finite shapes `F : ℕ → Finset G` (the `+ 1` avoids `log 0`).
- **Specializations**
- `IntShapes`: segments `[-n,n]` on `Multiplicative ℤ`, with `entropy_Z`.
- `ZdShapes`: boxes `[-n,n]^d` on `ℤ^d` (as functions `Fin d → ℤ`), with `entropy_Zd`.
Mathematical remarks:
- The API is **shape-parametric**: entropy is defined along user-provided finite shapes.
- On **amenable** groups, using a **Følner** sequence yields a canonical value (Ornstein–Weiss).
This PR does not assume amenability; the family of shapes is an explicit input.
Motivation:
Provide a clean, reusable base for symbolic dynamics on groups in mathlib.
Future work:
- Add a Følner predicate and prove shape-independence / limit existence on amenable groups.
- Expand the `ℤ`/`ℤ^d` toolkit (alternative shapes, mixing, factors).
- Develop 1D theory and, longer-term, multidimensional SFT results (e.g. along the lines of Hochman–Meyerovitch).
|
t-dynamics
new-contributor
|
746/0 |
Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/Translate/ToAdditive.lean |
3 |
180 |
['Sfgangloff', 'botbaki-review', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'sgouezel'] |
sgouezel assignee:sgouezel |
27-12454 27 days ago |
28-11752 28 days ago |
131-57513 131 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 |
27-9932 27 days ago |
27-9932 27 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 |
---
[](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 |
26-80076 26 days ago |
77-58349 77 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 |
26-59810 26 days ago |
26-59811 26 days ago |
17-1225 17 days |
| 32891 |
felixpernegger author:felixpernegger |
feat(Topology/EMetricSpace): Introduction of ```Weak(Pseudo)EMetricSpace``` |
This PR introduces Weak(Pseudo)EMetric spaces, some basic properties and the fact that the One-Point Compactification of a Weak(Pseudo)EMetricSpace again has a Weak(Pseudo)EMetricSpace structure.
This is inspired by discussion at [this](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/EMetricSpace.20is.20broken/near/530540916) and based on #27756.
In short, types like ```ENNReal``` and ```ENat``` have a very "metric-like" structure, but are not yet a ```WeakPseudoEMetricSpace``` (which is the weakest form of a metric-like structure in mathlib). Therefore, the class```WeakEMetricSpace``` could be used to make more definitions applicable to ```ENNReal```, for instance EVartiationOn ([this](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/EMetricSpace/BoundedVariation.html#eVariationOn)).
As of now, this PR is still missing important properties like products and induced (and therefore subtypes) of ```Weak(Pseudo)EMetricSpace```'s and instances ```ENNReal``` and ```ENat``` (which should be rather easy however with the one-point compactification property). |
awaiting-author
new-contributor
t-topology
merge-conflict
|
453/10 |
Mathlib.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/EMetricSpace/Weak.lean |
3 |
30 |
['felixpernegger', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'plp127'] |
j-loreaux assignee:j-loreaux |
25-52530 25 days ago |
55-30436 55 days ago |
12-50285 12 days |
| 35473 |
mike1729 author:mike1729 |
feat(Analysis/Normed/Module): Schauder bases, basic sequences, and the Eberlein–Šmulian theorem |
This PR develops the theory of Schauder bases and basic sequences in Banach spaces, culminating in a proof of the **Eberlein–Šmulian theorem**: in a Banach space, a weakly countably compact set is weakly compact (and weakly sequentially compact).
**Note:** This PR is too large to review in one go. It will be split into smaller parts and merged incrementally. The first part is already under review:
The proof follows the basic-sequence approach of Pełczyński, as presented in Albiac–Kalton *Topics in Banach Space Theory* (2016). The main line of argument is:
1. Define generalized Schauder bases (indexed by arbitrary types with a summation filter) and the classical sequential Schauder basis as a special case.
2. Introduce basic sequences and their characterization via the Grünblum condition.
3. Prove the **selection principle**: extract basic sequences from sets where the weak and norm closures disagree (via a perturbation/finite-dimensional compactness argument in the dual).
4. Show that a bounded set containing no basic sequence has relatively weakly compact closure.
5. Combine these ingredients to prove both directions of the Eberlein–Šmulian theorem.
## Main definitions
* `GeneralSchauderBasis β 𝕜 X L`: A Schauder basis for a normed space `X` over `𝕜`, indexed by a type `β` with a `SummationFilter L`. Unifies classical (sequential) and unconditional bases.
* `BasicSequence 𝕜 X`: A bundled ℕ-indexed sequence forming a Schauder basis for its closed linear span.
## Main results
* `isBasicSequence_of_Grunblum_with_bound`: A nonzero sequence satisfying the Grünblum condition is a basic sequence, with explicit basis constant bound.
* `basic_sequence_selection_dual`: Extracts a basic sequence from a set that is weak*-dense near 0 but norm-separated from 0.
* `exists_basicSequence_of_weakClosure_not_normClosure`: If 0 is in the weak closure of `S` but not its norm closure, then `S` contains a basic sequence.
* `schauderBasisOfClosure`: Constructs a Schauder basis for the topological closure from a basis on a subspace.
* `no_basic_sequence_implies_relatively_weakly_compact`: A bounded set with no basic sequence has weakly compact closure.
* `eberlein_smulian_isSeqCompact`: A weakly countably compact set in a Banach space is weakly sequentially compact.
* `eberlein_smulian`: **Eberlein–Šmulian theorem.** A weakly countably compact set in a Banach space is weakly compact.
* `IsCompact.frechetUrysohnSpace`: Weakly compact subsets of a Banach space are Fréchet–Urysohn (angelic).
## References
* [F. Albiac, N.J. Kalton, *Topics in Banach Space Theory*, Springer, 2016][albiac2016]
* I. Singer, *Bases in Banach Spaces*, 1970.
---
- [ ] depends on: #34209
- [ ] depends on: #35559
[](https://gitpod.io/from-referrer/) |
t-analysis
new-contributor
blocked-by-other-PR
|
2691/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/Basic.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/BasicSequence.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/BasicSequenceSelection.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/Closure.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/CountablyCompact.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/EberleinSmulian.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/NoBasicSequence.lean |
8 |
6 |
['CoolRmal', 'github-actions', 'mathlib-dependent-issues', 'mike1729'] |
nobody |
24-79141 24 days ago |
unknown |
0-0 0 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
[](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 |
24-57596 24 days ago |
24-57596 24 days ago |
13-78266 13 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
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
please-merge-master
awaiting-author
|
172/0 |
Mathlib/Data/Sigma/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean |
2 |
28 |
['Vierkantor', 'YellPika', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
grunweg assignee:grunweg |
24-5495 24 days ago |
24-27392 24 days ago |
16-66871 16 days |
| 35620 |
inaciovasquez2020 author:inaciovasquez2020 |
feat(Fintype): choose element from nonempty finite type |
This PR adds a noncomputable choice function for finite types with nonzero cardinality.
* `Fintype.chooseOfCardNeZero` provides a witness of `α` from `[Fintype α]`
assuming `Fintype.card α ≠ 0`.
* A regression test is included in `MathlibTest/Fintype/ChooseOfCardNeZero.lean`.
The construction follows existing mathlib choice patterns and is explicitly
marked `noncomputable`. |
t-data
new-contributor
|
21/0 |
Mathlib.lean,Mathlib/Data/Fintype/Choose.lean,MathlibTest/Fintype/ChooseOfCardNeZero.lean |
3 |
4 |
['github-actions', 'plp127', 'vihdzp'] |
nobody |
22-80732 22 days ago |
23-10640 23 days ago |
0-448 7 minutes |
| 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.
---
[](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 |
21-76708 21 days ago |
21-76708 21 days ago |
30-23357 30 days |
| 31766 |
SuccessMoses author:SuccessMoses |
feat(Topology/EMetricSpace): continuity of arc length |
fixes half of #31751
---
[](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 |
21-22005 21 days ago |
97-22875 97 days ago |
2-78371 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
|
164/8 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean |
2 |
70 |
['IvanRenison', 'NickAdfor', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'kmill', 'mitchell-horner', 'vihdzp', 'vlad902'] |
kmill assignee:kmill |
21-10979 21 days ago |
37-9913 37 days ago |
45-17750 45 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!
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
awaiting-author
|
186/41 |
Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/RCLike/Basic.lean |
3 |
14 |
['github-actions', 'j-loreaux', 'ster-oc'] |
j-loreaux assignee:j-loreaux |
20-34103 20 days ago |
20-34103 20 days ago |
8-27645 8 days |
| 26479 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles |
In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
sphere-packing
awaiting-author
|
205/0 |
Mathlib/Analysis/Complex/CauchyIntegral.lean |
1 |
6 |
['github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'wwylele'] |
urkud assignee:urkud |
20-22125 20 days ago |
20-22125 20 days ago |
34-11222 34 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
[](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 |
20-18341 20 days ago |
79-25489 79 days ago |
3-73599 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
[](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 |
5 |
['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
20-17964 20 days ago |
38-45649 38 days ago |
1-62439 1 day |
| 34854 |
GrigorenkoPV author:GrigorenkoPV |
chore(Combinatorics/Enumerative/Catalan): split into `Basic` & `Tree` |
---
Split off from #34853
[](https://gitpod.io/from-referrer/)
|
new-contributor
merge-conflict
|
228/195 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean |
6 |
5 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
thorimur assignee:thorimur |
20-17963 20 days ago |
20-17964 20 days ago |
19-76299 19 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
[](https://gitpod.io/from-referrer/)
|
new-contributor
large-import
t-order
|
191/1 |
Mathlib/Data/Sum/Basic.lean,Mathlib/Data/Sum/Order.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean |
4 |
20 |
['Vierkantor', 'YellPika', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
bryangingechen assignee:bryangingechen |
20-10959 20 days ago |
31-39122 31 days ago |
41-1265 41 days |
| 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]
[](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 |
20-5422 20 days ago |
20-25398 20 days ago |
0-2842 47 minutes |
| 35402 |
samueloettl author:samueloettl |
feat(Dynamics/BirkhoffSum): birkhoffAverage const |
---
I think this might be useful.
My feeling tells me that one of these should be a simp lemma.
I'm not really sure if I got the naming of the theorems correct.
When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252
[](https://gitpod.io/from-referrer/)
|
t-dynamics
new-contributor
|
22/0 |
Mathlib/Dynamics/BirkhoffSum/Average.lean |
1 |
2 |
['github-actions'] |
urkud assignee:urkud |
19-10981 19 days ago |
22-20655 22 days ago |
28-53834 28 days |
| 33443 |
sahanwijetunga author:sahanwijetunga |
feat: Define Isometries of Bilinear Spaces |
---
We define Isometries of Bilinear Spaces, closely following the implementation of isometries of quadratic spaces.
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
awaiting-author
label:t-algebra$ |
279/0 |
Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/Isometry.lean,Mathlib/LinearAlgebra/BilinearForm/IsometryEquiv.lean |
3 |
16 |
['github-actions', 'robin-carlier', 'sahanwijetunga'] |
mattrobball assignee:mattrobball |
18-75680 18 days ago |
31-43021 31 days ago |
42-86363 42 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.
[](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 |
18-66746 18 days ago |
364-44685 364 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.
---
[](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 |
18-66730 18 days ago |
315-48624 315 days ago |
39-61332 39 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 |
18-18170 18 days ago |
unknown |
0-0 0 seconds |
| 23929 |
meithecatte author:meithecatte |
feat(Computability/NFA): improve bound on pumping lemma |
---
- [x] depends on: #25321
[](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 |
18-359 18 days ago |
282-29658 282 days ago |
34-10092 34 days |
| 35128 |
DAE123456 author:DAE123456 |
feat : Define anti_pascal |
---
[](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 |
17-84285 17 days ago |
33-53531 33 days ago |
0-531 8 minutes |
| 33458 |
NoneMore author:NoneMore |
feat(ModelTheory): add lifting for embeddings to languages with constants |
Prepare for a generalized Tarski-Vaught test with a set as input instead of a substructure.
---
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
46/0 |
Mathlib/ModelTheory/ElementaryMaps.lean,Mathlib/ModelTheory/LanguageMap.lean |
2 |
7 |
['Citronhat', 'NoneMore', 'fpvandoorn', 'github-actions'] |
fpvandoorn assignee:fpvandoorn |
17-52130 17 days ago |
17-52348 17 days ago |
73-64818 73 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 |
17-51057 17 days ago |
306-33529 306 days ago |
17-16443 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 |
17-48738 17 days ago |
23-36111 23 days ago |
0-103 1 minute |
| 35653 |
pepamontero author:pepamontero |
feat: add ChartedSpace structure on orbit space |
feat: add ChartedSpace structure on orbit space
Add topological preliminaries for properly discontinuous group actions, and use them to equip the orbit space `orbitRel.Quotient G M` with a `ChartedSpace` structure.
In particular:
- Show that the quotient map `Quotient.mk _ : M → orbitRel.Quotient G M` is a covering map and hence a local homeomorphism.
- Construct chosen local inverses of the quotient map and establish properties over them.
- Define a `ChartedSpace` instance on the quotient by composing these local inverses with charts of M.
This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it.
---
|
new-contributor
t-differential-geometry
|
186/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Instances/OrbitSpace.lean,Mathlib/Topology/Algebra/OrbitSpace.lean |
3 |
2 |
['github-actions'] |
grunweg assignee:grunweg |
17-42279 17 days ago |
22-30024 22 days ago |
22-30590 22 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.
[](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 |
17-27042 17 days ago |
17-27042 17 days ago |
38-12430 38 days |
| 35857 |
AlexeyMilovanov author:AlexeyMilovanov |
feat(Logic.Equiv.BijectiveBase2): add bijective base-2 numeration |
This PR introduces a formalization of the bijective base-2 numeration system.
Unlike standard binary representation, bijective base-2 avoids the "leading zeros" problem, providing a strict mathematical bijection between natural numbers (`ℕ`) and lists of booleans (`List Bool`).
**Main additions:**
* `Equiv.BijectiveBase2.toBits`: Encodes `ℕ` to `List Bool`.
* `Equiv.BijectiveBase2.ofBits`: Decodes `List Bool` to `ℕ`.
* `equivBijectiveBase2`: The formal `ℕ ≃ List Bool` equivalence.
*(Note: This replaces my previously closed PR to avoid the terminology clash between "Dyadic" and dyadic rationals. The namespace and definitions have been updated accordingly).*
*(Note: Used AI to assist with standardizing proof structures).* |
t-logic
new-contributor
|
95/0 |
Mathlib.lean,Mathlib/Logic/Equiv/ListNatBijective.lean |
2 |
4 |
['AlexeyMilovanov', 'SnirBroshi', 'github-actions'] |
nobody |
17-23113 17 days ago |
17-32185 17 days ago |
17-32533 17 days |
| 35376 |
michaellee94 author:michaellee94 |
feat(Geometry/Manifold): orientable manifolds |
---
- [ ] depends on: #33189
[](https://gitpod.io/from-referrer/)
|
new-contributor
WIP
t-differential-geometry
merge-conflict
|
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 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
16-17318 16 days ago |
29-36692 29 days ago |
0-169 2 minutes |
| 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
[](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 |
15-54248 15 days ago |
20-28463 20 days ago |
0-306 5 minutes |
| 34477 |
spanning-tree author:spanning-tree |
refactor(Order): make CompletePartialOrder extend OrderBot |
Make `CompletePartialOrder` extend `OrderBot`, and add a constructor `completePartialOrderOfLubOfDirected`. Previously, `CompletePartialOrder` had an implicit bottom element but did not extend OrderBot explicitly.
Breaking change: `CompletePartialOrder` instances must provide `⊥` and `bot_le`, or use the constructor.
See discussion in [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20complete.20partial.20order.20and.20domain.20theory.20formalization).
---
[](https://gitpod.io/from-referrer/)
|
t-order
new-contributor
|
15/1 |
Mathlib/Order/CompletePartialOrder.lean |
1 |
3 |
['Citronhat', 'github-actions', 'mathlib-merge-conflicts'] |
pechersky assignee:pechersky |
15-50272 15 days ago |
15-50295 15 days ago |
36-25343 36 days |
| 33714 |
idontgetoutmuch author:idontgetoutmuch |
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II |
Supersedes https://github.com/leanprover-community/mathlib4/pull/33519
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
|
680/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean |
3 |
200 |
['github-actions', 'grunweg', 'idontgetoutmuch'] |
grunweg assignee:grunweg |
15-43430 15 days ago |
15-43456 15 days ago |
29-73522 29 days |
| 34875 |
banrovegrie author:banrovegrie |
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula |
Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap.
- Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}`
- Add `Matrix.inv_sub_vecMulVec`: subtraction variant
- Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses
## Test plan
- [x] `lake build` passes
- [x] Lines within 100 char limit
- [x] All declarations have docstrings |
t-algebra
new-contributor
label:t-algebra$ |
135/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean |
2 |
11 |
['Xxxjdjdid', 'banrovegrie', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] |
kim-em assignee:kim-em |
15-41876 15 days ago |
39-45693 39 days ago |
39-45584 39 days |
| 35700 |
inaciovasquez2020 author:inaciovasquez2020 |
MeasureTheory: introduce supportDrift for probability measures |
Minimal mathlib-facing definition of with lemma. Clean-clone reproducibility verified. |
t-measure-probability
new-contributor
|
119/0 |
Mathlib/MeasureTheory/SupportDrift.lean,Mathlib/Physics/OperatorAnchor/CoerciveGap.lean,Mathlib/Physics/OperatorAnchor/SpectralGap.lean |
3 |
2 |
['github-actions'] |
nobody |
15-32881 15 days ago |
15-32583 15 days ago |
0-742 12 minutes |
| 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
---
[](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 |
15-2053 15 days ago |
258-68186 258 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.
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory
new-contributor
|
10/0 |
Mathlib/NumberTheory/Divisors.lean |
1 |
5 |
['adrianmartir', 'alexjbest', 'github-actions'] |
alexjbest assignee:alexjbest |
14-65779 14 days ago |
18-63781 18 days ago |
18-63708 18 days |
| 35442 |
dhyan-aranha author:dhyan-aranha |
feat: Affine line with doubled origin counter example |
---
[](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 |
14-61383 14 days ago |
27-49388 27 days ago |
0-3706 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.
---
Builds on: #31121
Related to: #29639, #29643, #29646 |
awaiting-author
t-algebra
new-contributor
label:t-algebra$ |
428/0 |
Mathlib.lean,Mathlib/Algebra/Homology/EulerPoincare.lean |
2 |
25 |
['github-actions', 'jessealama', 'joelriou', 'kim-em', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
dagurtomas assignee:dagurtomas |
14-56707 14 days ago |
142-71879 142 days ago |
35-45800 35 days |
| 33790 |
eliasjudin author:eliasjudin |
feat(CategoryTheory/Preadditive/Mat): add natural transformation and isomorphism extension theorems |
Add extensionality lemmas for natural transformations and comparisons `L ≅ Mat_.lift F` in the
additive envelope `Mat_`.
- Add `Mat_.natTrans_ext`: a natural transformation `F ⟶ G` between functors `Mat_ C ⥤ D`
(with `G` additive) is determined by its components on objects of the form
`(embedding C).obj X`.
- Add `Mat_.liftIso_ext_comp_embeddingLiftIso`: a small uniqueness lemma for comparisons
`L ≅ lift F`.
These lemmas streamline arguments around the universal property of `Mat_` by reducing equalities to
components on objects coming from `C` via `embedding C`.
No new instances or simp attributes; only `Mathlib/CategoryTheory/Preadditive/Mat.lean` changes.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
new-contributor
awaiting-author
|
68/20 |
Mathlib/CategoryTheory/Preadditive/Mat.lean |
1 |
15 |
['eliasjudin', 'github-actions', 'joelriou', 'kim-em', 'mathlib-merge-conflicts'] |
nobody |
14-42960 14 days ago |
66-31358 66 days ago |
0-25088 6 hours |
| 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
---
[](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 |
13-73921 13 days ago |
188-70271 188 days ago |
27-52841 27 days |
| 35576 |
Tehlikeli107 author:Tehlikeli107 |
⚡ [performance] Pre-compile regexes in lake-build-wrapper.py |
- Pre-compile `file_info_re` and `progress_re` in `BuildOutputProcessor.__init__` to avoid repeated compilation overhead.
- Replace `re.sub(r'\.', '/', target)` with `target.replace('.', '/')` for better performance when converting module names to file paths.
These changes result in a measured ~40% performance improvement in the core processing logic of the wrapper script.
---
[](https://gitpod.io/from-referrer/)
|
file-removed
awaiting-author
CI
new-contributor
merge-conflict
|
8/707 |
scripts/bench/README.md,scripts/bench/build/README.md,scripts/bench/build/fake-root/bin/lean,scripts/bench/build/fake-root/bin/lean.py,scripts/bench/build/lakeprof_report_template.html,scripts/bench/build/lakeprof_report_upload.py,scripts/bench/build/run,scripts/bench/combine.py,scripts/bench/lint/README.md,scripts/bench/lint/run,scripts/bench/measure.py,scripts/bench/open-mathlib/README.md,scripts/bench/open-mathlib/run,scripts/bench/repeatedly.py,scripts/bench/run,scripts/bench/size/README.md,scripts/bench/size/run,scripts/bench/size/run.py,scripts/lake-build-wrapper.py |
19 |
7 |
['bryangingechen', 'felixpernegger', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
nobody |
13-67007 13 days ago |
24-33280 24 days ago |
0-8924 2 hours |
| 36000 |
eliasjudin author:eliasjudin |
add reindexing, fibers pseudofunctor, internal categories, and single-morphism descent |
## Summary
- **FiberedCategory**: `PseudofunctorOfFibers.lean` (pseudofunctor of fibers for a fibered category), `Reindexing.lean` (reindexing functors and coherence isos)
- **InternalCategory**: `Basic.lean` (minimal internal category structure over a category with pullbacks)
- **Sites/Descent**: `SingleMorphism.lean` (descent data and comparison functor for a single morphism; `IsDescentMorphism` / `IsEffectiveDescentMorphism`)
- **Mathlib.lean**: import updates
Naming follows mathlib convention (e.g. `singleMorphismComparisonFunctor` in lowerCamelCase for definitions). |
t-category-theory
new-contributor
|
783/0 |
Mathlib.lean,Mathlib/CategoryTheory/FiberedCategory/PseudofunctorOfFibers.lean,Mathlib/CategoryTheory/FiberedCategory/Reindexing.lean,Mathlib/CategoryTheory/InternalCategory/Basic.lean,Mathlib/CategoryTheory/Sites/Descent/SingleMorphism.lean |
5 |
5 |
['eliasjudin', 'github-actions', 'joelriou', 'mathlib-bors'] |
nobody |
13-64084 13 days ago |
13-67102 13 days ago |
0-42869 11 hours |
| 34551 |
IlPreteRosso author:IlPreteRosso |
refactor(Data.Finset.*Antidiagonal): rename defs to `set*Antidiagonal` and deprecate old names in namespace Finset |
Main file is [Prod.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Antidiag/Prod.html). Adds `Finset.HasMulAntidiagonal`, the multiplicative counterpart to `HasAntidiagonal`, linked via `@[to_additive existing]`.
Split PR (current changes):
This PR renames the set-based antidiagonal definitions to have a `set` prefix, distinguishing them from the typeclass-based API in `Prod.lean`.
**Only definitions are renamed in this PR.** Theorem/lemma renames will follow in a subsequent PR.
[MulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/MulAntidiagonal.lean)
- `mulAntidiagonal` → `setMulAntidiagonal`
- `addAntidiagonal` → `setAddAntidiagonal` (via `@[to_additive]`)
[SMulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/SMulAntidiagonal.lean)
- `SMulAntidiagonal` → `setSMulAntidiagonal`
- `VAddAntidiagonal` → `setVAddAntidiagonal` (via `@[to_additive]`)
Propagates to:
- `Mathlib/RingTheory/HahnSeries/Multiplication.lean`
- `Mathlib/RingTheory/HahnSeries/Summable.lean`
---
Added deprecation aliases for the renamed definitions.
[Finset/MulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/MulAntidiagonal.lean)
```
@[to_additive (attr := deprecated setAddAntidiagonal (since := "2026-01-31")),
deprecated setMulAntidiagonal (since := "2026-01-31")]
alias mulAntidiagonal := setMulAntidiagonal
```
[Finset/SMulAntidiagonal.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finset/SMulAntidiagonal.lean)
```
@[to_additive (attr := deprecated setVAddAntidiagonal (since := "2026-01-31")),
deprecated setSMulAntidiagonal (since := "2026-01-31")]
alias smulAntidiagonal := setSMulAntidiagonal
```
Propagates:
[PointwiseSMul.lean](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Data/Finsupp/PointwiseSMul.lean) - updated to use Set.vaddAntidiagonal (the original Set name)
---
Full changes to be made:
For a monoid `M`, `mulAntidiagonal n` returns the finset of pairs `(i, j)` such that `i * j = n`.
[MulAntidiagonal.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/MulAntidiagonal.html)
- `mulAntidiagonal` → `setMulAntidiagonal`
- `addAntidiagonal` → `setAddAntidiagonal` (via `@[to_additive]`)
- All related theorems renamed accordingly:
- `mem_setMulAntidiagonal`
- `setMulAntidiagonal_mono_left`/`setMulAntidiagonal_mono_right`
- `swap_mem_setMulAntidiagonal`
- `support_setMulAntidiagonal_subset_mul`
- `isPWO_support_setMulAntidiagonal`
- `setMulAntidiagonal_min_mul_min`
[SMulAntidiagonal.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/SMulAntidiagonal.html)
- `setSMulAntidiagonal` (lowercase `set` prefix)
- `setVAddAntidiagonal` (via `@[to_additive setVAddAntidiagonal ...]`)
- All related theorems use lowercase `set` prefix:
- `mem_setSMulAntidiagonal` / `mem_setVAddAntidiagonal`
- `setSMulAntidiagonal_mono_left`/`setSMulAntidiagonal_mono_right` / `setVAddAntidiagonal_mono_left`/`setVAddAntidiagonal_mono_right`
- `support_setSMulAntidiagonal_subset_smul` / `support_setVAddAntidiagonal_subset_vadd`
- `isPWO_support_setSMulAntidiagonal` / `isPWO_support_setVAddAntidiagonal`
- `setSMulAntidiagonal_min_smul_min` / `setVAddAntidiagonal_min_vadd_min`
[Prod.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Antidiag/Prod.html)
- Added explicit `@[to_additive]` target names:
- `@[to_additive antidiagonal_congr ...]` for `mulAntidiagonal_congr`
- `@[to_additive (attr := ext) antidiagonal_subtype_ext ...]` for `mulAntidiagonal_subtype_ext`
- `@[to_additive antidiagonal_congr' ...]` for `mulAntidiagonal_congr'`
- `@[to_additive (attr := simps) sigmaAntidiagonalEquivProd ...]` for `sigmaMulAntidiagonalEquivProd`
[Multiplication.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/Multiplication.html)
- Updated all VAdd antidiagonal references to use lowercase `set` prefix:
- `setVAddAntidiagonal`
- `mem_setVAddAntidiagonal`
- `setVAddAntidiagonal_mono_left`/`setVAddAntidiagonal_mono_right`
- `isPWO_support_setVAddAntidiagonal`
- `support_setVAddAntidiagonal_subset_vadd`
- `setVAddAntidiagonal_min_vadd_min`
- Updated all Add antidiagonal references:
- `mem_setAddAntidiagonal`
- `swap_mem_setAddAntidiagonal`
[Summable.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/Summable.html)
- `setVAddAntidiagonal` references updated
- `mem_setAddAntidiagonal` references updated
[PowerSeries.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/HahnSeries/PowerSeries.html)
- `mem_addAntidiagonal` → `mem_setAddAntidiagonal`
|
t-algebra
new-contributor
awaiting-author
merge-conflict
label:t-algebra$ |
67/47 |
Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Set/MulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean |
6 |
8 |
['IlPreteRosso', 'Ruben-VandeVelde', 'github-actions', 'jcommelin', 'kim-em', 'mathlib-merge-conflicts'] |
jcommelin assignee:jcommelin |
12-49100 12 days ago |
26-74342 26 days ago |
19-5432 19 days |
| 35976 |
Phelixh author:Phelixh |
feat: add add Liu's uncertainty theory foundations (core/distribution/process modules) |
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
2320/0 |
Mathlib/Uncertainty/base.lean,Mathlib/Uncertainty/base_core.lean,Mathlib/Uncertainty/base_distribution.lean,Mathlib/Uncertainty/base_process.lean,Mathlib/Uncertainty/uncertainty.lean |
5 |
26 |
['Phelixh', 'copilot-pull-request-reviewer', 'github-actions'] |
nobody |
12-44354 12 days ago |
13-69143 13 days ago |
0-1739 28 minutes |
| 35559 |
mike1729 author:mike1729 |
feat(Analysis/Normed): weak-topology embedding into weak-star bidual and compactenss transfer theorem |
This PR refactors the double dual material and adds new results connecting the weak topology on a normed space to the weak-star topology on its bidual.
## Changes
### New file: `Analysis.Normed.Module.DoubleDual`
Extracts the canonical embedding `inclusionInDoubleDual` and the bidual isometry `inclusionInDoubleDualLi` from `Analysis.Normed.Module.Dual` into a dedicated file, and adds:
- `inclusionInDoubleDualWeak`: the canonical map from `WeakSpace 𝕜 X` into `WeakDual 𝕜 (StrongDual 𝕜 X)`.
- `inclusionInDoubleDualWeak_isEmbedding`: this map is a topological embedding.
- `inclusionInDoubleDualWeak_homeomorph`: the map as a homeomorphism onto its range.
- `isCompact_closure_of_isBounded`: bounded sets whose bidual image has weak-star closure in range have weakly compact closure, via Banach–Alaoglu.
### Modified: `Analysis.Normed.Module.Dual`
The double dual inclusion material is moved out; polar set results remain. References to `inclusionInDoubleDual` in `polar_closure` are replaced by `ContinuousLinearMap.apply` to avoid a dependency on the new file.
---
CC: @faenuccio this may be relevant for your Goldstine formalization.
|
t-analysis
new-contributor
|
240/91 |
Mathlib.lean,Mathlib/Analysis/LocallyConvex/SeparatingDual.lean,Mathlib/Analysis/LocallyConvex/Separation.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Analysis/Normed/Module/WeakSpace.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/Basic.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean |
10 |
23 |
['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'mike1729'] |
faenuccio assignee:faenuccio |
11-57049 11 days ago |
12-44916 12 days ago |
11-12992 11 days |
| 34940 |
michaellee94 author:michaellee94 |
feat: the graph of a continuous function on a $C^n$ manifold is a $C^n$ manifold |
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
awaiting-author
|
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 |
79 |
['botbaki-review', 'github-actions', 'grunweg', 'michaellee94', 'ocfnash'] |
ocfnash assignee:ocfnash |
11-44181 11 days ago |
13-24094 13 days ago |
15-3412 15 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`
---
[](https://gitpod.io/from-referrer/)
|
t-computability
new-contributor
|
475/0 |
Mathlib/Computability/DFA.lean,Mathlib/Computability/EpsilonNFA.lean |
2 |
2 |
['github-actions'] |
nobody |
11-33288 11 days ago |
unknown |
0-0 0 seconds |
| 35600 |
yisiox author:yisiox |
feat(Computability): add Kleene's algorithm to prove regular languages have regex matching |
This PR adds a proof that every regular language has some regular expression matching it.
This was achieved by the following constructions and proofs of their correctness
- Define `toSingleεNFA` to transform any epsilon-NFA to an equivalent one with only a single start and accept state (and the type is `ExtendedState`)
- Define a bijection between `ExtendedState` and `Fin (FinEnum.card (ExtendedState σ))` to index the states
- Define `pathRegex` which implements Kleene's algorithm
- Define `toRegex` which takes an epsilon-NFA, applies `toSingleεNFA` on it, and computes the corresponding regex using `pathRegex`
The proofs of correctness chain together to yield `(toRegex M).matches' = M.accepts` which asserts the direction of Kleene's theorem required.
As in [#mathlib4 > Regular languages: the review queue @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Regular.20languages.3A.20the.20review.20queue/near/573958148), this overlaps with #15654, which uses GNFA instead but has been inactive.
---
[](https://gitpod.io/from-referrer/)
|
t-computability
new-contributor
|
499/0 |
Mathlib/Computability/EpsilonNFA.lean |
1 |
2 |
['github-actions'] |
nobody |
11-32801 11 days 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.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
151/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Contraction.lean,Mathlib/Combinatorics/SimpleGraph/Minor.lean |
3 |
2 |
['github-actions'] |
nobody |
11-15858 11 days ago |
11-15920 11 days ago |
11-16502 11 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.
Co-authored-by: Davood H. H. Tehrani
[](https://gitpod.io/from-referrer/)
|
blocked-by-other-PR
new-contributor
merge-conflict
|
290/366 |
Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean |
3 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
10-62272 10 days ago |
24-49720 24 days ago |
0-1492 24 minutes |
| 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 |
10-56747 10 days ago |
603-22771 603 days ago |
4-83177 4 days |
| 35900 |
matthewjasper author:matthewjasper |
chore: Fix non-defeq diamonds on OrderDual |
This only makes changes to fix the diamonds, rather than the general defeq abuse with `OrderDual`.
---
- [x] depends on: #35995
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
merge-conflict
|
213/116 |
Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Group/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Action/Synonym.lean,Mathlib/Algebra/Order/GroupWithZero/Synonym.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Module/Synonym.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Order/Ring/Synonym.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Data/Nat/Cast/Synonym.lean,Mathlib/Order/Lattice.lean |
13 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
10-49938 10 days ago |
14-11956 14 days ago |
15-84640 15 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.
[](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 |
10-45715 10 days ago |
59-74242 59 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!
[](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 |
10-41422 10 days ago |
31-64414 31 days ago |
1-52648 1 day |
| 35436 |
daniel-carranza author:daniel-carranza |
feat(CategoryTheory/Monoidal/Closed): Prove the isomorphism of internal hom objects C(x \otimes y, z) and C(y, C(x, z)) |
Prove the currying-uncurrying isomorphism `C(x \otimes y, z) \iso C(y, C(x, z))` between internal hom objects of a closed monoidal category `C`.
---
This result is connected to the infinity-cosmos project, and is used to prove that a closed monoidal category enriched in itself admits all cotensors.
~Line 81 currently contains a one-line proof in tactics mode `exact rfl`. When trying to use `rfl` outside of tactics mode, an error is thrown~ (Fixed, thank you @robin-carlier!). Any help with this (or any other aspect of the formalization) is greatly appreciated!
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
infinity-cosmos
delegated
|
89/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Closed/InternalCurrying.lean |
2 |
15 |
['dagurtomas', 'daniel-carranza', 'github-actions', 'joelriou', 'mathlib-bors', 'riccardobrasca', 'robin-carlier'] |
adamtopaz assignee:adamtopaz |
10-32861 10 days ago |
18-21000 18 days ago |
7-67484 7 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)`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
200/0 |
Mathlib/Probability/Distributions/Exponential.lean |
1 |
6 |
['JoaBjo', 'Timeroot', 'github-actions'] |
kex-y assignee:kex-y |
10-32825 10 days ago |
10-32799 10 days ago |
15-85459 15 days |
| 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 |
10-32815 10 days ago |
217-12961 217 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 |
10-14795 10 days ago |
21-29444 21 days ago |
47-76964 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.
------
[](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 |
10-14550 10 days ago |
60-40063 60 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.
---
[](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 |
10-3270 10 days ago |
24-71710 24 days ago |
5-13145 5 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.
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory
new-contributor
awaiting-author
|
416/0 |
Mathlib.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean |
2 |
5 |
['github-actions', 'tb65536'] |
tb65536 assignee:tb65536 |
9-63289 9 days ago |
20-27976 20 days ago |
20-28215 20 days |
| 35970 |
adrianmartir author:adrianmartir |
feat(CategoryTheory/Profunctor): Add profunctors and a basic API for them |
This adds a definition of a profunctor and the definition of a natural transformation between two profunctors. Profunctors are defined as a structure, as suggested by @adamtopaz [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Operads.20Formalization/with/566160316).
Using this as a base, I wrote a basic API for profunctors. This will be needed for a future formalization of operads.
A lot of the API was first drafted by @Aristotle-Harmonic.
Co-authored-by: Aristotle (Harmonic)
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
new-contributor
awaiting-author
|
185/0 |
Mathlib.lean,Mathlib/CategoryTheory/Profunctor.lean |
2 |
16 |
['adrianmartir', 'dagurtomas', 'emilyriehl', 'github-actions', 'joelriou'] |
nobody |
9-47046 9 days ago |
14-27361 14 days ago |
14-28753 14 days |
| 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 |
3 |
['github-actions'] |
nobody |
9-33923 9 days ago |
9-37334 9 days ago |
9-37225 9 days |
| 35846 |
BryceT233 author:BryceT233 |
feat(RingTheory/MvPowerSeries): add completeness for `MvPowerSeries` |
This PR continues the work in #35670 and #35707 by adding typeclass instances for the completeness of `MvPowerSeries` when the index type is finite.
---
- [x] depends on: #35789
- [ ] depends on: #35707
- [ ] depends on: #35670
- [ ] depends on: #35597
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
blocked-by-other-PR
|
201/0 |
Mathlib.lean,Mathlib/RingTheory/AdicCompletion/Completeness.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
7-56592 7 days ago |
17-78688 17 days ago |
0-104 1 minute |
| 36216 |
michaellee94 author:michaellee94 |
feat(CategoryTheory): characterize pullback squares via the `Over` category |
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
new-contributor
large-import
|
47/0 |
Mathlib/CategoryTheory/Comma/Over/Pullback.lean |
1 |
3 |
['github-actions', 'michaellee94'] |
nobody |
7-52601 7 days ago |
7-51855 7 days ago |
0-2622 43 minutes |
| 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'] |
kex-y assignee:kex-y |
7-27725 7 days ago |
69-49547 69 days ago |
69-49438 69 days |
| 35317 |
mkaratarakis author:mkaratarakis |
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 5/5) |
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory
new-contributor
t-analysis
awaiting-author
|
62/0 |
Mathlib/Analysis/Complex/CauchyIntegral.lean |
1 |
15 |
['MichaelStollBayreuth', 'github-actions', 'mkaratarakis'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
7-25690 7 days ago |
24-19416 24 days ago |
29-22414 29 days |